ATLAS Offline Software
Loading...
Searching...
No Matches
GeoDetectorTool.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef GEO2G4_GeoDetectorTool_H
6#define GEO2G4_GeoDetectorTool_H
7
8// Base classes
11
12#include "G4Transform3D.hh"
13
14// Members
15
16// STL library
17#include <string>
18#include <vector>
19
29
31{
32public:
33 // Basic constructor and destructor
34 GeoDetectorTool(const std::string& type, const std::string& name, const IInterface *parent);
35 ~GeoDetectorTool() = default;
36
38 virtual StatusCode initialize() override final;
39
41
42 virtual void BuildGeometry() override final;
43
44 virtual void PositionInParent() override final;
45
47 // Internal methods
48 G4LogicalVolume* Convert();
49 bool IsTopTransform();
51
52 //Configurable Properties
53 Gaudi::Property<std::string> m_dumpGDMLFile{this, "GDMLFileOut", "", "File name where the GDML description for the detector will be dumped."};
54 Gaudi::Property<std::string> m_geoDetectorName{this, "GeoDetectorName", "", "Name of the detector in GeoModel, if different from G4."};
55 ServiceHandle<IGeo2G4Svc> m_geo2G4Svc{this, "Geo2G4Svc", "Geo2G4Svc", ""};
56
57 // Other member variables
58 std::string m_builderName{""};
59 bool m_blParamOn{false};
61 G4Transform3D m_topTransform; // initialized in constructor
62};
63
64#endif
DetectorGeometryBase(const std::string &type, const std::string &name, const IInterface *parent)
G4Transform3D m_topTransform
G4LogicalVolume * Convert()
GeoDetectorTool(const std::string &type, const std::string &name, const IInterface *parent)
std::string m_builderName
ServiceHandle< IGeo2G4Svc > m_geo2G4Svc
virtual void BuildGeometry() override final
virtual methods being implemented here
virtual StatusCode initialize() override final
Athena method.
Gaudi::Property< std::string > m_geoDetectorName
~GeoDetectorTool()=default
virtual void PositionInParent() override final
Gaudi::Property< std::string > m_dumpGDMLFile
Support class for PropertyMgr.
Definition Property.h:23
=============================================================================
STL namespace.
#define private