DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Implementation class for the grid UV segmentation. More...
#include <CartesianGridUV.h>
Public Member Functions | |
CartesianGridUV ()=default | |
Default constructor. More... | |
CartesianGridUV (const CartesianGridUV &e)=default | |
Copy constructor. More... | |
CartesianGridUV (const Segmentation &e) | |
Copy Constructor from segmentation base object. More... | |
CartesianGridUV (const Handle< Object > &e) | |
Copy constructor from handle. More... | |
template<typename Q > | |
CartesianGridUV (const Handle< Q > &e) | |
Copy constructor from other equivalent handle. More... | |
CartesianGridUV & | operator= (const CartesianGridUV &seg)=default |
Assignment operator. More... | |
bool | operator== (const CartesianGridUV &seg) const |
Equality operator. More... | |
Position | position (const CellID &cellID) const |
determine the position based on the cell ID More... | |
CellID | cellID (const Position &local, const Position &global, const VolumeID &volID) const |
determine the cell ID based on the position More... | |
double | gridSizeU () const |
access the grid size in U More... | |
double | gridSizeV () const |
access the grid size in V More... | |
void | setGridSizeU (double cellSize) const |
set the grid size in U More... | |
void | setGridSizeV (double cellSize) const |
set the grid size in V More... | |
double | offsetU () const |
access the coordinate offset in U More... | |
double | offsetV () const |
access the coordinate offset in V More... | |
double | gridAngle () const |
access the rotation angle More... | |
void | setOffsetU (double offset) const |
set the coordinate offset in U More... | |
void | setOffsetV (double offset) const |
set the coordinate offset in V More... | |
void | setGridAngle (double angle) const |
set the rotation angle More... | |
const std::string & | fieldNameU () const |
access the field name used for U More... | |
const std::string & | fieldNameV () const |
access the field name used for V More... | |
std::vector< double > | cellDimensions (const CellID &cellID) const |
Returns a vector<double> of the cellDimensions of the given cell ID in natural order of dimensions, e.g., dx/dy/dz, or dr/r*dPhi. More... | |
Public Member Functions inherited from dd4hep::Handle< T > | |
Handle ()=default | |
Default constructor. More... | |
Handle (Handle< T > &&element)=default | |
Copy constructor. More... | |
Handle (const Handle< T > &element)=default | |
Copy constructor. More... | |
Handle (T *element) | |
Initializing constructor from pointer. More... | |
template<typename Q > | |
Handle (Q *element) | |
Initializing constructor from unrelated pointer with type checking. More... | |
template<typename Q > | |
Handle (const Handle< Q > &element) | |
Initializing constructor from unrelated handle with type checking. More... | |
Handle< T > & | operator= (Handle< T > &&element)=default |
Assignment move operator. More... | |
Handle< T > & | operator= (const Handle< T > &element)=default |
Assignment copy operator. More... | |
bool | operator== (const Handle< T > &element) const |
Boolean operator == used for RB tree insertions. More... | |
bool | operator< (const Handle< T > &element) const |
Boolean operator < used for RB tree insertions. More... | |
bool | operator> (const Handle< T > &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< T > & | clear () |
Release the object held by the handle. More... | |
T * | operator-> () const |
Access the held object using the -> operator. More... | |
operator T& () const | |
Automatic type conversion to an object references. More... | |
T & | operator* () const |
Access the held object using the * operator. More... | |
T * | ptr () const |
Access to the held object. More... | |
template<typename Q > | |
Q * | _ptr () const |
Access to an unrelated object type. More... | |
template<typename Q > | |
Q * | data () const |
Access to an unrelated object type. More... | |
template<typename Q > | |
Q & | object () const |
Access to an unrelated object type. More... | |
T * | 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... | |
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 | destroy () |
Destroy the underlying object (be careful here: things are not reference counted)! More... | |
void | assign (_Segmentation *s, const std::string &n, const std::string &) |
const char * | name () const |
const char * | name () const |
void | assign (NamedObject *p, const std::string &n, const std::string &t) |
Additional Inherited Members | |
Public Types inherited from dd4hep::Handle< T > | |
typedef T | Object |
Extern accessible definition of the contained element type. More... | |
typedef Handle< T > | Base |
Self type: used by sub-classes. More... | |
Static Public Member Functions inherited from dd4hep::Handle< T > | |
static void | bad_assignment (const std::type_info &from, const std::type_info &to) |
Helper routine called when unrelated types are assigned. More... | |
Public Attributes inherited from dd4hep::Handle< T > | |
T * | m_element {nullptr} |
Single and only data member: Reference to the actual element. More... | |
Implementation class for the grid UV segmentation.
Concrete user handle to serve specific needs of client code which requires access to the base functionality not served by the super-class Segmentation.
Note: We only check the validity of the underlying handle. If for whatever reason the implementation object is not valid This is not checked. In principle this CANNOT happen unless some brain-dead has fiddled with the handled object directly.....
Note: The handle base corresponding to this object in for conveniance reasons instantiated in dd4hep/src/Segmentations.cpp.
Definition at line 51 of file CartesianGridUV.h.
|
default |
Default constructor.
|
default |
Copy constructor.
|
inline |
Copy Constructor from segmentation base object.
Definition at line 58 of file CartesianGridUV.h.
Copy constructor from handle.
Definition at line 60 of file CartesianGridUV.h.
|
inline |
Copy constructor from other equivalent handle.
Definition at line 62 of file CartesianGridUV.h.
std::vector< double > CartesianGridUV::cellDimensions | ( | const CellID & | cellID | ) | const |
Returns a vector<double> of the cellDimensions of the given cell ID in natural order of dimensions, e.g., dx/dy/dz, or dr/r*dPhi.
Returns a vector of the cellDimensions of the given cell ID
cellID | is ignored as all cells have the same dimension |
Definition at line 89 of file CartesianGridUV.cpp.
dd4hep::CellID CartesianGridUV::cellID | ( | const Position & | local, |
const Position & | global, | ||
const VolumeID & | volID | ||
) | const |
determine the cell ID based on the position
Definition at line 26 of file CartesianGridUV.cpp.
const std::string & CartesianGridUV::fieldNameU | ( | ) | const |
access the field name used for U
Definition at line 79 of file CartesianGridUV.cpp.
const std::string & CartesianGridUV::fieldNameV | ( | ) | const |
access the field name used for V
Definition at line 84 of file CartesianGridUV.cpp.
double CartesianGridUV::gridAngle | ( | ) | const |
access the rotation angle
Definition at line 64 of file CartesianGridUV.cpp.
double CartesianGridUV::gridSizeU | ( | ) | const |
access the grid size in U
Definition at line 34 of file CartesianGridUV.cpp.
double CartesianGridUV::gridSizeV | ( | ) | const |
access the grid size in V
Definition at line 39 of file CartesianGridUV.cpp.
double CartesianGridUV::offsetU | ( | ) | const |
access the coordinate offset in U
Definition at line 54 of file CartesianGridUV.cpp.
double CartesianGridUV::offsetV | ( | ) | const |
access the coordinate offset in V
Definition at line 59 of file CartesianGridUV.cpp.
|
default |
Assignment operator.
|
inline |
Equality operator.
Definition at line 66 of file CartesianGridUV.h.
determine the position based on the cell ID
Definition at line 21 of file CartesianGridUV.cpp.
void dd4hep::CartesianGridUV::setGridAngle | ( | double | angle | ) | const |
set the rotation angle
void CartesianGridUV::setGridSizeU | ( | double | cellSize | ) | const |
set the grid size in U
Definition at line 44 of file CartesianGridUV.cpp.
void CartesianGridUV::setGridSizeV | ( | double | cellSize | ) | const |
set the grid size in V
Definition at line 49 of file CartesianGridUV.cpp.
void CartesianGridUV::setOffsetU | ( | double | offset | ) | const |
set the coordinate offset in U
Definition at line 69 of file CartesianGridUV.cpp.
void CartesianGridUV::setOffsetV | ( | double | offset | ) | const |
set the coordinate offset in V
Definition at line 74 of file CartesianGridUV.cpp.