ATLAS Offline Software
JetNGhostSelectorAlg.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_JETNGHOSTSELECTORALG_H
8 #define EVENT_SELECTOR_JETNGHOSTSELECTORALG_H
9 
10 // Algorithm includes
18 
19 // Framework includes
20 #include <xAODJet/JetContainer.h>
22 
24 
25 namespace CP {
26 
29 
30  class JetNGhostSelectorAlg final : public EL::AnaAlgorithm {
31 
33  public:
34  JetNGhostSelectorAlg(const std::string &name, ISvcLocator *pSvcLocator);
35  virtual StatusCode initialize() override;
36  virtual StatusCode execute() override;
37 
38  private:
39 
41  Gaudi::Property<float> m_ptmin {this, "minPt", 0., "minimum pT (in MeV)"};
42 
44  Gaudi::Property<std::string> m_sign {this, "sign", "SetMe", "comparison sign to use"};
45 
47  Gaudi::Property<int> m_count {this, "count", 0, "count value"};
48 
50  Gaudi::Property<std::string> m_ghost {
51  this, "ghost", "", "name of the ghost decoration to look up for positive object counts"
52  };
53 
55  Gaudi::Property<std::string> m_veto {
56  this, "veto", "", "name of the ghost decoration to look up for negative object counts"
57  };
58 
61 
64 
67  this, "jets", "", "the particle container to use"
68  };
69 
72  this, "jetSelection", "", "the selection on the input particles"
73  };
74 
77  this, "eventInfo", "EventInfo", "the EventInfo container to read selection decisions from"
78  };
79 
82  this, "eventPreselection", "SetMe", "name of the preselection to check before applying this one"
83  };
84 
87  this, "decorationName", "SetMe", "decoration name for the NGhosts selector"
88  };
89 
91  std::unique_ptr<SG::AuxElement::ConstAccessor<int>> m_ghostAcc{};
92  std::unique_ptr<SG::AuxElement::ConstAccessor<int>> m_vetoAcc{};
93  bool m_doVeto{false};
94  }; // class
95 } // namespace CP
96 
97 #endif // EVENT_SELECTOR_JETNGHOSTSELECTORALG_H
CP::JetNGhostSelectorAlg::m_ptmin
Gaudi::Property< float > m_ptmin
the pT threshold on which to select
Definition: JetNGhostSelectorAlg.h:41
CP::JetNGhostSelectorAlg::m_signEnum
SignEnum::ComparisonOperator m_signEnum
the operator version of the comparison (>, <, etc)
Definition: JetNGhostSelectorAlg.h:60
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
CP::JetNGhostSelectorAlg::m_sign
Gaudi::Property< std::string > m_sign
the sign against which to compare pT (GT, LT, etc)
Definition: JetNGhostSelectorAlg.h:44
CP::JetNGhostSelectorAlg
an algorithm to select an event with a specified number of objects compared to a transverse momentum ...
Definition: JetNGhostSelectorAlg.h:30
CP::JetNGhostSelectorAlg::JetNGhostSelectorAlg
JetNGhostSelectorAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
Definition: JetNGhostSelectorAlg.cxx:11
CP::JetNGhostSelectorAlg::m_jetSelection
CP::SysReadSelectionHandle m_jetSelection
the jet selection handle
Definition: JetNGhostSelectorAlg.h:71
SysWriteSelectionHandle.h
CP::JetNGhostSelectorAlg::m_doVeto
bool m_doVeto
Definition: JetNGhostSelectorAlg.h:93
CP::JetNGhostSelectorAlg::m_count
Gaudi::Property< int > m_count
the count of events desired
Definition: JetNGhostSelectorAlg.h:47
CP::SysReadHandle< xAOD::JetContainer >
CP
Select isolated Photons, Electrons and Muons.
Definition: Control/xAODRootAccess/xAODRootAccess/TEvent.h:48
SysReadHandle.h
CP::JetNGhostSelectorAlg::m_jetsHandle
CP::SysReadHandle< xAOD::JetContainer > m_jetsHandle
the jet input handle
Definition: JetNGhostSelectorAlg.h:66
CP::JetNGhostSelectorAlg::m_preselection
CP::SysReadSelectionHandle m_preselection
the preselection
Definition: JetNGhostSelectorAlg.h:81
AnaAlgorithm.h
SignEnum::ComparisonOperator
ComparisonOperator
all possible comparison user inputs
Definition: SignEnums.h:16
EL::AnaAlgorithm
the (new) base class for EventLoop algorithms
Definition: AnaAlgorithm.h:73
CP::JetNGhostSelectorAlg::m_decoration
CP::SysWriteSelectionHandle m_decoration
the output selection decoration
Definition: JetNGhostSelectorAlg.h:86
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
CP::JetNGhostSelectorAlg::m_ghostAcc
std::unique_ptr< SG::AuxElement::ConstAccessor< int > > m_ghostAcc
the ghost and ghost-veto accessors
Definition: JetNGhostSelectorAlg.h:91
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
SysReadSelectionHandle.h
EventInfo.h
CP::JetNGhostSelectorAlg::m_eventInfoHandle
CP::SysReadHandle< xAOD::EventInfo > m_eventInfoHandle
the event info handle
Definition: JetNGhostSelectorAlg.h:76
CP::JetNGhostSelectorAlg::initialize
virtual StatusCode initialize() override
Definition: JetNGhostSelectorAlg.cxx:15
JetContainer.h
SysReadDecorHandle.h
CP::SysReadSelectionHandle
a data handle for reading systematically varied selection properties from objects
Definition: SysReadSelectionHandle.h:32
CP::JetNGhostSelectorAlg::m_veto
Gaudi::Property< std::string > m_veto
the ghost decoration
Definition: JetNGhostSelectorAlg.h:55
CP::JetNGhostSelectorAlg::m_systematicsList
CP::SysListHandle m_systematicsList
the systematics list
Definition: JetNGhostSelectorAlg.h:63
CP::JetNGhostSelectorAlg::execute
virtual StatusCode execute() override
Definition: JetNGhostSelectorAlg.cxx:35
CP::JetNGhostSelectorAlg::m_ghost
Gaudi::Property< std::string > m_ghost
the ghost decoration
Definition: JetNGhostSelectorAlg.h:50
CP::SysWriteSelectionHandle
a data handle for writing systematically varied selection properties from objects
Definition: SysWriteSelectionHandle.h:32
CP::JetNGhostSelectorAlg::m_vetoAcc
std::unique_ptr< SG::AuxElement::ConstAccessor< int > > m_vetoAcc
Definition: JetNGhostSelectorAlg.h:92