MarlinTPC  1.2.0
CollectDelayedHitsProcessor.h
1 #ifndef CollectDelayedHitsProcessor_h
2 #define CollectDelayedHitsProcessor_h 1
3 
4 
5 // C++
6 #include <string>
7 #include <cmath>
8 
9 // LCIO
10 #include "lcio.h"
11 #include <EVENT/TrackerHit.h>
12 #include "EVENT/LCIO.h"
13 #include "EVENT/LCCollection.h"
14 #include <IMPL/LCCollectionVec.h>
15 #include "IMPL/TrackImpl.h"
16 #include <IMPL/LCFlagImpl.h>
17 #include "IntersectionCalculator.h"
18 
19 // Aida
20 #ifdef MARLIN_USE_AIDA
21 
22 #include <AIDA/AIDA.h>
23 #include <marlin/AIDAProcessor.h>
24 
25 //marlin
26 #include <marlin/ConditionsProcessor.h>
27 #include "TrackFitterFactory.h"
28 #include "TrackFitterBase.h"
29 #include "LinearRegressionProcessor.h"
30 #include "LinearTrackRegression.h"
31 #include "marlin/Processor.h"
32 #include "TimePixEventDisplayCreator.h"
33 
34 //root
35 #include "TH1F.h"
36 
37 #endif
38 
39 //root
40 //#include "TH2F.h"
41 //#include "TF1.h"
42 
43 /*
44 namespace AIDA{
45  class IHistogram1D;
46  class IHistogram2D;
47 }
48 */
49 
50 namespace marlintpc{
51 
52  class TrackFitterFactory;
53 
54  /* the following comment is tranfered to doxygen documentation
55  * which begins with a second asterix, or in case of on line comment an extra third slash
56  */
81  class CollectDelayedHitsProcessor: public marlin::Processor {
82 
83  public:
84 
85  /* This method will be called by the marlin package
86  * It returns a processor of the currend type (here CollectDelayedHitsProcessor)
87  */
88  virtual Processor* newProcessor() { return new CollectDelayedHitsProcessor ; }
89 
90  /* the default constructor
91  * here the processor parameters are registered to the marlin package
92  * other initialisation should be placed in the init method
93  */
95 
97 
98  /* Called at the beginning of the job before anything is read.
99  * Use to initialize the processor, e.g. book histograms
100  */
101  virtual void init() ;
102 
103  /* Called for every run.
104  * in this processor it is not used
105  */
106  virtual void processRunHeader( lcio::LCRunHeader* run ) ;
107 
108  /* Called for every event - the working horse.
109  * Here the real conversion take place
110  */
111  virtual void processEvent( lcio::LCEvent * evt ) ;
112 
113  /* This method is only called if the check flag is set (default) in the main processor
114  * (where the input files are given)
115  * It should be used to create check plots which are not needed in a complete analysis
116  * (where normaly the check flag is deactivated)
117  */
118  virtual void check( lcio::LCEvent * evt ) ;
119 
120 
121  /* Called after data processing for clean up.
122  * e.g. saving control histogramms, delete created objects
123  * (which are not stored in a collection/event), etc.
124  */
125  virtual void end() ;
126 
127 
128  protected:
129  /* normally the doxygen documentation is palced before the method/variable
130  * but for one line comments in case of variables it may be more convenied for you
131  * to place it after the variable. In this case you use an arrow to tell doxygen
132  * to which variable the commet belongs to.
133  */
134 
135  std::string _inputColName ;
138 
139  int _outputIsTransient;
140 
141  int _histoBin;
142  float _histoRange;
143 
144  float _CutLevel;
145  float _longDiff;
147 
148  TH1F *_OffendingZResiduals;
149  TH1F *_meanZofTracksWithOffendingZResiduals;
150  TimePixEventDisplayCreator *_eventDisplayCreator;
151 
152 
153 private:
154 
155 
156  } ;
157 
158 }
159 
160 #endif
161 
162 
163 
std::string _outputColNameWithoutDelayedHits
Definition: CollectDelayedHitsProcessor.h:136
std::string _inputColName
Definition: CollectDelayedHitsProcessor.h:135
std::string _outputColNameWithDelayedHits
Definition: CollectDelayedHitsProcessor.h:137
int _histoBin
Definition: CollectDelayedHitsProcessor.h:141
The EVENT_DISPLAY_CREATOR is a class that allows to instantiate an EVENT_DISPLAY_CREATOR object ina a...
Definition: TimePixEventDisplayCreator.h:48
float _intrinsicRes
Definition: CollectDelayedHitsProcessor.h:146
float _longDiff
Definition: CollectDelayedHitsProcessor.h:145
This processor searches for the so called "delayed hits" on tracks It creates two output collections:...
Definition: CollectDelayedHitsProcessor.h:81
float _histoRange
Definition: CollectDelayedHitsProcessor.h:142
float _CutLevel
Definition: CollectDelayedHitsProcessor.h:144