BOSS 7.0.5
BESIII Offline Software System
Loading...
Searching...
No Matches
CalibModel Class Reference

Public Member Functions

 CalibModel ()
 

Detailed Description

Provides convenience definitions of strings which are paths to calibration data in the TDDS. The class has no data members. The strings it initializes are just "there"; existing in this module and extern everywhere else (see the fancy footwork in CalibModel.h). The single static instance of CalibModel declared in this file causes the constructor to be run, initializing the strings, and a vector of pairs. The pairs are used to match each string with the appropriate Gaudi class id.

NOTE: This scheme might have to be revised. We haven't dealt with different instruments, nor with flavors. Assuming, as seems likely, that we never have to keep track of constants for more than one instrument simultaneously (most likely not even sequentially within a single job), we can leave any mention of instrument out of these paths. If we want to preserve the possibility of maintaining more than one flavor simultaneously, flavor will have to be part of the path string. We could tack it on the end dynamically without having to do any violence to what we've got below.

Definition at line 48 of file CalibModel.cxx.

Constructor & Destructor Documentation

◆ CalibModel()

CalibModel::CalibModel ( )
inline

The constructor sets values into the externally-accessible string variables

Definition at line 52 of file CalibModel.cxx.

52 {
53 // Initialize a bunch of strings here
54 // First few are just for convenience in assembling the
55 // the rest; no need for them to be public.
56 std::string root = "/Calib";
57 std::string test = root + "/Test";
58 std::string nas = root + "/NAS";
59 std::string Mdc = root + "/Mdc";
60 std::string Tof = root + "/Tof";
61 std::string Dedx = root + "/Dedx";
62 std::string Emc = root + "/Emc";
63 std::string Muc = root + "/Muc";
64 std::string EsTime = root + "/EsTime";
65 std::string EstTof = root + "/EstTof";
66 // Practically all of these don't exist in any shape or form,
67 // but go ahead an reserve names anyway.
68
69
70 CalibData::Test_Gen = test + "_Gen";
71 CalibData::Test_1 = test + "_1";
72
73 //the Mdc nodes
74
75 CalibData::MdcCal = Mdc + "Cal";
76 CalibData::TofCal = Tof + "Cal";
77 CalibData::DedxCal = Dedx + "Cal";
78 CalibData::EmcCal = Emc + "Cal";
79 CalibData::MucCal = Muc + "Cal";
80 CalibData::EsTimeCal = EsTime + "Cal";
81 CalibData::EstTofCal = EstTof + "Cal";
82 CalibData::MdcAlign = Mdc+"Align";
83 CalibData::TofQElec="/Calib/TofQElec";
84 CalibData::TofSim="/Calib/TofSim";
85 CalibData::DedxSim="/Calib/DedxSim";
86 CalibData::MdcDataConstant = Mdc+"DataConst";
87
88 // Use same class for hot strips, dead strips or (merged) bad strips,
89 // but different path in TDDS
90
91 CalibData::pairs.push_back(std::make_pair(CalibData::MdcCal,
93 CalibData::pairs.push_back(std::make_pair(CalibData::TofCal,
95 CalibData::pairs.push_back(std::make_pair(CalibData::DedxCal,
97 CalibData::pairs.push_back(std::make_pair(CalibData::EmcCal,
99 CalibData::pairs.push_back(std::make_pair(CalibData::MucCal,
101 CalibData::pairs.push_back(std::make_pair(CalibData::EsTimeCal,
103 CalibData::pairs.push_back(std::make_pair(CalibData::EstTofCal,
105 CalibData::pairs.push_back(std::make_pair(CalibData::MdcAlign,
107 CalibData::pairs.push_back(std::make_pair(CalibData::TofQElec,
109 CalibData::pairs.push_back(std::make_pair(CalibData::TofSim,
111 CalibData::pairs.push_back(std::make_pair(CalibData::DedxSim,
113 CalibData::pairs.push_back(std::make_pair(CalibData::MdcDataConstant,
115
116
117 }
std::string nas
Definition: CalibModel.cxx:44
std::string test
Definition: CalibModel.cxx:43
std::string root
Definition: CalibModel.cxx:39

The documentation for this class was generated from the following file: