ATLAS Offline Software
Loading...
Searching...
No Matches
LArG4::DeadSDTool Class Reference

#include <DeadSDTool.h>

Inheritance diagram for LArG4::DeadSDTool:
Collaboration diagram for LArG4::DeadSDTool:

Public Member Functions

 DeadSDTool (const std::string &type, const std::string &name, const IInterface *parent)
StatusCode initialize () override final
 Initialize the tool.
StatusCode initializeSD () override final
 Create and register all SDs for the current thread.
StatusCode SetupEvent (HitCollectionMap &) override final
 Create event-owned hit collections.
virtual StatusCode SetupEvent () override
 Beginning of an athena event.
StatusCode Gather (HitCollectionMap &) override final
 Finalize and record event-owned hit collections.
virtual StatusCode Gather () override
 End of an athena event.

Protected Member Functions

LArG4CalibSDmakeOneSD (const std::string &name, ILArCalibCalculatorSvc *calc, const std::vector< std::string > &volumes) const
 Helper method to create one SD.
virtual std::string deadHitCollectionName () const
virtual std::string srHitCollectionName () const
StatusCode assignSD (std::unique_ptr< G4VSensitiveDetector > sd, const std::vector< std::string > &volumes) const
 Assign SD to a list of volumes.
G4VSensitiveDetector * getSD ()
 Retrieve the current SD.
void SetSensitiveDetector (G4LogicalVolume *, G4VSensitiveDetector *) const
 Method stolen from G4VUserDetectorConstruction in G4 10.2.

Protected Attributes

Gaudi::Property< std::vector< std::string > > m_volumeNames {this, "LogicalVolumeNames", {}}
 All the volumes to which this SD is assigned.
Gaudi::Property< std::vector< std::string > > m_outputCollectionNames {this, "OutputCollectionNames", {}}
 Names of all output collections written out by this SD.
Gaudi::Property< bool > m_noVolumes {this, "NoVolumes", false}
 This SensitiveDetector has no volumes associated with it.
configuration properties
Gaudi::Property< G4bool > m_doPID {this, "ParticleID", false}
 Are we set up to run with PID hits?
Calo identifier helpers
const LArEM_IDm_larEmID {nullptr}
const LArFCAL_IDm_larFcalID {nullptr}
const LArHEC_IDm_larHecID {nullptr}
const CaloDM_IDm_caloDmID {nullptr}
const AtlasDetectorIDm_id_helper {nullptr}

Private Member Functions

StatusCode initializeCalculators () override final
 Initialize Calculator Services.
std::string hitCollectionName () const override final
G4VSensitiveDetector * makeSD () const override final
 Create the SDs for current worker thread.
void setSD (G4VSensitiveDetector *)
 Set the current SD.

Static Private Member Functions

static bool matchStrings (const char *first, const char *second)
 Match two strings with wildcard support.

Private Attributes

Gaudi::Property< std::string > m_hitCollName {this, "HitCollectionName", "LArCalibrationHitDeadMaterial"}
 Hit collection name.
Gaudi::Property< bool > m_do_eep {this, "doEscapedEnergy", false}
 Do we add the escaped energy processing?
Gaudi::Property< std::vector< std::string > > m_barCryVolumes {this, "BarrelCryVolumes"}
Gaudi::Property< std::vector< std::string > > m_barCryLArVolumes {this, "BarrelCryLArVolumes"}
Gaudi::Property< std::vector< std::string > > m_barCryMixVolumes {this, "BarrelCryMixVolumes"}
Gaudi::Property< std::vector< std::string > > m_DMVolumes {this, "DeadMaterialVolumes"}
Gaudi::Property< std::vector< std::string > > m_barPresVolumes {this, "BarrelPresVolumes"}
Gaudi::Property< std::vector< std::string > > m_barVolumes {this, "BarrelVolumes"}
Gaudi::Property< std::vector< std::string > > m_ECCryVolumes {this, "ECCryVolumes"}
Gaudi::Property< std::vector< std::string > > m_ECCryLArVolumes {this, "ECCryLArVolumes"}
Gaudi::Property< std::vector< std::string > > m_ECCryMixVolumes {this, "ECCryMixVolumes"}
Gaudi::Property< std::vector< std::string > > m_ECSupportVolumes {this, "ECSupportVolumes"}
Gaudi::Property< std::vector< std::string > > m_HECWheelVolumes {this, "HECWheelVolumes"}
ServiceHandle< ILArCalibCalculatorSvcm_embccalc
ServiceHandle< ILArCalibCalculatorSvcm_embclarcalc
ServiceHandle< ILArCalibCalculatorSvcm_mixcalc
ServiceHandle< ILArCalibCalculatorSvcm_dmcalc
ServiceHandle< ILArCalibCalculatorSvcm_embpscalc
ServiceHandle< ILArCalibCalculatorSvcm_embcalc
ServiceHandle< ILArCalibCalculatorSvcm_emeccalc
ServiceHandle< ILArCalibCalculatorSvcm_emecclarcalc
ServiceHandle< ILArCalibCalculatorSvcm_ememixcalc
ServiceHandle< ILArCalibCalculatorSvcm_emesupcalc
ServiceHandle< ILArCalibCalculatorSvcm_heccalc
ServiceHandle< ILArCalibCalculatorSvcm_defcalc
G4VSensitiveDetector * m_SD {}
 The sensitive detector to which this thing corresponds.

