ATLAS Offline Software
NObjectPtSelectorAlg.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 
7 #ifndef EVENT_SELECTOR_NOBJECTPTSELECTORALG_H
8 #define EVENT_SELECTOR_NOBJECTPTSELECTORALG_H
9 
10 // Algorithm includes
18 
19 // Framework includes
21 #include <xAODBase/IParticle.h>
23 
25 
26 namespace CP {
27 
30 
31  class NObjectPtSelectorAlg final : public EL::AnaAlgorithm {
32 
34  public:
35  NObjectPtSelectorAlg(const std::string &name, ISvcLocator *pSvcLocator);
36  virtual StatusCode initialize() override;
37  virtual StatusCode execute() override;
38 
39  private:
40 
42  Gaudi::Property<float> m_ptmin {this, "minPt", 0., "minimum pT (in MeV)"};
43 
45  Gaudi::Property<std::string> m_sign {this, "sign", "SetMe", "comparison sign to use"};
46 
48  Gaudi::Property<int> m_count {this, "count", 0, "count value"};
49 
51  Gaudi::Property<bool> m_useDressedProperties{this, "useDressedProperties", false,
52  "whether to use dressed electron and muon kinematics rather than simple "
53  "P4 kinematics"};
54 
57 
60 
63  this, "particles", "", "the particle container to use"
64  };
65 
68  this, "objectSelection", "", "the selection on the input particles"
69  };
70 
73  this, "eventInfo", "EventInfo", "the EventInfo container to read selection decisions from"
74  };
75 
78  this, "eventPreselection", "SetMe", "name of the preselection to check before applying this one"
79  };
80 
83  this, "decorationName", "SetMe", "decoration name for the NObjects selector"
84  };
85 
86  }; // class
87 } // namespace CP
88 
89 #endif // EVENT_SELECTOR_NOBJECTPTSELECTORALG_H
PropertyWrapper.h
SignEnums.h
CP::SysListHandle
a class managing the property to configure the list of systematics to process
Definition: SysListHandle.h:33
SysWriteDecorHandle.h
IParticle.h
CP::NObjectPtSelectorAlg::m_useDressedProperties
Gaudi::Property< bool > m_useDressedProperties
use dressed kinematics
Definition: NObjectPtSelectorAlg.h:51
SysWriteSelectionHandle.h
CP::NObjectPtSelectorAlg::NObjectPtSelectorAlg
NObjectPtSelectorAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
Definition: NObjectPtSelectorAlg.cxx:11
CP::NObjectPtSelectorAlg::m_signEnum
SignEnum::ComparisonOperator m_signEnum
the operator version of the comparison (>, <, etc)
Definition: NObjectPtSelectorAlg.h:56
CP::SysReadHandle
a data handle for reading systematics varied input data
Definition: SysReadHandle.h:32
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
SysReadHandle.h
CP::NObjectPtSelectorAlg::initialize
virtual StatusCode initialize() override
Definition: NObjectPtSelectorAlg.cxx:15
CP::NObjectPtSelectorAlg::m_systematicsList
CP::SysListHandle m_systematicsList
the systematics list
Definition: NObjectPtSelectorAlg.h:59
AnaAlgorithm.h
SignEnum::ComparisonOperator
ComparisonOperator
all possible comparison user inputs
Definition: SignEnums.h:16
CP::NObjectPtSelectorAlg::m_objectSelection
CP::SysReadSelectionHandle m_objectSelection
the object selection handle
Definition: NObjectPtSelectorAlg.h:67
EL::AnaAlgorithm
the (new) base class for EventLoop algorithms
Definition: AnaAlgorithm.h:73
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
IParticleContainer.h
CP::NObjectPtSelectorAlg::m_objectsHandle
CP::SysReadHandle< xAOD::IParticleContainer > m_objectsHandle
the object input handle
Definition: NObjectPtSelectorAlg.h:62
CP::NObjectPtSelectorAlg
an algorithm to select an event with a specified number of objects compared to a transverse momentum ...
Definition: NObjectPtSelectorAlg.h:31
CP::NObjectPtSelectorAlg::m_decoration
CP::SysWriteSelectionHandle m_decoration
the output selection decoration
Definition: NObjectPtSelectorAlg.h:82
CP::NObjectPtSelectorAlg::m_eventInfoHandle
CP::SysReadHandle< xAOD::EventInfo > m_eventInfoHandle
the event info handle
Definition: NObjectPtSelectorAlg.h:72
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
SysReadSelectionHandle.h
CP::NObjectPtSelectorAlg::m_ptmin
Gaudi::Property< float > m_ptmin
the pT threshold on which to select
Definition: NObjectPtSelectorAlg.h:42
CP::NObjectPtSelectorAlg::m_sign
Gaudi::Property< std::string > m_sign
the sign against which to compare pT (GT, LT, etc)
Definition: NObjectPtSelectorAlg.h:45
EventInfo.h
SysReadDecorHandle.h
CP::SysReadSelectionHandle
a data handle for reading systematically varied selection properties from objects
Definition: SysReadSelectionHandle.h:32
CP::NObjectPtSelectorAlg::execute
virtual StatusCode execute() override
Definition: NObjectPtSelectorAlg.cxx:29
CP::NObjectPtSelectorAlg::m_preselection
CP::SysReadSelectionHandle m_preselection
the preselection
Definition: NObjectPtSelectorAlg.h:77
CP::NObjectPtSelectorAlg::m_count
Gaudi::Property< int > m_count
the count of events desired
Definition: NObjectPtSelectorAlg.h:48
CP::SysWriteSelectionHandle
a data handle for writing systematically varied selection properties from objects
Definition: SysWriteSelectionHandle.h:32