42     JParser<> zap(
"Auxiliary program to project single PMT data from 2D histogram.");
 
   44     zap[
'a'] = 
make_field(detectorFile,   
"detector file.");
 
   45     zap[
'f'] = 
make_field(inputFile,      
"input file.");
 
   53   catch(
const exception &error) {
 
   54     FATAL(error.what() << endl);
 
   58   gErrorIgnoreLevel = kError;
 
   66   catch(
const JException& error) {
 
   70   const JModuleRouter router(
detector);
 
   72   const JModule&      module = router.getModule(pmt.getModuleID());
 
   74   JCombinatorics combinatorics;
 
   76   combinatorics.configure(module.size());
 
   78   combinatorics.sort(JPairwiseComparator(module));
 
   80   TFile 
in(inputFile.c_str(), 
"read");
 
   82   TH2D* h2 = (TH2D*) 
in.Get(
MAKE_CSTRING(pmt.getModuleID() << extension));
 
   85     FATAL(
"Missing histogram for module " << pmt.getModuleID() << endl);
 
   88   TH1D  h1(
MAKE_CSTRING(pmt.getModuleID() << 
'.' << 
FILL(2,
'0') << pmt.getTDC()), NULL, h2->GetYaxis()->GetNbins(), h2->GetYaxis()->GetXmin(), h2->GetYaxis()->GetXmax());
 
   90   for (
size_t i = 0; 
i != module.size(); ++
i) {
 
   92     const Int_t ix = combinatorics.getIndex(pmt.getTDC(), 
i) + 1;
 
   94     for (Int_t iy = 1; iy <= h2->GetYaxis()->GetNbins(); ++iy) {
 
   95       h1.SetBinContent(iy, h2->GetBinContent(ix,iy));
 
   96       h1.SetBinError  (iy, h2->GetBinError  (ix,iy));
 
Utility class to parse command line options. 
 
#define MAKE_CSTRING(A)
Make C-string. 
 
static const char *const _2F
Name extension for 2F rate fitted. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
static const char *const _2R
Name extension for 2D rate measured. 
 
Auxiliary data structure for sequence of same character. 
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file. 
 
do set_variable DETECTOR_TXT $WORKDIR detector
 
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
 
static const char *const _2S
Name extension for 2D counts.