1 #ifndef DIGITIZER_LDCCALODIGI_H
2 #define DIGITIZER_LDCCALODIGI_H 1
4 #include "marlin/Processor.h"
5 #include <IMPL/CalorimeterHitImpl.h>
10 using namespace lcio ;
11 using namespace marlin ;
13 const int MAX_LAYERS = 200;
14 const int MAX_STAVES = 16;
75 virtual Processor* newProcessor() {
return new LDCCaloDigi ; }
82 virtual void processRunHeader( LCRunHeader* run ) ;
84 virtual void processEvent( LCEvent * evt ) ;
86 virtual void check( LCEvent * evt ) ;
90 virtual void fillECALGaps() ;
98 std::vector<std::string> _ecalCollections{};
99 std::vector<std::string> _hcalCollections{};
101 std::string _outputEcalCollection{};
102 std::string _outputHcalCollection{};
103 std::string _outputRelCollection{};
105 float _thresholdEcal{};
106 float _thresholdHcal{};
111 std::vector<float> _calibrCoeffEcal{};
112 std::vector<float> _calibrCoeffHcal{};
114 std::vector<int> _ecalLayers{};
115 std::vector<int> _hcalLayers{};
117 int _ecalGapCorrection{};
118 float _ecalGapCorrectionFactor{};
119 float _ecalModuleGapCorrectionFactor{};
120 float _ecalEndcapCorrectionFactor{};
122 std::vector<CalorimeterHitImpl*> _calHitsByStaveLayer[MAX_STAVES][MAX_LAYERS];
123 std::vector<int> _calHitsByStaveLayerModule[MAX_STAVES][MAX_LAYERS];
125 float _zOfEcalEndcap{};
126 float _barrelPixelSizeT[MAX_LAYERS]{};
127 float _barrelPixelSizeZ[MAX_LAYERS]{};
128 float _endcapPixelSizeX[MAX_LAYERS]{};
129 float _endcapPixelSizeY[MAX_LAYERS]{};
130 float _barrelStaveDir[MAX_STAVES][2]{};
=== LDCCaloDigi Processor === Simple calorimeter digitizer Processor.
Definition: LDCCaloDigi.h:68