![]() |
DD4hep
1.33.0
Detector Description Toolkit for High Energy Physics
|
Data class with properties of a detector element. More...
#include <DetectorInterna.h>
Public Types | |
| enum | DetFlags { HAVE_WORLD_TRAFO = 1<<0, HAVE_PARENT_TRAFO = 1<<1, HAVE_REFERENCE_TRAFO = 1<<2, HAVE_SENSITIVE_DETECTOR = 1<<29, IS_TOP_LEVEL_DETECTOR = 1<<30, HAVE_OTHER = 1<<31 } |
| typedef std::pair< Callback, unsigned long > | UpdateCall |
| typedef std::vector< UpdateCall > | UpdateCallbacks |
Public Member Functions | |
| DetElementObject (const std::string &nam, int ident) | |
| Initializing constructor. More... | |
| DetElementObject () | |
| Default constructor. More... | |
| virtual | ~DetElementObject () |
| Internal object destructor: release extension object(s) More... | |
| virtual DetElementObject * | clone (int new_id, int flag) const |
| Deep object copy to replicate DetElement trees e.g. for reflection. More... | |
| World | world () |
| Access to the world object. Only possible once the geometry is closed. More... | |
| void | removeAtUpdate (unsigned int type, void *pointer) |
| Remove callback from object. More... | |
| void | update (unsigned int tags, void *param) |
| Trigger update callbacks. More... | |
| void | revalidate () |
| Revalidate the caches. More... | |
| std::pair< DetElement, Volume > | reflect (const std::string &new_name, int new_id, SensitiveDetector sd) |
| Reflect all volumes in a DetElement sub-tree and re-attach the placements. More... | |
Public Member Functions inherited from dd4hep::NamedObject | |
| NamedObject (const char *nam, const char *typ="") | |
| Initializing constructor. More... | |
| NamedObject (const std::string &nam) | |
| Initializing constructor. More... | |
| NamedObject (const std::string &nam, const std::string &typ) | |
| Initializing constructor. More... | |
| NamedObject ()=default | |
| Standard constructor. More... | |
| NamedObject (const NamedObject &c)=default | |
| Copy constructor. More... | |
| NamedObject (NamedObject &&c)=default | |
| Move constructor. More... | |
| virtual | ~NamedObject ()=default |
| Default destructor. More... | |
| NamedObject & | operator= (const NamedObject &c)=default |
| Assignment operator. More... | |
| NamedObject & | operator= (NamedObject &&c)=default |
| Move assignment operator. More... | |
| const char * | GetName () const |
| Access name. More... | |
| void | SetName (const char *nam) |
| Set name (used by Handle) More... | |
| void | SetTitle (const char *tit) |
| Set Title (used by Handle) More... | |
| const char * | GetTitle () const |
| Get name (used by Handle) More... | |
Public Member Functions inherited from dd4hep::ObjectExtensions | |
| ObjectExtensions (const std::type_info &parent_type) | |
| Default constructor. More... | |
| ObjectExtensions (const ObjectExtensions ©)=delete | |
| Copy constructor. More... | |
| virtual | ~ObjectExtensions () |
| Default destructor. More... | |
| ObjectExtensions & | operator= (const ObjectExtensions ©)=delete |
| Assignment operator. More... | |
| void | initialize () |
| Initialize non-persistent object containers (e.g. after loading from ROOT file) More... | |
| void | move (ObjectExtensions ©) |
| Move extensions to target object. More... | |
| void | clear (bool destroy=true) |
| Clear all extensions. More... | |
| void | copyFrom (const std::map< unsigned long long int, ExtensionEntry * > &ext, void *arg) |
| Copy object extensions from another object. Hosting type must be identical! More... | |
| void * | addExtension (unsigned long long int key, ExtensionEntry *entry) |
| Add an extension object to the detector element. More... | |
| void * | removeExtension (unsigned long long int key, bool destroy) |
| Remove an existing extension object from the instance. More... | |
| void * | extension (unsigned long long int key, bool alert) const |
| Access an existing extension object from the detector element. More... | |
| void * | extension (unsigned long long int key) const |
| Access an existing extension object from the detector element. More... | |
Public Attributes | |
| unsigned int | magic |
| Magic number to ensure data integrity. More... | |
| unsigned int | flag |
| Flag to remember internally calculated quatities. More... | |
| int | id |
| Unique integer identifier of the detector instance. More... | |
| int | combineHits |
| Flag to process hits. More... | |
| unsigned int | typeFlag |
| Flag to encode detector types. More... | |
| int | level |
| Hierarchical level within the detector description. More... | |
| unsigned int | key |
| Access hash key of this detector element (Only valid once geometry is closed!) More... | |
| std::string | path |
| Full path to this detector element. May be invalid. More... | |
| std::string | placementPath |
| The path to the placement of the detector element (if placed) More... | |
| PlacedVolume | idealPlace |
| The subdetector placement corresponding to the ideal detector element's volume. More... | |
| PlacedVolume | placement |
| The subdetector placement corresponding to the actual detector element's volume. More... | |
| VolumeID | volumeID |
| The cached VolumeID of this subdetector element. More... | |
| World | privateWorld |
| Reference to the parent element. More... | |
| DetElement | parent |
| Reference to the parent element. More... | |
| DetElement::Children | children |
| The array of children. More... | |
| UpdateCallbacks | updateCalls |
| Placeholder for structure with update callbacks. More... | |
| AlignmentCondition | nominal |
| Not ROOT persistent. More... | |
| AlignmentCondition | survey |
| Basic detector element alignment entry containing the survey data. More... | |
| Ref_t | global_alignment |
| Global alignment data. More... | |
Public Attributes inherited from dd4hep::NamedObject | |
| std::string | name |
| The object name. More... | |
| std::string | type |
| The object type. More... | |
Public Attributes inherited from dd4hep::ObjectExtensions | |
| std::map< unsigned long long int, ExtensionEntry * > | extensions |
| The extensions object. More... | |
Private Member Functions | |
| World | i_access_world () |
| Resolve the world object. Internal use ONLY. More... | |
Friends | |
| class | VolumeManager_Populator |
Data class with properties of a detector element.
\
Definition at line 81 of file DetectorInterna.h.
| typedef std::pair<Callback,unsigned long> dd4hep::DetElementObject::UpdateCall |
Definition at line 85 of file DetectorInterna.h.
| typedef std::vector<UpdateCall> dd4hep::DetElementObject::UpdateCallbacks |
Definition at line 86 of file DetectorInterna.h.
| Enumerator | |
|---|---|
| HAVE_WORLD_TRAFO | |
| HAVE_PARENT_TRAFO | |
| HAVE_REFERENCE_TRAFO | |
| HAVE_SENSITIVE_DETECTOR | |
| IS_TOP_LEVEL_DETECTOR | |
| HAVE_OTHER | |
Definition at line 88 of file DetectorInterna.h.
| DetElementObject::DetElementObject | ( | const std::string & | nam, |
| int | ident | ||
| ) |
Initializing constructor.
Definition at line 74 of file DetectorInterna.cpp.
| DetElementObject::DetElementObject | ( | ) |
Default constructor.
Definition at line 63 of file DetectorInterna.cpp.
|
virtual |
Internal object destructor: release extension object(s)
Definition at line 86 of file DetectorInterna.cpp.
|
virtual |
Deep object copy to replicate DetElement trees e.g. for reflection.
Definition at line 98 of file DetectorInterna.cpp.
|
private |
Resolve the world object. Internal use ONLY.
Access to the world object. Only possible once the geometry is closed.
Definition at line 180 of file DetectorInterna.cpp.
| std::pair< DetElement, Volume > DetElementObject::reflect | ( | const std::string & | new_name, |
| int | new_id, | ||
| SensitiveDetector | sd | ||
| ) |
Reflect all volumes in a DetElement sub-tree and re-attach the placements.
Definition at line 138 of file DetectorInterna.cpp.
| void DetElementObject::removeAtUpdate | ( | unsigned int | type, |
| void * | pointer | ||
| ) |
Remove callback from object.
Definition at line 227 of file DetectorInterna.cpp.
| void DetElementObject::revalidate | ( | ) |
Revalidate the caches.
Now iterate down the children....
Definition at line 193 of file DetectorInterna.cpp.
| void DetElementObject::update | ( | unsigned int | tags, |
| void * | param | ||
| ) |
Trigger update callbacks.
Definition at line 237 of file DetectorInterna.cpp.
|
inline |
Access to the world object. Only possible once the geometry is closed.
Definition at line 164 of file DetectorInterna.h.
|
friend |
Definition at line 146 of file DetectorInterna.h.
| DetElement::Children dd4hep::DetElementObject::children |
The array of children.
Definition at line 131 of file DetectorInterna.h.
| int dd4hep::DetElementObject::combineHits |
Flag to process hits.
Definition at line 104 of file DetectorInterna.h.
| unsigned int dd4hep::DetElementObject::flag |
Flag to remember internally calculated quatities.
Definition at line 100 of file DetectorInterna.h.
| Ref_t dd4hep::DetElementObject::global_alignment |
Global alignment data.
Definition at line 142 of file DetectorInterna.h.
| int dd4hep::DetElementObject::id |
Unique integer identifier of the detector instance.
Definition at line 102 of file DetectorInterna.h.
| PlacedVolume dd4hep::DetElementObject::idealPlace |
The subdetector placement corresponding to the ideal detector element's volume.
Definition at line 117 of file DetectorInterna.h.
| unsigned int dd4hep::DetElementObject::key |
Access hash key of this detector element (Only valid once geometry is closed!)
Definition at line 110 of file DetectorInterna.h.
| int dd4hep::DetElementObject::level |
Hierarchical level within the detector description.
Definition at line 108 of file DetectorInterna.h.
| unsigned int dd4hep::DetElementObject::magic |
Magic number to ensure data integrity.
Definition at line 98 of file DetectorInterna.h.
| AlignmentCondition dd4hep::DetElementObject::nominal |
Not ROOT persistent.
Basic ideal/nominal detector element alignment entry
Definition at line 137 of file DetectorInterna.h.
| DetElement dd4hep::DetElementObject::parent |
Reference to the parent element.
Definition at line 129 of file DetectorInterna.h.
| std::string dd4hep::DetElementObject::path |
Full path to this detector element. May be invalid.
Definition at line 112 of file DetectorInterna.h.
| PlacedVolume dd4hep::DetElementObject::placement |
The subdetector placement corresponding to the actual detector element's volume.
Definition at line 119 of file DetectorInterna.h.
| std::string dd4hep::DetElementObject::placementPath |
The path to the placement of the detector element (if placed)
Definition at line 114 of file DetectorInterna.h.
| World dd4hep::DetElementObject::privateWorld |
Reference to the parent element.
Definition at line 127 of file DetectorInterna.h.
| AlignmentCondition dd4hep::DetElementObject::survey |
Basic detector element alignment entry containing the survey data.
Definition at line 139 of file DetectorInterna.h.
| unsigned int dd4hep::DetElementObject::typeFlag |
Flag to encode detector types.
Definition at line 106 of file DetectorInterna.h.
| UpdateCallbacks dd4hep::DetElementObject::updateCalls |
Placeholder for structure with update callbacks.
Definition at line 133 of file DetectorInterna.h.
| VolumeID dd4hep::DetElementObject::volumeID |
The cached VolumeID of this subdetector element.
Please note: These values are set when populating the volume manager. There are restrictions: e.g. only sensitive subdetectors are present.
Definition at line 125 of file DetectorInterna.h.
1.8.18