Detailed Description

Definition at line 18 of file DeadSDTool.h.

Constructor & Destructor Documentation

◆ DeadSDTool()

LArG4::DeadSDTool::DeadSDTool ( const std::string & type,
const std::string & name,
const IInterface * parent )

Member Function Documentation

◆ assignSD()

StatusCode SensitiveDetectorBase::assignSD ( std::unique_ptr< G4VSensitiveDetector > sd,
const std::vector< std::string > & volumes ) const
protectedinherited

Assign SD to a list of volumes.

This method supports wild card matching

Definition at line 64 of file SensitiveDetectorBase.cxx.

66{
67 // Propagate verbosity setting to the SD
68 if(msgLvl(MSG::VERBOSE)) sd->SetVerboseLevel(10);
69 else if(msgLvl(MSG::DEBUG)) sd->SetVerboseLevel(5);
70
71 // Add the sensitive detector to the SD manager in G4 for SDs,
72 // even if it has no volumes associated to it.
73 auto sdMgr = G4SDManager::GetSDMpointer();
74 auto sdPtr = sd.get();
75 // SDManager is now the SD owner
76 //for later use
77 auto sdName = sd->GetName();
78 sdMgr->AddNewDetector(sd.release());
79
80 if(!volumes.empty()) {
81 bool gotOne = false;
82 auto logicalVolumeStore = G4LogicalVolumeStore::GetInstance();
83 for(const auto& volumeName : volumes) {
84 // Keep track of how many volumes we find with this name string.
85 // We allow for multiple matches.
86 int numFound = 0;
87
88 // Find volumes with this name
89 for(auto* logVol : *logicalVolumeStore) {
90
91 ATH_MSG_VERBOSE("Check whether "<<logVol->GetName()<<" belongs to the set of sensitive detectors "<<volumeName);
92 if( matchStrings( volumeName.data(), logVol->GetName() ) ){
93 ++numFound;
94 SetSensitiveDetector(logVol, sdPtr);
95 }
96
97 }
98 // Warn if no volumes were found
99 if(numFound == 0) {
100 ATH_MSG_WARNING("Volume " << volumeName <<
101 " not found in G4LogicalVolumeStore.");
102 }
103 else {
104 ATH_MSG_VERBOSE("Found " << numFound << " copies of LV " << volumeName <<
105 "; SD " << sdName << " assigned.");
106 gotOne = true;
107 }
108
109 }
110
111 // Abort if we have failed to assign any volume
112 if(!gotOne) {
113 ATH_MSG_ERROR( "Failed to assign *any* volume to SD " << name() <<
114 " and expected at least one. Size of the volume store "<<G4LogicalVolumeStore::GetInstance()->size() );
115 return StatusCode::FAILURE;
116 }
117 }
118
119 return StatusCode::SUCCESS;
120}
#define ATH_MSG_ERROR(x)
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
size_t size() const
Number of registered mappings.
static bool matchStrings(const char *first, const char *second)
Match two strings with wildcard support.
void SetSensitiveDetector(G4LogicalVolume *, G4VSensitiveDetector *) const
Method stolen from G4VUserDetectorConstruction in G4 10.2.

◆ deadHitCollectionName()

virtual std::string LArG4::CalibSDTool::deadHitCollectionName ( ) const
protectedvirtualinherited

◆ Gather() [1/2]

