ATLAS Offline Software
TrigBjetHypoAlgBase.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
3 */
4 #ifndef TRIGBJETHYPO_TRIGBJETHYPOALGBASE_H
5 #define TRIGBJETHYPO_TRIGBJETHYPOALGBASE_H 1
6 
9 #include "AthLinks/ElementLinkVector.h"
10 
11 #include <string>
12 
19  public:
20 
21  TrigBjetHypoAlgBase( const std::string& name, ISvcLocator* pSvcLocator );
22  virtual ~TrigBjetHypoAlgBase();
23 
24  virtual StatusCode initialize() = 0;
25  virtual StatusCode execute( const EventContext& ) const = 0;
26 
27  protected:
29 
30  StatusCode retrievePreviousDecisionContainer( const EventContext&,
32 
33 
34  template < class CONTAINER >
35  StatusCode retrieveCollectionFromView( const EventContext&,
38  const TrigCompositeUtils::Decision* ) const;
39 
40  template < class CONTAINER >
43  const TrigCompositeUtils::Decision* ) const;
44 
45  template < class CONTAINER >
46  StatusCode retrieveCollectionFromNavigation( const std::string& linkName,
49 
50 
51 
52 
53 
54  template < class CONTAINER >
57  const SG::ReadHandleKey< CONTAINER >& ) const;
58 
59  template < class CONTAINER >
64 
65 
66  template< class CONTAINER >
69  const std::string&,
70  int objIndex = 0 ) const;
71 
72  template< class CONTAINER >
73  StatusCode attachObjectLinkToDecisionsFromStoreGate( std::vector< TrigCompositeUtils::Decision* >&,
75  const std::string&,
76  int forcedIndex = -1 ) const;
77 
78  template< class CONTAINER >
82  const std::string&,
83  int objIndex = 0 ) const;
84 
85 
86  template< class CONTAINER >
88  std::vector< TrigCompositeUtils::Decision* >&,
90  const std::string&,
91  int forcedIndex = -1 ) const;
92 
93  template < class CONTAINER >
95  std::vector< TrigCompositeUtils::Decision* >&,
97  const std::string& ) const;
98 
99 };
100 
101 // ======================================================================================== //
102 
103 #include "TrigBjetHypoAlgBase.icc"
104 
105 // ======================================================================================== //
106 
107 #endif
108 
109 
TrigBjetHypoAlgBase::attachObjectLinkToDecisionsFromStoreGate
StatusCode attachObjectLinkToDecisionsFromStoreGate(std::vector< TrigCompositeUtils::Decision * > &, const SG::ReadHandleKey< CONTAINER > &, const std::string &, int forcedIndex=-1) const
TrigBjetHypoAlgBase::execute
virtual StatusCode execute(const EventContext &) const =0
TrigBjetHypoAlgBase::attachObjectLinkToDecisionFromEventView
StatusCode attachObjectLinkToDecisionFromEventView(const EventContext &, TrigCompositeUtils::Decision &, const SG::ReadHandleKey< CONTAINER > &, const std::string &, int objIndex=0) const
TrigBjetHypoAlgBase::retrieveObjectFromEventView
StatusCode retrieveObjectFromEventView(const EventContext &, ElementLinkVector< CONTAINER > &, const SG::ReadHandleKey< CONTAINER > &, const TrigCompositeUtils::DecisionContainer *) const
ElementLinkVector
ElementLinkVector implementation for standalone ROOT.
Definition: AthLinks/ElementLinkVector.h:65
SG::ReadHandleKey< CONTAINER >
TrigBjetHypoAlgBase::retrieveCollectionFromNavigation
StatusCode retrieveCollectionFromNavigation(const std::string &linkName, ElementLinkVector< CONTAINER > &objELs, const TrigCompositeUtils::DecisionContainer *) const
TrigBjetHypoAlgBase::initialize
virtual StatusCode initialize()=0
TrigBjetHypoAlgBase::attachObjectLinkToDecisionFromStoreGate
StatusCode attachObjectLinkToDecisionFromStoreGate(TrigCompositeUtils::Decision &, const SG::ReadHandleKey< CONTAINER > &, const std::string &, int objIndex=0) const
TrigCompositeUtils.h
TrigBjetHypoAlgBase.icc
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
TrigBjetHypoAlgBase::retrievePreviousDecisionContainer
StatusCode retrievePreviousDecisionContainer(const EventContext &, const TrigCompositeUtils::DecisionContainer *&) const
Definition: TrigBjetHypoAlgBase.cxx:15
xAOD::TrigComposite_v1
Class used to describe composite objects in the HLT.
Definition: TrigComposite_v1.h:52
DataVector
Derived DataVector<T>.
Definition: DataVector.h:794
TrigBjetHypoAlgBase::retrieveObjectFromStoreGate
StatusCode retrieveObjectFromStoreGate(const EventContext &, ElementLinkVector< CONTAINER > &, const SG::ReadHandleKey< CONTAINER > &) const
TrigBjetHypoAlgBase
Definition: TrigBjetHypoAlgBase.h:18
TrigBjetHypoAlgBase::retrieveCollectionFromView
StatusCode retrieveCollectionFromView(const EventContext &, ElementLinkVector< CONTAINER > &, const SG::ReadHandleKey< CONTAINER > &, const TrigCompositeUtils::Decision *) const
TrigBjetHypoAlgBase::attachObjectCollectionLinkToDecisionsFromEventView
StatusCode attachObjectCollectionLinkToDecisionsFromEventView(const EventContext &, std::vector< TrigCompositeUtils::Decision * > &, const SG::ReadHandleKey< CONTAINER > &, const std::string &) const
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
HypoBase
Hypothesis algorithms take the output of reco algorithms and the decision from the preceeding InputMa...
Definition: HypoBase.h:13
TrigBjetHypoAlgBase::~TrigBjetHypoAlgBase
virtual ~TrigBjetHypoAlgBase()
Definition: TrigBjetHypoAlgBase.cxx:11
HypoBase.h
TrigBjetHypoAlgBase::retrieveObjectFromNavigation
StatusCode retrieveObjectFromNavigation(const std::string &, ElementLink< CONTAINER > &, const TrigCompositeUtils::Decision *) const
TrigBjetHypoAlgBase::TrigBjetHypoAlgBase
TrigBjetHypoAlgBase()
TrigBjetHypoAlgBase::attachObjectLinkToDecisionsFromEventView
StatusCode attachObjectLinkToDecisionsFromEventView(const EventContext &, std::vector< TrigCompositeUtils::Decision * > &, const SG::ReadHandleKey< CONTAINER > &, const std::string &, int forcedIndex=-1) const