ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
AthenaKernel
AthenaKernel
IOVInfiniteRange.h
Go to the documentation of this file.
1
//Dear emacs this is -*-c++-*-
2
/*
3
Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
4
*/
5
6
#ifndef ATHENAKERNEL_IOVINFINITERANGE
7
#define ATHENAKERNEL_IOVINFINITERANGE
8
9
#include "GaudiKernel/EventIDRange.h"
10
11
12
//Unfortunatly, EventIDBase doesn't qualify for constexpr
13
18
class
IOVInfiniteRange
{
19
public
:
21
static
EventIDRange
infiniteRunLB
();
22
24
static
EventIDRange
infiniteTime
();
25
27
static
EventIDRange
infiniteMixed
();
28
};
29
30
31
//UNDEFNUM/UNDEFEVT are the maximum value of the variable in question. They denote invalidity.
32
//UNDEFNUM-1 is are the largest value that is considered valid, so "infinity" in our sense.
33
34
//We don't care about the BCID, set them to 0
35
//We do not use the event-number to limit IOV-Ragnes (only Run/LB). So the event-number is always invalid
36
37
38
inline
39
EventIDRange
IOVInfiniteRange::infiniteRunLB
() {
40
// Run Event time time_ns LumiBlock BCID
41
const
EventIDBase start {0 , EventIDBase::UNDEFEVT , EventIDBase::UNDEFNUM, EventIDBase::UNDEFNUM, 0 ,0};
42
const
EventIDBase stop {EventIDBase::UNDEFNUM-1, EventIDBase::UNDEFEVT , EventIDBase::UNDEFNUM, EventIDBase::UNDEFNUM, EventIDBase::UNDEFNUM-1,0};
43
return
EventIDRange{start,stop};
44
}
45
46
inline
47
EventIDRange
IOVInfiniteRange::infiniteTime
() {
48
// Run Event time time_ns LumiBlock BCID
49
const
EventIDBase start {EventIDBase::UNDEFNUM, EventIDBase::UNDEFEVT, 0 , 0 , EventIDBase::UNDEFNUM, 0};
50
const
EventIDBase stop {EventIDBase::UNDEFNUM, EventIDBase::UNDEFEVT, EventIDBase::UNDEFNUM-1, EventIDBase::UNDEFNUM-1, EventIDBase::UNDEFNUM, 0};
51
return
EventIDRange{start, stop};
52
}
53
54
inline
55
EventIDRange
IOVInfiniteRange::infiniteMixed
() {
56
// Run Event time time_ns LB BCID
57
const
EventIDBase start {0 , EventIDBase::UNDEFEVT, 0 ,0 , 0 ,0};
58
const
EventIDBase stop {EventIDBase::UNDEFNUM-1, EventIDBase::UNDEFEVT, EventIDBase::UNDEFNUM-1, EventIDBase::UNDEFNUM-1, EventIDBase::UNDEFNUM-1,0};
59
return
EventIDRange{start,stop};
60
}
61
62
#endif
IOVInfiniteRange
Collection of static functions providing infinite EventIDRanges.
Definition
IOVInfiniteRange.h:18
IOVInfiniteRange::infiniteRunLB
static EventIDRange infiniteRunLB()
Produces an EventIDRange that is infinite in RunLumi and invalid in Time.
Definition
IOVInfiniteRange.h:39
IOVInfiniteRange::infiniteTime
static EventIDRange infiniteTime()
Produces an EventIDRange that is inifinite in Time and invalid in RunLumi.
Definition
IOVInfiniteRange.h:47
IOVInfiniteRange::infiniteMixed
static EventIDRange infiniteMixed()
Produces an mixed EventIDRange that is infinite in Time and RunLumi.
Definition
IOVInfiniteRange.h:55
Generated on
for ATLAS Offline Software by
1.17.0