ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Event
EventTPCnv
src
TriggerInfoCnv_p3.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 "
EventInfo/TriggerInfo.h
"
6
#include "
EventTPCnv/TriggerInfoCnv_p3.h
"
7
#include "
EventTPCnv/vectorize.h
"
8
9
void
TriggerInfoCnv_p3::persToTrans
(std::vector<unsigned int>::const_iterator &i,
TriggerInfo
*
trans
,
bool
bugcompat)
const
{
10
trans
->setStatusElement (*i); ++i;
11
trans
->setExtendedLevel1ID (*i); ++i;
12
trans
->setLevel1TriggerType (*i); ++i;
13
14
// std::cout<<"persToTrans of TriggerInfo\t"<<trans->m_level1TriggerType<<std::endl;
15
16
{
17
unsigned
int
size
=(*i); ++i;
18
std::vector<TriggerInfo::number_type> l1info (i, i+
size
); i +=
size
;
19
trans
->setLevel1TriggerInfo (std::move (l1info));
20
}
21
22
{
23
unsigned
int
size
=(*i); ++i;
24
std::vector<TriggerInfo::number_type> l2info (i, i+
size
); i +=
size
;
25
trans
->setLevel2TriggerInfo (std::move (l2info));
26
}
27
28
{
29
unsigned
int
size
=(*i); ++i;
30
std::vector<TriggerInfo::number_type> efinfo (i, i+
size
); i +=
size
;
31
trans
->setEventFilterInfo (std::move (efinfo));
32
}
33
34
// std::cout<<"persToTrans of TriggerInfo\t"<<trans->m_eventFilterInfo.size()<<std::endl;
35
{
36
unsigned
int
size
=(*i); ++i;
37
std::vector<std::string> names(
size
);
38
std::vector<std::string>
types
(
size
);
39
for
(
unsigned
int
w=0;w<
size
;w++) {
40
UITostr
(names[w],i, bugcompat);
41
UITostr
(
types
[w],i, bugcompat);
42
}
43
44
std::vector<bool> t;
45
UITobitmap
(t, i, bugcompat);
46
47
std::vector<TriggerInfo::StreamTag> st;
48
st.reserve (
size
);
49
for
(
unsigned
int
w=0;w<
size
;w++) {
50
st.emplace_back (std::move(names[w]), std::move(
types
[w]), t[w]);
51
}
52
53
trans
->setStreamTags (std::move (st));
54
}
55
}
56
57
void
TriggerInfoCnv_p3::transToPers
(
const
TriggerInfo
*
trans
, std::vector<unsigned int> &pers)
const
{
58
pers.push_back(
trans
->statusElement());
59
pers.push_back(
trans
->extendedLevel1ID());
60
pers.push_back(
trans
->level1TriggerType());
61
62
{
63
const
std::vector<TriggerInfo::number_type>& l1info =
64
trans
->level1TriggerInfo();
65
// std::cout<<"transToPers of TriggerInfo \t"<<trans->m_level1TriggerType<<std::endl;
66
pers.push_back(l1info.size());
67
std::copy (l1info.begin(), l1info.end(), std::back_inserter (pers));
68
}
69
70
{
71
const
std::vector<TriggerInfo::number_type>& l2info =
72
trans
->level2TriggerInfo();
73
pers.push_back(l2info.size());
74
std::copy (l2info.begin(), l2info.end(), std::back_inserter (pers));
75
}
76
77
{
78
const
std::vector<TriggerInfo::number_type>& efinfo =
79
trans
->eventFilterInfo();
80
pers.push_back(efinfo.size());
81
std::copy (efinfo.begin(), efinfo.end(), std::back_inserter (pers));
82
}
83
84
{
85
size_t
sz
=
trans
->streamTags().size();
86
// std::cout<<"transToPers of TriggerInfo \t"<<trans->m_eventFilterInfo.size()<<std::endl;
87
pers.push_back(
sz
);
88
std::vector<bool> t; t.reserve(
sz
);
89
for
(
unsigned
int
i = 0; i <
sz
; ++i) {
90
const
TriggerInfo::StreamTag
& st =
trans
->streamTags()[i];
91
strToUI
(st.name(), pers);
92
strToUI
(st.type(), pers);
93
t.push_back(st.obeysLumiblock());
94
// std::cout<<"transToPers of TriggerInfo "<<trans->m_streamTags[i].m_obeysLumiblock<<std::endl;
95
}
96
bitmapToUI
(t, pers);
97
}
98
}
99
100
vectorize.h
UITobitmap
void UITobitmap(std::vector< bool > &n, std::vector< unsigned int >::const_iterator &i, bool bugcompat)
Definition
vectorize.cxx:103
UITostr
void UITostr(std::string &n, std::vector< unsigned int >::const_iterator &i, bool bugcompat)
Definition
vectorize.cxx:29
bitmapToUI
void bitmapToUI(const std::vector< bool > &m, std::vector< unsigned int > &v)
Definition
vectorize.cxx:85
strToUI
void strToUI(const std::string &m, std::vector< unsigned int > &v)
Definition
vectorize.cxx:9
sz
static Double_t sz
Definition
LArPhysWaveHECTool.cxx:37
types
static const std::vector< std::string > types
Definition
MuonTriggerSFFilesTest.cxx:20
size
size_t size() const
Number of registered mappings.
TriggerInfoCnv_p3.h
TriggerInfo.h
This class contains trigger related information.
TriggerInfoCnv_p3::transToPers
void transToPers(const TriggerInfo *transObj, std::vector< unsigned int > &persObj) const
Definition
TriggerInfoCnv_p3.cxx:57
TriggerInfoCnv_p3::persToTrans
void persToTrans(std::vector< unsigned int >::const_iterator &persObj, TriggerInfo *transObj, bool bugcompat) const
Definition
TriggerInfoCnv_p3.cxx:9
TriggerInfo::StreamTag
Definition
TriggerInfo.h:87
TriggerInfo
This class contains trigger related information.
Definition
TriggerInfo.h:77
trans
TH1F * trans(TH1F *h, bool t=false)
Definition
comparitor.cxx:199
Generated on
for ATLAS Offline Software by
1.17.0