ATLAS Offline Software
CalibSDTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LARG4CODE_CALIBSDTOOL_H
6 #define LARG4CODE_CALIBSDTOOL_H
7 
12 
13 // System includes
14 #include <string>
15 #include <vector>
16 
17 // G4Atlas includes
19 
20 // Local includes
21 #include "LArG4CalibSD.h"
22 
23 // Forward declarations
25 class LArEM_ID;
26 class LArFCAL_ID;
27 class LArHEC_ID;
28 class CaloDM_ID;
29 class LArG4CalibSD;
30 
31 namespace LArG4
32 {
33 
42  {
43 
44  public:
45 
47  CalibSDTool(const std::string& type, const std::string& name,
48  const IInterface* parent);
49 
51  StatusCode initialize() override final;
52 
54  StatusCode Gather() override final;
55 
56  protected:
57 
59  virtual StatusCode initializeCalculators() { return StatusCode::SUCCESS; }
60 
62  std::unique_ptr<LArG4CalibSD>
63  makeOneSD(const std::string& name, ILArCalibCalculatorSvc* calc,
64  const std::vector<std::string>& volumes) const;
65 
66  protected:
67 
70 
72  G4bool m_doPID;
73 
75 
84 
85  }; // class CalibSDTool
86 
87 } // namespace LArG4
88 
89 #endif
LArG4::CalibSDTool::m_larHecID
const LArHEC_ID * m_larHecID
Definition: CalibSDTool.h:80
LArG4::CalibSDTool::makeOneSD
std::unique_ptr< LArG4CalibSD > makeOneSD(const std::string &name, ILArCalibCalculatorSvc *calc, const std::vector< std::string > &volumes) const
Helper method to create one SD.
LArHEC_ID
Helper class for LArHEC offline identifiers.
Definition: LArHEC_ID.h:85
SensitiveDetectorBase
Common base class for tools that create and manage Geant4 sensitive detectors.
Definition: SensitiveDetectorBase.h:42
LArG4::CalibSDTool::m_larEmID
const LArEM_ID * m_larEmID
Definition: CalibSDTool.h:78
LArG4::CalibSDTool::m_doPID
G4bool m_doPID
Are we set up to run with PID hits?
Definition: CalibSDTool.h:72
LArG4
Definition: LArWheelCalculatorEnums.h:8
protected
#define protected
Definition: DetDescrConditionsDict_dict_fixes.cxx:14
LArG4CalibSD.h
LArG4::CalibSDTool::initializeCalculators
virtual StatusCode initializeCalculators()
Initialize Calculator Services.
Definition: CalibSDTool.h:59
LArG4::CalibSDTool::m_id_helper
const AtlasDetectorID * m_id_helper
Definition: CalibSDTool.h:82
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
test_pyathena.parent
parent
Definition: test_pyathena.py:15
LArG4::CalibSDTool::Gather
StatusCode Gather() override final
Calls down to all the SDs to pack their hits into one collection.
LArG4::CalibSDTool
A base class for tools that manage LArG4CalibSDs.
Definition: CalibSDTool.h:42
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
LArG4::CalibSDTool::CalibSDTool
CalibSDTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
LArG4::CalibSDTool::initialize
StatusCode initialize() override final
Initialize the tool.
SensitiveDetectorBase.h
ILArCalibCalculatorSvc
Definition: ILArCalibCalculatorSvc.h:23
CaloDM_ID
Helper class for Calo Dead Material offline identifiers.
Definition: CaloDM_ID.h:102
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
LArG4::CalibSDTool::m_larFcalID
const LArFCAL_ID * m_larFcalID
Definition: CalibSDTool.h:79
LArEM_ID
Helper class for LArEM offline identifiers.
Definition: LArEM_ID.h:118
LArG4::CalibSDTool::m_caloDmID
const CaloDM_ID * m_caloDmID
Definition: CalibSDTool.h:81
LArFCAL_ID
Helper class for LArFCAL offline identifiers.
Definition: LArFCAL_ID.h:60
beamspotnt.calc
calc
Definition: bin/beamspotnt.py:1252
AtlasDetectorID
This class provides an interface to generate or decode an identifier for the upper levels of the dete...
Definition: AtlasDetectorID.h:57