EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
RawTowerCalibration.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file RawTowerCalibration.h
1 #ifndef CALORECO_RAWTOWERCALIBRATION_H
2 #define CALORECO_RAWTOWERCALIBRATION_H
3 
4 #include <fun4all/SubsysReco.h>
5 
6 #include <phparameter/PHParameters.h>
7 
8 #include <iostream>
9 #include <string>
10 
11 class PHCompositeNode;
12 class RawTowerContainer;
14 
19 {
20  public:
21  RawTowerCalibration(const std::string &name = "RawTowerCalibration");
23  {
24  }
25 
26  int InitRun(PHCompositeNode *topNode) override;
27  int process_event(PHCompositeNode *topNode) override;
28  int End(PHCompositeNode *topNode) override;
29  void
30  Detector(const std::string &d)
31  {
32  detector = d;
34  }
35  void
36  TowerType(const int type)
37  {
38  _tower_type = type;
39  }
40 
42  {
45 
48 
51  };
52 
55  {
56  return _calib_algorithm;
57  }
58 
59  void
61  {
62  _calib_algorithm = calibAlgorithm;
63  }
64 
65  double
67  {
68  return _calib_const_GeV_ADC;
69  }
70 
71  void
72  set_calib_const_GeV_ADC(double calibConstGeVAdc)
73  {
74  _calib_const_GeV_ADC = calibConstGeVAdc;
75  }
76 
77  void
79  {
81  }
82 
83  std::string
85  {
87  }
88 
89  void
90  set_calib_tower_node_prefix(const std::string &calibTowerNodePrefix)
91  {
92  _calib_tower_node_prefix = calibTowerNodePrefix;
93  }
94 
95  double
97  {
98  return _pedstal_ADC;
99  }
100 
101  void
102  set_pedstal_ADC(double pedstalAdc)
103  {
104  _pedstal_ADC = pedstalAdc;
105  }
106 
107  void
109  {
111  }
112 
113  std::string
115  {
116  return _raw_tower_node_prefix;
117  }
118 
119  void
120  set_raw_tower_node_prefix(const std::string &rawTowerNodePrefix)
121  {
122  _raw_tower_node_prefix = rawTowerNodePrefix;
123  }
124 
125  void
127  {
128  std::cout << "RawTowerCalibration::set_zero_suppression_GeV is deprecated!" << std::endl
129  << " See discussion at https://github.com/sPHENIX-Collaboration/coresoftware/pull/867" << std::endl
130  << std::endl;
131  }
132 
134  PHParameters &
136  {
137  return _tower_calib_params;
138  }
139 
140  protected:
141  void
142  CreateNodes(PHCompositeNode *topNode);
143 
145 
149 
150  std::string detector;
151  std::string RawTowerNodeName;
152  std::string CaliTowerNodeName;
153  std::string TowerGeomNodeName;
154 
157 
159  double _pedstal_ADC;
160 
163 
166 
169 
172 
175 };
176 
177 #endif