Jpp - the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
JRunQuality.hh
Go to the documentation of this file.
1 #ifndef __JDB_JRUNQUALITY__
2 #define __JDB_JRUNQUALITY__
3 
4 #include <TROOT.h>
5 #include <TObject.h>
6 
7 #include <string>
8 #include <istream>
9 
11 
12 /**
13  * \author mdejong
14  */
15 namespace JDATABASE {}
16 namespace JPP { using namespace JDATABASE; }
17 
18 namespace KM3NeT {
19  namespace DB {
20  class ResultSet;
21  }
22 }
23 
24 namespace JDATABASE {
25 
26  using KM3NeT::DB::ResultSet;
27 
28  /**
29  * Auxiliary data structure for data quality.
30  *
31  * For ASCII I/O, the number, order and type of the data members of this data structure
32  * should be compatible with the output of the script JQAQC.sh.
33  */
34  struct JRunQuality :
35  public TObject
36  {
37  static const char* const getName() { return JRunSummaryNumbers::getName(); } //!< Table name
38 
39  struct JPrescaler :
40  public TObject
41  {
43  prescale(0)
44  {}
45 
46  int prescale;
47 
48  ClassDef(JPrescaler, 1);
49  };
50 
51  struct JEnabled :
52  public TObject
53  {
55  enabled(0)
56  {}
57 
58  int enabled;
59 
60  ClassDef(JEnabled, 1);
61  };
62 
63 
65  GIT(),
66  detector(0),
67  run(0),
68  livetime_s(0.0),
69  UTCMin_s (0.0),
70  UTCMax_s (0.0),
71  trigger3DMuon(),
74  writeL0(),
75  writeL1(),
76  writeL2(),
77  writeSN(),
78  JDAQTimeslice (0),
79  JDAQTimesliceL0 (0),
80  JDAQTimesliceL1 (0),
81  JDAQTimesliceL2 (0),
82  JDAQTimesliceSN (0),
84  JDAQEvent (0),
87  JTrigger3DMuon(0),
88  in_sync (0),
89  out_sync(0),
90  DAQ (0.0),
91  WR (0.0),
92  HRV (0.0),
93  FIFO(0.0),
94  PMTs(0.0),
95  MEAN_Rate_Hz(0.0),
96  RMS_Rate_Hz (0.0),
97  Acoustics(0),
98  AHRS(0.0)
99  {}
100 
101  /**
102  * Put value at given key.
103  *
104  * \param key key
105  * \param value value
106  */
107  void put(const std::string& key,
108  const std::string& value);
109 
110 
111  std::string GIT;
112  int detector;
113  int run;
114  double livetime_s;
115  double UTCMin_s;
116  double UTCMax_s;
134  int in_sync;
135  int out_sync;
136  double DAQ;
137  double WR;
138  double HRV;
139  double FIFO;
140  double PMTs;
141  double MEAN_Rate_Hz;
142  double RMS_Rate_Hz;
144  double AHRS;
145 
146  ClassDef(JRunQuality, 1);
147  };
148 
149 
150  /**
151  * Less-than operator.
152  *
153  * \param first first run quality
154  * \param second second run quality
155  * \return true if first run quality less than second; else false
156  */
157  inline bool operator<(const JRunQuality& first,
158  const JRunQuality& second)
159  {
160  if (first.detector == second.detector)
161  return first.run < second.run;
162  else
163  return first.detector < second.detector;
164  }
165 }
166 
167 #endif
bool operator<(const Head &first, const Head &second)
Less than operator.
Definition: JHead.hh:1603
Definition: JRoot.hh:19
ClassDef(JRunQuality, 1)
static const char *const getName()
Table name.
Definition: JRunQuality.hh:37
then echo The file $DIR KM3NeT_00000001_00000000 root already please rename or remove it first
void put(const std::string &key, const std::string &value)
Put value at given key.
Definition: JRunQuality.cc:25
then for DETECTOR in Antares KM3NeT
Definition: JMultiPMT.sh:42
static const char *const getName()
Table name.
Auxiliary data structure for data quality.
Definition: JRunQuality.hh:34