MarlinTPC  1.2.0
PulsePerHitProcessor.h
1 #ifndef PULSEPERHITPROCESSOR_H
2 #define PULSEPERHITPROCESSOR_H
3 
4 #include <marlin/Processor.h>
5 #include <lcio.h>
6 #include <string>
7 #include <map>
8 #include <utility>
9 #include <cstdlib>
10 
11 //GEAR
12 #include "gear/TPCParameters.h"
13 
14 // Aida
15 #ifdef MARLIN_USE_AIDA
16 //AIDA
17 #include <marlin/AIDAProcessor.h>
18 #endif
19 
20 //ROOT
21 #include "TH1.h"
22 #include "TH1D.h"
23 
24 namespace marlintpc
25 {
35 class PulsePerHitProcessor : public marlin::Processor
36 {
37  public:
38 
39  virtual Processor* newProcessor() { return new PulsePerHitProcessor; }
40 
42 
43  virtual void init();
44 
45  virtual void processRunHeader(lcio::LCRunHeader* run);
46 
47  virtual void processEvent(lcio::LCEvent* evt);
48 
49  virtual void check(lcio::LCEvent* evt);
50 
51  virtual void end();
52 
53 
54  protected:
55  /* the place for protected and private member data and functions */
56  std::string _inputColName;
57 
60 
61  std::map< std::pair<int,int>, TH1*> _pulsesPerHitPerRowHistos;
62 
64 
65  const gear::TPCParameters* _gearParameters;
66 
67 };
68 } // namespace marlintpc
69 #endif // PULSEPERHITPROCESSOR_H
This processor creates histograms for the number of pulses per hit and for the charge of the pulses...
Definition: PulsePerHitProcessor.h:35
float _pulsesPerHitHistoMin
Minimum of the histogram for the pulses per hit.
Definition: PulsePerHitProcessor.h:58
std::map< std::pair< int, int >, TH1 * > _pulsesPerHitPerRowHistos
histograms for pulses per hit in each row
Definition: PulsePerHitProcessor.h:61
float _pulsesPerHitHistoMax
Maximum of the histogram for the pulses per hit.
Definition: PulsePerHitProcessor.h:59
std::string _inputColName
Name of the input collection.
Definition: PulsePerHitProcessor.h:56
TH1D * _pulsesPerHitHisto
histogram for the pulses per hit
Definition: PulsePerHitProcessor.h:63