28 int main(
int argc, 
char **argv)
 
   32   using namespace KM3NETDAQ;
 
   43     JParser<> zap(
"Auxiliary program to project single PMT data from 2D histogram.");
 
   45     zap[
'a'] = 
make_field(detectorFile,   
"detector file.");
 
   46     zap[
'f'] = 
make_field(inputFile,      
"input file.");
 
   54   catch(
const exception &error) {
 
   55     FATAL(error.what() << endl);
 
   59   gErrorIgnoreLevel = kError;
 
   81   TFile 
in(inputFile.c_str(), 
"read");
 
   83   TH2D* h2 = (TH2D*) 
in.Get(
MAKE_CSTRING(pmt.getModuleID() << extension));
 
   86     FATAL(
"Missing histogram for module " << pmt.getModuleID() << endl);
 
   89   TH1D  h1(
MAKE_CSTRING(pmt.getModuleID() << 
'.' << 
FILL(2,
'0') << pmt.getTDC()), NULL, h2->GetYaxis()->GetNbins(), h2->GetYaxis()->GetXmin(), h2->GetYaxis()->GetXmax());
 
   91   for (
size_t i = 0; i != module.size(); ++i) {
 
   93     const Int_t ix = combinatorics.getIndex(pmt.getTDC(), i) + 1;
 
   95     for (Int_t iy = 1; iy <= h2->GetYaxis()->GetNbins(); ++iy) {
 
   96       h1.SetBinContent(iy, h2->GetBinContent(ix,iy));
 
   97       h1.SetBinError  (iy, h2->GetBinError  (ix,iy));
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
const JModule & getModule(const JObjectID &id) const 
Get module parameters. 
 
Data structure for a composite optical module. 
 
Router for direct addressing of module data in detector data structure. 
 
#define MAKE_CSTRING(A)
Make C-string. 
 
Data structure for detector geometry and calibration. 
 
static const char *const _2F
Name extension for 2F rate fitted. 
 
I/O formatting auxiliaries. 
 
Auxiliary class to sort pairs of PMT addresses within optical module. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
static const char *const _2R
Name extension for 2D rate measured. 
 
General purpose messaging. 
 
Auxiliary data structure for sequence of same character. 
 
Direct access to module in detector data structure. 
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file. 
 
Utility class to parse command line options. 
 
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.