ATLAS Offline Software
AthFilterAlgorithm.h
Go to the documentation of this file.
1 
3 /*
4  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // AthFilterAlgorithm.h
8 // Header file for class AthFilterAlgorithm
9 // Author: S.Binet<binet@cern.ch>
11 #ifndef ATHENABASECOMPS_ATHFILTERALGORITHM_H
12 #define ATHENABASECOMPS_ATHFILTERALGORITHM_H 1
13 
14 // STL includes
15 #include <string>
16 
17 // Framework includes
18 #include "GaudiKernel/ServiceHandle.h"
23 
25  : public ::AthAlgorithm
26 {
27 
29  // Public methods:
31  public:
32 
33  // Copy constructor:
34 
36  AthFilterAlgorithm( const std::string& name, ISvcLocator* pSvcLocator );
37 
39  virtual ~AthFilterAlgorithm();
40 
41  // Assignment operator:
42  //AthFilterAlgorithm &operator=(const AthFilterAlgorithm &alg);
43 
45  // Non-const methods:
47 
53  virtual StatusCode sysInitialize() override;
54 
56  virtual void setFilterPassed( bool state ) const;
57 
61  void setFilterDescription(const std::string& descr);
62 
65 
68 
71 
72 
74  // Private data:
76  private:
77 
80 
83 
87 
90  std::string m_filterDescr;
91 
92  //special case: post-python default value of property FilterDescription sent to ICutFlowSvc only if not explicitly specified before
94  void doNotResetSelfDescription( Gaudi::Details::PropertyBase& );
95 
97  { this, "EventInfoKey", "EventInfo", "" };
98 };
99 
101 // Inline methods:
103 
106 inline
109 {
110  return m_cutFlowSvc;
111 }
112 
113 
115 inline
117 {
118  return m_cutID;
119 }
120 
121 
122 inline
123 void
124 AthFilterAlgorithm::doNotResetSelfDescription( Gaudi::Details::PropertyBase& )
125 {
126  m_resetSelfDescription=false;
127 }
128 
129 #endif //> !ATHENABASECOMPS_ATHFILTERALGORITHM_H
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
AthFilterAlgorithm::setFilterPassed
virtual void setFilterPassed(bool state) const
Set the filter passed flag to the specified state.
Definition: AthFilterAlgorithm.cxx:99
AthFilterAlgorithm::m_eventInfoKey
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
Definition: AthFilterAlgorithm.h:97
AthFilterAlgorithm::~AthFilterAlgorithm
virtual ~AthFilterAlgorithm()
Destructor:
Definition: AthFilterAlgorithm.cxx:52
AthFilterAlgorithm::cutID
CutIdentifier cutID()
return the CutIdentifier corresponding to the top-level cut of this filter algorithm
Definition: AthFilterAlgorithm.h:116
SG::ReadHandleKey< xAOD::EventInfo >
AthFilterAlgorithm::m_filterDescr
std::string m_filterDescr
filter description: describes what this filter does.
Definition: AthFilterAlgorithm.h:90
AthFilterAlgorithm::sysInitialize
virtual StatusCode sysInitialize() override
Initialization method invoked by the framework.
Definition: AthFilterAlgorithm.cxx:65
AthAlgorithm.h
AthFilterAlgorithm::m_cutFlowSvc
ICutFlowSvc_t m_cutFlowSvc
handle to the service holding tables of cut-flows for filtering algs.
Definition: AthFilterAlgorithm.h:86
AthFilterAlgorithm
Definition: AthFilterAlgorithm.h:26
AthFilterAlgorithm::AthFilterAlgorithm
AthFilterAlgorithm()
Default constructor:
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthFilterAlgorithm::doNotResetSelfDescription
void doNotResetSelfDescription(Gaudi::Details::PropertyBase &)
Definition: AthFilterAlgorithm.h:124
python.TransformConfig.descr
descr
print "%s.properties()" % self.__name__
Definition: TransformConfig.py:360
CutIdentifier
uint32_t CutIdentifier
InstanceIdentifier is a unique identifer used for every AthFilterAlgorithm instance.
Definition: ICutFlowSvc.h:22
AthAlgorithm
Definition: AthAlgorithm.h:47
AthFilterAlgorithm::m_resetSelfDescription
bool m_resetSelfDescription
Definition: AthFilterAlgorithm.h:93
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
AthFilterAlgorithm::eventInfoKey
const SG::ReadHandleKey< xAOD::EventInfo > & eventInfoKey() const
EventInfo key for use in derived classes.
Definition: AthFilterAlgorithm.cxx:134
ICutFlowSvc.h
EventInfo.h
AthFilterAlgorithm::m_cutID
CutIdentifier m_cutID
The CutIdentifier for this filter algorithm.
Definition: AthFilterAlgorithm.h:82
AthFilterAlgorithm::cutFlowSvc
ServiceHandle< ICutFlowSvc > & cutFlowSvc()
return a handle to an ICutFlowSvc instance
Definition: AthFilterAlgorithm.h:108
AthFilterAlgorithm::setFilterDescription
void setFilterDescription(const std::string &descr)
helper method to ease the setting of this filter's description in derived classes Note that this meth...
Definition: AthFilterAlgorithm.cxx:118
ServiceHandle< ICutFlowSvc >
AthFilterAlgorithm::ICutFlowSvc_t
ServiceHandle< ICutFlowSvc > ICutFlowSvc_t
Definition: AthFilterAlgorithm.h:84