ATLAS Offline Software
TrigT1ZDC.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
11 #ifndef TRIG_T1_ZDC_H
12 #define TRIG_T1_ZDC_H
13 
14 #include <string>
15 #include <vector>
16 
18 #include "GaudiKernel/ServiceHandle.h"
19 #include "GaudiKernel/ToolHandle.h"
26 
27 // Input Containers
29 
30 // Outputs to CTP
33 #include "ZdcUtils/ZDCTriggerSim.h"
34 #include "nlohmann/json.hpp"
35 
36 namespace LVL1 {
38  class TrigT1ZDC : public AthAlgorithm {
39 
40  public:
41 
42  // This is a standard algorithm constructor
43  TrigT1ZDC (const std::string& name, ISvcLocator* pSvcLocator);
44 
45  // These are the functions inherited from Algorithm
46  virtual StatusCode initialize() override;
47  virtual StatusCode execute() override;
48  virtual bool isClonable() const override final { return true; }
49 
50  private:
51  /* Input handles */
53  this, "ZdcModuleLocation", TrigT1CaloDefs::xAODZdcModuleLocation,
54  "Read handle key for ZdcModuleContainer"};
55 
57  {this, "ZdcModuleCalibEnergyKey", "ZdcModules.CalibEnergy", "ReadHandleKey for Zdc CalibEnergy AuxData"};
58 
59  /* Output handles */
61  this, "ZdcCTPLocation", TrigT1CaloDefs::ZdcCTPLocation,
62  "Write handle key for ZdcCTP"};
63 
64  /* properties */
65  Gaudi::Property<std::string> m_lutFile{this, "filepath_LUT", "TrigT1ZDC/zdcRun3T1LUT_v1_30_05_2023.json", "path to LUT file"};
66  Gaudi::Property<float> m_energyToADCScaleFactor{this, "EnergyADCScale", 0.4, "Energy [GeV] / ADC conversion factor"};
67 
69  std::shared_ptr<ZDCTriggerSim::ModuleAmplInputsFloat> m_modInputs_p;
70 
72  std::shared_ptr<ZDCTriggerSimModuleAmpls> m_simTrig;
73  };
74 }
75 
76 #endif
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
LVL1::TrigT1ZDC::TrigT1ZDC
TrigT1ZDC(const std::string &name, ISvcLocator *pSvcLocator)
Definition: TrigT1ZDC.cxx:18
ReadDecorHandleKey.h
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
LVL1::TrigT1ZDC::m_zdcModuleCalibEnergyKey
SG::ReadDecorHandleKey< xAOD::ZdcModuleContainer > m_zdcModuleCalibEnergyKey
Definition: TrigT1ZDC.h:57
LVL1::TrigT1CaloDefs::ZdcCTPLocation
static const std::string ZdcCTPLocation
Definition: TrigT1CaloDefs.h:80
ZdcCTP.h
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
SG::ReadHandleKey
Property holding a SG store/key/clid from which a ReadHandle is made.
Definition: StoreGate/StoreGate/ReadHandleKey.h:39
LVL1
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...
Definition: ICMMCPHitsCnvTool.h:18
LVL1::TrigT1ZDC::initialize
virtual StatusCode initialize() override
Definition: TrigT1ZDC.cxx:25
LVL1::TrigT1ZDC::m_modInputs_p
std::shared_ptr< ZDCTriggerSim::ModuleAmplInputsFloat > m_modInputs_p
A data member to hold the ZDCTrigger Object that stores input floats: shared ptr to ensure cleanup.
Definition: TrigT1ZDC.h:69
LVL1::TrigT1ZDC::m_lutFile
Gaudi::Property< std::string > m_lutFile
Definition: TrigT1ZDC.h:65
AthAlgorithm.h
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
AthAlgorithm
Definition: AthAlgorithm.h:47
TrigConf::name
Definition: HLTChainList.h:35
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
PathResolver.h
ZDCTriggerSim.h
A tool to make L1 decision using LUTs.
LVL1::TrigT1ZDC::m_energyToADCScaleFactor
Gaudi::Property< float > m_energyToADCScaleFactor
Definition: TrigT1ZDC.h:66
TrigT1CaloDefs.h
LVL1::TrigT1ZDC::m_zdcCTPLocation
SG::WriteHandleKey< ZdcCTP > m_zdcCTPLocation
Definition: TrigT1ZDC.h:60
DataVector.h
An STL vector of pointers that by default owns its pointed-to elements.
LVL1::TrigT1ZDC
level 1 ZDC trigger simulation
Definition: TrigT1ZDC.h:38
LVL1::TrigT1CaloDefs::xAODZdcModuleLocation
static const std::string xAODZdcModuleLocation
Definition: TrigT1CaloDefs.h:40
ReadDecorHandle.h
Handle class for reading a decoration on an object.
LVL1::TrigT1ZDC::isClonable
virtual bool isClonable() const override final
Definition: TrigT1ZDC.h:48
LVL1::TrigT1ZDC::m_zdcModuleKey
SG::ReadHandleKey< xAOD::ZdcModuleContainer > m_zdcModuleKey
Definition: TrigT1ZDC.h:52
SG::ReadDecorHandleKey
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Definition: StoreGate/StoreGate/ReadDecorHandleKey.h:85
LVL1::TrigT1ZDC::m_simTrig
std::shared_ptr< ZDCTriggerSimModuleAmpls > m_simTrig
A data member to hold the ZDCTrigger Object that computes the LUT logic: shared ptr to ensure cleanup...
Definition: TrigT1ZDC.h:72
ZdcModuleContainer.h
LVL1::TrigT1ZDC::execute
virtual StatusCode execute() override
Definition: TrigT1ZDC.cxx:66