|
DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Go to the documentation of this file.
13 #ifndef DDG4_GEANT4GEOMETRYINFO_H
14 #define DDG4_GEANT4GEOMETRYINFO_H
38 class G4LogicalVolume;
41 class G4VisAttributes;
42 class G4VPhysicalVolume;
43 class G4OpticalSurface;
44 class G4LogicalSkinSurface;
45 class G4LogicalBorderSurface;
48 class G4PhysicsOrderedFreeVector;
58 class Geant4AssemblyVolume;
66 namespace Geant4GeometryMaps {
69 typedef std::map<const TGeoIsotope*, G4Isotope*>
IsotopeMap;
74 typedef std::map<Volume, G4LogicalVolume*>
VolumeMap;
75 typedef std::map<PlacedVolume, Geant4AssemblyVolume*>
AssemblyMap;
78 typedef std::pair<VolumeChain,const G4VPhysicalVolume*>
ImprintEntry;
81 typedef std::map<const TGeoShape*, G4VSolid*>
SolidMap;
134 std::map<VisAttr, G4VisAttributes*>
g4Vis;
136 std::map<Geant4PlacementPath, Placement>
g4Paths;
137 std::map<SensitiveDetector,std::set<const TGeoVolume*> >
sensitives;
138 std::map<Region, std::set<const TGeoVolume*> >
regions;
139 std::map<LimitSet, std::set<const TGeoVolume*> >
limits;
151 G4VPhysicalVolume*
world()
const;
153 void setWorld(
const TGeoNode* node);
160 #endif // DDG4_GEANT4GEOMETRYINFO_H
~PropertyVector()=default
static std::string placementPath(const Geant4PlacementPath &path, bool reverse=true)
Assemble Geant4 volume path.
std::map< SensitiveDetector, std::set< const TGeoVolume * > > sensitives
std::map< OpticalSurface, G4OpticalSurface * > g4OpticalSurfaces
Geant4GeometryMaps::AssemblyMap g4AssemblyVolumes
std::map< Region, G4Region * > g4Regions
std::map< PlacedVolume, Geant4AssemblyVolume * > AssemblyMap
Data container to store information obtained during the geometry scan.
struct dd4hep::sim::Geant4GeometryInfo::PlacementFlags::_flags flags
Geant4GeometryMaps::MaterialMap g4Materials
std::map< VisAttr, G4VisAttributes * > g4Vis
std::map< const TGeoIsotope *, G4Isotope * > IsotopeMap
std::vector< double > bins
Geant4GeometryInfo()
Default constructor.
void setWorld(const TGeoNode *node)
Set the world volume.
Class of the Geant4 toolkit. See http://www-geant4.kek.jp/Reference.
virtual ~Geant4GeometryInfo()
Default destructor.
Geant4GeometryMaps::G4PlacementMap g4Parameterised
std::map< LimitSet, std::set< const TGeoVolume * > > limits
Geometry mapping from dd4hep to Geant 4.
std::vector< double > values
unsigned path_has_parametrised
Class of the Geant4 toolkit. See http://www-geant4.kek.jp/Reference.
Geant4GeometryMaps::PlacementMap g4Placements
Class of the ROOT toolkit. See http://root.cern.ch/root/htmldoc/ClassIndex.html.
Geant4GeometryMaps::IsotopeMap g4Isotopes
std::map< BorderSurface, G4LogicalBorderSurface * > g4BorderSurfaces
Geant4GeometryMaps::VolumeImprintMap g4VolumeImprints
std::map< const G4VPhysicalVolume *, PlacedVolume > G4PlacementMap
G4VPhysicalVolume * m_world
Geant4GeometryMaps::G4PlacementMap g4Replicated
std::map< Material, G4Material * > MaterialMap
std::map< Atom, G4Element * > ElementMap
std::pair< VolumeChain, const G4VPhysicalVolume * > ImprintEntry
std::map< LimitSet, G4UserLimits * > g4Limits
Geant4GeometryMaps::SolidMap g4Solids
Class of the Geant4 toolkit. See http://www-geant4.kek.jp/Reference.
unsigned path_has_replicated
dd4hep::DDSegmentation::VolumeID VolumeID
std::vector< ImprintEntry > Imprints
Concreate class holding the relation information between geant4 objects and dd4hep objects.
std::map< Geant4PlacementPath, Placement > g4Paths
std::vector< const G4VPhysicalVolume * > Geant4PlacementPath
std::map< Volume, Imprints > VolumeImprintMap
std::vector< const TGeoNode * > VolumeChain
Namespace for the AIDA detector description toolkit.
std::map< Region, std::set< const TGeoVolume * > > regions
Geant4GeometryMaps::ElementMap g4Elements
G4VPhysicalVolume * world() const
The world placement.
std::map< SkinSurface, G4LogicalSkinSurface * > g4SkinSurfaces
std::map< Volume, G4LogicalVolume * > VolumeMap
std::map< const TGeoShape *, G4VSolid * > SolidMap
std::map< PropertyTable, PropertyVector * > g4OpticalProperties
Geant4GeometryMaps::VolumeMap g4Volumes
std::map< PlacedVolume, G4VPhysicalVolume * > PlacementMap