DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Handle class holding a placed volume (also called physical volume) More...
#include <Volumes.h>
Public Types | |
enum | { VETO_SIMU = 1, VETO_RECO = 2, VETO_DISPLAY = 3, REFLECTED = 10 } |
Flag bit numbers for special volume treatments. More... | |
enum | ReplicationAxis { REPLICATED = 1UL << 4, PARAMETERIZED = 1UL << 5, Undefined = 1UL << 7, X_axis = 1UL << 8, Y_axis = 1UL << 9, Z_axis = 1UL << 10, Rho_axis = 1UL << 11, Phi_axis = 1UL << 12 } |
typedef VolumeExtension | Object |
Public Types inherited from dd4hep::Handle< TGeoVolume > | |
typedef TGeoVolume | Object |
Extern accessible definition of the contained element type. More... | |
typedef Handle< TGeoVolume > | Base |
Self type: used by sub-classes. More... | |
Public Member Functions | |
Volume ()=default | |
Default constructor. More... | |
Volume (Volume &&v)=default | |
Move from handle. More... | |
Volume (const Volume &v)=default | |
Copy from handle. More... | |
Volume (const TGeoVolume *v) | |
Copy from handle. More... | |
template<typename T > | |
Volume (const Handle< T > &v) | |
Copy from arbitrary Element. More... | |
Volume (const std::string &name) | |
Constructor to be used when creating a new geometry tree. More... | |
Volume (const std::string &name, const std::string &title) | |
Constructor to be used when creating a new geometry tree. Sets also title. More... | |
Volume (const std::string &name, const Solid &s, const Material &m) | |
Constructor to be used when creating a new geometry tree. Also sets materuial and solid attributes. More... | |
Volume (const std::string &name, const std::string &title, const Solid &s, const Material &m) | |
Constructor to be used when creating a new geometry tree. Also sets materuial and solid attributes. More... | |
Volume & | operator= (Volume &&a)=default |
Assignment operator (must match move constructor) More... | |
Volume & | operator= (const Volume &a)=default |
Assignment operator (must match copy constructor) More... | |
template<typename T > | |
bool | operator== (const Handle< T > &e) const |
Equality operator. More... | |
template<typename T > | |
bool | operator!= (const Handle< T > &e) const |
Non-Equality operator. More... | |
Object * | data () const |
Check if placement is properly instrumented. More... | |
const char * | type () const |
Access the object type from the class information. More... | |
Volume | reflect () const |
Create a reflected volume tree. The reflected volume has left-handed coordinates. More... | |
Volume | reflect (SensitiveDetector sd) const |
Create a reflected volume tree. The reflected volume has left-handed coordinates. More... | |
Volume & | import () |
If we import volumes from external sources, we have to attach the extensions to the tree. More... | |
Volume | divide (const std::string &divname, int iaxis, int ndiv, double start, double step, int numed=0, const char *option="") |
Divide volume into subsections (See the ROOT manuloa for details) More... | |
PlacedVolume | placeVolume (const Volume &volume) const |
Place daughter volume. The position and rotation are the identity. More... | |
PlacedVolume | placeVolume (const Volume &volume, const Transform3D &tr) const |
Place daughter volume according to a generic Transform3D. More... | |
PlacedVolume | placeVolume (const Volume &volume, const Position &pos) const |
Place un-rotated daughter volume at the given position. More... | |
PlacedVolume | placeVolume (const Volume &volume, const RotationZYX &rot) const |
Place rotated daughter volume. The position is automatically the identity position. More... | |
PlacedVolume | placeVolume (const Volume &volume, const Rotation3D &rot) const |
Place rotated daughter volume. The position is automatically the identity position. More... | |
PlacedVolume | placeVolume (const Volume &volume, int copy_no) const |
Place daughter volume. The position and rotation are the identity. More... | |
PlacedVolume | placeVolume (const Volume &volume, int copy_no, const Transform3D &tr) const |
Place daughter volume according to a generic Transform3D. More... | |
PlacedVolume | placeVolume (const Volume &volume, int copy_no, const Position &pos) const |
Place un-rotated daughter volume at the given position. More... | |
PlacedVolume | placeVolume (const Volume &volume, int copy_no, const RotationZYX &rot) const |
Place rotated daughter volume. The position is automatically the identity position. More... | |
PlacedVolume | placeVolume (const Volume &volume, int copy_no, const Rotation3D &rot) const |
Place rotated daughter volume. The position is automatically the identity position. More... | |
PlacedVolume | placeVolume (const Volume &volume, TGeoMatrix *tr) const |
Place daughter volume with generic TGeo matrix. More... | |
PlacedVolume | placeVolume (const Volume &volume, int copy_nr, TGeoMatrix *tr) const |
Place daughter volume with generic TGeo matrix. More... | |
PlacedVolume | replicate (const Volume entity, ReplicationAxis axis, size_t count, double inc, double start=0e0) |
1D volume replication implementation More... | |
PlacedVolume | paramVolume1D (const Transform3D &start, Volume entity, size_t count, const Transform3D &inc) |
1D Parameterised volume implementation More... | |
PlacedVolume | paramVolume1D (Volume entity, size_t count, const Transform3D &trafo) |
1D Parameterised volume implementation More... | |
PlacedVolume | paramVolume1D (Volume entity, size_t count, const Position &inc) |
1D Parameterised volume implementation More... | |
PlacedVolume | paramVolume1D (Volume entity, size_t count, const RotationZYX &inc) |
1D Parameterised volume implementation More... | |
PlacedVolume | paramVolume2D (Volume entity, size_t count_1, const Transform3D &inc_1, size_t count_2, const Transform3D &inc_2) |
2D Parameterised volume implementation More... | |
PlacedVolume | paramVolume2D (const Transform3D &start, Volume entity, size_t count_1, const Position &inc_1, size_t count_2, const Position &inc_2) |
Constructor to be used when creating a new parameterised volume object. More... | |
PlacedVolume | paramVolume2D (Volume entity, size_t count_1, const Position &inc_1, size_t count_2, const Position &inc_2) |
Constructor to be used when creating a new parameterised volume object. More... | |
PlacedVolume | paramVolume2D (const Transform3D &start, Volume entity, size_t count_1, const Transform3D &inc_1, size_t count_2, const Transform3D &inc_2) |
2D Parameterised volume implementation More... | |
PlacedVolume | paramVolume3D (Volume entity, size_t count_1, const Transform3D &inc_1, size_t count_2, const Transform3D &inc_2, size_t count_3, const Transform3D &inc_3) |
3D Parameterised volume implementation More... | |
PlacedVolume | paramVolume3D (const Transform3D &start, Volume entity, size_t count_1, const Transform3D &inc_1, size_t count_2, const Transform3D &inc_2, size_t count_3, const Transform3D &inc_3) |
3D Parameterised volume implementation More... | |
PlacedVolume | paramVolume3D (Volume entity, size_t count_1, const Position &inc_1, size_t count_2, const Position &inc_2, size_t count_3, const Position &inc_3) |
3D Parameterised volume implementation More... | |
PlacedVolume | paramVolume3D (const Transform3D &start, Volume entity, size_t count_1, const Position &inc_1, size_t count_2, const Position &inc_2, size_t count_3, const Position &inc_3) |
3D Parameterised volume implementation More... | |
void | setFlagBit (unsigned int bit) |
Set user flags in bit-field. More... | |
bool | testFlagBit (unsigned int bit) const |
Test the user flag bit. More... | |
bool | isReflected () const |
Test if this volume was reflected. More... | |
bool | isAssembly () const |
Test if this volume is an assembly structure. More... | |
const Volume & | setOption (const std::string &opt) const |
Set the volume's option value. More... | |
std::string | option () const |
Access the volume's option value. More... | |
const Volume & | setAttributes (const Detector &description, const std::string ®ion, const std::string &limits, const std::string &vis) const |
Attach attributes to the volume. More... | |
const Volume & | setRegion (const Detector &description, const std::string &name) const |
Set the regional attributes to the volume. Note: If the name string is empty, the action is ignored. More... | |
const Volume & | setRegion (const Region &obj) const |
Set the regional attributes to the volume. More... | |
Region | region () const |
Access to the handle to the region structure. More... | |
const Volume & | setLimitSet (const Detector &description, const std::string &name) const |
Set the limits to the volume. Note: If the name string is empty, the action is ignored. More... | |
const Volume & | setLimitSet (const LimitSet &obj) const |
Set the limits to the volume. More... | |
LimitSet | limitSet () const |
Access to the limit set. More... | |
const Volume & | setVisAttributes (const VisAttr &obj) const |
Set Visualization attributes to the volume. More... | |
const Volume & | setVisAttributes (const Detector &description, const std::string &name) const |
Set Visualization attributes to the volume. Note: If the name string is empty, the action is ignored. More... | |
VisAttr | visAttributes () const |
Access the visualisation attributes. More... | |
const Volume & | setSensitiveDetector (const SensitiveDetector &obj) const |
Assign the sensitive detector structure. More... | |
Handle< NamedObject > | sensitiveDetector () const |
Access to the handle to the sensitive detector. More... | |
bool | isSensitive () const |
Accessor if volume is sensitive (ie. is attached to a sensitive detector) More... | |
const Volume & | setSolid (const Solid &s) const |
Set the volume's solid shape. More... | |
Solid | solid () const |
Access to Solid (Shape) More... | |
Box | boundingBox () const |
Access the bounding box of the volume (if available) More... | |
const Volume & | setMaterial (const Material &m) const |
Set the volume's material. More... | |
Material | material () const |
Access to the Volume material. More... | |
bool | hasProperties () const |
Check for existence of properties. More... | |
void | addProperty (const std::string &nam, const std::string &val) const |
Add Volume property (name-value pair) More... | |
std::string | getProperty (const std::string &nam, const std::string &default_val="") const |
Access property value. Returns default_value if the property is not present. More... | |
operator TGeoVolume * () const | |
Auto conversion to underlying ROOT object. More... | |
Public Member Functions inherited from dd4hep::Handle< TGeoVolume > | |
Handle ()=default | |
Default constructor. More... | |
Handle (Handle< TGeoVolume > &&element)=default | |
Copy constructor. More... | |
Handle (const Handle< TGeoVolume > &element)=default | |
Copy constructor. More... | |
Handle (TGeoVolume *element) | |
Initializing constructor from pointer. More... | |
Handle (Q *element) | |
Initializing constructor from unrelated pointer with type checking. More... | |
Handle (const Handle< Q > &element) | |
Initializing constructor from unrelated handle with type checking. More... | |
Handle< TGeoVolume > & | operator= (Handle< TGeoVolume > &&element)=default |
Assignment move operator. More... | |
Handle< TGeoVolume > & | operator= (const Handle< TGeoVolume > &element)=default |
Assignment copy operator. More... | |
bool | operator== (const Handle< TGeoVolume > &element) const |
Boolean operator == used for RB tree insertions. More... | |
bool | operator< (const Handle< TGeoVolume > &element) const |
Boolean operator < used for RB tree insertions. More... | |
bool | operator> (const Handle< TGeoVolume > &element) const |
Boolean operator > used for RB tree insertions. More... | |
bool | isValid () const |
Check the validity of the object held by the handle. More... | |
bool | operator! () const |
Check the validity of the object held by the handle. More... | |
Handle< TGeoVolume > & | clear () |
Release the object held by the handle. More... | |
TGeoVolume * | operator-> () const |
Access the held object using the -> operator. More... | |
operator TGeoVolume & () const | |
Automatic type conversion to an object references. More... | |
TGeoVolume & | operator* () const |
Access the held object using the * operator. More... | |
TGeoVolume * | ptr () const |
Access to the held object. More... | |
Q * | _ptr () const |
Access to an unrelated object type. More... | |
Q * | data () const |
Access to an unrelated object type. More... | |
Q & | object () const |
Access to an unrelated object type. More... | |
TGeoVolume * | access () const |
Checked object access. Throws invalid handle runtime exception if invalid handle. More... | |
const char * | name () const |
Access the object name (or "" if not supported by the object) More... | |
const char * | name () const |
const char * | name () const |
void | assign (Object *n, const std::string &nam, const std::string &title) |
Assign a new named object. Note: object references must be managed by the user. More... | |
void | assign (_Segmentation *s, const std::string &n, const std::string &) |
void | assign (NamedObject *p, const std::string &n, const std::string &t) |
void | destroy () |
Destroy the underlying object (be careful here: things are not reference counted)! More... | |
Static Public Member Functions | |
static void | enableCopyNumberCheck (bool value) |
Set flag to enable copy number checks when inserting new nodes. More... | |
Static Public Member Functions inherited from dd4hep::Handle< TGeoVolume > | |
static void | bad_assignment (const std::type_info &from, const std::type_info &to) |
Helper routine called when unrelated types are assigned. More... | |
Additional Inherited Members | |
Public Attributes inherited from dd4hep::Handle< TGeoVolume > | |
TGeoVolume * | m_element |
Single and only data member: Reference to the actual element. More... | |
Handle class holding a placed volume (also called physical volume)
Since dd4hep requires Volumes (aka TGeoVolume) and PlacedVolumes (aka TGeoNode) to be enhaced with the user extension mechanism shape divisions MUST be done using the division mechanism of the dd4hep shape or volume wrapper. Otherwise the enhancements are not added and you shall get exception when dd4hep is closing the geometry. The same argument holds when a division is made from a Volume. Unfortunately there is no reasonable way to intercept this call to the TGeo objects - except to sub-class each of them, which is not really acceptable either.
For any further documentation please see the following ROOT documentation:
anonymous enum |
|
default |
Default constructor.
|
default |
Move from handle.
|
default |
Copy from handle.
|
inline |
|
inline |
Volume::Volume | ( | const std::string & | name | ) |
Constructor to be used when creating a new geometry tree.
Definition at line 614 of file Volumes.cpp.
Volume::Volume | ( | const std::string & | name, |
const std::string & | title | ||
) |
Constructor to be used when creating a new geometry tree. Sets also title.
Constructor to be used when creating a new geometry tree.
Definition at line 619 of file Volumes.cpp.
Constructor to be used when creating a new geometry tree. Also sets materuial and solid attributes.
Definition at line 625 of file Volumes.cpp.
Volume::Volume | ( | const std::string & | name, |
const std::string & | title, | ||
const Solid & | s, | ||
const Material & | m | ||
) |
Constructor to be used when creating a new geometry tree. Also sets materuial and solid attributes.
Definition at line 630 of file Volumes.cpp.
void Volume::addProperty | ( | const std::string & | nam, |
const std::string & | val | ||
) | const |
Add Volume property (name-value pair)
Definition at line 1303 of file Volumes.cpp.
Box Volume::boundingBox | ( | ) | const |
Access the bounding box of the volume (if available)
Definition at line 1228 of file Volumes.cpp.
Volume::Object * Volume::data | ( | ) | const |
Check if placement is properly instrumented.
Definition at line 641 of file Volumes.cpp.
Volume Volume::divide | ( | const std::string & | divname, |
int | iaxis, | ||
int | ndiv, | ||
double | start, | ||
double | step, | ||
int | numed = 0 , |
||
const char * | option = "" |
||
) |
Divide volume into subsections (See the ROOT manuloa for details)
Definition at line 712 of file Volumes.cpp.
|
static |
Set flag to enable copy number checks when inserting new nodes.
By default checks are enabled. If you want to disable, call this function
Definition at line 636 of file Volumes.cpp.
std::string Volume::getProperty | ( | const std::string & | nam, |
const std::string & | default_val = "" |
||
) | const |
Access property value. Returns default_value if the property is not present.
Definition at line 1319 of file Volumes.cpp.
bool Volume::hasProperties | ( | ) | const |
Check for existence of properties.
Definition at line 1298 of file Volumes.cpp.
Volume & Volume::import | ( | ) |
If we import volumes from external sources, we have to attach the extensions to the tree.
Definition at line 673 of file Volumes.cpp.
bool Volume::isAssembly | ( | ) | const |
Test if this volume is an assembly structure.
Definition at line 707 of file Volumes.cpp.
bool Volume::isReflected | ( | ) | const |
Test if this volume was reflected.
Definition at line 702 of file Volumes.cpp.
bool Volume::isSensitive | ( | ) | const |
Accessor if volume is sensitive (ie. is attached to a sensitive detector)
Definition at line 1293 of file Volumes.cpp.
LimitSet Volume::limitSet | ( | ) | const |
Access to the limit set.
Definition at line 1275 of file Volumes.cpp.
Material Volume::material | ( | ) | const |
Access to the Volume material.
Definition at line 1122 of file Volumes.cpp.
|
inline |
|
inline |
Assignment operator (must match copy constructor)
Assignment operator (must match move constructor)
|
inline |
std::string Volume::option | ( | ) | const |
Access the volume's option value.
Definition at line 1104 of file Volumes.cpp.
PlacedVolume Volume::paramVolume1D | ( | const Transform3D & | start, |
Volume | entity, | ||
size_t | count, | ||
const Transform3D & | inc | ||
) |
1D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
start | start transormation for the first placement |
entity | Daughter volume to be placed |
count | Number of entities to be placed |
inc | Transformation increment for each iteration |
Definition at line 906 of file Volumes.cpp.
PlacedVolume Volume::paramVolume1D | ( | Volume | entity, |
size_t | count, | ||
const Position & | inc | ||
) |
1D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
count | Number of entities to be placed |
inc | Transformation increment for each iteration |
Definition at line 891 of file Volumes.cpp.
PlacedVolume Volume::paramVolume1D | ( | Volume | entity, |
size_t | count, | ||
const RotationZYX & | inc | ||
) |
1D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
count | Number of entities to be placed |
inc | Transformation increment for each iteration |
Definition at line 896 of file Volumes.cpp.
PlacedVolume Volume::paramVolume1D | ( | Volume | entity, |
size_t | count, | ||
const Transform3D & | trafo | ||
) |
1D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
count | Number of entities to be placed |
inc | Transformation increment for each iteration |
Definition at line 901 of file Volumes.cpp.
PlacedVolume Volume::paramVolume2D | ( | const Transform3D & | start, |
Volume | entity, | ||
size_t | count_1, | ||
const Position & | inc_1, | ||
size_t | count_2, | ||
const Position & | inc_2 | ||
) |
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
start | start transormation for the first placement |
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
Definition at line 950 of file Volumes.cpp.
PlacedVolume Volume::paramVolume2D | ( | const Transform3D & | start, |
Volume | entity, | ||
size_t | count_1, | ||
const Transform3D & | inc_1, | ||
size_t | count_2, | ||
const Transform3D & | inc_2 | ||
) |
2D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
start | start transormation for the first placement |
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
Definition at line 971 of file Volumes.cpp.
PlacedVolume Volume::paramVolume2D | ( | Volume | entity, |
size_t | count_1, | ||
const Position & | inc_1, | ||
size_t | count_2, | ||
const Position & | inc_2 | ||
) |
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
start | start transormation for the first placement |
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
Definition at line 961 of file Volumes.cpp.
PlacedVolume Volume::paramVolume2D | ( | Volume | entity, |
size_t | count_1, | ||
const Transform3D & | inc_1, | ||
size_t | count_2, | ||
const Transform3D & | inc_2 | ||
) |
2D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
Definition at line 940 of file Volumes.cpp.
PlacedVolume Volume::paramVolume3D | ( | const Transform3D & | start, |
Volume | entity, | ||
size_t | count_1, | ||
const Position & | inc_1, | ||
size_t | count_2, | ||
const Position & | inc_2, | ||
size_t | count_3, | ||
const Position & | inc_3 | ||
) |
3D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
start | start transormation for the first placement |
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
count_3 | Number of entities to be placed in dimension 3 |
inc_3 | Transformation increment for each iteration in dimension 3 |
Definition at line 1014 of file Volumes.cpp.
PlacedVolume Volume::paramVolume3D | ( | const Transform3D & | start, |
Volume | entity, | ||
size_t | count_1, | ||
const Transform3D & | inc_1, | ||
size_t | count_2, | ||
const Transform3D & | inc_2, | ||
size_t | count_3, | ||
const Transform3D & | inc_3 | ||
) |
3D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
start | start transormation for the first placement |
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
count_3 | Number of entities to be placed in dimension 3 |
inc_3 | Transformation increment for each iteration in dimension 3 |
Definition at line 1045 of file Volumes.cpp.
PlacedVolume Volume::paramVolume3D | ( | Volume | entity, |
size_t | count_1, | ||
const Position & | inc_1, | ||
size_t | count_2, | ||
const Position & | inc_2, | ||
size_t | count_3, | ||
const Position & | inc_3 | ||
) |
3D Parameterised volume implementation
Constructor to be used when creating a new parameterised volume object.
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
count_3 | Number of entities to be placed in dimension 3 |
inc_3 | Transformation increment for each iteration in dimension 3 |
Definition at line 1030 of file Volumes.cpp.
PlacedVolume dd4hep::Volume::paramVolume3D | ( | Volume | entity, |
size_t | count_1, | ||
const Transform3D & | inc_1, | ||
size_t | count_2, | ||
const Transform3D & | inc_2, | ||
size_t | count_3, | ||
const Transform3D & | inc_3 | ||
) |
3D Parameterised volume implementation
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
count_1 | Number of entities to be placed in dimension 1 |
inc_1 | Transformation increment for each iteration in dimension 1 |
count_2 | Number of entities to be placed in dimension 2 |
inc_2 | Transformation increment for each iteration in dimension 2 |
count_3 | Number of entities to be placed in dimension 3 |
inc_3 | Transformation increment for each iteration in dimension 3 |
PlacedVolume Volume::placeVolume | ( | const Volume & | volume | ) | const |
Place daughter volume. The position and rotation are the identity.
Daughter placements with auto-generated copy number for the daughter volume
Definition at line 830 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
const Position & | pos | ||
) | const |
Place un-rotated daughter volume at the given position.
Definition at line 835 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
const Rotation3D & | rot | ||
) | const |
Place rotated daughter volume. The position is automatically the identity position.
Definition at line 845 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
const RotationZYX & | rot | ||
) | const |
Place rotated daughter volume. The position is automatically the identity position.
Definition at line 840 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
const Transform3D & | tr | ||
) | const |
Place daughter volume according to a generic Transform3D.
Place daughter volume according to generic Transform3D.
Definition at line 825 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
int | copy_no | ||
) | const |
Place daughter volume. The position and rotation are the identity.
Daughter placements with user supplied copy number for the daughter volume
Definition at line 855 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
int | copy_no, | ||
const Position & | pos | ||
) | const |
Place un-rotated daughter volume at the given position.
Definition at line 860 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
int | copy_no, | ||
const Rotation3D & | rot | ||
) | const |
Place rotated daughter volume. The position is automatically the identity position.
Definition at line 870 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
int | copy_no, | ||
const RotationZYX & | rot | ||
) | const |
Place rotated daughter volume. The position is automatically the identity position.
Definition at line 865 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
int | copy_no, | ||
const Transform3D & | tr | ||
) | const |
Place daughter volume according to a generic Transform3D.
Place daughter volume according to generic Transform3D.
Definition at line 850 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
int | copy_nr, | ||
TGeoMatrix * | tr | ||
) | const |
Place daughter volume with generic TGeo matrix.
Definition at line 820 of file Volumes.cpp.
PlacedVolume Volume::placeVolume | ( | const Volume & | volume, |
TGeoMatrix * | tr | ||
) | const |
Place daughter volume with generic TGeo matrix.
Definition at line 815 of file Volumes.cpp.
Volume Volume::reflect | ( | ) | const |
Create a reflected volume tree. The reflected volume has left-handed coordinates.
Definition at line 652 of file Volumes.cpp.
Volume Volume::reflect | ( | SensitiveDetector | sd | ) | const |
Create a reflected volume tree. The reflected volume has left-handed coordinates.
Swap the sensitive detector - if valid - on all sensitive sub-volumes
Definition at line 657 of file Volumes.cpp.
Region Volume::region | ( | ) | const |
Access to the handle to the region structure.
Definition at line 1256 of file Volumes.cpp.
PlacedVolume Volume::replicate | ( | const Volume | entity, |
ReplicationAxis | axis, | ||
size_t | count, | ||
double | inc, | ||
double | start = 0e0 |
||
) |
1D volume replication implementation
Embedding parameterised daughter placements in a mother volume
entity | Daughter volume to be placed |
axis | Replication axis direction in the frame of the mother |
count | Number of entities to be placed |
inc | Transformation increment for each iteration |
start | start transormation for the first placement |
Definition at line 875 of file Volumes.cpp.
Ref_t Volume::sensitiveDetector | ( | ) | const |
Access to the handle to the sensitive detector.
Definition at line 1287 of file Volumes.cpp.
const Volume & Volume::setAttributes | ( | const Detector & | description, |
const std::string & | region, | ||
const std::string & | limits, | ||
const std::string & | vis | ||
) | const |
Attach attributes to the volume.
Definition at line 1200 of file Volumes.cpp.
void Volume::setFlagBit | ( | unsigned int | bit | ) |
Set user flags in bit-field.
Definition at line 684 of file Volumes.cpp.
Set the limits to the volume. Note: If the name string is empty, the action is ignored.
Set the limits to the volume.
Definition at line 1261 of file Volumes.cpp.
Set the limits to the volume.
Definition at line 1269 of file Volumes.cpp.
Set the volume's material.
Definition at line 1109 of file Volumes.cpp.
const Volume & Volume::setOption | ( | const std::string & | opt | ) | const |
Set the volume's option value.
Definition at line 1095 of file Volumes.cpp.
Set the regional attributes to the volume. Note: If the name string is empty, the action is ignored.
Set the regional attributes to the volume.
Definition at line 1242 of file Volumes.cpp.
Set the regional attributes to the volume.
Definition at line 1250 of file Volumes.cpp.
const Volume & Volume::setSensitiveDetector | ( | const SensitiveDetector & | obj | ) | const |
Assign the sensitive detector structure.
Definition at line 1280 of file Volumes.cpp.
Set the volume's solid shape.
Definition at line 1217 of file Volumes.cpp.
const Volume & Volume::setVisAttributes | ( | const Detector & | description, |
const std::string & | name | ||
) | const |
Set Visualization attributes to the volume. Note: If the name string is empty, the action is ignored.
Set Visualization attributes to the volume.
Definition at line 1191 of file Volumes.cpp.
Set Visualization attributes to the volume.
Definition at line 1127 of file Volumes.cpp.
Solid Volume::solid | ( | ) | const |
Access to Solid (Shape)
Definition at line 1223 of file Volumes.cpp.
bool Volume::testFlagBit | ( | unsigned int | bit | ) | const |
Test the user flag bit.
Definition at line 693 of file Volumes.cpp.
const char * Volume::type | ( | ) | const |
Access the object type from the class information.
Definition at line 647 of file Volumes.cpp.
VisAttr Volume::visAttributes | ( | ) | const |
Access the visualisation attributes.
Definition at line 1210 of file Volumes.cpp.