MarlinTPC  1.2.0
HitAndTrackChargeProcessor.h
1 #ifndef HIT_TRACK_CHARGE_PROCESSOR_H
2 #define HIT_TRACK_CHARGE_PROCESSOR_H 1
3 
4 //LCIO
5 #include <lcio.h>
6 
7 //MARLIN
8 #include "marlin/Processor.h"
9 
10 namespace AIDA{
11  class IHistogram1D;
12 }
13 
14 
15 namespace marlintpc
16 {
17 
52  class HitAndTrackChargeProcessor : public marlin::Processor{
53 
54  public:
55 
56  virtual Processor* newProcessor() { return new HitAndTrackChargeProcessor ; }
57 
59 
61 
62  virtual void init();
63 
64  virtual void processRunHeader(lcio::LCRunHeader* run ) ;
65 
66  virtual void processEvent(lcio::LCEvent * evt ) ;
67 
68  protected:
69 
70  std::string _tracksColName ;
71  std::string _hitsColName ;
72 
73  std::vector<AIDA::IHistogram1D *> _chargePerTrackHistos;
74  std::vector<AIDA::IHistogram1D *> _dEdxHistos;
75  std::vector<AIDA::IHistogram1D *> _chargePerHitHistos;
76  std::vector<AIDA::IHistogram1D *> _chargePerHitOnTrackHistos;
77 
80  float _max_dEdx;
81  float _minZ;
82  float _maxZ;
83 
84  int _nZBins;
85 
86  float _zBinWidth;
87 
88  };
89 }
90 
91 #endif // HIT_TRACK_CHARGE_PROCESSOR_H
Fill charge per hit and per track length into AIDA histograms.
Definition: HitAndTrackChargeProcessor.h:52
float _minZ
Minimum z value of lowest bin.
Definition: HitAndTrackChargeProcessor.h:81
float _maxChargePerTrack
Maximum value in ChargePerHit histogram.
Definition: HitAndTrackChargeProcessor.h:79
int _nZBins
Number of z bins.
Definition: HitAndTrackChargeProcessor.h:84
float _maxZ
Maximum z value of lowest bin.
Definition: HitAndTrackChargeProcessor.h:82
std::string _tracksColName
the name of the input tracks collection
Definition: HitAndTrackChargeProcessor.h:70
std::string _hitsColName
the name of the input hits collection
Definition: HitAndTrackChargeProcessor.h:71
std::vector< AIDA::IHistogram1D * > _dEdxHistos
dEdx of the track histos vector
Definition: HitAndTrackChargeProcessor.h:74
std::vector< AIDA::IHistogram1D * > _chargePerHitHistos
charge per hit histos vector
Definition: HitAndTrackChargeProcessor.h:75
float _max_dEdx
Maximum value in dEdx histogram.
Definition: HitAndTrackChargeProcessor.h:80
std::vector< AIDA::IHistogram1D * > _chargePerTrackHistos
charge per track histos vector
Definition: HitAndTrackChargeProcessor.h:73
std::vector< AIDA::IHistogram1D * > _chargePerHitOnTrackHistos
charge per hit for hits on tracks only histos vector
Definition: HitAndTrackChargeProcessor.h:76
float _maxChargePerHit
Maximum value in ChargePerHit histograms.
Definition: HitAndTrackChargeProcessor.h:78