MarlinTPC  1.2.0
CountsToPrimaryElectronsProcessor.h
1 #ifndef COUNTSTOPRIMARYELECTRONSPROCESSOR_H
2 #define COUNTSTOPRIMARYELECTRONSPROCESSOR_H 1
3 
4 // MarlinTPC
5 #include "TPCConditionsListener.h"
6 
7 // Marlin
8 #include <marlin/Processor.h>
9 
10 // LCIO
11 #include "lcio.h"
12 
13 // stl
14 #include <string>
15 
16 namespace marlintpc
17 {
18 
38 class CountsToPrimaryElectronsProcessor : public marlin::Processor
39 {
40 
41  public:
42 
44 
45  virtual void init() ;
46 
47  virtual Processor* newProcessor()
48  {
50  }
51 
52  virtual void processRunHeader(lcio::LCRunHeader *run);
53 
54  virtual void processEvent(lcio::LCEvent *evt);
55 
56  virtual void check(lcio::LCEvent *evt);
57 
58  virtual void end();
59 
60  private:
61 
64  std::string _inputColName;
65 
68  std::string _outputColName;
69 
72  std::string _tpcConditionsCollectionName;
73 
76  int _missingConditionsDataOverrideTimespan;
78  lcio::long64 _missingConditionsDataOverrideLCIOTime;
79 
81  bool _outputIsPersistent;
82 
83  // how many runs / events have been processed sofar
84  int _number_of_runs;
85  int _number_of_events;
86 
89  TPCConditionsListener *_tpcConditionsListener;
90 };
91 
92 }
93 #endif // COUNTSTOPRIMARYELECTRONSPROCESSOR_H
Helper Class which provides access to the TPC conditions for every event.
Definition: TPCConditionsListener.h:37
CountsToPrimaryElectronsProcessor: converts FADC counts into primary electrons (assumes a linear gain...
Definition: CountsToPrimaryElectronsProcessor.h:38