41 int main(
int argc, 
char **argv)
 
   58     JParser<> zap(
"Program to monitor AHRS data.");
 
   60     zap[
'f'] = 
make_field(inputFile,    
"output of JConvertDB -q ahrs");
 
   61     zap[
'n'] = 
make_field(numberOfEvents)              = JLimit::max();
 
   64     zap[
'c'] = 
make_field(ahrsFile,     
"output of JAHRSCalibration");
 
   65     zap[
'p'] = 
make_field(precision,    
"precision")   = 1.0e-6;
 
   72   catch(
const exception &error) {
 
   73     FATAL(error.what() << endl);
 
   95   TH1D  h0(
"h0", NULL, 100, 0.0, 5.0);
 
   96   TH1D  h1(
"h1", NULL, 100, 0.0, 5.0);
 
   97   TH2D  h2(
"h2", NULL, 100, 0.0, 5.0, 100, 0.0, 5.0);
 
   98   TH1D  hn(
"hn", NULL, 100, 0.0, 1.0e4);
 
  100   TH2D* ha = 
new TH2D(
"ha", NULL, 
 
  101                       string.size(), -0.5, 
string.size() - 0.5,
 
  102                       range.getUpperLimit(), 1 - 0.5, 
range.getUpperLimit() + 0.5);
 
  104   for (Int_t 
i = 1; 
i <= ha->GetXaxis()->GetNbins(); ++
i) {
 
  107   for (Int_t 
i = 1; 
i <= ha->GetYaxis()->GetNbins(); ++
i) {
 
  111   TH2D* hb = (TH2D*) ha->Clone(
"hb");
 
  112   TH2D* hc = (TH2D*) ha->Clone(
"hc");
 
  113   TH2D* hd = (TH2D*) ha->Clone(
"hd");
 
  119   for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  120     if (module->getFloor() != 0) {
 
  121       data[module->getID()] = 0;
 
  127   while (inputFile.hasNext()) {
 
  129     STATUS(
"event: " << setw(10) << inputFile.getCounter() << 
'\r'); 
DEBUG(endl);
 
  162           buffer[parameters->
DOMID].push_back(*parameters);
 
  165                 << setw(16)   << parameters->
UNIXTIME << 
' ' 
  166                 << setw(4)    << parameters->
DUID     << 
' ' 
  167                 << setw(2)    << parameters->
FLOORID  << 
' ' 
  186     if (
i->second.size() >= 2
u) {
 
  192         if ((fabs(p->AHRS_A0 - q->AHRS_A0) > precision ||
 
  193              fabs(p->AHRS_A1 - q->AHRS_A1) > precision ||
 
  194              fabs(p->AHRS_A2 - q->AHRS_A2) > precision)
 
  196             (fabs(p->AHRS_H0 - q->AHRS_H0) > precision ||
 
  197              fabs(p->AHRS_H1 - q->AHRS_H1) > precision ||
 
  198              fabs(p->AHRS_H2 - q->AHRS_H2) > precision)) {
 
  206   for (map_type::const_iterator 
i = 
data.begin(); 
i != 
data.end(); ++
i) {
 
  217     for (JDetector::const_iterator module = 
detector.begin(); module != 
detector.end(); ++module) {
 
  219       map_type::const_iterator p = 
data.find(module->getID());
 
  221       if (p != 
data.end()) {
 
  222         cout << 
getLabel(module->getLocation()) << 
' ' << setw(8) << module->getID() << 
' ' << setw(6) << p->second << endl;
 
  231     out << h0  << h1  << h2 << hn;
 
  232     out << *ha << *hb << *hc << *hd;
 
  240   for (map_type::const_iterator 
i = 
data.begin(); 
i != 
data.end(); ++
i) {
 
Utility class to parse command line options. 
 
Q(UTCMax_s-UTCMin_s)-livetime_s
 
int main(int argc, char *argv[])
 
JComparator< JResult_t T::*, JComparison::lt > make_comparator(JResult_t T::*member)
Helper method to create comparator between values of data member. 
 
int getFloor() const 
Get floor number. 
 
const JModule & getModule(const JObjectID &id) const 
Get module parameters. 
 
std::string getLabel(const JLocation &location)
Get module label for monitoring and other applications. 
 
bool is_valid(const json &js)
Check validity of JSon data. 
 
Router for direct addressing of module data in detector data structure. 
 
static const double H
Planck constant [eV s]. 
 
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
 
#define MAKE_CSTRING(A)
Make C-string. 
 
Auxiliary data structure for floating point format specification. 
 
floor_range getRangeOfFloors(const JDetector &detector)
Get range of floors. 
 
Data structure for detector geometry and calibration. 
 
Auxiliary class for defining the range of iterations of objects. 
 
I/O formatting auxiliaries. 
 
Logical location of module. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
int getIndex()
Get index for user I/O manipulation. 
 
ROOT TTree parameter settings. 
 
General purpose messaging. 
 
Direct access to string in detector data structure. 
 
Scanning of objects from multiple files according a format that follows from the extension of each fi...
 
Direct access to module in detector data structure. 
 
z range($ZMAX-$ZMIN)< $MINIMAL_DZ." fi fi typeset -Z 4 STRING typeset -Z 2 FLOOR JPlot1D -f $
 
int getString() const 
Get string number. 
 
void load(const std::string &file_name, JDetector &detector)
Load detector from input file. 
 
Router for mapping of string identifier to index. 
 
General purpose class for object reading from a list of file names. 
 
Utility class to parse command line options. 
 
#define QAQC(A)
QA/QC output macro. 
 
bool hasModule(const JObjectID &id) const 
Has module. 
 
Auxiliary class to map module identifier to AHRS calibration. 
 
const JLimit & getLimit() const 
Get limit. 
 
std::map< int, range_type > map_type
 
do set_variable DETECTOR_TXT $WORKDIR detector
 
source $JPP_DIR setenv csh $JPP_DIR &dev null eval JShellParser o a A
 
int qaqc
QA/QC file descriptor. 
 
long long int UNIXTIME
[ms] 
 
Auxiliary data structure to check validity of AHRS data. 
 
#define DEBUG(A)
Message macros.