2 #ifndef GEAR_GEARPOINTPROPERTIES_H
3 #define GEAR_GEARPOINTPROPERTIES_H 1
virtual Vector3D getE(const Vector3D &pos) const =0
The electric field vector at pos in [V/m].
virtual double getIntlen(const Vector3D &pos) const =0
Interaction length of material in mm at pos.
virtual long64 getCellID(const Vector3D &pos) const =0
The cellID of the the sensitive detector at pos.
virtual double getTemperature(const Vector3D &pos) const =0
Name of material at pos.
Simple three dimensional vector providing the components for cartesian, cylindrical and spherical coo...
virtual ~GearPointProperties()
Destructor.
virtual double getDensity(const Vector3D &pos) const =0
Density in kg/m^3 at pos.
long long long64
64 bit integer,e.g.to be used for cellids
virtual Vector3D getLocalPosition(const Vector3D &pos) const =0
Position in local coordinate.
virtual std::vector< std::string > getListOfLogicalVolumes(const Vector3D &pos) const =0
Names of (geant4) logical volumes in heirarchy starting at given pos ending with the world volume...
virtual double getRadlen(const Vector3D &pos) const =0
Radiation length of material in mm at pos.
virtual bool isTracker(const Vector3D &pos) const =0
True if region that contains pos is defined as a tracker.
virtual std::string getRegion(const Vector3D &pos) const =0
Names of (geant4) region that contains the given pos.
virtual const std::string & getMaterialName(const Vector3D &pos) const =0
Name of material at pos.
virtual Vector3D getB(const Vector3D &pos) const =0
The magnetic field vector at pos in [Tesla].
virtual double getPressure(const Vector3D &pos) const =0
Pressure in P at pos.
Abstract interface for a class that returns the (material) properties of a given point in in world co...
virtual bool isCalorimeter(const Vector3D &pos) const =0
True if region that contains pos is defined as a calorimeter.
virtual std::vector< std::string > getListOfPhysicalVolumes(const Vector3D &pos) const =0
Names of (geant4) physical volumes in heirarchy starting at given pos ending with the world volume...