33  inline double getEfficiency(
const JPMTParameters& parameters)
 
   38  static const char* 
const EFFICIENCY = 
"EFFICIENCY";
 
   48int main(
int argc, 
char **argv)
 
   62    JParser<> zap(
"Auxiliary application to plot PMT parameters.");
 
   64    zap[
'a'] = 
make_field(detectorFile,      
"detector file.");
 
   66    zap[
'P'] = 
make_field(parameters,        
"PMT calibration data (or corresponding file name)");
 
   67    zap[
'A'] = 
make_field(showPMTAddress,    
"show PMT address on y-axis");
 
   72  catch(
const exception &error) {
 
   73    FATAL(error.what() << endl);
 
   86    FATAL(
"Empty detector." << endl);
 
   89  JManager<string, TH1D> manager(
new TH1D(
"%", NULL, NUMBER_OF_PMTS, -0.5, NUMBER_OF_PMTS - 0.5));
 
   91  for (JDetector::iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
   93    DEBUG(
"Module " << setw(10) << module->getID() << endl);
 
   95    for (
int pmt = 0; pmt != NUMBER_OF_PMTS; ++pmt) {
 
   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);
 
  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;
 
  125      setAxisLabels(*i->second, 
"X", demo.
get(
id));
 
 
KM3NeT DAQ constants, bit handling, etc.
 
int main(int argc, char **argv)
 
Data structure for detector geometry and calibration.
 
Dynamic ROOT object management.
 
General purpose messaging.
 
#define DEBUG(A)
Message macros.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
I/O formatting auxiliaries.
 
#define MAKE_CSTRING(A)
Make C-string.
 
Lookup table for PMT addresses in detector.
 
const JModuleAddressMap & get(const int id) const
Get module address map.
 
Auxiliary class for map of PMT parameters.
 
const JPMTParameters & getPMTParameters(const JPMTIdentifier &id) const
Get PMT parameters.
 
Data structure for PMT parameters.
 
JProperties getProperties(const JEquationParameters &equation=JPMTParameters::getEquationParameters())
Get properties of this class.
 
Utility class to parse parameter values.
 
Utility class to parse command line options.
 
double getSurvivalProbability(const JPMTParameters ¶meters)
Get model dependent probability that a one photo-electron hit survives the simulation of the PMT assu...
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
KM3NeT DAQ data structures and auxiliaries.