StatusCode LArG4::CalibSDTool::Gather ( HitCollectionMap & )
finaloverridevirtualinherited

Finalize and record event-owned hit collections.

Reimplemented from SensitiveDetectorBase.

◆ Gather() [2/2]

virtual StatusCode SensitiveDetectorBase::Gather ( )
inlineoverridevirtualinherited

End of an athena event.

Store the output collection in SG at this point. If we are using a WriteHandle, then this can be empty!

Reimplemented in AFP_SensitiveDetectorTool, AFP_SiDSensitiveDetectorTool, AFP_TDSensitiveDetectorTool, ALFA_SensitiveDetectorTool, FCS_Param::FCS_StepInfoSDTool, ZDC_FiberSDTool, and ZDC_G4CalibSDTool.

Definition at line 78 of file SensitiveDetectorBase.h.

78{ return StatusCode::SUCCESS; }

◆ getSD()

G4VSensitiveDetector * SensitiveDetectorBase::getSD ( )
protectedinherited

Retrieve the current SD.

In AthenaMT, this means the thread-local SD. Otherwise, it is simply the single SD.

Definition at line 122 of file SensitiveDetectorBase.cxx.

123{
124#ifdef G4MULTITHREADED
125 // Get current thread-ID
126 const auto tid = std::this_thread::get_id();
127 // Retrieve it from the SD map
128 auto sdPair = m_sdThreadMap.find(tid);
129 if(sdPair == m_sdThreadMap.end()) return nullptr;
130 return sdPair->second;
131#else
132 return m_SD;
133#endif
134}
G4VSensitiveDetector * m_SD
The sensitive detector to which this thing corresponds.

◆ hitCollectionName()

std::string LArG4::DeadSDTool::hitCollectionName ( ) const
finaloverrideprivatevirtual

Reimplemented from LArG4::CalibSDTool.

◆ initialize()

StatusCode LArG4::CalibSDTool::initialize ( )
finaloverrideinherited

Initialize the tool.

◆ initializeCalculators()

StatusCode LArG4::DeadSDTool::initializeCalculators ( )
finaloverrideprivatevirtual

Initialize Calculator Services.

Reimplemented from LArG4::CalibSDTool.

◆ initializeSD()

StatusCode LArG4::CalibSDTool::initializeSD ( )
finaloverrideinherited

Create and register all SDs for the current thread.

◆ makeOneSD()

LArG4CalibSD * LArG4::CalibSDTool::makeOneSD ( const std::string & name,
ILArCalibCalculatorSvc * calc,
const std::vector< std::string > & volumes ) const
protectedinherited

Helper method to create one SD.

◆ makeSD()

G4VSensitiveDetector * LArG4::DeadSDTool::makeSD ( ) const
finaloverrideprivate

Create the SDs for current worker thread.

◆ matchStrings()

bool SensitiveDetectorBase::matchStrings ( const char * first,
const char * second )
staticprivateinherited

Match two strings with wildcard support.

Compares two strings character by character with optional * wildcard in the first argument

Definition at line 149 of file SensitiveDetectorBase.cxx.

150{
151 // If we reach at the end of both strings, we are done
152 if (*first == '\0' && *second == '\0')
153 return true;
154
155 // If there are consecutive '*' present in the first string
156 // advance to the next character
157 if(*first == '*' && *(first + 1) == '*')
158 return matchStrings(first + 1, second);
159
160 // Make sure that the characters after '*' are present in second string.
161 if (*first == '*' && *(first + 1) != '\0' && *second == '\0')
162 return false;
163
164 // If the current characters of both strings match
165 if (*first == *second)
166 return matchStrings(first + 1, second + 1);
167
168 // If there is *, then there are two possibilities
169 // a) We consider current character of second string
170 // b) We ignore current character of second string.
171 if (*first == '*')
172 return matchStrings(first + 1, second) || matchStrings(first, second + 1);
173 return false;
174}

◆ setSD()

void SensitiveDetectorBase::setSD ( G4VSensitiveDetector * sd)
privateinherited

Set the current SD.

In hive, this gets assigned as the thread-local SD.

Definition at line 136 of file SensitiveDetectorBase.cxx.

137{
138#ifdef G4MULTITHREADED
139 const auto tid = std::this_thread::get_id();
140 ATH_MSG_DEBUG("Creating and registering SD " << sd << " in thread " << tid);
141 m_sdThreadMap.insert( std::make_pair(tid, sd) );
142#else
143 m_SD = sd;
144#endif
145}
#define ATH_MSG_DEBUG(x)

