DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Implementation class for the grid XZ segmentation. More...
#include <PolarGridRPhi2.h>
Public Member Functions | |
PolarGridRPhi2 ()=default | |
Default constructor. More... | |
PolarGridRPhi2 (const PolarGridRPhi2 &e)=default | |
Copy constructor. More... | |
PolarGridRPhi2 (const Segmentation &e) | |
Copy Constructor from segmentation base object. More... | |
PolarGridRPhi2 (const Handle< Object > &e) | |
Copy constructor from handle. More... | |
template<typename Q > | |
PolarGridRPhi2 (const Handle< Q > &e) | |
Copy constructor from other polymorph/equivalent handle. More... | |
PolarGridRPhi2 & | operator= (const PolarGridRPhi2 &seg)=default |
Assignment operator. More... | |
bool | operator== (const PolarGridRPhi2 &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 | gridSizeR () const |
access the grid size in R More... | |
double | gridSizePhi () const |
access the grid size in Phi More... | |
double | offsetR () const |
access the coordinate offset in R More... | |
double | offsetPhi () const |
access the coordinate offset in Phi More... | |
void | setOffsetR (double offset) const |
set the coordinate offset in R More... | |
void | setOffsetPhi (double offset) const |
set the coordinate offset in Phi More... | |
std::vector< double > | gridRValues () const |
access the grid size in R More... | |
std::vector< double > | gridPhiValues () const |
access the grid size in Phi More... | |
void | setGridSizeR (double cellSize, int rID) const |
set the grid Boundaries in R More... | |
void | setGridSizePhi (double cellSize, int phiID) const |
set the grid size in Phi More... | |
void | setGridRValues (std::vector< double > const &rValues) const |
set the grid boundaries for R More... | |
void | setGridPhiValues (std::vector< double > const &phiValues) const |
set the grid size in Phi for each bin in R More... | |
const std::string & | fieldNameR () const |
access the field name used for R More... | |
const std::string & | fieldNamePhi () const |
access the field name used for Phi 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 XZ 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 PolarGridRPhi2.h.
|
default |
Default constructor.
|
default |
Copy constructor.
|
inline |
Copy Constructor from segmentation base object.
Definition at line 58 of file PolarGridRPhi2.h.
Copy constructor from handle.
Definition at line 60 of file PolarGridRPhi2.h.
|
inline |
Copy constructor from other polymorph/equivalent handle.
Definition at line 62 of file PolarGridRPhi2.h.
std::vector< double > PolarGridRPhi2::cellDimensions | ( | const CellID & | id | ) | 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 |
Returns a vector of the cellDimensions of the given cell ID
cellID | is ignored as all cells have the same dimension |
Definition at line 103 of file PolarGridRPhi2.cpp.
dd4hep::CellID PolarGridRPhi2::cellID | ( | const Position & | local, |
const Position & | global, | ||
const VolumeID & | volID | ||
) | const |
determine the cell ID based on the position
Definition at line 28 of file PolarGridRPhi2.cpp.
const std::string & PolarGridRPhi2::fieldNamePhi | ( | ) | const |
access the field name used for Phi
Definition at line 90 of file PolarGridRPhi2.cpp.
const std::string & PolarGridRPhi2::fieldNameR | ( | ) | const |
access the field name used for R
Definition at line 85 of file PolarGridRPhi2.cpp.
std::vector< double > PolarGridRPhi2::gridPhiValues | ( | ) | const |
access the grid size in Phi
Definition at line 41 of file PolarGridRPhi2.cpp.
std::vector< double > PolarGridRPhi2::gridRValues | ( | ) | const |
access the grid size in R
Definition at line 36 of file PolarGridRPhi2.cpp.
double dd4hep::PolarGridRPhi2::gridSizePhi | ( | ) | const |
access the grid size in Phi
double dd4hep::PolarGridRPhi2::gridSizeR | ( | ) | const |
access the grid size in R
double PolarGridRPhi2::offsetPhi | ( | ) | const |
access the coordinate offset in Phi
Definition at line 70 of file PolarGridRPhi2.cpp.
double PolarGridRPhi2::offsetR | ( | ) | const |
access the coordinate offset in R
Definition at line 65 of file PolarGridRPhi2.cpp.
|
default |
Assignment operator.
|
inline |
Equality operator.
Definition at line 66 of file PolarGridRPhi2.h.
determine the position based on the cell ID
Definition at line 23 of file PolarGridRPhi2.cpp.
void PolarGridRPhi2::setGridPhiValues | ( | std::vector< double > const & | phiValues | ) | const |
set the grid size in Phi for each bin in R
phiValues | The size in phi for each bin in R, this vector is one smaller than the vector for PolarGridRPhi2::setGridRValues |
Definition at line 60 of file PolarGridRPhi2.cpp.
void PolarGridRPhi2::setGridRValues | ( | std::vector< double > const & | rValues | ) | const |
set the grid boundaries for R
rValues | The boundaries of the segments in radius, the first value is the lower boundary of the first bin, the highest value is the upper boundary of the last bin |
Definition at line 55 of file PolarGridRPhi2.cpp.
void PolarGridRPhi2::setGridSizePhi | ( | double | cellSize, |
int | phiID | ||
) | const |
set the grid size in Phi
Definition at line 50 of file PolarGridRPhi2.cpp.
void PolarGridRPhi2::setGridSizeR | ( | double | cellSize, |
int | rID | ||
) | const |
set the grid Boundaries in R
Definition at line 45 of file PolarGridRPhi2.cpp.
void PolarGridRPhi2::setOffsetPhi | ( | double | offset | ) | const |
set the coordinate offset in Phi
Definition at line 80 of file PolarGridRPhi2.cpp.
void PolarGridRPhi2::setOffsetR | ( | double | offset | ) | const |
set the coordinate offset in R
Definition at line 75 of file PolarGridRPhi2.cpp.