GEAR  1.9.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends Pages
CGAGearDistanceProperties.h
1 #ifndef GEAR_CGAGEARDISTANCEPROPERTIES_H
2 #define GEAR_CGAGEARDISTANCEPROPERTIES_H 1
3 
4 #include <string>
5 #include <vector>
6 
7 #include "gear/GEAR.h"
8 #include "gear/GearDistanceProperties.h"
9 
10 namespace gear {
11 
19 
20 public:
21  CGAGearDistanceProperties(std::string steer, std::string model,
22  std::string setup, std::string host, std::string user,
23  std::string password);
24 
26  virtual ~CGAGearDistanceProperties() { /* nop */; }
27 
30  virtual const std::vector<std::string> & getMaterialNames(const Vector3D & p0, const Vector3D & p1) const throw (NotImplementedException, std::exception );
31 
35  virtual const std::vector<double> & getMaterialThicknesses(const Vector3D & p0, const Vector3D & p1) const throw (NotImplementedException, std::exception );
36 
39  virtual double getNRadlen(const Vector3D & p0, const Vector3D & p1) const throw (NotImplementedException, std::exception );
40 
43  virtual double getNIntlen(const Vector3D & p0, const Vector3D & p1) const throw (NotImplementedException, std::exception );
44 
47  virtual double getBdL(const Vector3D & p0, const Vector3D & p1) const throw (NotImplementedException, std::exception );
48 
51  virtual double getEdL(const Vector3D & p0, const Vector3D & p1) const throw (NotImplementedException, std::exception );
52 
53 protected:
54  void beamOn(const Vector3D & p0, const Vector3D & p1) const;
55 
56 
57 }; // class
58 } // namespace gear
59 #endif /* ifndef GEAR_CGAGEARDISTANCEPROPERTIES_H */
Abstract interface for a class that returns the (material) properties along a given distance between ...
CGA Implementation of the abstract interface that returns the (material) properties along a given dis...
NotImplementedException used for features that are not implemented.
Definition: GEAR.h:81
virtual double getNIntlen(const Vector3D &p0, const Vector3D &p1) const
The number of interaction lengths along the distance between [p0,p1] .
Simple three dimensional vector providing the components for cartesian, cylindrical and spherical coo...
Definition: Vector3D.h:18
virtual const std::vector< std::string > & getMaterialNames(const Vector3D &p0, const Vector3D &p1) const
List of matrial names along the distance between [p0,p1] .
virtual ~CGAGearDistanceProperties()
Destructor.
virtual const std::vector< double > & getMaterialThicknesses(const Vector3D &p0, const Vector3D &p1) const
List of matrial thicknesses in mm along the distance between [p0,p1] - runs parallel to the array ret...
virtual double getBdL(const Vector3D &p0, const Vector3D &p1) const
The integrated magnetic field along the distance between [p0,p1] in Tesla*mm.
virtual double getNRadlen(const Vector3D &p0, const Vector3D &p1) const
The number of radiation lengths along the distance between [p0,p1] .
virtual double getEdL(const Vector3D &p0, const Vector3D &p1) const
The integrated electric field along the distance between [p0,p1] in mVolt.