17class G4VPhysicalVolume;
27 class GeoConfiguration;
28 class IntervalOfValidity;
101 m_components.insert(components.begin(), components.end());
113 m_excluded.insert(components.begin(), components.end());
128 m_additional.insert(components.begin(), components.end());
GearDir is the basic class used for accessing the parameter store.
configuration of the geometry
A class that describes the interval of experiments/runs for which an object in the database is valid.
Class to manage the creation and conversion of the geometry.
G4VisAttributes * newVisAttributes()
Create an anonymous G4VisAttributes for an existing G4LogicalVolume.
void setDetectorComponents(const std::vector< std::string > &components)
Set the names of the components to create.
void setAssignRegions(bool assignRegions)
Choose whether a region should be assigned to each creator.
G4VPhysicalVolume * m_topVolume
Pointer to the top volume of the native geometry description.
void setExcludedComponents(const std::vector< std::string > &components)
Set the names of the components to exclude from creation.
bool m_assignRegions
Bool to indicate whether we automatically assign a region with the creator name to all volumes create...
GeometryManager(const GeometryManager &)=delete
Copy constructor declared private since class is a Singleton.
~GeometryManager()
Destructor: make sure we clean up memory at the end.
std::vector< G4VisAttributes * > m_VisAttributes
List of visualization attributes.
G4VPhysicalVolume * getTopVolume()
Return a pointer to the top volume.
GeoConfiguration createGeometryConfig(const GearDir &detectorDir, const IntervalOfValidity &iov)
Create Geometry configuration object.
std::set< std::string > m_components
List of names of components to be created, all other components will be ignored.
std::set< std::string > m_additional
List of additional components to be added to the default set of components.
void createGeometry(const GearDir ¶ms, GeometryTypes type=FullGeometry)
Create Geometry.
std::set< std::string > m_excluded
List of names of components to be excluded from creation.
std::vector< CreatorBase * > m_creators
List of all creators, to be freed when geometry is destucted.
void clear()
Delete the existing Geant4 Geometry.
static GeometryManager & getInstance()
Return a reference to the instance.
GeometryManager & operator=(const GeometryManager &)=delete
Assignment operator declared private since class is a Singleton.
GeometryManager()
Default constructor declared private since class is a Singleton.
void setAdditionalComponents(const std::vector< std::string > &components)
Set the names of addtional components to be added to the default set.
void createTGeoRepresentation()
Create a TGeo representation of the native geometry description.
std::map< std::string, double > m_densityScaling
Scaling factors for densities.
void setDensityScaling(const std::map< std::string, double > &components)
Set the density scaling: This is intended for systematic studies only and will scale the density of a...
GeometryTypes
Flag indiciating the type of geometry to be used.
@ TrackingGeometry
Simplified geometry for tracking purposes.
@ FullGeometry
Full geometry for simulation.
@ DisplayGeometry
Simplified geometry for display purposes.
Abstract base class for different kinds of events.