Jpp
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  struct JRunQuality :
32  public TObject
33  {
34  static const char* const getName() { return JRunSummaryNumbers::getName(); } //!< Table name
35 
36  struct JPrescaler :
37  public TObject
38  {
39  int prescale;
40 
41  ClassDef(JPrescaler, 1);
42  };
43 
44  struct JEnabled :
45  public TObject
46  {
47  int enabled;
48 
49  ClassDef(JEnabled, 1);
50  };
51 
52  /**
53  * Read quality data from input stream.
54  *
55  * \param in input stream
56  * \param object quality data
57  * \return input stream
58  */
59  friend inline std::istream& operator>>(std::istream& in, JRunQuality& object)
60  {
61  in >> object.GIT
62  >> object.detector
63  >> object.run
64  >> object.livetime_s
65  >> object.UTCMin_s
66  >> object.UTCMax_s
67  >> object.trigger3DMuon .enabled
68  >> object.trigger3DShower.enabled
69  >> object.triggerMXShower.enabled
70  >> object.writeL0.prescale
71  >> object.writeL1.prescale
72  >> object.writeL2.prescale
73  >> object.writeSN.prescale
74  >> object.JDAQSummaryslice
75  >> object.JDAQEvent
76  >> object.JTrigger3DShower
77  >> object.JTriggerMXShower
78  >> object.JTrigger3DMuon
79  >> object.in_sync
80  >> object.out_sync
81  >> object.DAQ
82  >> object.WR
83  >> object.HRV
84  >> object.FIFO
85  >> object.PMTs
86  >> object.MEAN_Rate_Hz
87  >> object.RMS_Rate_Hz;
88 
89  return in;
90  }
91 
92  /**
93  * Put value at given key.
94  *
95  * \param key key
96  * \param value value
97  */
98  void put(const std::string& key,
99  const std::string& value);
100 
101  /**
102  * Read data quality from result set.
103  *
104  * \param rs result set
105  * \param quality quality
106  * \return true if read; else false
107  */
108  friend bool operator>>(ResultSet& rs, JRunQuality& quality);
109 
110  std::string GIT;
111  int detector;
112  int run;
113  double livetime_s;
114  double UTCMin_s;
115  double UTCMax_s;
128  int in_sync;
129  int out_sync;
130  double DAQ;
131  double WR;
132  double HRV;
133  double FIFO;
134  double PMTs;
135  double MEAN_Rate_Hz;
136  double RMS_Rate_Hz;
137 
138  ClassDef(JRunQuality, 1);
139  };
140 
141 
142  /**
143  * Less-than operator.
144  *
145  * \param first first run quaility
146  * \param second second run quaility
147  * \return true if first run quality less than second; else false
148  */
149  inline bool operator<(const JRunQuality& first,
150  const JRunQuality& second)
151  {
152  if (first.detector == second.detector)
153  return first.run < second.run;
154  else
155  return first.detector < second.detector;
156  }
157 }
158 
159 #endif
JDATABASE::JRunQuality::JDAQEvent
int JDAQEvent
Definition: JRunQuality.hh:124
JDATABASE::JRunQuality::put
void put(const std::string &key, const std::string &value)
Put value at given key.
Definition: JRunQuality.cc:25
JDATABASE::JRunQuality::PMTs
double PMTs
Definition: JRunQuality.hh:134
JDATABASE::JRunQuality::ClassDef
ClassDef(JRunQuality, 1)
TObject
Definition: JRoot.hh:19
JDATABASE::JRunQuality::trigger3DMuon
JEnabled trigger3DMuon
Definition: JRunQuality.hh:116
JDATABASE::JRunQuality::JDAQSummaryslice
int JDAQSummaryslice
Definition: JRunQuality.hh:123
JDATABASE::JRunQuality::JTrigger3DMuon
int JTrigger3DMuon
Definition: JRunQuality.hh:127
JDATABASE::JRunQuality::triggerMXShower
JEnabled triggerMXShower
Definition: JRunQuality.hh:118
JDATABASE::JRunQuality::JTriggerMXShower
int JTriggerMXShower
Definition: JRunQuality.hh:126
JDATABASE::JRunQuality::WR
double WR
Definition: JRunQuality.hh:131
JDATABASE::JRunQuality::JEnabled
Definition: JRunQuality.hh:44
JDATABASE::JRunQuality::MEAN_Rate_Hz
double MEAN_Rate_Hz
Definition: JRunQuality.hh:135
JDATABASE::JRunQuality::UTCMax_s
double UTCMax_s
Definition: JRunQuality.hh:115
JDATABASE::JRunQuality::operator>>
friend std::istream & operator>>(std::istream &in, JRunQuality &object)
Read quality data from input stream.
Definition: JRunQuality.hh:59
JDATABASE::JRunQuality::out_sync
int out_sync
Definition: JRunQuality.hh:129
JDATABASE::JRunQuality::trigger3DShower
JEnabled trigger3DShower
Definition: JRunQuality.hh:117
JDATABASE::JRunQuality::JPrescaler::ClassDef
ClassDef(JPrescaler, 1)
JDATABASE
Auxiliary classes and methods for database I/O.
Definition: JAHRS.hh:12
JDATABASE::JRunQuality::livetime_s
double livetime_s
Definition: JRunQuality.hh:113
JPP
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
Definition: JAAnetToolkit.hh:37
JDATABASE::JRunQuality::JTrigger3DShower
int JTrigger3DShower
Definition: JRunQuality.hh:125
JDATABASE::JRunQuality::FIFO
double FIFO
Definition: JRunQuality.hh:133
JDATABASE::JRunQuality::writeL2
JPrescaler writeL2
Definition: JRunQuality.hh:121
JDATABASE::JRunQuality::writeSN
JPrescaler writeSN
Definition: JRunQuality.hh:122
JDATABASE::JRunQuality::getName
static const char *const getName()
Table name.
Definition: JRunQuality.hh:34
JDATABASE::JRunQuality::in_sync
int in_sync
Definition: JRunQuality.hh:128
JRunSummaryNumbers.hh
JDATABASE::JRunQuality::JEnabled::enabled
int enabled
Definition: JRunQuality.hh:47
JDATABASE::JRunQuality::JPrescaler::prescale
int prescale
Definition: JRunQuality.hh:39
JDATABASE::JRunQuality::detector
int detector
Definition: JRunQuality.hh:111
JDATABASE::JRunQuality::GIT
std::string GIT
Definition: JRunQuality.hh:110
JDATABASE::JRunQuality::HRV
double HRV
Definition: JRunQuality.hh:132
JDATABASE::JRunQuality
Auxiliary data structure for data quality.
Definition: JRunQuality.hh:31
JDATABASE::JRunSummaryNumbers::getName
static const char *const getName()
Table name.
Definition: JRunSummaryNumbers.hh:20
JDATABASE::JRunQuality::writeL0
JPrescaler writeL0
Definition: JRunQuality.hh:119
JDATABASE::JRunQuality::JPrescaler
Definition: JRunQuality.hh:36
JDATABASE::JRunQuality::DAQ
double DAQ
Definition: JRunQuality.hh:130
JDATABASE::JRunQuality::RMS_Rate_Hz
double RMS_Rate_Hz
Definition: JRunQuality.hh:136
JDATABASE::operator<
bool operator<(const JRunQuality &first, const JRunQuality &second)
Less-than operator.
Definition: JRunQuality.hh:149
JDATABASE::JRunQuality::writeL1
JPrescaler writeL1
Definition: JRunQuality.hh:120
JDATABASE::JRunQuality::JEnabled::ClassDef
ClassDef(JEnabled, 1)
JDATABASE::JRunQuality::run
int run
Definition: JRunQuality.hh:112
KM3NeT
Definition: JRunQuality.hh:18
JDATABASE::JRunQuality::UTCMin_s
double UTCMin_s
Definition: JRunQuality.hh:114