27{
   30 
   31  int     detectorID;
   32  int     moduleID;
   33  string  option;
   35 
   36  try {
   37 
   38    JParser<> zap(
"Example program to print PMT logical addressing.");
 
   39 
   43    zap[
'O'] = 
make_field(option, 
"sort")   =  readout_t, physical_t;
 
   45 
   46    zap(argc, argv);
   47  }
   48  catch(const exception &error) {
   49    FATAL(error.what() << endl);
 
   50  }
   51 
   52  
   53 
   55    FATAL(
"No detector address map for detector identifier " << detectorID << endl);
 
   56  }
   57 
   59 
   61 
   62  if      (option == readout_t)
   63    sort(memo.begin(), memo.end(), less<JPMTReadoutAddress>());
   64  else if (option == physical_t)
   65    sort(memo.begin(), memo.end(), less<JPMTPhysicalAddress>());
   66  else
   67    ;
   68 
   69  for (JModuleAddressMap::const_iterator i = memo.begin(); i != memo.end(); ++i) {
   70    cout << setw(2) << i->tdc << ' ' << i->ring << i->position << endl;
   71  }
   72}
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
Lookup table for PMT addresses in detector.
 
const JModuleAddressMap & get(const int id) const
Get module address map.
 
Lookup table for PMT addresses in optical module.
 
Utility class to parse command line options.
 
JDetectorAddressMap & getDetectorAddressMap()
Get detector address map.
 
bool hasDetectorAddressMap(const int id)
Check if detector address map is available.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).