ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
DataQuality
DataQualityInterfaces
src
HanConfigMetadata.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
DataQualityInterfaces/HanConfigMetadata.h
"
6
#include "
DataQualityInterfaces/HanUtils.h
"
7
8
//Get rid of Root macros that confuse Doxygen
10
ClassImp
(
dqi::HanConfigMetadata
)
12
13
namespace
dqi
{
14
15
HanConfigMetadata::
16
HanConfigMetadata
()
17
{
18
m_metadata
=
newTList
(
"metadata"
);
19
}
20
21
HanConfigMetadata::
22
HanConfigMetadata
(
const
HanConfigMetadata
& other )
23
:TObject(other),
24
m_name
(other.
m_name
)
25
{
26
m_metadata
=
newTObjArray
(
"metadata"
, 0, other.m_metadata->GetEntries());
27
TIter nextParMap( other.m_metadata );
28
HanConfigParMap
* otherParMap;
29
while
( (otherParMap =
dynamic_cast<
HanConfigParMap
*
>
( nextParMap() )) != 0 ) {
30
HanConfigParMap
* parMap =
new
HanConfigParMap
( *otherParMap );
31
m_metadata
->Add( parMap );
32
}
33
}
34
35
HanConfigMetadata
&
36
HanConfigMetadata::operator=
(
const
HanConfigMetadata
& other )
37
{
38
if
(
this
== &other)
return
*
this
;
39
40
m_name
= other.m_name;
41
m_metadata
->Delete();
delete
m_metadata
;
42
m_metadata
=
newTObjArray
(
"metadata"
, 0, other.m_metadata->GetEntries());
43
TIter nextParMap( other.m_metadata );
44
HanConfigParMap
* otherParMap;
45
while
( (otherParMap =
dynamic_cast<
HanConfigParMap
*
>
( nextParMap() )) != 0 ) {
46
HanConfigParMap
* parMap =
new
HanConfigParMap
( *otherParMap );
47
m_metadata
->Add( parMap );
48
}
49
50
return
*
this
;
51
}
52
53
HanConfigMetadata::
54
~HanConfigMetadata
(){
55
m_metadata
->Delete();
56
delete
m_metadata
;
57
}
58
59
void
60
HanConfigMetadata::
61
SetName
( std::string name_ )
62
{
63
m_name
.SetString(name_.c_str());
64
}
65
66
const
char
*
67
HanConfigMetadata::
68
GetName
()
const
69
{
70
return
m_name
.GetName();
71
}
72
73
void
74
HanConfigMetadata::
75
AddKeyVal
(
const
HanConfigParMap
& keyval_ )
76
{
77
HanConfigParMap
* parMap =
new
HanConfigParMap
( keyval_ );
78
m_metadata
->Add( parMap );
79
}
80
81
HanConfigParMap
82
HanConfigMetadata::
83
GetKeyVal
( std::string name_ )
const
84
{
85
HanConfigParMap
* parMap =
dynamic_cast<
HanConfigParMap
*
>
(
m_metadata
->FindObject(name_.c_str()) );
86
if
( parMap == 0 ) {
87
return
HanConfigParMap
();
88
}
89
90
return
*parMap;
91
}
92
93
94
TIter
95
HanConfigMetadata::
96
GetAllKeyVals
()
const
97
{
98
return
TIter(
m_metadata
);
99
}
100
101
TSeqCollection *
102
HanConfigMetadata::
103
GetList
(
const
TDirectory*
/* basedir */
, std::map<std::string,TSeqCollection*>& mp )
104
{
105
TSeqCollection* mdList =
newTList
(
GetName
());
106
mp[mdList->GetName()] = mdList;
107
TIter mdIter(
m_metadata
);
108
HanConfigParMap
* parMap(0);
109
while
((parMap =
dynamic_cast<
HanConfigParMap
*
>
(mdIter()))) {
110
mdList->Add(parMap->
GetList
());
111
}
112
return
mdList;
113
}
114
115
116
void
117
HanConfigMetadata::
118
PrintIOStream
( std::ostream& o )
const
119
{
120
o <<
"\nHanConfigMetadata: "
<< this->
GetName
() <<
"\n"
;
121
122
if
(!(
m_metadata
->IsEmpty())) {
123
TIter nextParMap(
m_metadata
);
124
HanConfigParMap
* parMap;
125
while
( (parMap =
dynamic_cast<
HanConfigParMap
*
>
( nextParMap() )) != 0 ) {
126
o <<
" "
<< parMap;
127
}
128
}
129
}
130
131
}
//namespace dqi
132
133
std::ostream&
operator<<
( std::ostream& o,
const
dqi::HanConfigMetadata
& p ){
134
p.PrintIOStream(o);
135
return
o;
136
}
137
138
std::ostream&
operator<<
( std::ostream& o,
const
dqi::HanConfigMetadata
* p ){
139
p->PrintIOStream(o);
140
return
o;
141
}
operator<<
std::ostream & operator<<(std::ostream &o, const dqi::HanConfigMetadata &p)
Definition
HanConfigMetadata.cxx:133
HanConfigMetadata.h
HanUtils.h
ClassImp
ClassImp(xAOD::Experimental::RFileChecker) namespace xAOD
Definition
RFileChecker.cxx:28
dqi::HanConfigMetadata
Definition
HanConfigMetadata.h:22
dqi::HanConfigMetadata::HanConfigMetadata
HanConfigMetadata()
Definition
HanConfigMetadata.cxx:16
dqi::HanConfigMetadata::m_name
TObjString m_name
Definition
HanConfigMetadata.h:41
dqi::HanConfigMetadata::operator=
HanConfigMetadata & operator=(const HanConfigMetadata &other)
Definition
HanConfigMetadata.cxx:36
dqi::HanConfigMetadata::GetAllKeyVals
virtual TIter GetAllKeyVals() const
Definition
HanConfigMetadata.cxx:96
dqi::HanConfigMetadata::GetName
virtual const char * GetName() const
Definition
HanConfigMetadata.cxx:68
dqi::HanConfigMetadata::~HanConfigMetadata
virtual ~HanConfigMetadata()
Definition
HanConfigMetadata.cxx:54
dqi::HanConfigMetadata::GetKeyVal
virtual HanConfigParMap GetKeyVal(std::string name_) const
Definition
HanConfigMetadata.cxx:83
dqi::HanConfigMetadata::AddKeyVal
virtual void AddKeyVal(const HanConfigParMap &keyval_)
Definition
HanConfigMetadata.cxx:75
dqi::HanConfigMetadata::PrintIOStream
virtual void PrintIOStream(std::ostream &o) const
Definition
HanConfigMetadata.cxx:118
dqi::HanConfigMetadata::m_metadata
TSeqCollection * m_metadata
Definition
HanConfigMetadata.h:42
dqi::HanConfigMetadata::SetName
virtual void SetName(std::string name)
Definition
HanConfigMetadata.cxx:61
dqi::HanConfigMetadata::GetList
virtual TSeqCollection * GetList(const TDirectory *basedir, std::map< std::string, TSeqCollection * > &mp)
Definition
HanConfigMetadata.cxx:103
dqi::HanConfigParMap
Definition
HanConfigParMap.h:18
dqi::HanConfigParMap::GetList
virtual TList * GetList()
Definition
HanConfigParMap.cxx:92
dqi
Definition
CompositeAlgorithm.h:16
dqi::newTObjArray
TSeqCollection * newTObjArray(const char *name, TObject *obj=0, Int_t size=TCollection::kInitCapacity)
Definition
HanUtils.cxx:27
dqi::newTList
TSeqCollection * newTList(const char *name, TObject *obj=0)
Definition
HanUtils.cxx:18
Generated on
for ATLAS Offline Software by
1.17.0