ATLAS Offline Software
Egamma1BDTAlgTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef GLOBALSIM_EGAMMA1BDTALGTOOL_H
6 #define GLOBALSIM_EGAMMA1BDTALGTOOL_H
7 
12 #include "../IGlobalSimAlgTool.h"
13 #include "../IO/LArStripNeighborhoodContainer.h"
14 #include "../IO/IeEmNbhoodTOBContainer.h"
15 #include "../IO/IeEmNbhoodTOB.h"
16 #include "../IO/IeEmEg1BDTTOBContainer.h"
17 #include "../IO/IeEmEg1BDTTOB.h"
18 
19 #include "ap_int.h"
20 #include "ap_fixed.h"
21 #include "Digitizer.h"
22 
23 #include "../GlobalAlgs/Egamma1BDT/BDT.h"
24 
26 
27 #include <string>
28 #include <vector>
29 
30 namespace GlobalSim {
31  class Egamma1BDTAlgTool: public extends<AthAlgTool, IGlobalSimAlgTool> {
32 
33  public:
34  Egamma1BDTAlgTool(const std::string& type,
35  const std::string& name,
36  const IInterface* parent);
37 
38  virtual ~Egamma1BDTAlgTool() = default;
39 
40  StatusCode initialize() override;
41 
42  virtual StatusCode run(const EventContext& ctx) const override;
43 
44  virtual std::string toString() const override;
45 
46  private:
47 
48 
49  Gaudi::Property<bool>
51  "enableDump",
52  {false},
53  "flag to enable dumps"};
54 
57  this,
58  "BDTResultKey",
59  "BDTResult"};
60 
61  // input to the BDT Algorithm
64  this,
65  "LArNeighborhoodTOBContainerReadKey",
66  "stripNeighborhoodTOBContainer",
67  "key to read inLArNeighborhoodTOBsReadKeys"};
68 
69  std::vector<double> combine_phi(const IOBitwise::IeEmNbhoodTOB*) const;
70 
71  // a neighborhood has 3 vectors of strip energies (phi_low, phi_center.
72  // phi_high). Provide the length thes vectors must have for the BDT to be
73  // evaluated
74  static inline constexpr int s_required_phi_len = 17;
75 
76  // the three strip energy vectors are combined to form a single vector.
77  // the length of this vector have the following length.
78  static inline constexpr int s_combination_len = 18;
79  };
80 }
81 #endif
ap_fixed.h
GlobalSim::Egamma1BDTAlgTool::m_BDTResultKey
SG::WriteHandleKey< IOBitwise::IeEmEg1BDTTOBContainer > m_BDTResultKey
Definition: Egamma1BDTAlgTool.h:56
GlobalSim::Egamma1BDTAlgTool::m_enableDump
Gaudi::Property< bool > m_enableDump
Definition: Egamma1BDTAlgTool.h:50
GlobalSim::Egamma1BDTAlgTool::run
virtual StatusCode run(const EventContext &ctx) const override
Definition: Egamma1BDTAlgTool.cxx:31
GlobalSim::Egamma1BDTAlgTool::combine_phi
std::vector< double > combine_phi(const IOBitwise::IeEmNbhoodTOB *) const
Definition: Egamma1BDTAlgTool.cxx:86
Digitizer.h
GlobalSim::Egamma1BDTAlgTool::~Egamma1BDTAlgTool
virtual ~Egamma1BDTAlgTool()=default
GlobalSim::Egamma1BDTAlgTool::s_combination_len
static constexpr int s_combination_len
Definition: Egamma1BDTAlgTool.h:78
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
GlobalSim
AlgTool that to test whether expected the TIP values generated by data supplied by eEmMultTestBench c...
Definition: dump.h:8
GlobalSim::Egamma1BDTAlgTool::s_required_phi_len
static constexpr int s_required_phi_len
Definition: Egamma1BDTAlgTool.h:74
SG::WriteHandleKey
Property holding a SG store/key/clid from which a WriteHandle is made.
Definition: StoreGate/StoreGate/WriteHandleKey.h:40
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::Egamma1BDTAlgTool::initialize
StatusCode initialize() override
Definition: Egamma1BDTAlgTool.cxx:22
GlobalSim::Egamma1BDTAlgTool::toString
virtual std::string toString() const override
Definition: Egamma1BDTAlgTool.cxx:125
GlobalSim::Egamma1BDTAlgTool::Egamma1BDTAlgTool
Egamma1BDTAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Definition: Egamma1BDTAlgTool.cxx:16
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
GlobalSim::Egamma1BDTAlgTool
Definition: Egamma1BDTAlgTool.h:31
ap_int.h
GlobalSim::Egamma1BDTAlgTool::m_nbhdTOBContainerReadKey
SG::ReadHandleKey< IOBitwise::IeEmNbhoodTOBContainer > m_nbhdTOBContainerReadKey
Definition: Egamma1BDTAlgTool.h:63
GlobalSim::IOBitwise::IeEmNbhoodTOB
Class to hold an eFexRoI and LAr strip neighbourhood.
Definition: IeEmNbhoodTOB.h:28