42 {
43
51
52
53
55 if( !emtau.isValid() ) {
56 ATH_MSG_WARNING(
"No CPCMXTopoDataCollection with SG key '" <<
m_emTauLocation.key() <<
"' found in the event. No EM or TAU input for the L1Topo simulation.");
57 return StatusCode::RECOVERABLE;
58 }
59
60 ATH_MSG_DEBUG(
"Filling the input event. Number of emtau topo data objects: " << emtau->size());
61
62 for(auto iTopoData = emtau->rbegin(); iTopoData != emtau->rend(); ++iTopoData) {
63 const CPCMXTopoData *topoData = *iTopoData;
64
65
66 std::vector< CPTopoTOB > tobs;
68 ATH_MSG_DEBUG(
"Emtau topo data object has # TOBs: " << tobs.size());
69 for(const CPTopoTOB & tob : tobs ) {
70 ATH_MSG_DEBUG(
"EMTAU TOB with cmx = " << tob.cmx() <<
"[" << (tob.cmx()==0?
"EM":
"TAU") <<
"]"
71 << " : e = " << setw(3) << tob.et() << ", isolation " << tob.isolation()
72 << ", eta = " << setw(2) << tob.eta() << ", phi = " << tob.phi()
73 << ", ieta = " << setw(2) << tob.ieta() << ", iphi = " << tob.iphi()
74 << ", word = " << hex << tob.roiWord() << dec
75 );
76
77 TCS::ClusterTOB
cl(tob.et(), tob.isolation(), tob.ieta(), tob.iphi(), tob.cmx()==0 ?
TCS::CLUSTER :
TCS::TAU, tob.roiWord() );
78 cl.setEtaDouble( tob.eta() );
79 cl.setPhiDouble( tob.phi() );
80
81 if(tob.cmx()==0) {
83 auto mon_hEMEt = Monitored::Scalar(
"EMTOBEt",
cl.Et());
84 auto mon_hEMPhi = Monitored::Scalar(
"EMTOBPhi",
cl.phi());
85 auto mon_hEMEta = Monitored::Scalar(
"EMTOBEta",
cl.eta());
86 Monitored::Group(
m_monTool, mon_hEMEt, mon_hEMPhi, mon_hEMEta);
87 } else {
89 auto mon_hTauEt = Monitored::Scalar(
"TauTOBEt",
cl.Et());
90 auto mon_hTauPhi = Monitored::Scalar(
"TauTOBPhi",
cl.phi());
91 auto mon_hTauEta = Monitored::Scalar(
"TauTOBEta",
cl.eta());
92 Monitored::Group(
m_monTool, mon_hTauEt, mon_hTauPhi, mon_hTauEta);
93 }
94 }
98 }
99 }
100 return StatusCode::SUCCESS;
101}
#define ATH_MSG_WARNING(x)
bool overflow() const
Return overflow flag.
void tobs(std::vector< CPTopoTOB > &tobs) const
Fill a vector of TOBs.
void setOverflowFromEmtauInput(bool v)
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]