MarlinTPC  1.2.0
ElectronCloudHitReadoutPadsProcessor.h
1 #ifndef ELECTRONCLOUDHITREADOUTPADSPROCESSOR_H
2 #define ELECTRONCLOUDHITREADOUTPADSPROCESSOR_H 1
3 
4 // CLHEP
5 #include <CLHEP/Vector/ThreeVector.h>
6 
7 // Marlin
8 #include <marlin/Processor.h>
9 
10 namespace EVENT {
11 
12  class LCRunHeader;
13  class LCEvent;
14 }
15 
16 namespace marlintpc {
17 
22 class ElectronCloudGEMAmplificationProcessor : public marlin::Processor {
23 
24 public:
29 
33  virtual Processor* newProcessor() { return new ElectronCloudGEMAmplificationProcessor() ; }
34 
39  virtual void init();
40 
44  virtual void processRunHeader(lcio::LCRunHeader* run );
45 
49  virtual void processEvent(lcio::LCEvent * evt );
50 
54  virtual void check(lcio::LCEvent * evt );
55 
59  virtual void end();
60 
61 protected:
62 
63 private:
64 
68  std::string _input_trackerhit_collection_name;
69 
73  std::string _output_trackerhit_collection_name;
74 
78  std::string _tpcconditions_collection_name;
79 
83  double _collection_efficiency;
84 
88  double _extraction_efficiency;
89 
93  double _amplification;
94 
98  double _longitudinal_defocussing;
99 
103  double _transverse_defocussing;
104 
108  double _width;
109 
110 };
111 
112 } // namespace marlintpc
113 
114 #endif // ELECTRONCLOUDHITREADOUTPADSPROCESSOR_H
virtual void processEvent(lcio::LCEvent *evt)
Called for every event - the working horse.
Definition: ElectronCloudGEMAmplificationProcessor.cc:141
virtual void check(lcio::LCEvent *evt)
Called after the event has been processed.
Definition: ElectronCloudGEMAmplificationProcessor.cc:290
virtual void init()
Called at the begin of the job before anything is read.
Definition: ElectronCloudGEMAmplificationProcessor.cc:283
virtual void end()
Called after data processing for clean up.
Definition: ElectronCloudGEMAmplificationProcessor.cc:295
virtual void processRunHeader(lcio::LCRunHeader *run)
Called for every run.
Definition: ElectronCloudGEMAmplificationProcessor.cc:128
virtual Processor * newProcessor()
used by Marlin to create a new processor
Definition: ElectronCloudHitReadoutPadsProcessor.h:33
ElectronCloudGEMAmplificationProcessor()
constructor
Definition: ElectronCloudGEMAmplificationProcessor.cc:47