MarlinTPC  1.2.0
TimePixPixelInterpolationProcessor.h
1 #ifndef TimePixPixelInterpolationProcessor_h
2 #define TimePixPixelInterpolationProcessor_h 1
3 
4 // C++
5 #include <string>
6 
7 // LCIO
8 #include "lcio.h"
9 
10 // Marlin
11 #include "marlin/Processor.h"
12 #include "TimePixPixelMode.h"
13 #include "TimePixMapHandlerProcessor.h"
14 #include "lccd/ConditionsMap.hh"
15 
16 //AIDA
17 #include <AIDA/AIDA.h>
18 
19 namespace marlintpc
20 {
21 
22 /* the following comment is tranfered to doxygen documentation
23  * which begins with a second asterix, or in case of on line comment an extra third slash
24  */
47 class TimePixPixelInterpolationProcessor : public marlin::Processor
48 {
49 
50  public:
51 
52  /* This method will be called by the marlin package
53  * It returns a processor of the currend type (here TimePixPixelInterpolationProcessor)
54  */
55  virtual Processor* newProcessor()
56  {
58  }
59 
60  /* the default constructor
61  * here the processor parameters are registered to the marlin package
62  * other initialisation should be placed in the init method
63  */
65 
66  /* Called at the beginning of the job before anything is read.
67  * Use to initialize the processor, e.g. book histograms
68  */
69  virtual void init() ;
70 
71  /* Called for every run.
72  * in this processor it is not used
73  */
74  virtual void processRunHeader(lcio::LCRunHeader* run) ;
75 
76  /* Called for every event - the working horse.
77  * Here the real conversion take place
78  */
79  virtual void processEvent(lcio::LCEvent * evt) ;
80 
81  /* This method is only called if the check flag is set (default) in the main processor
82  * (where the input files are given)
83  * It should be used to create check plots which are not needed in a complete analysis
84  * (where normaly the check flag is deactivated)
85  */
86  virtual void check(lcio::LCEvent * evt) ;
87 
88 
89  /* Called after data processing for clean up.
90  * e.g. saving control histogramms, delete created objects
91  * (which are not stored in a collection/event), etc.
92  */
93  virtual void end() ;
94 
95  virtual float interpolatePixel(int chipID, int pixelID);
96 
97 
98 
99  protected:
100 
101  /* normally the doxygen documentation is palced before the method/variable
102  * but for one line comments in case of variables it may be more convenied for you
103  * to place it after the variable. In this case you use an arrow to tell doxygen
104  * to which variable the commet belongs to.
105  */
106 
107  std::string _inputColName ;
108  std::string _outputColName ;
109 
110  int _nColumn ;
111  int _nRow ;
112  int _chipID;
115 
116  double _totThreshold;
117 
122 
128 
129 
130  tpcconddata::TimePixMap* _timePixMap;
131  std::map< tpcconddata::TimePixPixelMode::PixelKey, float> _inputMap;
132 
133 } ;
134 
135 }
136 
137 #endif
138 
int _minNoPixelToInterpolate
Definition: TimePixPixelInterpolationProcessor.h:113
int _outputIsTransient
give the status which is set to the transient flag of the output collection it is an int instead of a...
Definition: TimePixPixelInterpolationProcessor.h:121
int _chipID
Definition: TimePixPixelInterpolationProcessor.h:112
int _nColumn
-Number of columns of the chip
Definition: TimePixPixelInterpolationProcessor.h:110
std::string _outputColName
Definition: TimePixPixelInterpolationProcessor.h:108
bool isFirstCollection
is true till the first output collection is wirten to an event used to to store parameters only in th...
Definition: TimePixPixelInterpolationProcessor.h:127
std::string _inputColName
Definition: TimePixPixelInterpolationProcessor.h:107
int _nRow
-Number of rows of the chip
Definition: TimePixPixelInterpolationProcessor.h:111
Analysis Processor of MarlinTPC for TimePix Events with extraordinary high TOT values.
Definition: TimePixPixelInterpolationProcessor.h:47
double _totThreshold
-threshold on relation of TOT value to neighboring TOT values
Definition: TimePixPixelInterpolationProcessor.h:116
int _onlyRegardNonZeroPixels
-For interpolation only Pixels with ADC-Values larger than 0 are taken into account ...
Definition: TimePixPixelInterpolationProcessor.h:114