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
FairDbConfigSet.h
Go to the documentation of this file.
Or view
the newest version in sPHENIX GitHub for file FairDbConfigSet.h
1
#ifndef FAIRDBCONFIGSET_H
2
#define FAIRDBCONFIGSET_H
3
4
5
#include <string>
6
using
std::string;
7
8
#include <vector>
9
using
std::vector
;
10
11
#include "
FairDbTableRow.h
"
12
#include "
FairDbFieldType.h
"
13
#include <iosfwd>
14
15
class
FairDbConfigSet
;
16
class
FairDbValidityRec
;
17
18
std::ostream&
operator<<
(std::ostream&
s
,
const
FairDbConfigSet
& cfSet);
19
20
class
FairDbConfigSet
:
public
FairDbTableRow
21
{
22
23
public
:
24
25
// Constructors and destructors.
26
FairDbConfigSet
() :
fParams
(),
fAggregateNo
(-2) { ; }
27
virtual
~FairDbConfigSet
();
28
29
// State testing member functions
30
31
virtual
FairDbTableRow
*
CreateTableRow
()
const
{
32
return
new
FairDbConfigSet
;
33
}
34
Int_t
GetAggregateNo
()
const
{
return
fAggregateNo
; }
35
UInt_t
GetNumParams
()
const
{
return
fParams
.size(); }
36
string
GetParamName
(UInt_t parNo)
const
;
37
FairDbFieldType
GetParamType
(UInt_t parNo)
const
;
38
string
GetParamValue
(UInt_t parNo)
const
;
39
40
// State changing member functions
41
void
Clear
(
const
Option_t* =
""
) {
fParams
.clear(); }
42
void
PushBack
(
const
string
&
name
,
43
const
string
&
value
,
44
const
FairDbFieldType
& type);
45
void
SetAggregateNo
(Int_t aggNo) {
fAggregateNo
= aggNo; }
46
47
// I/O member functions
48
virtual
void
Fill
(
FairDbResultSet
& rs,
49
const
FairDbValidityRec
* vrec);
50
virtual
void
Store
(
FairDbOutRowStream
& ors,
51
const
FairDbValidityRec
* vrec)
const
;
52
53
private
:
54
// Constructors and destructors.
55
FairDbConfigSet
(
const
FairDbConfigSet
& from);
// No! { LEA_CTOR; *this = from; }
56
57
58
// Internal structures.
59
60
struct
Param
{
61
Param
() :
Name
(),
Value
(),
Type
() {}
62
Param
(
const
Param
& that) :
Name
(that.
Name
),
Value
(that.
Value
),
Type
(that.
Type
) {
63
*
this
= that;
64
}
65
Param
(
const
string
&
name
,
66
const
string
&
value
,
67
const
FairDbFieldType
& type) :
Name
(name),
Value
(value),
Type
(type) {
68
}
69
~Param
() { }
70
71
string
Name
;
72
string
Value
;
73
FairDbFieldType
Type
;
74
};
75
76
vector<Param*>
fParams
;
77
78
Int_t
fAggregateNo
;
79
80
ClassDef(
FairDbConfigSet
,0)
// Configuration data.
81
82
};
83
84
85
#endif // FAIRDBCONFIGSET_H
EicRoot
blob
master
dbase
dbInterface
FairDbConfigSet.h
Built by
Jin Huang
. updated:
Mon Jan 22 2024 12:43:33
using
1.8.2 with
EIC GitHub integration