|
DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Go to the documentation of this file.
13 #ifndef DDSEGMENTATION_MULTISEGMENTATION_H
14 #define DDSEGMENTATION_MULTISEGMENTATION_H
21 namespace DDSegmentation {
98 #endif // DDSEGMENTATION_MULTISEGMENTATION_H
virtual Vector3D position(const CellID &cellID) const
determine the position based on the cell ID
Helper class for BitFieldCoder that corresponds to one field value.
Simple container for a physics vector.
Helper class for decoding and encoding a bit field of 64bits for convenient declaration.
Helper structure to describe a sub-segmentation entry.
const std::string & discriminatorName() const
access the field name used to discriminate sub-segmentations
virtual void addSubsegmentation(long key_min, long key_max, Segmentation *entry)
Add subsegmentation.
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,...
Wrapper to support multiple segmentations.
virtual void setDecoder(const BitFieldCoder *decoder)
Set the underlying decoder.
const Segmentation & subsegmentation(const CellID &cellID) const
Access subsegmentation by cell identifier.
Segmentation * segmentation
virtual CellID cellID(const Vector3D &localPosition, const Vector3D &globalPosition, const VolumeID &volumeID) const
determine the cell ID based on the position
Segmentations m_segmentations
Sub-segmentaion container.
virtual const BitFieldCoder * decoder() const
Access the underlying decoder.
const BitFieldElement * discriminator() const
Discriminating bitfield entry.
virtual ~MultiSegmentation()
Default destructor.
std::string m_discriminatorId
the field name used to discriminate sub-segmentations
virtual VolumeID volumeID(const CellID &cellID) const
Determine the volume ID from the full cell ID by removing all local fields.
Namespace for the AIDA detector description toolkit.
MultiSegmentation(const std::string &cellEncoding="")
Default constructor passing the encoding string.
std::vector< Entry > Segmentations
const BitFieldElement * m_discriminator
Bitfield corresponding to dicriminator identifier.
Base class for all segmentations.
const Segmentations & subSegmentations() const
The underlying sub-segementations.