◆ SetSensitiveDetector()

void SensitiveDetectorBase::SetSensitiveDetector ( G4LogicalVolume * logVol,
G4VSensitiveDetector * aSD ) const
protectedinherited

Method stolen from G4VUserDetectorConstruction in G4 10.2.

Definition at line 176 of file SensitiveDetectorBase.cxx.

178{
179 // New Logic: allow for "multiple" SDs being attached to a single LV.
180 // To do that we use a special proxy SD called G4MultiSensitiveDetector
181
182 // Get existing SD if already set and check if it is of the special type
183 G4VSensitiveDetector* originalSD = logVol->GetSensitiveDetector();
184 if ( originalSD == nullptr )
185 {
186 logVol->SetSensitiveDetector(aSD);
187 }
188 else
189 {
190 G4MultiSensitiveDetector* msd = dynamic_cast<G4MultiSensitiveDetector*>(originalSD);
191 if ( msd != nullptr )
192 {
193 msd->AddSD(aSD);
194 }
195 else
196 {
197 // Construct a unique name using the volume address
198 std::stringstream ss;
200 const G4String msdname = "/MultiSD_" + logVol->GetName() + ss.str();
201 msd = new G4MultiSensitiveDetector(std::move(msdname));
202 // We need to register the proxy to have correct handling of IDs
203 G4SDManager::GetSDMpointer()->AddNewDetector(msd);
204 msd->AddSD(originalSD);
205 msd->AddSD(aSD);
206 logVol->SetSensitiveDetector(msd);
207 }
208 }
209}
static Double_t ss

◆ SetupEvent() [1/2]

StatusCode LArG4::CalibSDTool::SetupEvent ( HitCollectionMap & )
finaloverridevirtualinherited

Create event-owned hit collections.

Reimplemented from SensitiveDetectorBase.

◆ SetupEvent() [2/2]

virtual StatusCode SensitiveDetectorBase::SetupEvent ( )
inlineoverridevirtualinherited

Beginning of an athena event.

This is where collection initialization should happen. If we are using a WriteHandle, then this could be empty.

Reimplemented in AFP_SensitiveDetectorTool, AFP_SiDSensitiveDetectorTool, AFP_TDSensitiveDetectorTool, and ALFA_SensitiveDetectorTool.

Definition at line 70 of file SensitiveDetectorBase.h.

70{ return StatusCode::SUCCESS; }

◆ srHitCollectionName()

virtual std::string LArG4::CalibSDTool::srHitCollectionName ( ) const
protectedvirtualinherited

Reimplemented in LArG4::ActiveSDTool.

Member Data Documentation

◆ m_barCryLArVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_barCryLArVolumes {this, "BarrelCryLArVolumes"}
private

Definition at line 42 of file DeadSDTool.h.

42{this, "BarrelCryLArVolumes"};

◆ m_barCryMixVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_barCryMixVolumes {this, "BarrelCryMixVolumes"}
private

Definition at line 43 of file DeadSDTool.h.

43{this, "BarrelCryMixVolumes"};

◆ m_barCryVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_barCryVolumes {this, "BarrelCryVolumes"}
private

Definition at line 41 of file DeadSDTool.h.

41{this, "BarrelCryVolumes"};

◆ m_barPresVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_barPresVolumes {this, "BarrelPresVolumes"}
private

Definition at line 45 of file DeadSDTool.h.

45{this, "BarrelPresVolumes"};

◆ m_barVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_barVolumes {this, "BarrelVolumes"}
private

Definition at line 46 of file DeadSDTool.h.

46{this, "BarrelVolumes"};

◆ m_caloDmID

const CaloDM_ID* LArG4::CalibSDTool::m_caloDmID {nullptr}
protectedinherited

Definition at line 97 of file CalibSDTool.h.

97{nullptr};

◆ m_defcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_defcalc
private
Initial value:
{this, "DefaultCalibrationCalculator"
, "CalibrationDefaultCalculator"}

Definition at line 75 of file DeadSDTool.h.

75 {this, "DefaultCalibrationCalculator"
76 , "CalibrationDefaultCalculator"}; //CalibrationDefaultCalculator()

