![]() |
DD4hep
1.33.0
Detector Description Toolkit for High Energy Physics
|
Concrete basic implementation of the Geant4 detector construction sequencer. More...
#include <Geant4DetectorConstruction.h>
Public Member Functions | |
| Geant4DetectorConstructionSequence (Geant4Context *context, const std::string &nam) | |
| Standard Constructor. More... | |
| virtual | ~Geant4DetectorConstructionSequence () |
| Default destructor. More... | |
| virtual void | updateContext (Geant4Context *ctxt) override |
| Set or update client context. More... | |
| void | adopt (Geant4DetectorConstruction *action) |
| Add an actor responding to all callbacks. Sequence takes ownership. More... | |
| Geant4DetectorConstruction * | get (const std::string &nam) const |
| Access an actor by name. More... | |
| virtual void | constructGeo (Geant4DetectorConstructionContext *ctxt) |
| Geometry construction callback. Called at "Construct()". More... | |
| virtual void | constructField (Geant4DetectorConstructionContext *ctxt) |
| Electromagnetic field construction callback. Called at "ConstructSDandField()". More... | |
| virtual void | constructSensitives (Geant4DetectorConstructionContext *ctxt) |
| Sensitive detector construction callback. Called at "ConstructSDandField()". More... | |
| const std::map< Material, G4Material * > & | materials () const |
| Access to the converted materials. More... | |
| const std::map< Atom, G4Element * > & | elements () const |
| Access to the converted elements. More... | |
| const std::map< const TGeoShape *, G4VSolid * > & | shapes () const |
| Access to the converted shapes. More... | |
| const std::map< Volume, G4LogicalVolume * > & | volumes () const |
| Access to the converted volumes. More... | |
| const std::map< PlacedVolume, G4VPhysicalVolume * > & | placements () const |
| Access to the converted placements. More... | |
| const std::map< PlacedVolume, Geant4AssemblyVolume * > & | assemblies () const |
| Access to the converted assemblys. More... | |
| const std::map< LimitSet, G4UserLimits * > & | limits () const |
| Access to the converted limit sets. More... | |
| const std::map< Region, G4Region * > & | regions () const |
| Access to the converted regions. More... | |
Public Member Functions inherited from dd4hep::sim::Geant4Action | |
| Geant4Action (Geant4Context *context, const std::string &nam) | |
| Standard constructor. More... | |
| long | addRef () |
| Increase reference count. More... | |
| long | release () |
| Decrease reference count. Implicit destruction. More... | |
| Geant4Context * | context () const |
| Access the context. More... | |
| virtual void | configureFiber (Geant4Context *thread_context) |
| Set or update client for the use in a new thread fiber. More... | |
| const std::string & | name () const |
| Access name of the action. More... | |
| const char * | c_name () const |
| Access name of the action. More... | |
| void | setName (const std::string &new_name) |
| Set the object name. More... | |
| PropertyManager & | properties () |
| Access to the properties of the object. More... | |
| PrintLevel | outputLevel () const |
| Access the output level. More... | |
| PrintLevel | setOutputLevel (PrintLevel new_level) |
| Set the output level; returns previous value. More... | |
| Geant4UIMessenger * | control () const |
| Access to the UI messenger. More... | |
| virtual void | enableUI () |
| Enable and install UI messenger. More... | |
| template<typename T > | |
| Geant4Action & | declareProperty (const std::string &nam, T &val) |
| Declare property. More... | |
| template<typename T > | |
| Geant4Action & | declareProperty (const char *nam, T &val) |
| Declare property. More... | |
| bool | hasProperty (const std::string &name) const |
| Check property for existence. More... | |
| Property & | property (const std::string &name) |
| Access single property. More... | |
| virtual void | installMessengers () |
| Install property control messenger if wanted. More... | |
| virtual void | installCommandMessenger () |
| Install command control messenger if wanted. More... | |
| virtual void | installPropertyMessenger () |
| Install property control messenger if wanted. More... | |
| void | print (const char *fmt,...) const |
| Support for messages with variable output level using output level. More... | |
| void | printM1 (const char *fmt,...) const |
| Support for messages with variable output level using output level-1. More... | |
| void | printM2 (const char *fmt,...) const |
| Support for messages with variable output level using output level-2. More... | |
| void | printP1 (const char *fmt,...) const |
| Support for messages with variable output level using output level+1. More... | |
| void | printP2 (const char *fmt,...) const |
| Support for messages with variable output level using output level+2. More... | |
| void | always (const char *fmt,...) const |
| Support of always printed messages. More... | |
| void | debug (const char *fmt,...) const |
| Support of debug messages. More... | |
| void | info (const char *fmt,...) const |
| Support of info messages. More... | |
| void | warning (const char *fmt,...) const |
| Support of warning messages. More... | |
| void | error (const char *fmt,...) const |
| Support of error messages. More... | |
| bool | return_error (bool return_value, const char *fmt,...) const |
| Action to support error messages. More... | |
| void | fatal (const char *fmt,...) const |
| Support of fatal messages. Throws exception. More... | |
| void | except (const char *fmt,...) const |
| Support of exceptions: Print fatal message and throw runtime_error. More... | |
| void | abortRun (const std::string &exception, const char *fmt,...) const |
| Abort Geant4 Run by throwing a G4Exception with type RunMustBeAborted. More... | |
| Geant4RunActionSequence & | runAction () const |
| Access to the main run action sequence from the kernel object. More... | |
| Geant4EventActionSequence & | eventAction () const |
| Access to the main event action sequence from the kernel object. More... | |
| Geant4SteppingActionSequence & | steppingAction () const |
| Access to the main stepping action sequence from the kernel object. More... | |
| Geant4TrackingActionSequence & | trackingAction () const |
| Access to the main tracking action sequence from the kernel object. More... | |
| Geant4StackingActionSequence & | stackingAction () const |
| Access to the main stacking action sequence from the kernel object. More... | |
| Geant4GeneratorActionSequence & | generatorAction () const |
| Access to the main generator action sequence from the kernel object. More... | |
Protected Attributes | |
| Actors< Geant4DetectorConstruction > | m_actors |
| The list of action objects to be called. More... | |
Protected Attributes inherited from dd4hep::sim::Geant4Action | |
| Geant4Context * | m_context { nullptr } |
| Reference to the Geant4 context. More... | |
| Geant4UIMessenger * | m_control { nullptr } |
| Control directory of this action. More... | |
| int | m_outputLevel { 3 } |
| Default property: Output level. More... | |
| bool | m_needsControl { false } |
| Default property: Flag to create control instance. More... | |
| std::string | m_name { } |
| Action name. More... | |
| PropertyManager | m_properties { } |
| Property pool. More... | |
| long | m_refCount { 1 } |
| Reference count. Initial value: 1. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from dd4hep::sim::Geant4Action | |
| DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4Action) | |
| Define standard assignments and constructors. More... | |
| virtual | ~Geant4Action () |
| Default destructor. More... | |
Concrete basic implementation of the Geant4 detector construction sequencer.
Concrete implementation of the Geant4 detector construction sequence. The sequence dispatches the callbacks for the "Construct()" method to create a detector geometry and to dispatch the "ConstructSDandField()" calls for each worker.
Please note: constructField() and constructSensitives() are executed in a thread-local context. See the Geant4 documentation for details: https://twiki.cern.ch/twiki/bin/view/Geant4/QuickMigrationGuideForGeant4V10
Definition at line 135 of file Geant4DetectorConstruction.h.
| Geant4DetectorConstructionSequence::Geant4DetectorConstructionSequence | ( | Geant4Context * | context, |
| const std::string & | nam | ||
| ) |
Standard Constructor.
Definition at line 82 of file Geant4DetectorConstruction.cpp.
|
virtual |
Default destructor.
Definition at line 90 of file Geant4DetectorConstruction.cpp.
| void Geant4DetectorConstructionSequence::adopt | ( | Geant4DetectorConstruction * | action | ) |
Add an actor responding to all callbacks. Sequence takes ownership.
Definition at line 102 of file Geant4DetectorConstruction.cpp.
| const std::map< dd4hep::PlacedVolume, Geant4AssemblyVolume * > & Geant4DetectorConstructionSequence::assemblies | ( | ) | const |
Access to the converted assemblys.
Access to the converted assemblies.
Definition at line 170 of file Geant4DetectorConstruction.cpp.
|
virtual |
Electromagnetic field construction callback. Called at "ConstructSDandField()".
Definition at line 128 of file Geant4DetectorConstruction.cpp.
|
virtual |
Geometry construction callback. Called at "Construct()".
Definition at line 123 of file Geant4DetectorConstruction.cpp.
|
virtual |
Sensitive detector construction callback. Called at "ConstructSDandField()".
Definition at line 133 of file Geant4DetectorConstruction.cpp.
| const Geant4GeometryMaps::ElementMap & Geant4DetectorConstructionSequence::elements | ( | ) | const |
Access to the converted elements.
Definition at line 192 of file Geant4DetectorConstruction.cpp.
| Geant4DetectorConstruction * Geant4DetectorConstructionSequence::get | ( | const std::string & | nam | ) | const |
Access an actor by name.
Definition at line 112 of file Geant4DetectorConstruction.cpp.
| const std::map< dd4hep::LimitSet, G4UserLimits * > & Geant4DetectorConstructionSequence::limits | ( | ) | const |
Access to the converted limit sets.
Definition at line 162 of file Geant4DetectorConstruction.cpp.
| const Geant4GeometryMaps::MaterialMap & Geant4DetectorConstructionSequence::materials | ( | ) | const |
Access to the converted materials.
Definition at line 185 of file Geant4DetectorConstruction.cpp.
| const std::map< dd4hep::PlacedVolume, G4VPhysicalVolume * > & Geant4DetectorConstructionSequence::placements | ( | ) | const |
Access to the converted placements.
Definition at line 178 of file Geant4DetectorConstruction.cpp.
| const std::map< dd4hep::Region, G4Region * > & Geant4DetectorConstructionSequence::regions | ( | ) | const |
Access to the converted regions.
Definition at line 139 of file Geant4DetectorConstruction.cpp.
| const std::map< const TGeoShape *, G4VSolid * > & Geant4DetectorConstructionSequence::shapes | ( | ) | const |
Access to the converted shapes.
Definition at line 154 of file Geant4DetectorConstruction.cpp.
|
overridevirtual |
Set or update client context.
Reimplemented from dd4hep::sim::Geant4Action.
Definition at line 96 of file Geant4DetectorConstruction.cpp.
| const std::map< dd4hep::Volume, G4LogicalVolume * > & Geant4DetectorConstructionSequence::volumes | ( | ) | const |
Access to the converted volumes.
Definition at line 147 of file Geant4DetectorConstruction.cpp.
|
protected |
The list of action objects to be called.
Definition at line 138 of file Geant4DetectorConstruction.h.
1.8.18