You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
std::string prefix = "trackTuner"; // JSON group name
66
+
o2::framework::Configurable<bool> cfgDebugInfo{"debugInfo", false, "Flag to switch on the debug printout"};
67
+
o2::framework::Configurable<bool> cfgUpdateTrackDCAs{"updateTrackDCAs", false, "Flag to enable the DCA smearing"};
68
+
o2::framework::Configurable<bool> cfgUpdateTrackCovMat{"updateTrackCovMat", false, "Flag to enable the DCA covariance-matrix smearing"};
69
+
o2::framework::Configurable<bool> cfgUpdateCurvature{"updateCurvature", false, "Flag to enable the Q/Pt smearing after the propagation to the production point"};
70
+
o2::framework::Configurable<bool> cfgUpdateCurvatureIU{"updateCurvatureIU", false, "Flag to enable the Q/Pt smearing before the propagation to the production point"};
71
+
o2::framework::Configurable<bool> cfgUpdatePulls{"updatePulls", false, "Flag to enable the pulls smearing"};
72
+
o2::framework::Configurable<bool> cfgIsInputFileFromCCDB{"isInputFileFromCCDB", false, "True: files from CCDB; False: fils from local path (debug)"};
73
+
o2::framework::Configurable<std::string> cfgPathInputFile{"pathInputFile", "", "Path to file containing DCAxy, DCAz graphs from data and MC"};
74
+
o2::framework::Configurable<std::string> cfgNameInputFile{"nameInputFile", "", "Name of the file containing DCAxy, DCAz graphs from data and MC"};
75
+
o2::framework::Configurable<std::string> cfgPathFileQoverPt{"pathFileQoverPt", "", "Path to file containing Q/Pt correction graphs from data and MC"};
76
+
o2::framework::Configurable<std::string> cfgNameFileQoverPt{"nameFileQoverPt", "", "Name of file containing Q/Pt correction graphs from data and MC"};
77
+
o2::framework::Configurable<bool> cfgUsePvRefitCorrections{"usePvRefitCorrections", false, "Flag to establish whether to use corrections obtained with or w/o PV refit"};
78
+
o2::framework::Configurable<float> cfgQOverPtMC{"qOverPtMC", -1., "Scaling factor on q/pt of MC"};
79
+
o2::framework::Configurable<float> cfgQOverPtData{"qOverPtData", -1., "Scaling factor on q/pt of data"};
80
+
59
81
///////////////////////////////
60
82
/// parameters to be configured
61
83
bool debugInfo = false;
@@ -66,13 +88,15 @@ struct TrackTuner {
66
88
bool updatePulls = false;
67
89
bool isInputFileFromCCDB = false; // query input file from CCDB or local folder
68
90
std::string pathInputFile = ""; // Path to file containing DCAxy, DCAz graphs from data and MC
69
-
std::string nameInputFile = ""; //Common Name of different files containing graphs, found in the above paths
70
-
std::string pathFileQoverPt = ""; // Path to file containing D0 sigma graphs from data and MC
91
+
std::string nameInputFile = ""; // Name of the file containing DCAxy, DCAz graphs from data and MC
92
+
std::string pathFileQoverPt = ""; // Path to file containing Q/Pt correction graphs from data and MC (only one proxy provided, i.e. D0 sigma graphs from data and MC)
71
93
std::string nameFileQoverPt = ""; // file name containing Q/Pt correction graphs from data and MC
72
94
bool usePvRefitCorrections = false; // establish whether to use corrections obtained with or w/o PV refit
/// @brief Function to configure the TrackTuner parameters
125
+
/// @brief Function doing a few sanity-checks on the configurations
126
+
voidcheckConfig()
127
+
{
128
+
/// check configuration source
129
+
if (isConfigFromString && isConfigFromConfigurables) {
130
+
LOG(fatal) << " [ isConfigFromString==kTRUE and isConfigFromConfigurables==kTRUE ] Configuration done both via string and via configurables -> Only one of them can be set to kTRUE at once! Please refer to the trackTuner documentation.";
131
+
}
132
+
/// check Q/pt update
133
+
if ((updateCurvatureIU) && (updateCurvature)) {
134
+
LOG(fatal) << " [ updateCurvatureIU==kTRUE and updateCurvature==kTRUE ] -> Only one of them can be set to kTRUE at once! Please refer to the trackTuner documentation.";
135
+
}
136
+
}
137
+
138
+
/// @brief Function to configure the TrackTuner parameters with an input string
102
139
/// @param inputString Input string with all parameter configuration. Format: <name>=<value>|<name>=<value>
103
140
/// @return String with the values of all parameters after configurations are listed, to cross check that everything worked well
LOG(fatal) << " [ updateCurvatureIU==kTRUE and updateCurvature==kTRUE ] -> Only one of them can be set to kTRUE at once! Please refer to the trackTuner documentation.";
299
-
}
341
+
/// declare that the configuration is done via an input string
342
+
isConfigFromString = true;
343
+
344
+
/// sanity-checks on the configurations
345
+
checkConfig();
346
+
347
+
return outputString;
348
+
}
349
+
350
+
/// @brief Function to configure the TrackTuner parameters with an input string
351
+
/// @return String with the values of all parameters after configurations are listed, to cross check that everything worked well
0 commit comments