◆ m_dmcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_dmcalc
private
Initial value:
{this, "DMCalibrationCalculator"
, "DMCalibrationCalculator"}

Definition at line 59 of file DeadSDTool.h.

59 {this, "DMCalibrationCalculator"
60 , "DMCalibrationCalculator"}; //DM::CalibrationCalculator()

◆ m_DMVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_DMVolumes {this, "DeadMaterialVolumes"}
private

Definition at line 44 of file DeadSDTool.h.

44{this, "DeadMaterialVolumes"};

◆ m_do_eep

Gaudi::Property<bool> LArG4::DeadSDTool::m_do_eep {this, "doEscapedEnergy", false}
private

Do we add the escaped energy processing?

This is only in "mode 1" (Tile+LAr), not in "DeadLAr" mode

Definition at line 39 of file DeadSDTool.h.

39{this, "doEscapedEnergy", false};

◆ m_doPID

Gaudi::Property<G4bool> LArG4::CalibSDTool::m_doPID {this, "ParticleID", false}
protectedinherited

Are we set up to run with PID hits?

Definition at line 88 of file CalibSDTool.h.

88{this, "ParticleID", false};

◆ m_ECCryLArVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_ECCryLArVolumes {this, "ECCryLArVolumes"}
private

Definition at line 48 of file DeadSDTool.h.

48{this, "ECCryLArVolumes"};

◆ m_ECCryMixVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_ECCryMixVolumes {this, "ECCryMixVolumes"}
private

Definition at line 49 of file DeadSDTool.h.

49{this, "ECCryMixVolumes"};

◆ m_ECCryVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_ECCryVolumes {this, "ECCryVolumes"}
private

Definition at line 47 of file DeadSDTool.h.

47{this, "ECCryVolumes"};

◆ m_ECSupportVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_ECSupportVolumes {this, "ECSupportVolumes"}
private

Definition at line 50 of file DeadSDTool.h.

50{this, "ECSupportVolumes"};

◆ m_embcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_embcalc
private
Initial value:
{this, "EMBCalibrationCalculator"
, "BarrelCalibrationCalculator"}

Definition at line 63 of file DeadSDTool.h.

63 {this, "EMBCalibrationCalculator"
64 , "BarrelCalibrationCalculator"}; //Barrel::CalibrationCalculator()

◆ m_embccalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_embccalc
private
Initial value:
{this, "EMBCryoCalibrationCalculator"
, "BarrelCryostatCalibrationCalculator"}

Definition at line 53 of file DeadSDTool.h.

53 {this, "EMBCryoCalibrationCalculator"
54 , "BarrelCryostatCalibrationCalculator"}; //BarrelCryostat::CalibrationCalculator()

◆ m_embclarcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_embclarcalc
private
Initial value:
{this, "EMBCryoLArCalibrationCalculator"
, "BarrelCryostatCalibrationLArCalculator"}

Definition at line 55 of file DeadSDTool.h.

55 {this, "EMBCryoLArCalibrationCalculator"
56 , "BarrelCryostatCalibrationLArCalculator"}; //BarrelCryostat::CalibrationLArCalculator()

◆ m_embpscalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_embpscalc
private
Initial value:
{this, "EMBPSCalibrationCalculator"
, "BarrelPresamplerCalibrationCalculator"}

Definition at line 61 of file DeadSDTool.h.

61 {this, "EMBPSCalibrationCalculator"
62 , "BarrelPresamplerCalibrationCalculator"}; //BarrelPresampler::CalibrationCalculator()

◆ m_emeccalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_emeccalc
private
Initial value:
{this, "ECCryoCalibrationCalculator"
, "EndcapCryostatCalibrationCalculator"}

Definition at line 65 of file DeadSDTool.h.

65 {this, "ECCryoCalibrationCalculator"
66 , "EndcapCryostatCalibrationCalculator"}; //EndcapCryostat::CalibrationCalculator()

◆ m_emecclarcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_emecclarcalc
private
Initial value:
{this, "ECCryoLArCalibrationCalculator"
, "EndcapCryostatCalibrationLArCalculator"}

Definition at line 67 of file DeadSDTool.h.

67 {this, "ECCryoLArCalibrationCalculator"
68 , "EndcapCryostatCalibrationLArCalculator"}; //EndcapCryostat::CalibrationLArCalculator()

◆ m_ememixcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_ememixcalc
private
Initial value:
{this, "ECCryoMixCalibrationCalculator"
, "EndcapCryostatCalibrationMixedCalculator"}

