ATLAS Offline Software
Loading...
Searching...
No Matches
LArNoisyROSummaryCnv_p4.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_p4::transToPers(const LArNoisyROSummary* trans, LArNoisyROSummary_p4* pers, MsgStream & log) const
9{
10 log << MSG::DEBUG << " in LArNoisyROSummaryCnv_p4::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 size_t smnbtightfebs = trans->get_MNBTight_febs().size();
20 pers->m_MNBTight_febs.reserve(smnbtightfebs);
21 for (const HWIdentifier& hwid : trans->get_MNBTight_febs())
22 {
23 pers->m_MNBTight_febs.push_back (hwid.get_identifier32().get_compact());
24 }
25
26 size_t smnbloosefebs = trans->get_MNBLoose_febs().size();
27 pers->m_MNBLoose_febs.reserve(smnbloosefebs);
28 for (const HWIdentifier& hwid : trans->get_MNBLoose_febs())
29 {
30 pers->m_MNBLoose_febs.push_back (hwid.get_identifier32().get_compact());
31 }
32
33 pers->m_noisy_preamps.clear();
34 pers->m_noisy_preamps.reserve(trans->get_noisy_preamps().size());
35 for (const std::pair<HWIdentifier, std::vector<int> >& p :
36 trans->get_noisy_preamps())
37 {
38 pers->m_noisy_preamps.emplace_back (p.first.get_identifier32().get_compact(),
39 p.second);
40 }
41
48
49}
50
51void LArNoisyROSummaryCnv_p4::persToTrans(const LArNoisyROSummary_p4* pers, LArNoisyROSummary* trans, MsgStream & log ) const
52{
53 log << MSG::DEBUG << " in LArNoisyROSummaryCnv_p4::persToTrans " << endmsg;
54 trans->clear();
55
56 size_t sfebs = pers->m_noisy_febs.size();
57 for ( size_t i = 0; i < sfebs; i++)
58 {
59 HWIdentifier febId(Identifier32(pers->m_noisy_febs[i]));
60 trans->add_noisy_feb(febId);
61 }
62
63 size_t smnbtightfebs = pers->m_MNBTight_febs.size();
64 for ( size_t i = 0; i < smnbtightfebs; i++)
65 {
67 trans->add_MNBTight_feb(febId);
68 }
69
70 size_t smnbloosefebs = pers->m_MNBLoose_febs.size();
71 for ( size_t i = 0; i < smnbloosefebs; i++)
72 {
74 trans->add_MNBLoose_feb(febId);
75 }
76
77 size_t spas = pers->m_noisy_preamps.size();
78 for ( size_t i = 0; i < spas; i++)
79 {
80 size_t schan = pers->m_noisy_preamps[i].second.size();
81 for ( size_t j = 0; j < schan; j++ )
82 {
83 HWIdentifier febId(Identifier32(pers->m_noisy_preamps[i].first));
84 trans->add_noisy_preamp(febId,pers->m_noisy_preamps[i].second[j]);
85 }
86 }
87
94
95}
#define endmsg
virtual void transToPers(const LArNoisyROSummary *trans, LArNoisyROSummary_p4 *pers, MsgStream &log) const override
virtual void persToTrans(const LArNoisyROSummary_p4 *pers, LArNoisyROSummary *trans, MsgStream &log) const override
std::vector< unsigned int > m_MNBTight_febs
std::vector< std::pair< unsigned int, std::vector< int > > > m_noisy_preamps
std::vector< unsigned int > m_noisy_febs
std::vector< unsigned int > m_MNBLoose_febs
Summary information for noisy LAr preamp / FEBs.
void add_MNBTight_feb(HWIdentifier febid)
uint8_t BadFEB_WFlaggedPartitions() const
void add_MNBLoose_feb(HWIdentifier febid)
const std::vector< HWIdentifier > & get_MNBTight_febs() 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_MNBLoose_febs() 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)