MarlinTrkProcessors  2.4.1
SimpleCylinderDigiProcessor.h
1 #ifndef SimpleCylinderDigiProcessor_h
2 #define SimpleCylinderDigiProcessor_h 1
3 
4 #include "marlin/Processor.h"
5 
6 #include "lcio.h"
7 
8 #include <string>
9 #include <vector>
10 
11 #include <gsl/gsl_rng.h>
12 
13 
14 using namespace lcio ;
15 using namespace marlin ;
16 
17 
50 class SimpleCylinderDigiProcessor : public Processor {
51 
52 public:
53 
54  virtual Processor* newProcessor() { return new SimpleCylinderDigiProcessor ; }
55 
56 
58 
62  virtual void init() ;
63 
66  virtual void processRunHeader( LCRunHeader* run ) ;
67 
70  virtual void processEvent( LCEvent * evt ) ;
71 
72 
73  virtual void check( LCEvent * evt ) ;
74 
75 
78  virtual void end() ;
79 
80  // find phi in correct range, taken from gear::VXDParameters
81  double correctPhiRange( double Phi ) const ;
82 
83  // void fillMapTVolumeChildren(TGeoVolume* volume) ;
84 
85 protected:
86 
87  std::string _inColName ;
88 
89  std::string _outColName ;
90  std::string _outRelColName ;
91 
92  std::string _gearParametersName;
93 
94  int _sub_det_id ;
95 
96  int _nRun ;
97  int _nEvt ;
98 
99  float _pointResoRPhi ;
100  float _pointResoZ ;
101 
102  bool _hits_encoded_with_cellID;
103 
104  gsl_rng* _rng ;
105 
106 
107 } ;
108 
109 #endif
110 
111 
112 
======= SimpleCylinderDigiProcessor ========== Creates TrackerHits from SimTrackerHits, smearing them according to the input parameters.
Definition: SimpleCylinderDigiProcessor.h:50