Definition at line 69 of file DeadSDTool.h.

69 {this, "ECCryoMixCalibrationCalculator"
70 , "EndcapCryostatCalibrationMixedCalculator"}; //EndcapCryostat::CalibrationMixedCalculator()

◆ m_emesupcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_emesupcalc
private
Initial value:
{this, "EMECSuppCalibrationCalculator"
, "EMECSupportCalibrationCalculator"}

Definition at line 71 of file DeadSDTool.h.

71 {this, "EMECSuppCalibrationCalculator"
72 , "EMECSupportCalibrationCalculator"}; //EMECSupportCalibrationCalculator()

◆ m_heccalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_heccalc
private
Initial value:
{this, "HECWheelDeadCalculator"
, "HECCalibrationWheelDeadCalculator"}

Definition at line 73 of file DeadSDTool.h.

73 {this, "HECWheelDeadCalculator"
74 , "HECCalibrationWheelDeadCalculator"}; //HEC::LArHECCalibrationWheelCalculator(HEC::kWheelDead)

◆ m_HECWheelVolumes

Gaudi::Property<std::vector<std::string> > LArG4::DeadSDTool::m_HECWheelVolumes {this, "HECWheelVolumes"}
private

Definition at line 51 of file DeadSDTool.h.

51{this, "HECWheelVolumes"};

◆ m_hitCollName

Gaudi::Property<std::string> LArG4::DeadSDTool::m_hitCollName {this, "HitCollectionName", "LArCalibrationHitDeadMaterial"}
private

Hit collection name.

Definition at line 35 of file DeadSDTool.h.

35{this, "HitCollectionName", "LArCalibrationHitDeadMaterial"};

◆ m_id_helper

const AtlasDetectorID* LArG4::CalibSDTool::m_id_helper {nullptr}
protectedinherited

Definition at line 98 of file CalibSDTool.h.

98{nullptr};

◆ m_larEmID

const LArEM_ID* LArG4::CalibSDTool::m_larEmID {nullptr}
protectedinherited

Definition at line 94 of file CalibSDTool.h.

94{nullptr};

◆ m_larFcalID

const LArFCAL_ID* LArG4::CalibSDTool::m_larFcalID {nullptr}
protectedinherited

Definition at line 95 of file CalibSDTool.h.

95{nullptr};

◆ m_larHecID

const LArHEC_ID* LArG4::CalibSDTool::m_larHecID {nullptr}
protectedinherited

Definition at line 96 of file CalibSDTool.h.

96{nullptr};

◆ m_mixcalc

ServiceHandle<ILArCalibCalculatorSvc> LArG4::DeadSDTool::m_mixcalc
private
Initial value:
{this, "EMBCryoMixCalibrationCalculator"
, "BarrelCryostatCalibrationMixedCalculator"}

Definition at line 57 of file DeadSDTool.h.

57 {this, "EMBCryoMixCalibrationCalculator"
58 , "BarrelCryostatCalibrationMixedCalculator"}; //BarrelCryostat::CalibrationMixedCalculator()

◆ m_noVolumes

Gaudi::Property<bool> SensitiveDetectorBase::m_noVolumes {this, "NoVolumes", false}
protectedinherited

This SensitiveDetector has no volumes associated with it.

Definition at line 101 of file SensitiveDetectorBase.h.

101{this, "NoVolumes", false};

◆ m_outputCollectionNames

Gaudi::Property<std::vector<std::string> > SensitiveDetectorBase::m_outputCollectionNames {this, "OutputCollectionNames", {}}
protectedinherited

Names of all output collections written out by this SD.

Definition at line 98 of file SensitiveDetectorBase.h.

98{this, "OutputCollectionNames", {}};

◆ m_SD

G4VSensitiveDetector* SensitiveDetectorBase::m_SD {}
privateinherited

The sensitive detector to which this thing corresponds.

Definition at line 125 of file SensitiveDetectorBase.h.

125{};

◆ m_volumeNames

Gaudi::Property<std::vector<std::string> > SensitiveDetectorBase::m_volumeNames {this, "LogicalVolumeNames", {}}
protectedinherited

All the volumes to which this SD is assigned.

Definition at line 96 of file SensitiveDetectorBase.h.

96{this, "LogicalVolumeNames", {}};

The documentation for this class was generated from the following file: