MarlinTPC  1.2.0
PulseCounterProcessor.h
1 #ifndef PULSE_COUNTER_PROCESSOR_H
2 #define PULSE_COUNTER_PROCESSOR_H 1
3 
4 //LCIO
5 #include <lcio.h>
6 
7 //MARLIN
8 #include "marlin/Processor.h"
9 
10 namespace AIDA
11 {
12  class IHistogram1D;
13 }
14 
15 namespace marlintpc
16 {
17 
34  class PulseCounterProcessor : public marlin::Processor
35  {
36 
37  public:
38 
39  virtual Processor* newProcessor()
40  {
41  return new PulseCounterProcessor ;
42  }
43 
46 
49 
51  virtual void init();
52 
54  virtual void processRunHeader(lcio::LCRunHeader* run) ;
55 
57  virtual void processEvent(lcio::LCEvent * evt) ;
58 
59  protected:
60 
61  std::string _pulsesColName ;
62 
63  AIDA::IHistogram1D * _pulsesPerChannelHisto;
64 
65  int _nChannels;
66 
67  };
68 }// namespace
69 
70 #endif // ends definition of HIT_TRACK_CHARGE_PROCESSOR_H
Fills number of pulses per channel into AIDA histogram.
Definition: PulseCounterProcessor.h:34
~PulseCounterProcessor()
The Destructor.
Definition: PulseCounterProcessor.cc:53
virtual void processRunHeader(lcio::LCRunHeader *run)
RunHeader processing. Revision and parameter logging.
Definition: PulseCounterProcessor.cc:79
virtual void processEvent(lcio::LCEvent *evt)
Event processing. The working horse, histogram is filled here.
Definition: PulseCounterProcessor.cc:94
int _nChannels
Number of channels displayed in histogram.
Definition: PulseCounterProcessor.h:65
PulseCounterProcessor()
The constructor. Parameters will be registered here.
Definition: PulseCounterProcessor.cc:33
virtual void init()
Processor initialisation. Histogram is prepared here.
Definition: PulseCounterProcessor.cc:59
std::string _pulsesColName
The name of the input pulses collection.
Definition: PulseCounterProcessor.h:61
AIDA::IHistogram1D * _pulsesPerChannelHisto
Histogram for pulses per channel.
Definition: PulseCounterProcessor.h:63