20int main(
int argc, 
char **argv)
 
   32    JParser<> zap(
"Auxiliary program to print PMT data for a given PMT channel.");
 
   36    zap[
'p'] = 
make_field(
id,      
"PMT identifier")                                = JObjectID();
 
   41  catch(
const exception &error) {
 
   42    FATAL(error.what() << endl);
 
   57    for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
   59      if (module->getLocation() == channel.
getLocation()) {
 
   61        cout << module->getPMT(channel.
getTDC()) << endl;
 
   67  } 
else if (
id != JObjectID()) {
 
   69    for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
   70      for (JModule::const_iterator pmt = module->begin(); pmt != module->end(); ++pmt) {
 
   71        if (pmt->getID() == 
id.getID()) {
 
   82    while (cin >> channel && channel != 
JPMTChannel()) {
 
   84      for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
   86        if (module->getLocation() == channel.
getLocation()) {
 
   88          cout << module->getPMT(channel.
getTDC()) << endl;
 
 
Data structure for detector geometry and calibration.
 
General purpose messaging.
 
Data structure to uniquely identify PMT readout channel.
 
Utility class to parse command line options.
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
 
const JLocation & getLocation() const
Get location.
 
Auxiliary class to uniquely identify PMT readout channel.
 
int getTDC() const
Get TDC.
 
Utility class to parse command line options.
 
int main(int argc, char **argv)
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).