EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
Home page
Related Pages
Modules
Namespaces
Classes
Files
External Links
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
FairDbValidityRecBuilder.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file FairDbValidityRecBuilder.h
1
#ifndef FAIRDBVALIDITYRECBUILDER_H
2
#define FAIRDBVALIDITYRECBUILDER_H
3
#include <string>
4
#include <map>
5
#include <vector>
6
7
#include "
FairDb.h
"
8
#include "
FairDbValidityRec.h
"
9
#include "
ValContext.h
"
10
11
12
class
FairDbProxy
;
13
14
class
FairDbValidityRecBuilder
15
{
16
17
18
public
:
19
20
// Typedefs and enums
21
22
enum
{
kMAX_AGGREGATE_NO
= 1000 };
23
24
// Constructors and destructors
25
FairDbValidityRecBuilder
(
const
FairDbProxy
& proxy,
26
const
ValContext
& vc,
27
const
FairDb::Task
& task,
28
Int_t selectDbNo = -1,
29
Bool_t findFullTimeWindow =
true
);
30
FairDbValidityRecBuilder
(
const
FairDbProxy
& proxy,
31
const
string
& context,
32
const
FairDb::Task
& task);
33
FairDbValidityRecBuilder
(
const
FairDbValidityRec
& vr,
34
const
std::string tableName);
35
36
virtual
~FairDbValidityRecBuilder
();
37
38
// State testing member functions
39
std::string
GetL2CacheName
()
const
;
40
FairDb::Task
GetTask
()
const
{
return
fTask
; }
41
UInt_t
GetNumValidityRec
()
const
{
42
return
fVRecs
.size();
43
}
45
Int_t
IndexOfAggno
(Int_t aggNo)
const
;
46
Bool_t
IsExtendedContext
()
const
{
47
return
fIsExtendedContext
;
48
}
49
const
FairDbValidityRec
&
GetValidityRec
(Int_t rowNo)
const
;
50
const
FairDbValidityRec
&
GetValidityRecFromAggNo
(Int_t aggNo)
const
{
51
return
this->
GetValidityRec
(this->
IndexOfAggno
(aggNo));
52
}
53
const
FairDbValidityRec
&
GetValidityRecFromSeqNo
(UInt_t SeqNo)
const
;
54
Bool_t
NonAggregated
()
const
{
55
return
! this->
IsExtendedContext
()
56
&& this->
GetNumValidityRec
() == 1;
57
}
58
59
// State changing member functions
60
61
62
private
:
63
64
// State changing member functions
65
66
UInt_t
AddNewAgg
(
const
FairDbValidityRec
& vrec,Int_t aggNo);
67
UInt_t
AddNewGap
(Int_t aggNo);
68
69
void
MakeGapRec
(
const
ValContext
& vc,
70
const
string
& tableName,
71
Bool_t findFullTimeWindow =
true
);
72
73
74
FairDbValidityRec
fGap
;
// Default (gap) validity record
75
Bool_t
fIsExtendedContext
;
76
FairDb::Task
fTask
;
// Query task
77
78
std::vector<FairDbValidityRec>
fVRecs
;
79
std::map<Int_t,UInt_t>
fAggNoToIndex
;
80
81
82
ClassDef(
FairDbValidityRecBuilder
,0)
// Creator of eff. ValidityRecs
83
84
};
85
86
87
#endif // FAIRDBVALIDITYRECBUILDER_H
EicRoot
blob
master
dbase
dbInterface
FairDbValidityRecBuilder.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:33
using
1.8.2 with
EIC GitHub integration