MarlinTPC  1.2.0
GridPixXrayObject.h
1 #ifndef GridPixXrayObject_h
2 #define GridPixXrayObject_h 1
3 
4 #include "iostream"
5 #include "string"
6 
7 #include "lcio.h"
8 #include "UTIL/LCFixedObject.h"
9 
10 #define XRAYNINTVals 2
11 #define XRAYNFLOATVals 0
12 #define XRAYNDOUBLEVals 6
13 
14 namespace marlintpc{
15 
16  class GridPixXrayObject;
17 
18  class GridPixXrayObject : public UTIL::LCFixedObject<XRAYNINTVals,XRAYNFLOATVals,XRAYNDOUBLEVals> {
19 
20  public:
21 
22  //constructor
24 
25  //copy constructor: needed to interpret LCCollection read from file/database
26  GridPixXrayObject(EVENT::LCObject* obj) : UTIL::LCFixedObject<XRAYNINTVals,XRAYNFLOATVals,XRAYNDOUBLEVals>(obj) {}
27 
28  GridPixXrayObject(const GridPixXrayObject &original) : UTIL::LCFixedObject<XRAYNINTVals,XRAYNFLOATVals,XRAYNDOUBLEVals>(original) {
29 
30  if( _createdObject ) _obj = new LCGenericObjectImpl(*(original._obj));
31 
32  }
33 
34  //destructor
35  virtual ~GridPixXrayObject();
36 
37  //class interface
38  int getPixels() const;
39 
40  int getCharge() const;
41 
42  double getEnergyFromPixels() const;
43 
44  double getEnergyFromCharge() const;
45 
46  double getLikelihood() const;
47 
48  double getCenterX() const;
49 
50  double getCenterY() const;
51 
52  double getRotAngle() const;
53 
54 
55  void setPixels( int value );
56 
57  void setCharge( int value );
58 
59  void setEnergyFromPixels( double value );
60 
61  void setEnergyFromCharge( double value );
62 
63  void setLikelihood( double value );
64 
65  void setCenterX( double value );
66 
67  void setCenterY( double value );
68 
69  void setRotAngle( double value );
70 
71 
72  static std::string getRevision();
73 
74  static std::string getDefaultColName();
75 
76  void print( std::ostream& os = std::cout ) const;
77 
78  const std::string getTypeName() const {
79  return "GridPixXrayObject";
80  }
81 
82  const std::string getDataDescription() const {
83  return std::string("f:Pixels,Charge,Energy,Likelihood,CenterX,CenterY,RotAngle");
84  }
85 
86  };//class GridPixXrayObject
87 
88  std::ostream &operator<<(std::ostream &os, const GridPixXrayObject &xray);
89 
90 }//namespace marlintpc
91 
92 #endif
std::ostream & operator<<(std::ostream &os, const EFieldVector &efv)
Operator to stream the vector information to an outstream:
Definition: EFieldVector.cc:101
Definition: GridPixXrayObject.h:18