diff --git a/Simulation/G4Utilities/Geo2G4/CMakeLists.txt b/Simulation/G4Utilities/Geo2G4/CMakeLists.txt index 0d0c795306414057ef6920e8a78da67db7158f0f..be994efd862d03cae68f943d9ef272296c73e43d 100644 --- a/Simulation/G4Utilities/Geo2G4/CMakeLists.txt +++ b/Simulation/G4Utilities/Geo2G4/CMakeLists.txt @@ -17,20 +17,17 @@ find_package( GeoModelCore ) atlas_add_library( Geo2G4Lib src/*.cxx NO_PUBLIC_HEADERS - INCLUDE_DIRS ${XERCESC_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS} - PRIVATE_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${GEOMODELCORE_INCLUDE_DIRS} + INCLUDE_DIRS ${XERCESC_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS} ${GEOMODELCORE_INCLUDE_DIRS} + PRIVATE_INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} PRIVATE_DEFINITIONS ${CLHEP_DEFINITIONS} - LINK_LIBRARIES ${XERCESC_LIBRARIES} ${GEANT4_LIBRARIES} ${ROOT_LIBRARIES} GaudiKernel - PRIVATE_LINK_LIBRARIES ${Boost_LIBRARIES} ${CLHEP_LIBRARIES} ${GEOMODELCORE_LIBRARIES} AthenaBaseComps GeoSpecialShapes G4AtlasToolsLib SimHelpers GeoMaterial2G4 AthenaKernel GeoModelInterfaces GeoModelUtilities StoreGateLib SGtests GeoPrimitives ) + LINK_LIBRARIES ${XERCESC_LIBRARIES} ${GEANT4_LIBRARIES} ${GEOMODELCORE_LIBRARIES} ${ROOT_LIBRARIES} AthenaBaseComps GaudiKernel G4AtlasInterfaces G4AtlasToolsLib GeoModelUtilities GeoPrimitives + PRIVATE_LINK_LIBRARIES ${Boost_LIBRARIES} ${CLHEP_LIBRARIES} GeoSpecialShapes SimHelpers GeoMaterial2G4 AthenaKernel GeoModelInterfaces StoreGateLib SGtests ) atlas_add_component( Geo2G4 src/components/*.cxx - INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${GEOMODELCORE_INCLUDE_DIRS} - LINK_LIBRARIES ${Boost_LIBRARIES} ${XERCESC_LIBRARIES} ${GEANT4_LIBRARIES} ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} ${GEOMODELCORE_LIBRARIES} AthenaKernel GeoModelUtilities GaudiKernel AthenaBaseComps StoreGateLib SGtests GeoSpecialShapes G4AtlasToolsLib SimHelpers GeoMaterial2G4 Geo2G4Lib ) + LINK_LIBRARIES Geo2G4Lib ) atlas_add_dictionary( LArWheelSolidCheckerDict src/LArWheelSolidDDProxy.h src/lcg_dict/selection.xml - INCLUDE_DIRS ${Boost_INCLUDE_DIRS} ${XERCESC_INCLUDE_DIRS} ${GEANT4_INCLUDE_DIRS} ${ROOT_INCLUDE_DIRS} ${CLHEP_INCLUDE_DIRS} ${GEOMODELCORE_INCLUDE_DIRS} - LINK_LIBRARIES ${Boost_LIBRARIES} ${XERCESC_LIBRARIES} ${GEANT4_LIBRARIES} ${ROOT_LIBRARIES} ${CLHEP_LIBRARIES} ${GEOMODELCORE_LIBRARIES} AthenaKernel GeoModelUtilities GaudiKernel AthenaBaseComps StoreGateLib SGtests GeoSpecialShapes SimHelpers GeoMaterial2G4 Geo2G4Lib ) - + LINK_LIBRARIES Geo2G4Lib ) diff --git a/Simulation/G4Utilities/Geo2G4/src/Geo2G4AssemblyFactory.h b/Simulation/G4Utilities/Geo2G4/src/Geo2G4AssemblyFactory.h index 16c93561260be876e07defefa0bf9fe55a24ce59..3fec704918f7924a9cc4c74847f3196785916fe4 100644 --- a/Simulation/G4Utilities/Geo2G4/src/Geo2G4AssemblyFactory.h +++ b/Simulation/G4Utilities/Geo2G4/src/Geo2G4AssemblyFactory.h @@ -1,25 +1,24 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ #ifndef GEO2G4_Geo2G4AssemblyFactory_h #define GEO2G4_Geo2G4AssemblyFactory_h #include "GeoModelKernel/GeoVPhysVol.h" -#include "Geo2G4AssemblyFactory.h" #include <map> #include <memory> class Geo2G4AssemblyVolume; -class Geo2G4AssemblyFactory +class Geo2G4AssemblyFactory { public: Geo2G4AssemblyFactory(); Geo2G4AssemblyVolume* Build(const PVConstLink thePhys, - bool& descend); - + bool& descend); + private: std::map<const GeoVPhysVol*, std::unique_ptr<Geo2G4AssemblyVolume>, std::less<const GeoVPhysVol*> > m_assemblyMap; }; diff --git a/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.cxx b/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.cxx index aff6fdfc0cfd2b3c200f15655374ccb290abd7e5..1bdf7e2d5978a2be91306982399e6d9c76075d99 100644 --- a/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.cxx +++ b/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.cxx @@ -3,6 +3,7 @@ */ #include "Geo2G4Svc.h" +#include "Geo2G4AssemblyVolume.h" #include "ExtParameterisedVolumeBuilder.h" // separate function not part of this class (why?) diff --git a/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.h b/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.h index de68c330f48287116c385952f92fc6817e8add80..7f7f30509a629732bff7e70e49d572e95f69663c 100644 --- a/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.h +++ b/Simulation/G4Utilities/Geo2G4/src/Geo2G4Svc.h @@ -1,5 +1,5 @@ /* - Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration + Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration */ #ifndef GEO2G4_Geo2G4Svc_H @@ -11,7 +11,6 @@ #include "GaudiKernel/IIncidentListener.h" #include "Geo2G4AssemblyFactory.h" -#include "Geo2G4AssemblyVolume.h" #include "VolumeBuilder.h"