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
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
42 pers->m_BadFEBFlaggedPartitions = trans->BadFEBFlaggedPartitions();
43 pers->m_SatMediumFlaggedPartitions = trans->SatMediumFlaggedPartitions();
44 pers->m_SatTightFlaggedPartitions = trans->SatTightFlaggedPartitions();
45 pers->m_BadFEB_WFlaggedPartitions = trans->BadFEB_WFlaggedPartitions() ;
46 pers->m_MNBLooseFlaggedPartitions = trans->MNBLooseFlaggedPartitions();
47 pers->m_MNBTightFlaggedPartitions = trans->MNBTightFlaggedPartitions();
48
49}
50
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
88 trans->SetBadFEBFlaggedPartitions (pers->m_BadFEBFlaggedPartitions);
89 trans->SetSatMediumFlaggedPartitions (pers->m_SatMediumFlaggedPartitions);
90 trans->SetSatTightFlaggedPartitions (pers->m_SatTightFlaggedPartitions);
91 trans->SetBadFEB_WFlaggedPartitions (pers->m_BadFEB_WFlaggedPartitions);
92 trans->SetMNBLooseFlaggedPartitions (pers->m_MNBLooseFlaggedPartitions);
93 trans->SetMNBTightFlaggedPartitions (pers->m_MNBTightFlaggedPartitions);
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.
TH1F * trans(TH1F *h, bool t=false)