 |
ATLAS Offline Software
|
Go to the documentation of this file.
17 const std::string&
name,
31 ATH_MSG_ERROR(
" There are no cuts set (EtaBins property is an empty list)" );
32 return StatusCode::FAILURE;
35 unsigned int nEtaBin =
m_etabin.size();
37 #define CHECK_SIZE( __n) if ( m_##__n.size() != (nEtaBin - 1) ) \
38 { ATH_MSG_DEBUG(" __n size is " << m_##__n.size() << " but needs to be " << (nEtaBin - 1) ); return StatusCode::FAILURE; }
51 return StatusCode::SUCCESS;
67 etaBin, monEta,monPhi,PassedCuts );
69 PassedCuts = PassedCuts + 1;
71 auto roiDescriptor =
input.roi;
74 if ( std::abs( roiDescriptor->eta() ) > 2.6 ) {
75 ATH_MSG_DEBUG(
"REJECT The cluster had eta coordinates beyond the EM fiducial volume : " << roiDescriptor->eta() <<
"; stop the chain now" );
81 <<
": Eta = " << roiDescriptor->eta()
82 <<
", Phi = " << roiDescriptor->phi() );
85 double etaRef = roiDescriptor->eta();
86 double phiRef = roiDescriptor->phi();
88 if ( std::abs( phiRef ) >
M_PI ) phiRef -= 2*
M_PI;
91 auto pClus =
input.cluster;
93 float absEta = std::abs( pClus->eta() );
98 dEta = pClus->eta() - etaRef;
100 dPhi = std::abs( pClus->phi() - phiRef );
102 eT_Cluster = pClus->et();
105 <<
" roi eta=" << etaRef <<
" DeltaEta=" <<
dEta
112 PassedCuts = PassedCuts + 1;
116 <<
" roi phi="<< phiRef <<
" DeltaPhi="<<
dPhi
123 PassedCuts = PassedCuts + 1;
126 if ( cutIndex == -1 ) {
132 PassedCuts = PassedCuts + 1;
136 if ( eT_Cluster <
m_eTthr[cutIndex] ) {
140 PassedCuts = PassedCuts + 1;
155 auto binIterator = std::adjacent_find(
m_etabin.begin(),
m_etabin.end(), [=](
float left,
float right){ return left < absEta and absEta < right; } );
156 if ( binIterator ==
m_etabin.end() ) {
159 return binIterator -
m_etabin.begin();
171 return StatusCode::SUCCESS;
Group
Properties of a chain group.
bool passed(DecisionID id, const DecisionIDContainer &idSet)
checks if required decision ID is in the set of IDs in the container
TrigCompositeUtils::DecisionID numeric() const
numeric ID
Scalar eta() const
pseudorapidity method
void addDecisionID(DecisionID id, Decision *d)
Appends the decision (given as ID) to the decision object.
bool dPhi(const xAOD::TauJet &tau, const xAOD::CaloVertexedTopoCluster &cluster, float &out)
bool dEta(const xAOD::TauJet &tau, const xAOD::CaloVertexedTopoCluster &cluster, float &out)
setSAddress setEtaMS setDirPhiMS setDirZMS setBarrelRadius setEndcapAlpha setEndcapRadius setInterceptInner setEtaMap etaBin
It used to be useful piece of code for replacing actual SG with other store of similar functionality ...
::StatusCode StatusCode
StatusCode definition for legacy code.
#define CHECK(...)
Evaluate an expression and check for errors.
Header file to be included by clients of the Monitored infrastructure.
bool absEta(const xAOD::TauJet &tau, float &out)
Declare a monitored scalar variable.