BmnRoot
26.10.0-18-g4e3414f9
Software framework of the BM@N experiment
Toggle main menu visibility
Loading...
Searching...
No Matches
SpillStatus.h
Go to the documentation of this file.
1
#ifndef SPILLSTATUS_H
2
#define SPILLSTATUS_H
3
4
#include "
TObject.h
"
5
6
#include <chrono>
7
#include <vector>
8
// BmnRoot
9
#include "
SpillCntrs.h
"
10
11
using
SysClock
= std::chrono::system_clock;
12
using
SysPoint
= std::chrono::time_point<SysClock>;
13
/**
14
* Class SpillStatus
15
* raw spill status from JSON block
16
*/
17
// template<UInt_t counters_cnt = 16>
18
19
struct
SpillStatus
:
public
TObject
20
{
21
SpillStatus
()
22
:
start_ts
{
SysPoint
::
min
()}
23
,
stop_ts
{
SysPoint
::
min
()}
24
,
device_ts
{
SysPoint
::
min
()}
25
,
app_ts
{
SysPoint
::
min
()}
26
,
cur_spill_time_ms
{0}
27
,
spill_cnt
{0}
28
,
phase
{0}
29
,
times_valid
{false}
30
{}
31
32
bool
CheckTimes
()
33
{
34
times_valid
= ((
start_ts
> SysPoint::min()) && (
stop_ts
> SysPoint::min()) && (
device_ts
> SysPoint::min()));
35
return
times_valid
;
36
}
37
// private:
38
inline
const
static
size_t
counters_cnt
= 16;
39
SysPoint
start_ts
;
40
SysPoint
stop_ts
;
41
SysPoint
device_ts
;
42
SysPoint
app_ts
;
43
UInt_t
cur_spill_time_ms
;
44
UInt_t
spill_cnt
;
45
UInt_t
phase
;
46
bool
times_valid
;
47
SpillCntrs<counters_cnt>
counters
;
48
// ULong64_t cntr_after_err[counters_cnt];
49
// ULong64_t cntr_befor_err[counters_cnt];
50
// std::vector<std::pair<std::string, ULong64_t[counters_cnt]> > cntr_input;
51
// std::vector<std::pair<std::string, ULong64_t[counters_cnt]> > cntr_input_after_red;
52
53
ClassDef
(
SpillStatus
, 1)
54
};
55
56
#endif
/* SPILLSTATUS_H */
min
friend F32vec4 min(const F32vec4 &a, const F32vec4 &b)
Definition
P4_F32vec4.h:30
UInt_t
unsigned int UInt_t
ClassDef
#define ClassDef(name, id)
TObject.h
SysClock
std::chrono::system_clock SysClock
Definition
BmnFunctionSet.h:17
SysPoint
std::chrono::time_point< SysClock > SysPoint
Definition
BmnFunctionSet.h:18
TObject
SpillCntrs.h
SysPoint
std::chrono::time_point< SysClock > SysPoint
Definition
SpillStatus.h:12
SpillCntrs
Definition
SpillCntrs.h:9
SpillStatus
Class SpillStatus raw spill status from JSON block.
Definition
SpillStatus.h:20
SpillStatus::device_ts
SysPoint device_ts
Definition
SpillStatus.h:41
SpillStatus::counters
SpillCntrs< counters_cnt > counters
Definition
SpillStatus.h:47
SpillStatus::spill_cnt
UInt_t spill_cnt
Definition
SpillStatus.h:44
SpillStatus::counters_cnt
static const size_t counters_cnt
Definition
SpillStatus.h:38
SpillStatus::start_ts
SysPoint start_ts
Definition
SpillStatus.h:39
SpillStatus::CheckTimes
bool CheckTimes()
Definition
SpillStatus.h:32
SpillStatus::app_ts
SysPoint app_ts
Definition
SpillStatus.h:42
SpillStatus::times_valid
bool times_valid
Definition
SpillStatus.h:46
SpillStatus::stop_ts
SysPoint stop_ts
Definition
SpillStatus.h:40
SpillStatus::cur_spill_time_ms
UInt_t cur_spill_time_ms
Definition
SpillStatus.h:43
SpillStatus::SpillStatus
SpillStatus()
Definition
SpillStatus.h:21
SpillStatus::phase
UInt_t phase
Definition
SpillStatus.h:45
install
include
SpillStatus.h
Generated on
for BmnRoot by
1.17.0