ATLAS Offline Software
ActiveSDTool.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 LARG4SD_ACTIVESDTOOL_H
6 #define LARG4SD_ACTIVESDTOOL_H
7 
8 // System includes
9 #include <string>
10 #include <vector>
11 
12 // Project includes
13 #include "LArG4Code/CalibSDTool.h"
15 
16 namespace LArG4
17 {
18 
24  class ActiveSDTool : public CalibSDTool
25  {
26  public:
28  ActiveSDTool(const std::string& type, const std::string& name,
29  const IInterface* parent);
30 
31  private:
34 
36  G4VSensitiveDetector* makeSD() const override final;
37 
39  Gaudi::Property<std::string> m_hitCollName{this, "HitCollectionName", "LArCalibrationHitActive"};
40 
43  Gaudi::Property<std::vector<std::string>> m_stacVolumes{this, "StacVolumes"};
44  Gaudi::Property<std::vector<std::string>> m_presBarVolumes{this, "PresamplerVolumes"};
45  Gaudi::Property<std::vector<std::string>> m_posIWVolumes{this, "PosIWVolumes"};
46  Gaudi::Property<std::vector<std::string>> m_negIWVolumes{this, "NegIWVolumes"};
47  Gaudi::Property<std::vector<std::string>> m_posOWVolumes{this, "PosOWVolumes"};
48  Gaudi::Property<std::vector<std::string>> m_negOWVolumes{this, "NegOWVolumes"};
49  Gaudi::Property<std::vector<std::string>> m_presECVolumes{this, "PresVolumes"};
50  Gaudi::Property<std::vector<std::string>> m_pBOBVolumes{this, "PosBOBarretteVolumes"};
51  Gaudi::Property<std::vector<std::string>> m_nBOBVolumes{this, "NegBOBarretteVolumes"};
52  Gaudi::Property<std::vector<std::string>> m_fcal1Volumes{this, "FCAL1Volumes"};
53  Gaudi::Property<std::vector<std::string>> m_fcal2Volumes{this, "FCAL2Volumes"};
54  Gaudi::Property<std::vector<std::string>> m_fcal3Volumes{this, "FCAL3Volumes"};
55  Gaudi::Property<std::vector<std::string>> m_sliceVolumes{this, "SliceVolumes"};
57 
58  ServiceHandle<ILArCalibCalculatorSvc> m_bpsmodcalc{this, "EMBPSCalibrationCalculator"
59  , "BarrelPresamplerCalibrationCalculator"}; //LArG4::BarrelPresampler::CalibrationCalculator
60  ServiceHandle<ILArCalibCalculatorSvc> m_embcalc{this, "EMBCalibrationCalculator"
61  , "BarrelCalibrationCalculator"}; //LArG4::Barrel::CalibrationCalculator
62  ServiceHandle<ILArCalibCalculatorSvc> m_emepiwcalc{this, "EMECPosIWCalibrationCalculator"
63  , "EMECPosInnerWheelCalibrationCalculator"}; //LArG4::EC::CalibrationCalculator(LArWheelCalculator::InnerAbsorberWheel, 1)
64  ServiceHandle<ILArCalibCalculatorSvc> m_emeniwcalc{this, "EMECNegIWCalibrationCalculator"
65  , "EMECNegInnerWheelCalibrationCalculator"}; //LArG4::EC::CalibrationCalculator(LArWheelCalculator::InnerAbsorberWheel, -1)
66  ServiceHandle<ILArCalibCalculatorSvc> m_emepowcalc{this, "EMECPosOWCalibrationCalculator"
67  , "EMECPosOuterWheelCalibrationCalculator"}; //LArG4::EC::CalibrationCalculator(LArWheelCalculator::OuterAbsorberWheel, 1)
68  ServiceHandle<ILArCalibCalculatorSvc> m_emenowcalc{this, "EMECNegOWCalibrationCalculator"
69  , "EMECNegOuterWheelCalibrationCalculator"}; //LArG4::EC::CalibrationCalculator(LArWheelCalculator::OuterAbsorberWheel, -1)
70  ServiceHandle<ILArCalibCalculatorSvc> m_emepscalc{this, "EMECPSCalibrationCalculator"
71  , "EMECPresamplerCalibrationCalculator"}; //LArG4::EC::PresamplerCalibrationCalculator
72  ServiceHandle<ILArCalibCalculatorSvc> m_emepobarcalc{this, "EMECPosBOBCalibrationCalculator"
73  , "EMECPosBackOuterBarretteCalibrationCalculator"}; //LArG4::EC::CalibrationCalculator(LArWheelCalculator::BackOuterBarretteWheelCalib, 1)
74  ServiceHandle<ILArCalibCalculatorSvc> m_emenobarcalc{this, "EMECNegBOBCalibrationCalculator"
75  , "EMECNegBackOuterBarretteCalibrationCalculator"}; //LArG4::EC::CalibrationCalculator(LArWheelCalculator::BackOuterBarretteWheelCalib, 1)
76  ServiceHandle<ILArCalibCalculatorSvc> m_heccalc{this, "HECWActiveCalculator"
77  , "HECCalibrationWheelActiveCalculator"}; //LArG4::HEC::LArHECCalibrationWheelCalculator(LArG4::HEC::kWheelActive)
78  ServiceHandle<ILArCalibCalculatorSvc> m_fcal1calc{this, "FCAL1CalibCalculator", "FCAL1CalibCalculator"};
79  ServiceHandle<ILArCalibCalculatorSvc> m_fcal2calc{this, "FCAL2CalibCalculator", "FCAL2CalibCalculator"};
80  ServiceHandle<ILArCalibCalculatorSvc> m_fcal3calc{this, "FCAL3CalibCalculator", "FCAL3CalibCalculator"};
81  }; // class ActiveSDTool
82 } // namespace LArG4
83 #endif
LArG4::ActiveSDTool::m_negIWVolumes
Gaudi::Property< std::vector< std::string > > m_negIWVolumes
Definition: ActiveSDTool.h:46
LArG4::ActiveSDTool::m_pBOBVolumes
Gaudi::Property< std::vector< std::string > > m_pBOBVolumes
Definition: ActiveSDTool.h:50
LArG4::ActiveSDTool::m_emepscalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepscalc
Definition: ActiveSDTool.h:70
LArG4::ActiveSDTool::m_fcal3calc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal3calc
Definition: ActiveSDTool.h:80
LArG4::ActiveSDTool::m_fcal2Volumes
Gaudi::Property< std::vector< std::string > > m_fcal2Volumes
Definition: ActiveSDTool.h:53
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
LArG4::ActiveSDTool::m_heccalc
ServiceHandle< ILArCalibCalculatorSvc > m_heccalc
Definition: ActiveSDTool.h:76
LArG4::ActiveSDTool::m_posOWVolumes
Gaudi::Property< std::vector< std::string > > m_posOWVolumes
Definition: ActiveSDTool.h:47
LArG4::ActiveSDTool::m_nBOBVolumes
Gaudi::Property< std::vector< std::string > > m_nBOBVolumes
Definition: ActiveSDTool.h:51
Property
Support class for PropertyMgr.
Definition: Property.h:23
LArG4
Definition: LArWheelCalculatorEnums.h:8
python.CaloAddPedShiftConfig.type
type
Definition: CaloAddPedShiftConfig.py:42
LArG4::ActiveSDTool::m_emeniwcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emeniwcalc
Definition: ActiveSDTool.h:64
LArG4::ActiveSDTool::makeSD
G4VSensitiveDetector * makeSD() const override final
Create the SD wrapper for current worker thread.
LArG4::ActiveSDTool
Sensitive detector tool which manages activate-area LAr calib SDs.
Definition: ActiveSDTool.h:25
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
LArG4::ActiveSDTool::m_presECVolumes
Gaudi::Property< std::vector< std::string > > m_presECVolumes
Definition: ActiveSDTool.h:49
LArG4::ActiveSDTool::m_emepiwcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepiwcalc
Definition: ActiveSDTool.h:62
LArG4::ActiveSDTool::ActiveSDTool
ActiveSDTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
CalibSDTool.h
Defines the CalibSDTool class.
test_pyathena.parent
parent
Definition: test_pyathena.py:15
LArG4::ActiveSDTool::m_emenowcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emenowcalc
Definition: ActiveSDTool.h:68
LArG4::ActiveSDTool::initializeCalculators
StatusCode initializeCalculators() override final
Initialize Calculator Services.
LArG4::CalibSDTool
A base class for tools that manage LArG4CalibSDs.
Definition: CalibSDTool.h:44
LArG4::ActiveSDTool::m_emepowcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepowcalc
Definition: ActiveSDTool.h:66
ILArCalibCalculatorSvc.h
LArG4::ActiveSDTool::m_fcal1calc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal1calc
Definition: ActiveSDTool.h:78
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
LArG4::ActiveSDTool::m_bpsmodcalc
ServiceHandle< ILArCalibCalculatorSvc > m_bpsmodcalc
Definition: ActiveSDTool.h:58
LArG4::ActiveSDTool::m_emepobarcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepobarcalc
Definition: ActiveSDTool.h:72
LArG4::ActiveSDTool::m_presBarVolumes
Gaudi::Property< std::vector< std::string > > m_presBarVolumes
Definition: ActiveSDTool.h:44
LArG4::ActiveSDTool::m_fcal3Volumes
Gaudi::Property< std::vector< std::string > > m_fcal3Volumes
Definition: ActiveSDTool.h:54
LArG4::ActiveSDTool::m_embcalc
ServiceHandle< ILArCalibCalculatorSvc > m_embcalc
Definition: ActiveSDTool.h:60
Gaudi
=============================================================================
Definition: CaloGPUClusterAndCellDataMonitorOptions.h:273
LArG4::ActiveSDTool::m_fcal2calc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal2calc
Definition: ActiveSDTool.h:79
LArG4::ActiveSDTool::m_emenobarcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emenobarcalc
Definition: ActiveSDTool.h:74
LArG4::ActiveSDTool::m_hitCollName
Gaudi::Property< std::string > m_hitCollName
Hit collection name.
Definition: ActiveSDTool.h:39
LArG4::ActiveSDTool::m_posIWVolumes
Gaudi::Property< std::vector< std::string > > m_posIWVolumes
Definition: ActiveSDTool.h:45
LArG4::ActiveSDTool::m_stacVolumes
Gaudi::Property< std::vector< std::string > > m_stacVolumes
Definition: ActiveSDTool.h:43
LArG4::ActiveSDTool::m_fcal1Volumes
Gaudi::Property< std::vector< std::string > > m_fcal1Volumes
Definition: ActiveSDTool.h:52
LArG4::ActiveSDTool::m_sliceVolumes
Gaudi::Property< std::vector< std::string > > m_sliceVolumes
Definition: ActiveSDTool.h:55
ServiceHandle< ILArCalibCalculatorSvc >
LArG4::ActiveSDTool::m_negOWVolumes
Gaudi::Property< std::vector< std::string > > m_negOWVolumes
Definition: ActiveSDTool.h:48