ATLAS Offline Software
LArG4H62004InactiveSDTool.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 LARG4H62004INACTIVESDTOOL_H
6 #define LARG4H62004INACTIVESDTOOL_H
7 
9 #include <string>
10 #include <vector>
11 
12 #include "StoreGate/WriteHandle.h"
15 
16 class LArG4CalibSD;
17 
22 {
23  public:
24  // Constructor
25  LArG4H62004InactiveSDTool(const std::string& type, const std::string& name, const IInterface *parent);
26 
27  // Destructor
28  virtual ~LArG4H62004InactiveSDTool() = default;
29 
31 
32  // Method in which all the SDs are created and assigned to the relevant volumes
34 
35  // Calls down to all the SDs to get them to pack their hits into a central collection
36  StatusCode Gather() override final;
37 
38  private:
39  // The actual hit container - here because the base class is for both calib and standard SD tools
41 
42  ServiceHandle<ILArCalibCalculatorSvc>m_emepiwcalc {this, "EMECPosIWCalibrationCalculator"
43  , "EMECPosInnerWheelCalibrationCalculator"};
44  ServiceHandle<ILArCalibCalculatorSvc>m_heccalc {this, "HECWheelInactiveCalculator"
45  , "LocalCalibrationInactiveCalculator"};
47  , "LArFCAL1H62004CalibCalculator"};
49  , "LArFCAL2H62004CalibCalculator"};
50 
51  // The list of volumes and the corresponding SDs
52  LArG4CalibSD* m_emecSD {nullptr};
53  LArG4CalibSD* m_hecSD {nullptr};
54  LArG4CalibSD* m_fcal1SD {nullptr};
55  LArG4CalibSD* m_fcal2SD {nullptr};
56  Gaudi::Property<std::vector<std::string>> m_emecVolumes {this, "EMECVolumes"};
57  Gaudi::Property<std::vector<std::string>> m_hecVolumes {this, "HECVolumes"};
58  Gaudi::Property<std::vector<std::string>> m_fcal1Volumes {this, "FCAL1Volumes"};
59  Gaudi::Property<std::vector<std::string>> m_fcal2Volumes {this, "FCAL2Volumes"};
60 };
61 
62 #endif
LArG4H62004InactiveSDTool::m_fcal1SD
LArG4CalibSD * m_fcal1SD
Definition: LArG4H62004InactiveSDTool.h:54
LArG4H62004InactiveSDTool::m_emecVolumes
Gaudi::Property< std::vector< std::string > > m_emecVolumes
Definition: LArG4H62004InactiveSDTool.h:56
CaloCalibrationHitContainer
Definition: CaloCalibrationHitContainer.h:25
LArG4H62004InactiveSDTool::Gather
StatusCode Gather() override final
End of an athena event.
LArG4H62004InactiveSDTool::initializeCalculators
virtual StatusCode initializeCalculators() override final
LArG4H62004InactiveSDTool::m_fcal2calc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal2calc
Definition: LArG4H62004InactiveSDTool.h:48
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
LArG4H62004InactiveSDTool::m_emecSD
LArG4CalibSD * m_emecSD
Definition: LArG4H62004InactiveSDTool.h:52
LArG4SDTool
A base class for tools that manage LAr SDs.
Definition: LArG4SDTool.h:35
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
CaloCalibrationHitContainer.h
WriteHandle.h
Handle class for recording to StoreGate.
LArG4H62004InactiveSDTool::m_emepiwcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepiwcalc
Definition: LArG4H62004InactiveSDTool.h:42
LArG4H62004InactiveSDTool::m_fcal2SD
LArG4CalibSD * m_fcal2SD
Definition: LArG4H62004InactiveSDTool.h:55
LArG4H62004InactiveSDTool
DEPRECATED AND WILL BE REMOVED.
Definition: LArG4H62004InactiveSDTool.h:22
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArG4CalibSD
A specialized SD class for saving LAr calibration hits.
Definition: LArG4CalibSD.h:38
LArG4H62004InactiveSDTool::m_heccalc
ServiceHandle< ILArCalibCalculatorSvc > m_heccalc
Definition: LArG4H62004InactiveSDTool.h:44
test_pyathena.parent
parent
Definition: test_pyathena.py:15
LArG4H62004InactiveSDTool::m_fcal1Volumes
Gaudi::Property< std::vector< std::string > > m_fcal1Volumes
Definition: LArG4H62004InactiveSDTool.h:58
columnar::final
CM final
Definition: ColumnAccessor.h:106
LArG4H62004InactiveSDTool::m_fcal1calc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal1calc
Definition: LArG4H62004InactiveSDTool.h:46
LArG4H62004InactiveSDTool::~LArG4H62004InactiveSDTool
virtual ~LArG4H62004InactiveSDTool()=default
LArG4H62004InactiveSDTool::m_HitColl
SG::WriteHandle< CaloCalibrationHitContainer > m_HitColl
Definition: LArG4H62004InactiveSDTool.h:40
ILArCalibCalculatorSvc.h
LArG4H62004InactiveSDTool::LArG4H62004InactiveSDTool
LArG4H62004InactiveSDTool(const std::string &type, const std::string &name, const IInterface *parent)
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
LArG4H62004InactiveSDTool::m_hecSD
LArG4CalibSD * m_hecSD
Definition: LArG4H62004InactiveSDTool.h:53
ILArCalibCalculatorSvc
Definition: ILArCalibCalculatorSvc.h:23
LArG4H62004InactiveSDTool::m_hecVolumes
Gaudi::Property< std::vector< std::string > > m_hecVolumes
Definition: LArG4H62004InactiveSDTool.h:57
private
#define private
Definition: xAODTruthCnvAlg.h:20
LArG4SDTool.h
LArG4H62004InactiveSDTool::m_fcal2Volumes
Gaudi::Property< std::vector< std::string > > m_fcal2Volumes
Definition: LArG4H62004InactiveSDTool.h:59
LArG4H62004InactiveSDTool::initializeSD
StatusCode initializeSD() override final
ServiceHandle
Definition: ClusterMakerTool.h:37