55     JParser<> zap(
"Example program to monitor acoustic events.");
 
   57     zap[
'f'] = 
make_field(inputFile,       
"output of JAcousticEventBuilder[.sh]");
 
   58     zap[
'n'] = 
make_field(numberOfEvents)   = JLimit::max();
 
   65   catch(
const exception &error) {
 
   66     FATAL(error.what() << endl);
 
   81   for (JDetector::const_iterator i = 
detector.begin(); i != 
detector.end(); ++i) {
 
   82     receivers[i->getID()] = i->getLocation();
 
   97                                   string.size(),              -0.5, 
string.size()         - 0.5, 
 
   98                                   floor.getUpperLimit() + 1, - 0.5, floor.getUpperLimit() + 0.5));
 
  100           string.size(),              -0.5, 
string.size()         - 0.5, 
 
  101           floor.getUpperLimit() + 1, - 0.5, floor.getUpperLimit() + 0.5));
 
  107   for (Int_t i = 1; i <= H2->GetXaxis()->GetNbins(); ++i) {
 
  108     H2->GetXaxis()->SetBinLabel(i, 
MAKE_CSTRING(
string.at(i-1)));
 
  111   for (Int_t i = 1; i <= H2->GetYaxis()->GetNbins(); ++i) {
 
  114   for (Int_t i = 1; i <= H3->GetXaxis()->GetNbins(); ++i) {
 
  115     H3->GetXaxis()->SetBinLabel(i, 
MAKE_CSTRING(
string.at(i-1)));
 
  118   for (Int_t i = 1; i <= H3->GetYaxis()->GetNbins(); ++i) {
 
  129   for (JTreeScanner_t::iterator event = 
in.begin(); 
event != 
in.end(); ++event) {
 
  131     HA[
event->getID()]->Fill((
double) event->size());
 
  132     HB[
event->getID()]->Fill((
double) event->getOverlays());
 
  134     if (toe.has(event->getID())) {
 
  135       HC[
event->getID()]->Fill(log10(event->begin()->getToE() - toe[
event->getID()]));
 
  138     const double t1 = 
event->begin()->getToE();
 
  142     for (JEvent::const_iterator i = event->begin(); i != 
event->end(); ++i) {
 
  143       QD.
put(i->getToE() - t1);
 
  144       QQ.
put(log10(i->getQ()));
 
  147     HD[
event->getID()]->Fill(QD.
getRMS());
 
  149     AddPoint(GA[event->getID()], t1, 
event->size());
 
  153     toe[
event->getID()] = 
event->begin()->getToE();
 
  155     TH1D* hq = HQ[
event->getID()];
 
  156     TH2D* h2 = H2[
event->getID()];
 
  157     TH2D* h3 = H3[
event->getID()];
 
  161     for (JEvent::const_iterator i = event->begin(); i != 
event->end(); ++i) {
 
  163       hq->Fill(log10(i->getQ()));
 
  165       buffer[i->getID()] += 1;
 
  167       if (receivers.has(i->getID())) {
 
  169         const JLocation& location = receivers[i->getID()];
 
  175     TH1D* 
h1 = 
H1[
event->getID()];
 
  178       h1->Fill((
double) i->second);
 
  180         if (receivers.has(i->first)) {
 
  181           const JLocation& location = receivers[i->first];
 
  192   out << HA << HB << HC << HD << HQ << 
H1 << H2 << H3;
 
  193   out << GA << GD << GQ;
 
Utility class to parse command line options. 
 
void AddPoint(TGraph *g1, const Double_t x, const Double_t y)
Add point to TGraph. 
 
int getFloor() const 
Get floor number. 
 
#define MAKE_CSTRING(A)
Make C-string. 
 
then for HISTOGRAM in h0 h1
 
Template definition for direct access of elements in ROOT TChain. 
 
Auxiliary class for defining the range of iterations of objects. 
 
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
 
Logical location of module. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
const array_type< JValue_t > & make_array(const JValue_t(&array)[N])
Method to create array of values. 
 
int getIndex()
Get index for user I/O manipulation. 
 
Base class for JTreeScanner. 
 
int getString() const 
Get string number. 
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file. 
 
const JLimit & getLimit() const 
Get limit. 
 
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 source JAcoustics sh $DETECTOR_ID typeset A TRIPODS get_tripods $WORKDIR tripod txt TRIPODS for EMITTER in