ATLAS Offline Software
MCTCDecorationAlg.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 ASG_ANALYSIS_ALGORITHMS__MCTC_DECORATION_ALG_H
8 #define ASG_ANALYSIS_ALGORITHMS__MCTC_DECORATION_ALG_H
9 
16 
17 
18 
19 namespace CP
20 {
23 
24  class MCTCDecorationAlg final : public EL::AnaAlgorithm
25  {
27  public:
28  MCTCDecorationAlg (const std::string& name,
29  ISvcLocator* pSvcLocator);
30 
31 
32  public:
33  virtual StatusCode initialize () override;
34 
35  public:
36  virtual StatusCode execute () override;
37 
38 
39 
41  private:
43 
45  private:
47  this, "particles", "", "the particle collection to run on"};
48 
50  private:
52  this, "preselection", "", "the preselection to apply"};
53 
55  private:
56  Gaudi::Property<std::string> m_classificationDecoration{this, "classificationDecoration", "Classification", "the decoration for the MCTC classification bitmask"};
57 
59  private:
60  std::unique_ptr<const SG::AuxElement::ConstAccessor<unsigned int> > m_classificationAccessor{};
61 
63  private:
64  Gaudi::Property<std::string> m_isPromptDecoration{this, "isPromptDecoration", "MCTC_isPrompt", "the decoration for the promptness information"};
65 
67  private:
68  std::unique_ptr<const SG::AuxElement::Decorator<int> > m_isPromptDecorator{};
69 
71  private:
72  Gaudi::Property<std::string> m_fromHadronDecoration{this, "fromHadronDecoration", "MCTC_fromHadron", "the decoration for the hadronic origin"};
73 
75  private:
76  std::unique_ptr<const SG::AuxElement::Decorator<int> > m_fromHadronDecorator{};
77 
79  private:
80  Gaudi::Property<std::string> m_fromBSMDecoration{this, "fromBSMDecoration", "MCTC_fromBSM", "the decoration for the BSM origin"};
81 
83  private:
84  std::unique_ptr<const SG::AuxElement::Decorator<int> > m_fromBSMDecorator{};
85 
87  private:
88  Gaudi::Property<std::string> m_fromTauDecoration{this, "fromTauDecoration", "MCTC_fromTau", "the decoration for the tau origin"};
89 
91  private:
92  std::unique_ptr<const SG::AuxElement::Decorator<int> > m_fromTauDecorator{};
93  };
94 
95 } // namespace CP
96 
97 #endif
CP::MCTCDecorationAlg::m_isPromptDecorator
std::unique_ptr< const SG::AuxElement::Decorator< int > > m_isPromptDecorator
the decorator for m_isPromptDecoration
Definition: MCTCDecorationAlg.h:68
PropertyWrapper.h
CP::MCTCDecorationAlg::m_preselection
SysReadSelectionHandle m_preselection
the preselection we apply to our input
Definition: MCTCDecorationAlg.h:51
CP::SysListHandle
a class managing the property to configure the list of systematics to process
Definition: SysListHandle.h:33
SysListHandle.h
CP::MCTCDecorationAlg::m_particlesHandle
SysReadHandle< xAOD::IParticleContainer > m_particlesHandle
the particle collection we run on
Definition: MCTCDecorationAlg.h:46
CP::MCTCDecorationAlg::m_fromBSMDecoration
Gaudi::Property< std::string > m_fromBSMDecoration
the decoration for the BSM origin
Definition: MCTCDecorationAlg.h:80
CP::MCTCDecorationAlg::m_fromBSMDecorator
std::unique_ptr< const SG::AuxElement::Decorator< int > > m_fromBSMDecorator
the decorator for m_fromBSMDecoration
Definition: MCTCDecorationAlg.h:84
CP::MCTCDecorationAlg::m_fromTauDecoration
Gaudi::Property< std::string > m_fromTauDecoration
the decoration for the tau origin
Definition: MCTCDecorationAlg.h:88
CP::MCTCDecorationAlg::MCTCDecorationAlg
MCTCDecorationAlg(const std::string &name, ISvcLocator *pSvcLocator)
the standard constructor
Definition: MCTCDecorationAlg.cxx:18
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
AnaAlgorithm.h
CP::MCTCDecorationAlg::execute
virtual StatusCode execute() override
Definition: MCTCDecorationAlg.cxx:62
CP::MCTCDecorationAlg
an algorithm to unpack and decorate MCTruthClassifier Classification information
Definition: MCTCDecorationAlg.h:25
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::MCTCDecorationAlg::m_fromHadronDecorator
std::unique_ptr< const SG::AuxElement::Decorator< int > > m_fromHadronDecorator
the decorator for m_fromHadDecoration
Definition: MCTCDecorationAlg.h:76
CP::MCTCDecorationAlg::m_fromHadronDecoration
Gaudi::Property< std::string > m_fromHadronDecoration
the decoration for the hadronic origin
Definition: MCTCDecorationAlg.h:72
CP::MCTCDecorationAlg::m_classificationAccessor
std::unique_ptr< const SG::AuxElement::ConstAccessor< unsigned int > > m_classificationAccessor
the accessor for m_classificationDecoration
Definition: MCTCDecorationAlg.h:60
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
SysReadSelectionHandle.h
CP::MCTCDecorationAlg::m_isPromptDecoration
Gaudi::Property< std::string > m_isPromptDecoration
the decoration for the promptness
Definition: MCTCDecorationAlg.h:64
CP::MCTCDecorationAlg::initialize
virtual StatusCode initialize() override
Definition: MCTCDecorationAlg.cxx:26
CP::MCTCDecorationAlg::m_fromTauDecorator
std::unique_ptr< const SG::AuxElement::Decorator< int > > m_fromTauDecorator
the decorator for m_fromTauDecoration
Definition: MCTCDecorationAlg.h:92
CP::SysReadSelectionHandle
a data handle for reading systematically varied selection properties from objects
Definition: SysReadSelectionHandle.h:32
CP::MCTCDecorationAlg::m_classificationDecoration
Gaudi::Property< std::string > m_classificationDecoration
the decoration for the MCTC classification bitmask
Definition: MCTCDecorationAlg.h:56
CP::MCTCDecorationAlg::m_systematicsList
SysListHandle m_systematicsList
the systematics list we run
Definition: MCTCDecorationAlg.h:42