ATLAS Offline Software
Loading...
Searching...
No Matches
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
15
16namespace LArG4
17{
18
25 {
26 public:
28 ActiveSDTool(const std::string& type, const std::string& name,
29 const IInterface* parent);
30
31 private:
33 StatusCode initializeCalculators() override final;
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)
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
Defines the CalibSDTool class.
Gaudi::Property< std::vector< std::string > > m_fcal2Volumes
ServiceHandle< ILArCalibCalculatorSvc > m_emepscalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepowcalc
StatusCode initializeCalculators() override final
Initialize Calculator Services.
ActiveSDTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Gaudi::Property< std::vector< std::string > > m_fcal1Volumes
Gaudi::Property< std::vector< std::string > > m_posOWVolumes
Gaudi::Property< std::vector< std::string > > m_nBOBVolumes
Gaudi::Property< std::vector< std::string > > m_negOWVolumes
ServiceHandle< ILArCalibCalculatorSvc > m_bpsmodcalc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal3calc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal2calc
Gaudi::Property< std::vector< std::string > > m_presECVolumes
ServiceHandle< ILArCalibCalculatorSvc > m_emenobarcalc
ServiceHandle< ILArCalibCalculatorSvc > m_embcalc
ServiceHandle< ILArCalibCalculatorSvc > m_heccalc
ServiceHandle< ILArCalibCalculatorSvc > m_emepiwcalc
Gaudi::Property< std::vector< std::string > > m_stacVolumes
Gaudi::Property< std::vector< std::string > > m_posIWVolumes
G4VSensitiveDetector * makeSD() const override final
Create the SD wrapper for current worker thread.
Gaudi::Property< std::vector< std::string > > m_negIWVolumes
ServiceHandle< ILArCalibCalculatorSvc > m_emepobarcalc
Gaudi::Property< std::vector< std::string > > m_pBOBVolumes
Gaudi::Property< std::vector< std::string > > m_fcal3Volumes
ServiceHandle< ILArCalibCalculatorSvc > m_emenowcalc
ServiceHandle< ILArCalibCalculatorSvc > m_emeniwcalc
ServiceHandle< ILArCalibCalculatorSvc > m_fcal1calc
Gaudi::Property< std::vector< std::string > > m_presBarVolumes
Gaudi::Property< std::vector< std::string > > m_sliceVolumes
Gaudi::Property< std::string > m_hitCollName
Hit collection name.
CalibSDTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor.
Support class for PropertyMgr.
Definition Property.h:23
=============================================================================
STL namespace.