ATLAS Offline Software
cTauMultiplicityAlgTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GLOBALSIM_CTAUMULTIPLICITYALGTOOL_H
6 #define GLOBALSIM_CTAUMULTIPLICITYALGTOOL_H
7 
12 #include "../L1MenuResources.h"
13 #include "../IGlobalSimAlgTool.h"
14 #include "../IO/cTauTOBArray.h"
15 #include "../IO/Count.h"
16 
19 
20 #include <string>
21 
22 
23 
24 namespace GlobalSim {
25 
26  class cTauMultiplicity;
27 
28  class cTauMultiplicityAlgTool: public extends<AthAlgTool, IGlobalSimAlgTool> {
29 
30  public:
31  cTauMultiplicityAlgTool(const std::string& type,
32  const std::string& name,
33  const IInterface* parent);
34 
35  virtual ~cTauMultiplicityAlgTool() = default;
36 
37  StatusCode initialize() override;
38 
39  virtual StatusCode run(const EventContext& ctx) const override;
40 
41  virtual std::string toString() const override;
42 
43  private:
44 
45  Gaudi::Property<std::string> m_algInstanceName {
46  this,
47  "alg_instance_name",
48  {},
49  "instance name of concrete L1Topo Algorithm"};
50 
51  Gaudi::Property<unsigned int>
52  m_nbits{this,
53  "nbits",
54  {0u},
55  "number of output bits to set in TCS::Count"};
56 
57  Gaudi::Property<bool>
58  m_doDump{this,
59  "do_dump",
60  {false},
61  "flag to enable dumps"};
62 
63 
64  std::unique_ptr<L1MenuResources> m_l1MenuResources{nullptr};
65 
67  m_cTauTOBArrayReadKey {this, "TOBArrayReadKey", "",
68  "key to read in an cTauTOBArray"};
69 
71  m_CountWriteKey {this, "CountWriteKey", "",
72  "key to write out a GlobalSim::Count object"};
73 
74 
75  ToolHandle<GenericMonitoringTool>
76  m_monTool{this, "monTool", {}, "MonitoringTool"};
77 
78  StatusCode monitor(const cTauMultiplicity&) const; // pass alg to monitor
79 
80  };
81 }
82 #endif
GlobalSim::cTauMultiplicity
Definition: Global/GlobalSimulation/src/L1TopoAlgs/cTauMultiplicity.h:29
GlobalSim::cTauMultiplicityAlgTool::m_l1MenuResources
std::unique_ptr< L1MenuResources > m_l1MenuResources
Definition: cTauMultiplicityAlgTool.h:64
GlobalSim::cTauMultiplicityAlgTool::m_monTool
ToolHandle< GenericMonitoringTool > m_monTool
Definition: cTauMultiplicityAlgTool.h:76
GlobalSim::cTauMultiplicityAlgTool::initialize
StatusCode initialize() override
Definition: cTauMultiplicityAlgTool.cxx:26
GlobalSim::cTauMultiplicityAlgTool::m_CountWriteKey
SG::WriteHandleKey< GlobalSim::Count > m_CountWriteKey
Definition: cTauMultiplicityAlgTool.h:71
GlobalSim::cTauMultiplicityAlgTool::~cTauMultiplicityAlgTool
virtual ~cTauMultiplicityAlgTool()=default
GlobalSim::cTauMultiplicityAlgTool
Definition: cTauMultiplicityAlgTool.h:28
SG::ReadHandleKey< GlobalSim::cTauTOBArray >
GlobalSim::cTauMultiplicityAlgTool::run
virtual StatusCode run(const EventContext &ctx) const override
Definition: cTauMultiplicityAlgTool.cxx:49
GlobalSim::cTauMultiplicityAlgTool::toString
virtual std::string toString() const override
Definition: cTauMultiplicityAlgTool.cxx:134
Trk::u
@ u
Enums for curvilinear frames.
Definition: ParamDefs.h:77
GenericMonitoringTool.h
GlobalSim
AlgTool to obtain a selection of eFex RoIs read in from the event store.
Definition: dump.h:8
SG::WriteHandleKey< GlobalSim::Count >
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
GlobalSim::cTauMultiplicityAlgTool::monitor
StatusCode monitor(const cTauMultiplicity &) const
Definition: cTauMultiplicityAlgTool.cxx:83
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:221
GlobalSim::cTauMultiplicityAlgTool::m_nbits
Gaudi::Property< unsigned int > m_nbits
Definition: cTauMultiplicityAlgTool.h:52
GlobalSim::cTauMultiplicityAlgTool::m_cTauTOBArrayReadKey
SG::ReadHandleKey< GlobalSim::cTauTOBArray > m_cTauTOBArrayReadKey
Definition: cTauMultiplicityAlgTool.h:67
GlobalSim::cTauMultiplicityAlgTool::m_doDump
Gaudi::Property< bool > m_doDump
Definition: cTauMultiplicityAlgTool.h:58
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
GlobalSim::cTauMultiplicityAlgTool::m_algInstanceName
Gaudi::Property< std::string > m_algInstanceName
Definition: cTauMultiplicityAlgTool.h:45
GlobalSim::cTauMultiplicityAlgTool::cTauMultiplicityAlgTool
cTauMultiplicityAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: cTauMultiplicityAlgTool.cxx:20