52 using namespace KM3NETDAQ;
62 JParser<> zap(
"Auxiliary application to plot PMT parameters.");
64 zap[
'a'] =
make_field(detectorFile,
"detector file.");
67 zap[
'A'] =
make_field(showPMTAddress,
"show PMT address on y-axis");
72 catch(
const exception &error) {
73 FATAL(error.what() << endl);
81 catch(
const JException& error) {
86 FATAL(
"Empty detector." << endl);
91 for (JDetector::iterator module =
detector.begin(); module !=
detector.end(); ++module) {
93 DEBUG(
"Module " << setw(10) << module->getID() << endl);
97 const JProperties properties =
parameters.getPMTParameters(JPMTIdentifier(module->getID(), pmt)).getProperties();
99 for (JProperties::const_iterator p = properties.begin(); p != properties.end(); ++p) {
103 try { value = (p->second.getValue<
const double>()); }
catch(
const exception& error) {}
104 try { value = (p->second.getValue<
const bool>() ? 1.0 : 0.0); }
catch(
const exception& error) {}
106 manager[
MAKE_CSTRING(module->getID() <<
"." << p->first)]->SetBinContent(pmt + 1, value);
109 double value = getEfficiency(
parameters.getPMTParameters(JPMTIdentifier(module->getID(), pmt)));
111 manager[
MAKE_CSTRING(module->getID() <<
"." << EFFICIENCY)]->SetBinContent(pmt + 1, value);
115 if (showPMTAddress) {
119 for (JManager<string, TH1D>::iterator i = manager.begin(); i != manager.end(); ++i) {
123 istringstream(i->first) >> id;
Utility class to parse command line options.
Utility class to parse parameter values.
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
#define MAKE_CSTRING(A)
Make C-string.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
void setAxisLabels(TAxis *axis, const JModuleAddressMap &memo)
Set axis with PMT address labels.
JDetectorAddressMap & getDetectorAddressMap()
Get detector address map.
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
do set_variable DETECTOR_TXT $WORKDIR detector
static const int NUMBER_OF_PMTS
Total number of PMTs in module.
#define DEBUG(A)
Message macros.