ATLAS Offline Software
Loading...
Searching...
No Matches
LArNoisyROSummaryCnv_p3.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3*/
4
7
8void LArNoisyROSummaryCnv_p3::transToPers(const LArNoisyROSummary* trans, LArNoisyROSummary_p3* pers, MsgStream & log) const
9{
10 log << MSG::DEBUG << " in LArNoisyROSummaryCnv_p3::transToPers " << endmsg;
11
12 size_t sfebs = trans->get_noisy_febs().size();
13 pers->m_noisy_febs.reserve(sfebs);
14 for (const HWIdentifier& hwid : trans->get_noisy_febs())
15 {
16 pers->m_noisy_febs.push_back (hwid.get_identifier32().get_compact());
17 }
18
19 pers->m_noisy_preamps.clear();
20 pers->m_noisy_preamps.reserve(trans->get_noisy_preamps().size());
21 for (const std::pair<HWIdentifier, std::vector<int> >& p :
22 trans->get_noisy_preamps())
23 {
24 pers->m_noisy_preamps.emplace_back (p.first.get_identifier32().get_compact(),
25 p.second);
26 }
27
34
35}
36
37void LArNoisyROSummaryCnv_p3::persToTrans(const LArNoisyROSummary_p3* pers, LArNoisyROSummary* trans, MsgStream & log ) const
38{
39 log << MSG::DEBUG << " in LArNoisyROSummaryCnv_p3::persToTrans " << endmsg;
40 trans->clear();
41
42 size_t sfebs = pers->m_noisy_febs.size();
43 for ( size_t i = 0; i < sfebs; i++)
44 {
45 HWIdentifier febId(Identifier32(pers->m_noisy_febs[i]));
46 trans->add_noisy_feb(febId);
47 }
48
49 size_t spas = pers->m_noisy_preamps.size();
50 for ( size_t i = 0; i < spas; i++)
51 {
52 size_t schan = pers->m_noisy_preamps[i].second.size();
53 for ( size_t j = 0; j < schan; j++ )
54 {
55 HWIdentifier febId(Identifier32(pers->m_noisy_preamps[i].first));
56 trans->add_noisy_preamp(febId,pers->m_noisy_preamps[i].second[j]);
57 }
58 }
59
66
67}
#define endmsg
virtual void persToTrans(const LArNoisyROSummary_p3 *pers, LArNoisyROSummary *trans, MsgStream &log) const override
virtual void transToPers(const LArNoisyROSummary *trans, LArNoisyROSummary_p3 *pers, MsgStream &log) const override
std::vector< std::pair< unsigned int, std::vector< int > > > m_noisy_preamps
std::vector< unsigned int > m_noisy_febs
Summary information for noisy LAr preamp / FEBs.
uint8_t BadFEB_WFlaggedPartitions() const
void add_noisy_preamp(HWIdentifier febid, int channel)
void SetMNBLooseFlaggedPartitions(uint8_t bitpattern)
uint8_t MNBTightFlaggedPartitions() const
uint8_t BadFEBFlaggedPartitions() const
void SetMNBTightFlaggedPartitions(uint8_t bitpattern)
void SetSatTightFlaggedPartitions(uint8_t bitpattern)
void SetBadFEB_WFlaggedPartitions(uint8_t bitpattern)
void SetBadFEBFlaggedPartitions(uint8_t bitpattern)
void SetSatMediumFlaggedPartitions(uint8_t bitpattern)
uint8_t MNBLooseFlaggedPartitions() const
uint8_t SatMediumFlaggedPartitions() const
const std::vector< HWIdentifier > & get_noisy_febs() const
const std::vector< std::pair< HWIdentifier, std::vector< int > > > & get_noisy_preamps() const
uint8_t SatTightFlaggedPartitions() const
void add_noisy_feb(HWIdentifier febid)