27 return StatusCode::FAILURE;
32 ATH_MSG_ERROR(
"At least one trigger needs to be provided in the list");
33 return StatusCode::FAILURE;
41 std::string chainfix = chain;
42 std::replace(chainfix.begin(), chainfix.end(),
'-',
'_');
47 std::string chainfix = chain;
48 std::replace(chainfix.begin(), chainfix.end(),
'-',
'_');
60 return StatusCode::SUCCESS;
76 if (particles !=
nullptr)
80 ATH_MSG_DEBUG(
"-- Considering offline eta:" << particle->eta() <<
" phi:" << particle->phi() <<
" (pT:" << particle->pt() <<
")");
85 if (signatures.size() != 1) {
86 ANA_MSG_ERROR(
"The decoration-based TrigMatchingAlg only supports single-legged triggers." << chain <<
" has " << signatures.size() <<
" legs.");
87 return StatusCode::FAILURE;
90 const float dR = (signatures.at(0) ==
"tau" ? 0.2 : 0.1);
98 ATH_MSG_DEBUG(
"Applying dummy match=0 decoration for " << chain);
104 return StatusCode::SUCCESS;
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
SysReadHandle< xAOD::IParticleContainer > m_particlesHandle
input particle collection
Gaudi::Property< std::vector< std::string > > m_trigSingleMatchingListDummy
list of triggers for dummy matching decorations
virtual StatusCode initialize() final override
TrigMatchingAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
ToolHandle< Trig::IMatchingTool > m_trigMatchingTool
trigger decision tool handle
Gaudi::Property< std::string > m_matchingDecoration
the decoration for trigger matching
SysReadSelectionHandle m_particleSelection
input particle selection
SysListHandle m_systematicsList
the systematics list we run
std::unordered_map< std::string, SG::Decorator< char > > m_matchingDecorators
the decorators for m_matchingDecoration and triggers combination
Gaudi::Property< std::vector< std::string > > m_trigSingleMatchingList
list of triggers
AnaAlgorithm(const std::string &name, ISvcLocator *pSvcLocator)
constructor with parameters
virtual::StatusCode execute()
execute this algorithm
Class providing the definition of the 4-vector interface.
bool match(std::string s1, std::string s2)
match the individual directories of two strings
Select isolated Photons, Electrons and Muons.
std::vector< std::string > signatures(const std::string &chain)
This module defines the arguments passed from the BATCH driver to the BATCH worker.
DataVector< IParticle > IParticleContainer
Simple convenience declaration of IParticleContainer.