ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
LArCalorimeter
LArCnv
LArTPCnv
src
LArLATOMEHeaderContainerCnv_p1.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#include "
LArTPCnv/LArLATOMEHeaderContainerCnv_p1.h
"
6
#include "
LArTPCnv/LArLATOMEHeaderContainer_p1.h
"
7
8
9
10
void
11
LArLATOMEHeaderContainerCnv_p1::persToTrans
(
const
LArLATOMEHeaderContainer_p1
* pers,
12
LArLATOMEHeaderContainer
* trans, MsgStream &log)
const
13
{
14
const
unsigned
nchan=pers->
m_sourceID
.size();
15
if
(nchan != pers->
m_nChannels
.size() || nchan != pers->
m_BCID
.size()) {
16
log << MSG::ERROR <<
"LArLATOMEHeaderContainer_p1 is inconsistent! "
<< std::endl;
17
return
;
18
}
19
20
trans->
clear
();
21
trans->
reserve
(nchan);
22
23
for
(
unsigned
i=0;i<nchan;i++) {
24
25
trans->
push_back
(
new
LArLATOMEHeader
(pers->
m_sourceID
[i], pers->
m_latomeID
[i], pers->
m_nChannels
[i], pers->
m_BCID
[i],pers->
m_l1ID
[i]));
26
27
}
28
}
29
30
31
void
32
LArLATOMEHeaderContainerCnv_p1::transToPers
(
const
LArLATOMEHeaderContainer
* trans,
33
LArLATOMEHeaderContainer_p1
* pers, MsgStream &
/*log*/
)
const
34
{
35
36
unsigned
int
nlatome=trans->
size
();
37
pers->
m_sourceID
.reserve(nlatome);
38
pers->
m_latomeID
.reserve(nlatome);
39
pers->
m_nChannels
.reserve(nlatome);
40
pers->
m_BCID
.reserve(nlatome);
41
pers->
m_l1ID
.reserve(nlatome);
42
43
for
(
const
LArLATOMEHeader
* transHeader : *trans) {
44
pers->
m_sourceID
.push_back(transHeader->SourceId());
45
pers->
m_latomeID
.push_back(transHeader->LatomeId());
46
pers->
m_nChannels
.push_back(transHeader->NChans());
47
pers->
m_BCID
.push_back(transHeader->BCId());
48
pers->
m_l1ID
.push_back(transHeader->L1Id());
49
}
50
}
51
LArLATOMEHeaderContainerCnv_p1.h
LArLATOMEHeaderContainer_p1.h
DataVector::reserve
void reserve(size_type n)
Attempt to preallocate enough memory for a specified number of elements.
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
DataVector::clear
void clear()
Erase all the elements in the collection.
LArLATOMEHeaderContainerCnv_p1::transToPers
virtual void transToPers(const LArLATOMEHeaderContainer *trans, LArLATOMEHeaderContainer_p1 *pers, MsgStream &log) const override
Definition
LArLATOMEHeaderContainerCnv_p1.cxx:32
LArLATOMEHeaderContainerCnv_p1::persToTrans
virtual void persToTrans(const LArLATOMEHeaderContainer_p1 *pers, LArLATOMEHeaderContainer *trans, MsgStream &log) const override
Definition
LArLATOMEHeaderContainerCnv_p1.cxx:11
LArLATOMEHeaderContainer_p1
Definition
LArLATOMEHeaderContainer_p1.h:12
LArLATOMEHeaderContainer_p1::m_latomeID
std::vector< unsigned int > m_latomeID
Definition
LArLATOMEHeaderContainer_p1.h:17
LArLATOMEHeaderContainer_p1::m_l1ID
std::vector< unsigned int > m_l1ID
Definition
LArLATOMEHeaderContainer_p1.h:20
LArLATOMEHeaderContainer_p1::m_nChannels
std::vector< unsigned short > m_nChannels
Definition
LArLATOMEHeaderContainer_p1.h:18
LArLATOMEHeaderContainer_p1::m_BCID
std::vector< unsigned short > m_BCID
Definition
LArLATOMEHeaderContainer_p1.h:19
LArLATOMEHeaderContainer_p1::m_sourceID
std::vector< unsigned int > m_sourceID
Definition
LArLATOMEHeaderContainer_p1.h:16
LArLATOMEHeaderContainer
Container class for LArLATOMEHeader.
Definition
LArLATOMEHeaderContainer.h:19
LArLATOMEHeader
Holds information from the LATOME Header.
Definition
LArLATOMEHeader.h:20
Generated on
for ATLAS Offline Software by
1.17.0