![]() |
DD4hep
1.33.0
Detector Description Toolkit for High Energy Physics
|
A segmentation class to describe tiled layers. More...
#include <TiledLayerGridXY.h>
Public Member Functions | |
| TiledLayerGridXY (const std::string &cellEncoding="") | |
| Default constructor passing the encoding string. More... | |
| TiledLayerGridXY (const BitFieldCoder *decoder) | |
| Default constructor used by derived classes passing an existing decoder. More... | |
| virtual | ~TiledLayerGridXY () |
| destructor More... | |
| virtual Vector3D | position (const CellID &cellID) const |
| determine the position based on the cell ID More... | |
| virtual CellID | cellID (const Vector3D &localPosition, const Vector3D &globalPosition, const VolumeID &volumeID) const |
| determine the cell ID based on the position More... | |
| double | gridSizeX () const |
| access the grid size in X More... | |
| double | gridSizeY () const |
| access the grid size in Y More... | |
| double | offsetX () const |
| access the coordinate offset in X More... | |
| double | offsetY () const |
| access the coordinate offset in Y More... | |
| std::vector< double > | layerOffsetX () const |
| access the coordinate layerOffset in X More... | |
| std::vector< double > | layerOffsetY () const |
| access the coordinate layerOffset in Y More... | |
| std::vector< double > | boundaryLayerX () const |
| access the boundary dimension in X More... | |
| std::vector< double > | FractCellSizeXPerLayer () const |
| access the fraction cell size in X More... | |
| const std::string & | fieldNameX () const |
| access the field name used for X More... | |
| const std::string & | fieldNameY () const |
| access the field name used for Y More... | |
| const std::string & | fieldNameLayer () const |
| access the field name used for Layer More... | |
| void | setGridSizeX (double cellSize) |
| set the grid size in X More... | |
| void | setGridSizeY (double cellSize) |
| set the grid size in Y More... | |
| void | setOffsetX (double offset) |
| set the coordinate offset in X More... | |
| void | setOffsetY (double offset) |
| set the coordinate offset in Y More... | |
| void | setLayerOffsetX (double offset) |
| set the coordinate layerOffset in X More... | |
| void | setLayerOffsetY (double offset) |
| set the coordinate layerOffset in Y More... | |
| void | setFieldNameX (const std::string &fieldName) |
| set the field name used for X More... | |
| void | setFieldNameY (const std::string &fieldName) |
| set the field name used for Y More... | |
| void | setFieldNameLayer (const std::string &fieldName) |
| set the field name used for Y More... | |
| void | setBoundaryLayerX (double halfX) |
| set the layer boundary dimension for X More... | |
| void | setFractCellSizeXPerLayer (double newFractCellSizeX) |
| set the layer fraction cell size for X More... | |
| virtual 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::DDSegmentation::CartesianGrid | |
| virtual | ~CartesianGrid () |
| Destructor. More... | |
Public Member Functions inherited from dd4hep::DDSegmentation::Segmentation | |
| virtual | ~Segmentation () |
| Destructor. More... | |
| virtual void | addSubsegmentation (long key_min, long key_max, Segmentation *entry) |
| Add subsegmentation. Call only valid for Multi-segmentations. Default implementation throws an exception. More... | |
| virtual VolumeID | volumeID (const CellID &cellID) const |
| Determine the volume ID from the full cell ID by removing all local fields. More... | |
| virtual void | neighbours (const CellID &cellID, std::set< CellID > &neighbours) const |
| Calculates the neighbours of the given cell ID and adds them to the list of neighbours. More... | |
| virtual std::string | fieldDescription () const |
| Access the encoding string. More... | |
| virtual const std::string & | name () const |
| Access the segmentation name. More... | |
| virtual void | setName (const std::string &value) |
| Set the segmentation name. More... | |
| virtual const std::string & | type () const |
| Access the segmentation type. More... | |
| virtual const std::string & | description () const |
| Access the description of the segmentation. More... | |
| virtual const BitFieldCoder * | decoder () const |
| Access the underlying decoder. More... | |
| virtual void | setDecoder (const BitFieldCoder *decoder) |
| Set the underlying decoder. More... | |
| virtual Parameter | parameter (const std::string ¶meterName) const |
| Access to parameter by name. More... | |
| virtual Parameters | parameters () const |
| Access to all parameters. More... | |
| virtual void | setParameters (const Parameters ¶meters) |
| Set all parameters from an existing set of parameters. More... | |
| virtual bool | cellsSpanVolumes () const |
Protected Attributes | |
| double | _gridSizeX |
| the grid size in X More... | |
| double | _offsetX |
| the coordinate offset in X More... | |
| double | _gridSizeY |
| the grid size in Y More... | |
| double | _offsetY |
| the coordinate offset in Y More... | |
| std::string | _xId |
| the field name used for X More... | |
| std::string | _yId |
| the field name used for Y More... | |
| std::string | _identifierLayer |
| encoding field used for the layer More... | |
| std::vector< double > | _layerOffsetX |
| list of layer x offset More... | |
| std::vector< double > | _layerOffsetY |
| list of layer y offset More... | |
| std::vector< double > | _layerDimX |
| list of layer boundary dimension for X More... | |
| std::vector< double > | _fractCellSizeXPerLayer |
| list of the layer fraction cell size for X More... | |
Protected Attributes inherited from dd4hep::DDSegmentation::Segmentation | |
| std::string | _name |
| The segmentation name. More... | |
| std::string | _type |
| The segmentation type. More... | |
| std::string | _description |
| The description of the segmentation. More... | |
| std::map< std::string, Parameter > | _parameters |
| The parameters for this segmentation. More... | |
| std::map< std::string, StringParameter > | _indexIdentifiers |
| The indices used for the encoding. More... | |
| const BitFieldCoder * | _decoder = 0 |
| The cell ID encoder and decoder. More... | |
| bool | _ownsDecoder = false |
| Keeps track of the decoder ownership. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from dd4hep::DDSegmentation::CartesianGrid | |
| CartesianGrid (const std::string &cellEncoding="") | |
| Default constructor used by derived classes passing the encoding string. More... | |
| CartesianGrid (const BitFieldCoder *decoder) | |
| Default constructor used by derived classes passing an existing decoder. More... | |
Protected Member Functions inherited from dd4hep::DDSegmentation::Segmentation | |
| Segmentation (const std::string &cellEncoding="") | |
| Default constructor used by derived classes passing the encoding string. More... | |
| Segmentation (const BitFieldCoder *decoder) | |
| Default constructor used by derived classes passing an existing decoder. More... | |
| template<typename TYPE > | |
| void | registerParameter (const std::string &nam, const std::string &desc, TYPE ¶m, const TYPE &defaultVal, UnitType unitTyp=SegmentationParameter::NoUnit, bool isOpt=false) |
| Add a parameter to this segmentation. Used by derived classes to define their parameters. More... | |
| void | registerIdentifier (const std::string &nam, const std::string &desc, std::string &ident, const std::string &defaultVal) |
| Add a cell identifier to this segmentation. Used by derived classes to define their required identifiers. More... | |
Static Protected Member Functions inherited from dd4hep::DDSegmentation::Segmentation | |
| static double | binToPosition (FieldID bin, double cellSize, double offset=0.) |
| Helper method to convert a bin number to a 1D position. More... | |
| static int | positionToBin (double position, double cellSize, double offset=0.) |
| Helper method to convert a 1D position to a cell ID. More... | |
| static double | binToPosition (FieldID bin, std::vector< double > const &cellBoundaries, double offset=0.) |
| Helper method to convert a bin number to a 1D position given a vector of binBoundaries. More... | |
| static int | positionToBin (double position, std::vector< double > const &cellBoundaries, double offset=0.) |
| Helper method to convert a 1D position to a cell ID given a vector of binBoundaries. More... | |
A segmentation class to describe tiled layers.
Definition at line 32 of file TiledLayerGridXY.h.
| dd4hep::DDSegmentation::TiledLayerGridXY::TiledLayerGridXY | ( | const std::string & | cellEncoding = "" | ) |
Default constructor passing the encoding string.
default constructor using an encoding string
Definition at line 29 of file TiledLayerGridXY.cpp.
| dd4hep::DDSegmentation::TiledLayerGridXY::TiledLayerGridXY | ( | const BitFieldCoder * | decoder | ) |
Default constructor used by derived classes passing an existing decoder.
Definition at line 52 of file TiledLayerGridXY.cpp.
|
virtual |
destructor
Definition at line 74 of file TiledLayerGridXY.cpp.
|
inline |
access the boundary dimension in X
Definition at line 70 of file TiledLayerGridXY.h.
|
virtual |
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 |
Reimplemented from dd4hep::DDSegmentation::Segmentation.
Definition at line 122 of file TiledLayerGridXY.cpp.
|
virtual |
determine the cell ID based on the position
Implements dd4hep::DDSegmentation::Segmentation.
Definition at line 106 of file TiledLayerGridXY.cpp.
|
inline |
access the field name used for Layer
Definition at line 86 of file TiledLayerGridXY.h.
|
inline |
access the field name used for X
Definition at line 78 of file TiledLayerGridXY.h.
|
inline |
access the field name used for Y
Definition at line 82 of file TiledLayerGridXY.h.
|
inline |
access the fraction cell size in X
Definition at line 74 of file TiledLayerGridXY.h.
|
inline |
access the grid size in X
Definition at line 46 of file TiledLayerGridXY.h.
|
inline |
access the grid size in Y
Definition at line 50 of file TiledLayerGridXY.h.
|
inline |
access the coordinate layerOffset in X
Definition at line 62 of file TiledLayerGridXY.h.
|
inline |
access the coordinate layerOffset in Y
Definition at line 66 of file TiledLayerGridXY.h.
|
inline |
access the coordinate offset in X
Definition at line 54 of file TiledLayerGridXY.h.
|
inline |
access the coordinate offset in Y
Definition at line 58 of file TiledLayerGridXY.h.
determine the position based on the cell ID
Implements dd4hep::DDSegmentation::Segmentation.
Definition at line 79 of file TiledLayerGridXY.cpp.
|
inline |
set the layer boundary dimension for X
Definition at line 126 of file TiledLayerGridXY.h.
|
inline |
set the field name used for Y
Definition at line 122 of file TiledLayerGridXY.h.
|
inline |
set the field name used for X
Definition at line 114 of file TiledLayerGridXY.h.
|
inline |
set the field name used for Y
Definition at line 118 of file TiledLayerGridXY.h.
|
inline |
set the layer fraction cell size for X
Definition at line 131 of file TiledLayerGridXY.h.
|
inline |
set the grid size in X
Definition at line 90 of file TiledLayerGridXY.h.
|
inline |
set the grid size in Y
Definition at line 94 of file TiledLayerGridXY.h.
|
inline |
set the coordinate layerOffset in X
Definition at line 106 of file TiledLayerGridXY.h.
|
inline |
set the coordinate layerOffset in Y
Definition at line 110 of file TiledLayerGridXY.h.
|
inline |
set the coordinate offset in X
Definition at line 98 of file TiledLayerGridXY.h.
|
inline |
set the coordinate offset in Y
Definition at line 102 of file TiledLayerGridXY.h.
|
protected |
list of the layer fraction cell size for X
Definition at line 168 of file TiledLayerGridXY.h.
|
protected |
the grid size in X
Definition at line 148 of file TiledLayerGridXY.h.
|
protected |
the grid size in Y
Definition at line 152 of file TiledLayerGridXY.h.
|
protected |
encoding field used for the layer
Definition at line 160 of file TiledLayerGridXY.h.
|
protected |
list of layer boundary dimension for X
Definition at line 166 of file TiledLayerGridXY.h.
|
protected |
list of layer x offset
Definition at line 162 of file TiledLayerGridXY.h.
|
protected |
list of layer y offset
Definition at line 164 of file TiledLayerGridXY.h.
|
protected |
the coordinate offset in X
Definition at line 150 of file TiledLayerGridXY.h.
|
protected |
the coordinate offset in Y
Definition at line 154 of file TiledLayerGridXY.h.
|
protected |
the field name used for X
Definition at line 156 of file TiledLayerGridXY.h.
|
protected |
the field name used for Y
Definition at line 158 of file TiledLayerGridXY.h.
1.8.18