Belle II Software  release-08-01-10
CDCGeoControlPar.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <string>
12 
13 namespace Belle2 {
18  namespace CDC {
20 
23 
24  public:
25 
27  virtual ~CDCGeoControlPar();
28 
30 
33  static CDCGeoControlPar& getInstance();
34 
38  void setDebug(bool onoff)
39  {
40  m_debug = onoff;
41  }
42 
46  void setPrintMaterialTable(bool onoff)
47  {
48  m_printMaterialTable = onoff;
49  }
50 
54  void setMaterialDefinitionMode(int input)
55  {
57  }
58 
62  void setSenseWireZposMode(int input)
63  {
64  m_senseWireZposMode = input;
65  }
66 
70  void setDisplacement(bool input)
71  {
72  m_displacement = input;
73  }
74 
78  void setAlignment(bool input)
79  {
80  m_alignment = input;
81  }
82 
86  void setMisalignment(bool input)
87  {
88  m_misalignment = input;
89  }
90 
94  void setDisplacementInputType(bool input)
95  {
97  }
98 
102  void setAlignmentInputType(bool input)
103  {
104  m_alignmentInputType = input;
105  }
106 
110  void setMisalignmentInputType(bool input)
111  {
112  m_misalignmentInputType = input;
113  }
114 
118  void setXtInputType(bool input)
119  {
120  m_xtInputType = input;
121  }
122 
126  void setSigmaInputType(bool input)
127  {
128  m_sigmaInputType = input;
129  }
130 
134  void setFFactorInputType(bool input)
135  {
136  m_fFactorInputType = input;
137  }
138 
142  void setPropSpeedInputType(bool input)
143  {
144  m_propSpeedInputType = input;
145  }
146 
150  void setT0InputType(bool input)
151  {
152  m_t0InputType = input;
153  }
154 
158  void setTwInputType(bool input)
159  {
160  m_twInputType = input;
161  }
162 
166  void setBwInputType(bool input)
167  {
168  m_bwInputType = input;
169  }
170 
174  void setChMapInputType(bool input)
175  {
176  m_chMapInputType = input;
177  }
178 
182  void setEDepToADCInputType(bool input)
183  {
184  m_eDepToADCInputType = input;
185  }
186 
190  void setDisplacementFile(const std::string& input)
191  {
192  m_displacementFile = input;
193  }
194 
198  void setAlignmentFile(const std::string& input)
199  {
200  m_alignmentFile = input;
201  }
202 
206  void setMisalignmentFile(const std::string& input)
207  {
208  m_misalignmentFile = input;
209  }
210 
214  void setXtFile(const std::string& input)
215  {
216  m_xtFile = input;
217  }
218 
222  void setSigmaFile(const std::string& input)
223  {
224  m_sigmaFile = input;
225  }
226 
230  void setFFactorFile(const std::string& input)
231  {
232  m_fFactorFile = input;
233  }
234 
238  void setPropSpeedFile(const std::string& input)
239  {
240  m_propSpeedFile = input;
241  }
242 
246  void setT0File(const std::string& input)
247  {
248  m_t0File = input;
249  }
250 
254  void setTwFile(const std::string& input)
255  {
256  m_twFile = input;
257  }
258 
262  void setBwFile(const std::string& input)
263  {
264  m_bwFile = input;
265  }
266 
270  void setChMapFile(const std::string& input)
271  {
272  m_chMapFile = input;
273  }
274 
278  void setEDepToADCFile(const std::string& input)
279  {
280  m_eDepToADCFile = input;
281  }
282 
287  {
289  }
290 
295  {
297  }
298 
302  void setMapperGeometry(bool torf)
303  {
304  m_mapperGeometry = torf;
305  }
306 
310  void setMapperPhiAngle(double phi)
311  {
312  m_mapperPhiAngle = phi;
313  }
314 
315 
319  bool getDebug() const
320  {
321  return m_debug;
322  }
323 
328  {
329  return m_printMaterialTable;
330  }
331 
336  {
338  }
339 
344  {
345  return m_senseWireZposMode;
346  }
347 
351  bool getDisplacement() const
352  {
353  return m_displacement;
354  }
355 
359  bool getAlignment() const
360  {
361  return m_alignment;
362  }
363 
367  bool getMisalignment() const
368  {
369  return m_misalignment;
370  }
371 
376  {
378  }
379 
384  {
385  return m_alignmentInputType;
386  }
387 
392  {
394  }
395 
400  {
401  return m_xtInputType;
402  }
403 
408  {
409  return m_sigmaInputType;
410  }
411 
416  {
417  return m_fFactorInputType;
418  }
419 
424  {
425  return m_propSpeedInputType;
426  }
427 
432  {
433  return m_t0InputType;
434  }
435 
440  {
441  return m_twInputType;
442  }
443 
448  {
449  return m_bwInputType;
450  }
451 
456  {
457  return m_chMapInputType;
458  }
459 
464  {
465  return m_eDepToADCInputType;
466  }
467 
471  std::string getDisplacementFile() const
472  {
473  return m_displacementFile;
474  }
475 
479  std::string getAlignmentFile() const
480  {
481  return m_alignmentFile;
482  }
483 
487  std::string getMisalignmentFile() const
488  {
489  return m_misalignmentFile;
490  }
491 
495  std::string getXtFile() const
496  {
497  return m_xtFile;
498  }
499 
503  std::string getSigmaFile() const
504  {
505  return m_sigmaFile;
506  }
507 
511  std::string getFFactorFile() const
512  {
513  return m_fFactorFile;
514  }
515 
519  std::string getPropSpeedFile() const
520  {
521  return m_propSpeedFile;
522  }
523 
527  std::string getT0File() const
528  {
529  return m_t0File;
530  }
531 
535  std::string getTwFile() const
536  {
537  return m_twFile;
538  }
539 
543  std::string getBwFile() const
544  {
545  return m_bwFile;
546  }
547 
551  std::string getChMapFile() const
552  {
553  return m_chMapFile;
554  }
555 
559  std::string getEDepToADCFile() const
560  {
561  return m_eDepToADCFile;
562  }
563 
568  {
570  }
571 
576  {
578  }
579 
584  {
585  return m_mapperGeometry;
586  }
587 
592  {
593  return m_mapperPhiAngle;
594  }
595 
596  private:
603 
604  bool m_debug = false;
605  bool m_printMaterialTable = false;
610  bool m_displacement = true;
611  bool m_alignment = true;
612  bool m_misalignment = false;
615  bool m_alignmentInputType = true;
617  bool m_xtInputType = true;
618  bool m_sigmaInputType = true;
619  bool m_fFactorInputType = true;
620  bool m_propSpeedInputType = true;
621  bool m_t0InputType = true;
622  bool m_twInputType = true;
623  bool m_bwInputType = true;
624  bool m_chMapInputType = true;
625  bool m_eDepToADCInputType = true;
629  bool m_mapperGeometry = false;
630  double m_mapperPhiAngle = 16.7;
632  std::string m_displacementFile = "displacement_v2.2.1.dat";
633  std::string m_alignmentFile = "alignment_v2.dat";
634  std::string m_misalignmentFile = "misalignment_v2.dat";
635  std::string m_xtFile = "xt_v3_chebyshev.dat.gz";
636  std::string m_sigmaFile = "sigma_v2.dat";
637  std::string m_fFactorFile = "fFactor.dat";
638  std::string m_propSpeedFile = "propspeed_v0.dat";
639  std::string m_t0File = "t0_v1.dat";
640  std::string m_twFile = "tw_off.dat";
641  std::string m_bwFile = "badwire_v1.dat";
642  std::string m_chMapFile = "ch_map.dat";
643  std::string m_eDepToADCFile = "edeptoadc.dat";
646  };
647 
648  } // end of namespace CDC
650 } // end of namespace Belle2
The Class for CDC Geometry Control Parameters.
int m_materialDefinitionMode
Material definition mode.
void setPropSpeedFile(const std::string &input)
Set input file name for prop-speed.
bool getDebug() const
Get debug flag.
bool getSigmaInputType()
Get input type for sigma.
bool getPrintMaterialTable() const
Get printMaterialTable flag.
bool getMisalignmentInputType()
Get input type for wire misalignment.
bool m_chMapInputType
Input type for channel map.
CDCGeoControlPar(const CDCGeoControlPar &)
Singleton class.
void setBwInputType(bool input)
Set input type for bad wire.
bool m_alignment
Switch for alignment.
void setXtFile(const std::string &input)
Set input file name for xt-relation.
std::string getT0File() const
Get input file name for t0.
std::string m_displacementFile
Displacement file.
double m_addFudgeFactorForSigmaForMC
Additional fudge factor for space resol.
std::string m_fFactorFile
Fudge factor file.
void setSenseWireZposMode(int input)
Set sense wire zpos mode.
bool m_alignmentInputType
Input type for alignment.
bool getDisplacementInputType()
Get input type for wire displacement.
std::string m_chMapFile
Channel map file.
void setPrintMaterialTable(bool onoff)
Set printMaterialTable flag.
void setDebug(bool onoff)
Set debug flag.
void setChMapFile(const std::string &input)
Set input file name for channel map.
double getAddFudgeFactorForSigmaForMC() const
Get additional fudge factor for space resol for MC.
std::string getEDepToADCFile() const
Get input file name for edeptoadc.
void setXtInputType(bool input)
Set input type for xt.
double m_addFudgeFactorForSigmaForData
Additional fudge factor for space resol.
std::string getDisplacementFile() const
Get input file name for wire displacement.
void setT0InputType(bool input)
Set input type for t0.
std::string getMisalignmentFile() const
Get input file name for wire misalignment.
void setMaterialDefinitionMode(int input)
Set material defition mode.
bool m_displacementInputType
Input type for displacement.
void setFFactorInputType(bool input)
Set input type for fudge factor.
std::string getAlignmentFile() const
Get input file name for wire alignment.
bool m_bwInputType
Input type for bad wire.
void setMapperGeometry(bool torf)
Set mapper geometry flag.
bool getAlignmentInputType()
Get input type for wire alignment.
void setAlignmentInputType(bool input)
Set input type for wire alignment.
std::string m_misalignmentFile
Misalignment file.
double getMaterialDefinitionMode() const
Get material definition mode.
std::string getPropSpeedFile() const
Get input file name for prop-speed.
bool m_xtInputType
Input type for xt.
bool m_debug
Switch for debug printing.
void setTwFile(const std::string &input)
Set input file name for time-walk.
virtual ~CDCGeoControlPar()
Destructor.
bool getT0InputType()
Get input type for t0.
bool getEDepToADCInputType()
Get input type for edeptoadc.
void setAddFudgeFactorForSigmaForData(double input)
Set additional fudge factor for space resol.
std::string getSigmaFile() const
Get input file name for sigma.
void setMapperPhiAngle(double phi)
Set mapper phi-angle (deg.)
bool getAlignment() const
Get alignment switch.
bool m_eDepToADCInputType
Input type for edep-to-adc.
std::string m_eDepToADCFile
Edep-to-adc file.
void setSigmaFile(const std::string &input)
Set input file name for sigma.
bool m_displacement
Switch for displacement.
void setTwInputType(bool input)
Set input type for time-walk.
void setMisalignmentFile(const std::string &input)
Set input file name for wire misalignment.
bool getMisalignment() const
Get misalignment switch.
bool m_printMaterialTable
Switch for printing the G4 material table.
std::string m_twFile
Time walk file.
void setAlignmentFile(const std::string &input)
Set input file name for wire alignment.
void setAddFudgeFactorForSigmaForMC(double input)
Set additional fudge factor for space resol.
std::string m_propSpeedFile
Prop-apeed file.
void setMisalignment(bool input)
Set misalignment switch.
bool getDisplacement() const
Get displacement switch.
CDCGeoControlPar & operator=(const CDCGeoControlPar &)
Singleton class.
void setDisplacement(bool input)
Set displacement switch.
void setT0File(const std::string &input)
Set input file name for t0.
std::string m_sigmaFile
Sigma file.
std::string m_bwFile
Bad wire file.
void setDisplacementInputType(bool input)
Set input type for wire displacement.
bool m_misalignmentInputType
Input type for misalignment.
static CDCGeoControlPar * m_pntr
Pointer that saves the instance of this class.
void setEDepToADCFile(const std::string &input)
Set input file name for edep-to-adc.
bool getMapperGeometry()
Get mapper geometry flag.
std::string m_alignmentFile
Alignment file.
int getSenseWireZposMode() const
Get sense wire z position mode.
bool m_propSpeedInputType
Input type for prop.
double getAddFudgeFactorForSigmaForData() const
Get additional fudge factor for space resol for data.
std::string getXtFile() const
Get input file name for xt-relation.
double getMapperPhiAngle()
Get mapper phi-angle.
void setEDepToADCInputType(bool input)
Set input type for edep-to-adc.
bool m_misalignment
Switch for misalignment.
bool getTwInputType()
Get input type for time-walk.
std::string getBwFile() const
Get input file name for badwire.
void setMisalignmentInputType(bool input)
Set input type for wire misalignment.
std::string getFFactorFile() const
Get input file name for fudge factor.
void setSigmaInputType(bool input)
Set input type for sigma.
bool m_mapperGeometry
B-field mapper geometry flag.
bool getChMapInputType()
Get input type for channel map.
void setDisplacementFile(const std::string &input)
Set input file name for wire displacement.
std::string getTwFile() const
Get input file name for time-walk.
double m_mapperPhiAngle
B-field mapper phi-angle (deg).
void setFFactorFile(const std::string &input)
Set input file name for fudge factor.
bool m_t0InputType
Input type for t0.
bool getFFactorInputType()
Get input type for fuge factor.
bool getXtInputType()
Get input type for xt.
bool getBwInputType()
Get input type for bad wire.
bool m_twInputType
Input type for time-walk.
bool getPropSpeedInputType()
Get input type for prop.
void setAlignment(bool input)
Set alignment switch.
int m_senseWireZposMode
Sense wire z postion mode.
bool m_sigmaInputType
Input type for sigma.
void setPropSpeedInputType(bool input)
Set input type for prop.
bool m_fFactorInputType
Input type for fudge factor.
static CDCGeoControlPar & getInstance()
Static method to get a reference to the CDCGeoControlPar instance.
void setChMapInputType(bool input)
Set input type for channel map.
std::string getChMapFile() const
Get input file name for channel map.
CDCGeoControlPar()
Singleton class.
void setBwFile(const std::string &input)
Set input file name for bad wire.
Abstract base class for different kinds of events.