52{
56
65
66 try {
67
68 JParser<> zap(
"Auxiliary application to plot PMT parameters.");
69
71 zap[
'P'] =
make_field(inputFile,
"PMT calibration data file(s)");
73 zap[
'r'] =
make_field(
regexp,
"regular expresion to extract bin labels for the x-axis") =
"";
78
80 }
81 catch(const exception &error) {
83 }
84
86
87 try {
89 }
92 }
93
96 }
97
99
102 }
103
104
106
109 NUMBER_OF_PMTS, -0.5, NUMBER_OF_PMTS - 0.5));
110
112
114
116
118
120
121 if(i%n == 0)
122 manager->GetXaxis()->SetBinLabel(i+1 ,
parse(buffer, TString(inputFile[i].c_str())));
123 else
124 manager->GetXaxis()->SetBinLabel(i+1 ,
" ");
125 }
126 }
127
129
131
132 for (int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
133
135
137
139
140 for (JProperties::const_iterator p = properties.begin(); p != properties.end(); ++p) {
141
142 double value = 0.0;
143
144 try { value = (p->second.getValue<const double>()); } catch(const exception& error) {}
145 try { value = (p->second.getValue<const bool>() ? 1.0 : 0.0); } catch(const exception& error) {}
146
147 if (i == 0) { buffer[p->first] = value; }
148 if (
relative) { value -= buffer[p->first]; }
149
151 }
152
153 double value = getEfficiency(parameters[i].getPMTParameters(
JPMTIdentifier(
module->getID(), pmt)));
154
157
159 }
160 }
161 }
162
163 for (JManager<string, TH2D>::iterator i =
manager.begin(); i !=
manager.end(); ++i) {
165 }
166
168
170
171 for (JManager<string, TH2D>::iterator i =
manager.begin(); i !=
manager.end(); ++i) {
172
173 int id;
174
176
178 }
179 }
180
182}
#define DEBUG(A)
Message macros.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
#define MAKE_CSTRING(A)
Make C-string.
Lookup table for PMT addresses in detector.
Auxiliary class for map of PMT parameters.
Utility class to parse parameter values.
Template definition of a multi-dimensional oscillation probability interpolation table.
Utility class to parse command line options.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
JDetectorAddressMap & getDetectorAddressMap()
Get detector address map.
void setAxisLabels(TAxis *axis, const JModuleAddressMap &memo)
Set axis with PMT address labels.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
KM3NeT DAQ data structures and auxiliaries.
boost::property_tree::ptree parse(std::string str)