5#ifndef G4ATLASTOOLS_DETECTORGEOMETRYBASE_H
6#define G4ATLASTOOLS_DETECTORGEOMETRYBASE_H
17#include "GaudiKernel/ServiceHandle.h"
18#include "GaudiKernel/ToolHandle.h"
37 virtual void Build()
override;
71 Gaudi::Property<std::string>
m_detectorName{
this,
"DetectorName",
"",
"Detector name (same as the Tool name if not set"};
73 Gaudi::Property<double>
m_rotateX{
this,
"RotateX" , 0.0,
"Rotation around the X-axis"};
74 Gaudi::Property<double>
m_rotateY{
this,
"RotateY" , 0.0,
"Rotation around the Y-axis"};
75 Gaudi::Property<double>
m_rotateZ{
this,
"RotateZ" , 0.0,
"Rotation around the Z-axis"};
76 Gaudi::Property<double>
m_offsetX{
this,
"OffsetX" , 0.0,
"Offset in the X-direction"};
77 Gaudi::Property<double>
m_offsetY{
this,
"OffsetY" , 0.0,
"Offset in the Y-direction"};
78 Gaudi::Property<double>
m_offsetZ{
this,
"OffsetZ" , 0.0,
"Offset in the Z-direction"};
G4VPhysicalVolume * GetWorldVolume() override final
virtual void BuildGeometry() override
void SetParent(IDetectorGeometryTool *) override
Gaudi::Property< double > m_rotateY
DetectorGeometryBase(const std::string &type, const std::string &name, const IInterface *parent)
virtual void SetAsWorld() override
virtual ~DetectorGeometryBase()
virtual void SetEnvelope() override
virtual void SetRotationAndOffset()
IDetectorGeometryTool * m_theParent
Gaudi::Property< double > m_rotateX
StatusCode initialize() override
Athena method.
Envelope & GetEnvelope() override final
Gaudi::Property< std::string > m_detectorName
Gaudi::Property< double > m_offsetX
virtual void ResetEnvelope() override
std::string GetDetectorName() const override
ServiceHandle< IG4GeometryNotifierSvc > m_notifierSvc
virtual void PositionInParent() override
Gaudi::Property< double > m_offsetY
void SetDetectorName(const std::string &) override
virtual void Build() override
purely virtual methods being implemented here
Gaudi::Property< double > m_rotateZ
Gaudi::Property< double > m_offsetZ
virtual void BuildSubDetectors() override
ToolHandleArray< IDetectorGeometryTool > m_subDetTools