"MarlinReco"  1.32.0
VTXNoiseClusters.h
1 #ifndef VTXNoiseClusters_h
2 #define VTXNoiseClusters_h 1
3 
4 
5 //#ifdef USE_ROOT
6 // we need some root histograms with cluster size distribution for this processor
7 
8 #include "marlin/Processor.h"
9 #include "marlin/EventModifier.h"
10 #include "lcio.h"
11 #include <string>
12 #include <vector>
13 #include <gsl/gsl_rng.h>
14 
15 #include "TH2F.h"
16 #include "TFile.h"
17 
18 #ifdef MARLIN_USE_AIDA
19 #include <AIDA/AIDA.h>
20 typedef std::vector< AIDA::IHistogram1D* > Hist1DVec ;
21 typedef std::vector< AIDA::IHistogram2D* > Hist2DVec ;
22 #endif
23 
24 using namespace lcio ;
25 using namespace marlin ;
26 
27 class VXDGeometry ;
28 
29 
48 class VTXNoiseClusters : public Processor, public EventModifier{
49 
50  public:
51  VTXNoiseClusters(const VTXNoiseClusters&) = delete;
52  VTXNoiseClusters& operator=(const VTXNoiseClusters&) = delete;
53 
54  virtual Processor* newProcessor() { return new VTXNoiseClusters ; }
55 
56 
58 
59  virtual const std::string & name() const { return Processor::name() ; }
60 
64  virtual void init() ;
65 
68  virtual void processRunHeader( LCRunHeader* run ) ;
69 
72  void modifyEvent( LCEvent * evt ) ;
73 
74  virtual void processEvent( LCEvent * evt ) ;
75 
76 
77  virtual void check( LCEvent * evt ) ;
78 
79 
82  virtual void end() ;
83 
84 
85  protected:
86 
87  std::string _colNameVTX{};
88  FloatVec _densities{};
89  StringVec _rootNames{};
90 // float _pointResoRPhiVTX ;
91 // float _pointResoZVTX ;
92  int _ranSeed{};
93 
94  int _nRun{};
95  int _nEvt{};
96 
97  gsl_rng* _rng{};
98  VXDGeometry* _vxdGeo{};
99 
100  std::vector<TH2F*> _hist{};
101  TFile* _hfile{};
102 
103 #ifdef MARLIN_USE_AIDA
104  Hist1DVec _hist1DVec{};
105  Hist2DVec _hist2DVec{};
106 #endif
107 
108 } ;
109 
110 #endif
111 //#endif // USE_ROOT
======= VXDGeometry ========== Helper class for VXD geomtry transformations: from lab frame to ladd...
Definition: VXDGeometry.h:49
======= VTXNoiseClusters ========== Adds random noise hits to collection of SimTrackerHits of the v...
Definition: VTXNoiseClusters.h:48