ATLAS Offline Software
IParticleRetrievalTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TriggerMatchingTool_IParticleRetrievalTool_H
6 #define TriggerMatchingTool_IParticleRetrievalTool_H
7 
8 // Framework includes
9 #include "AsgTools/AsgTool.h"
10 #include "AsgTools/ToolHandle.h"
11 
14 
15 namespace Trig {
16  class IParticleRetrievalTool final : public virtual IIParticleRetrievalTool,
17  public asg::AsgTool
18  {
20  public:
22  IParticleRetrievalTool(const std::string& name);
23 
25  ~IParticleRetrievalTool() override;
26 
28  StatusCode initialize() override;
29 
45  std::vector<std::vector<const xAOD::IParticle*>>& combinations,
46  const std::string& chain,
47  bool rerun = false) const override;
48 
57  std::vector<const xAOD::IParticle*>& combination,
58  const HLT::TriggerElement* te,
59  bool& navFailure) const;
60 
70 
80  const xAOD::IParticle*& particle,
82  const HLT::TriggerElement* te,
83  bool& navFailure) const;
84 
85  private:
86  // Properties
88  ToolHandle<Trig::TrigDecisionTool> m_tdt {
89  "Trig::TrigDecisionTool/TrigDecisionTool"};
92  }; //> end class IParticleRetrievalTool
93 } //> end namespace Trig
94 
95 #endif //> !TriggerMatchingTool_IParticleRetrievalTool_H
Trig::IParticleRetrievalTool::getEGammaTEType
xAOD::Type::ObjectType getEGammaTEType(const HLT::TriggerElement *te) const
Get the type of particle that should be retrieved from this TE.
Definition: IParticleRetrievalTool.cxx:227
Trig::IParticleRetrievalTool::m_tdt
ToolHandle< Trig::TrigDecisionTool > m_tdt
The TrigDecisionTool that will be used to get the navigation.
Definition: IParticleRetrievalTool.h:88
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
Trk::ParticleSwitcher::particle
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
Definition: ParticleHypothesis.h:76
Trig::IParticleRetrievalTool::m_warnOnNavigationFailure
bool m_warnOnNavigationFailure
Be forgiving about the navigation not matching our expectations.
Definition: IParticleRetrievalTool.h:91
runLayerRecalibration.chain
chain
Definition: runLayerRecalibration.py:175
Trig
The common trigger namespace for trigger analysis tools.
Definition: CaloTowerVecMon.h:44
ObjectType
ObjectType
Definition: BaseObject.h:11
Trig::IParticleRetrievalTool
Definition: IParticleRetrievalTool.h:18
TrigDecisionTool.h
Trig::IParticleRetrievalTool::IParticleRetrievalTool
IParticleRetrievalTool(const std::string &name)
Standard constructor.
Definition: IParticleRetrievalTool.cxx:55
xAOD::IParticle
Class providing the definition of the 4-vector interface.
Definition: Event/xAOD/xAODBase/xAODBase/IParticle.h:40
Trig::IParticleRetrievalTool::~IParticleRetrievalTool
~IParticleRetrievalTool() override
Default destructor.
Definition: IParticleRetrievalTool.cxx:65
Trig::IIParticleRetrievalTool
Definition: IIParticleRetrievalTool.h:15
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
HLT::TriggerElement
TriggerElement is the basic ingreedient of the interface between HLT algorithms and the navigation It...
Definition: TrigNavStructure/TrigNavStructure/TriggerElement.h:27
IIParticleRetrievalTool.h
Trig::IParticleRetrievalTool::retrieveFeatureParticle
StatusCode retrieveFeatureParticle(const xAOD::IParticle *&particle, const HLT::TriggerElement::FeatureAccessHelper &feature, const HLT::TriggerElement *te, bool &navFailure) const
Retrieve an IParticle from a feature.
Definition: IParticleRetrievalTool.cxx:243
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
python.combo.combinations
def combinations(items, n)
Definition: combo.py:85
HLT::TriggerElement::FeatureAccessHelper
the FeatureAccessHelper is a class used to keep track of features attached to this TE.
Definition: TrigNavStructure/TrigNavStructure/TriggerElement.h:192
ASG_TOOL_CLASS
#define ASG_TOOL_CLASS(CLASSNAME, INT1)
Definition: AsgToolMacros.h:68
ToolHandle.h
AsgTool.h
Trig::IParticleRetrievalTool::retrieveParticles
StatusCode retrieveParticles(std::vector< std::vector< const xAOD::IParticle * >> &combinations, const std::string &chain, bool rerun=false) const override
Retrieve the particles that caused this trigger to fire.
Definition: IParticleRetrievalTool.cxx:74
Trig::IParticleRetrievalTool::initialize
StatusCode initialize() override
Initialise the tool.
Definition: IParticleRetrievalTool.cxx:67