MarlinTPC  1.2.0
CGAElectricField.h
1 #ifndef CGAELECTRICFIELD_H
2 #define CGAELECTRICFIELD_H 1
3 
4 // MarlinTPC
5 #include "Field.h"
6 
7 // CLHEP
8 #include <CLHEP/Matrix/Vector.h>
9 
10 // stl
11 #include <string>
12 #include <vector>
13 
14 namespace LCIO {
15 
16  class LCRunHeader;
17 }
18 
19 namespace EVENT {
20 
21  class LCCollection;
22  class LCRunHeader;
23 }
24 
25 namespace marlintpc {
26 
31 class CGAElectricField: public Field {
32 
33 public:
36  CGAElectricField ( lcio::LCRunHeader *run_header );
37 
40  virtual ~CGAElectricField();
41 
44  virtual Field *new_field( void );
45 
48  virtual bool construct( lcio::LCCollection * );
49 
52  CLHEP::Hep3Vector get_field_value( const CLHEP::Hep3Vector & );
53 
56  std::string get_typename();
57 
58 protected:
59 
60 private:
61 
62 };
63 
64 } // namespace marlintpc
65 
66 #endif // CGAMAGNETICFIELD_H
virtual ~CGAElectricField()
destructor
Field : A base interface to an electric or magnetic field.
Definition: Field.h:22
CGAElectricField(lcio::LCRunHeader *run_header)
constructor
virtual bool construct(lcio::LCCollection *)
constructs the field from an LCCollection of data objects (could be anything...
GEARElectricField : An electric field which gets it's values from Mokka through CGA (Common Geometry ...
Definition: CGAElectricField.h:31
std::string get_typename()
returns the typename of the field
CLHEP::Hep3Vector get_field_value(const CLHEP::Hep3Vector &)
gets the field value at a specified point
virtual Field * new_field(void)
returns a new field...