ATLAS Offline Software
Loading...
Searching...
No Matches
TileDigitsCnv_p2.cxx
Go to the documentation of this file.
1
2
3/*
4 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5*/
6
7// TileDigitsCnv_p2.cxx
8// Implementation file for class TileDigitsCnv_p2
9// Author: Alexander Solodkov <Sanya.Solodkov@cern.ch>
10// Date: June 2009
12
15
16
17void
18TileDigitsCnv_p2::persToTrans(const TileDigits_p2* persObj, TileDigits* transObj, MsgStream &/*log*/) const
19{
20 *transObj = TileDigits (HWIdentifier(Identifier32(persObj->m_channelID)),
21 persObj->m_digits);
22}
23
24
25void
26TileDigitsCnv_p2::transToPers(const TileDigits* transObj, TileDigits_p2* persObj, MsgStream &/*log*/) const
27{
28 persObj->m_channelID = transObj->adc_HWID().get_identifier32().get_compact();
29
30 persObj->m_digits.reserve(transObj->nsamples());
31 for (float d : transObj->samples()) {
32 short val = (short)(std::min(d,32767.F));
33 persObj->m_digits.push_back( val );
34 }
35}
value_type get_compact() const
Get the compact id.
Identifier32 get_identifier32() const
Get the 32-bit version Identifier, will be invalid if >32 bits needed.
virtual void transToPers(const TileDigits *transObj, TileDigits_p2 *persObj, MsgStream &log) const override
Method creating the persistent representation TileDigits_p2 from its transient representation TileDig...
virtual void persToTrans(const TileDigits_p2 *persObj, TileDigits *transObj, MsgStream &log) const override
Method creating the transient representation TileDigits from its persistent representation TileDigits...
std::vector< short > m_digits
unsigned int m_channelID
int nsamples() const
Definition TileDigits.h:55
const std::vector< float > & samples() const
Definition TileDigits.h:58
HWIdentifier adc_HWID(void) const
Definition TileRawData.h:53