|
ATLAS Offline Software
|
Go to the documentation of this file.
10 #include "CLHEP/Units/SystemOfUnits.h"
39 , m_hitCollName(
"MergedEventSteps")
40 , m_bpsmodcalc(
"EMBPresamplerCalculator",
name)
41 , m_embcalc(
"EMBCalculator",
name)
42 , m_emepiwcalc(
"EMECPosInnerWheelCalculator",
name)
43 , m_emeniwcalc(
"EMECNegInnerWheelCalculator",
name)
44 , m_emepowcalc(
"EMECPosOuterWheelCalculator",
name)
45 , m_emenowcalc(
"EMECNegOuterWheelCalculator",
name)
46 , m_emepscalc(
"EMECPresamplerCalculator",
name)
47 , m_emepobarcalc(
"EMECPosBackOuterBarretteCalculator",
name)
48 , m_emenobarcalc(
"EMECNegBackOuterBarretteCalculator",
name)
49 , m_heccalc(
"HECWheelCalculator",
name)
50 , m_fcal1calc(
"FCAL1Calculator",
name)
51 , m_fcal2calc(
"FCAL2Calculator",
name)
52 , m_fcal3calc(
"FCAL3Calculator",
name)
53 , m_tileCalculator(
"TileGeoG4SDCalc",
name)
55 , m_larFcalID(nullptr)
77 declareProperty(
"EMBCalculator",
m_embcalc);
85 declareProperty(
"HECWActiveCalculator",
m_heccalc);
136 return StatusCode::FAILURE;
141 return StatusCode::FAILURE;
146 return StatusCode::FAILURE;
151 return StatusCode::FAILURE;
159 return StatusCode::SUCCESS;
183 return StatusCode::SUCCESS;
195 return StatusCode::FAILURE;
197 sdWrapper->EndOfAthenaEvent();
198 return StatusCode::SUCCESS;
231 std::unique_ptr<FCS_StepInfoSD>
233 const std::vector<std::string>& volumes)
const
244 throw GaudiException(
"nullptr for ILArCalculatorSvc provided to constructor for: " + sdName,
245 name(), StatusCode::FAILURE);
250 std::unique_ptr<FCS_StepInfoSD>
sd =
251 std::make_unique<LArFCS_StepInfoSD>(sdName,
config);
255 if( this->
assignSD( sd.get(), parsedVolumes ).isFailure() ) {
257 throw GaudiException(
"Failed to assign sd: " + sdName,
258 name(), StatusCode::FAILURE);
266 std::unique_ptr<FCS_StepInfoSD>
268 const std::vector<std::string>& volumes)
const
276 throw GaudiException(
"nullptr for ITileCalculator provided to constructor for: " + sdName,
277 name(), StatusCode::FAILURE);
282 std::unique_ptr<FCS_StepInfoSD>
sd =
283 std::make_unique<TileFCS_StepInfoSD>(sdName,
config);
287 if( this->
assignSD( sd.get(), volumes ).isFailure() ) {
289 throw GaudiException(
"Failed to assign sd: " + sdName,
290 name(), StatusCode::FAILURE);
def retrieve(aClass, aKey=None)
double m_maxRadius
property, see LArG4GenShowerLib::LArG4GenShowerLib
const LArEM_ID * getEM_ID(void) const
std::set< std::string > findLogicalVolumes(const std::string &pattern)
Search for logical volumes in the G4 volume store.
Common base class for tools that create and manage Geant4 sensitive detectors.
double m_maxRadiusFine
property, see LArG4GenShowerLib::LArG4GenShowerLib
#define ATH_MSG_VERBOSE(x)
G4VSensitiveDetector * getSD()
Retrieve the current SD.
Standalone functions for dealing with LAr G4 volumes.
const TileID * getTileID(void) const
const LArHEC_ID * getHEC_ID(void) const
This class initializes the Calo (LAr and Tile) offline identifiers.
::StatusCode StatusCode
StatusCode definition for legacy code.
const LArFCAL_ID * getFCAL_ID(void) const
#define CHECK(...)
Evaluate an expression and check for errors.
detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection > FCS_StepInfoSDWrapper
Template instantiation for LArG4SimpleSD.
double m_maxRadiusLAr
property, see LArG4GenShowerLib::LArG4GenShowerLib
double m_maxRadiusTile
property, see LArG4GenShowerLib::LArG4GenShowerLib
Gaudi::Property< bool > m_noVolumes
This SensitiveDetector has no volumes associated with it.
A template class which wraps multiple sensitive detectors.
double m_maxRadiusFCAL
property, see LArG4GenShowerLib::LArG4GenShowerLib
double m_maxRadiusHEC
property, see LArG4GenShowerLib::LArG4GenShowerLib
StatusCode assignSD(G4VSensitiveDetector *sd, const std::vector< std::string > &volumes) const
Assign SD to a list of volumes.