GEAR  1.9.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends Pages
CGAGearPointProperties.h
1 #ifndef GEAR_CGAGEARPOINTPROPERTIES_H
2 #define GEAR_CGAGEARPOINTPROPERTIES_H 1
3 
4 #include <string>
5 #include <vector>
6 
7 #include "gear/GEAR.h"
8 #include "gear/GearPointProperties.h"
9 
10 namespace gear {
11 
18 
19 public:
20  CGAGearPointProperties(std::string steer, std::string model,
21  std::string setup, std::string host, std::string user,
22  std::string password);
23 
25  virtual ~CGAGearPointProperties() { /* nop */; }
26 
27  //vec getPosition returns the current position (if ID is known)
30  virtual long64 getCellID(const Vector3D & pos) const throw (NotImplementedException, std::exception );
31 
32  // bool getMaterial (true if defined material, false if problem)
35  virtual const std::string & getMaterialName(const Vector3D & pos) const throw (NotImplementedException, std::exception );
36 
39  virtual double getDensity(const Vector3D & pos) const throw (NotImplementedException, std::exception );
40 
41 // /** Name of material at pos.
42 // */
43 // public double getState( const Vector3D& pos) const throws NotImplementedException ;
46  virtual double getTemperature(const Vector3D & pos) const throw (NotImplementedException, std::exception );
47 
50  virtual double getPressure(const Vector3D & pos) const throw (NotImplementedException, std::exception );
51 
54  virtual double getRadlen(const Vector3D & pos) const throw (NotImplementedException, std::exception );
55 
58  virtual double getIntlen(const Vector3D & pos) const throw (NotImplementedException, std::exception );
59 
62  virtual Vector3D getLocalPosition(const Vector3D & pos) const throw (NotImplementedException, std::exception );
63 
66  virtual Vector3D getB(const Vector3D & pos) const throw (NotImplementedException, std::exception );
67 
70  virtual Vector3D getE(const Vector3D & pos) const throw (NotImplementedException, std::exception );
71 
74  virtual std::vector<std::string> getListOfLogicalVolumes(const Vector3D & pos) const throw (NotImplementedException, std::exception );
75 
78  virtual std::vector<std::string> getListOfPhysicalVolumes(const Vector3D & pos) const throw (NotImplementedException, std::exception );
79 
82  virtual std::string getRegion(const Vector3D & pos) const throw (NotImplementedException, std::exception );
83 
86  virtual bool isTracker(const Vector3D & pos) const throw (NotImplementedException, std::exception );
87 
90  virtual bool isCalorimeter(const Vector3D & pos) const throw (NotImplementedException, std::exception );
91 }; // class
92 } // namespace gear
93 #endif /* ifndef GEAR_CGAGEARPOINTPROPERTIES_H */
virtual double getPressure(const Vector3D &pos) const
Pressure in P at pos.
virtual Vector3D getB(const Vector3D &pos) const
The magnetic field vector at pos in [Tesla].
virtual std::vector< std::string > getListOfPhysicalVolumes(const Vector3D &pos) const
Names of (geant4) physical volumes in heirarchy starting at given pos ending with the world volume...
virtual double getDensity(const Vector3D &pos) const
Density in kg/m^3 at pos.
virtual Vector3D getLocalPosition(const Vector3D &pos) const
Position in local coordinate.
NotImplementedException used for features that are not implemented.
Definition: GEAR.h:81
Simple three dimensional vector providing the components for cartesian, cylindrical and spherical coo...
Definition: Vector3D.h:18
virtual ~CGAGearPointProperties()
Destructor.
long long long64
64 bit integer,e.g.to be used for cellids
Definition: GEAR.h:32
virtual bool isTracker(const Vector3D &pos) const
True if region that contains pos is defined as a tracker.
virtual long64 getCellID(const Vector3D &pos) const
The cellID of the the sensitive detector at pos.
virtual bool isCalorimeter(const Vector3D &pos) const
True if region that contains pos is defined as a calorimeter.
virtual Vector3D getE(const Vector3D &pos) const
The electric field vector at pos in [V/m].
virtual std::string getRegion(const Vector3D &pos) const
Names of (geant4) region that contains the given pos.
virtual std::vector< std::string > getListOfLogicalVolumes(const Vector3D &pos) const
Names of (geant4) logical volumes in heirarchy starting at given pos ending with the world volume...
virtual const std::string & getMaterialName(const Vector3D &pos) const
Name of material at pos.
CGA implementation of the abstract interface that returns the (material) properties of a given point ...
virtual double getIntlen(const Vector3D &pos) const
Interaction length of material in mm at pos.
Abstract interface for a class that returns the (material) properties of a given point in in world co...
virtual double getTemperature(const Vector3D &pos) const
Name of material at pos.
virtual double getRadlen(const Vector3D &pos) const
Radiation length of material in mm at pos.