All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups
SimpleFCalDigi.h
Go to the documentation of this file.
1 #ifndef SimpleFCalDigi_H
2 #define SimpleFCalDigi_H 1
3 
4 #include "marlin/Processor.h"
5 #include "lcio.h"
6 #include <string>
7 #include <vector>
8 
9 using namespace lcio ;
10 using namespace marlin ;
11 
12 
13 /**
14 \addtogroup CaloDigi CaloDigi
15 @{
16 
17 \addtogroup SimpleFCalDigi SimpleFCalDigi
18 @{
19 Simple calorimeter digitizer for the LCal Processor.
20 === SimpleFCalDigi Processor === <br>
21  * Simple calorimeter digitizer for the LCal Processor. <br>
22  * Converts SimCalorimeterHit collections to one
23  * CalorimeterHit collection applying a threshold and an calibration constant...
24  */
25 
26 class SimpleFCalDigi : public Processor {
27 
28  public:
29 
30  virtual Processor* newProcessor() { return new SimpleFCalDigi ; }
31 
32 
33  SimpleFCalDigi() ;
34 
35  virtual void init() ;
36 
37  virtual void processRunHeader( LCRunHeader* run ) ;
38 
39  virtual void processEvent( LCEvent * evt ) ;
40 
41 
42  virtual void check( LCEvent * evt ) ;
43 
44 
45  virtual void end() ;
46 
47 
48  protected:
49 
50  int _nRun{};
51  int _nEvt{};
52 
53  std::vector<std::string> _fcalCollections{};
54 
55  std::string _outputFcalCollection{};
56  std::string _outputRelCollection{};
57 
58  std::string _cellIDLayerString{};
59 
60  std::string _defaultEncoding{};
61  std::string _caloLayout{};
62  std::string _caloID{};
63  std::string _caloType{};
64 
65  float _thresholdFcal{};
66  float _calibrCoeffFcal{};
67  bool _fixLCalHits{};
68 
69  float xing_angle{};
70  float zMin{};
71  float dZ{};
72  float rMin{};
73  float cellDimR{};
74  float cellDimPhi{};
75  float WThickness{};
76 
77 } ;
78 
79 /** @} @}*/
80 
81 #endif
virtual Processor * newProcessor()