DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Member Functions | Public Attributes | List of all members
dd4hep::SegmentationObject Class Reference

Implementation class supporting generic Segmentation of sensitive detectors. More...

#include <SegmentationsInterna.h>

Inheritance diagram for dd4hep::SegmentationObject:
dd4hep::SegmentationWrapper< IMP >

Public Member Functions

 SegmentationObject (DDSegmentation::Segmentation *seg=0)
 Standard constructor. More...
 
virtual ~SegmentationObject ()
 Default destructor. More...
 
std::string fieldDescription () const
 Access the encoding string. More...
 
const std::string & name () const
 Access the segmentation name. More...
 
void setName (const std::string &value)
 Set the segmentation name. More...
 
const std::string & type () const
 Access the segmentation type. More...
 
const std::string & description () const
 Access the description of the segmentation. More...
 
const BitFieldCoder * decoder () const
 Access the underlying decoder. More...
 
void setDecoder (const BitFieldCoder *decoder) const
 Set the underlying decoder. More...
 
DDSegmentation::Parameter parameter (const std::string &parameterName) const
 Access to parameter by name. More...
 
DDSegmentation::Parameters parameters () const
 Access to all parameters. More...
 
void setParameters (const DDSegmentation::Parameters &parameters)
 Set all parameters from an existing set of parameters. More...
 
Position position (const CellID &cellID) const
 Determine the local position based on the cell ID. More...
 
CellID cellID (const Position &localPosition, const Position &globalPosition, const VolumeID &volumeID) const
 Determine the cell ID based on the position. More...
 
VolumeID volumeID (const CellID &cellID) const
 Determine the volume ID from the full cell ID by removing all local fields. More...
 
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...
 

Public Attributes

unsigned long magic
 Magic word to check object integrity. More...
 
unsigned char useForHitPosition
 Flag to use segmentation for hit positioning. More...
 
Handle< DetElementObjectdetector
 Reference to hosting top level DetElement structure. More...
 
Handle< SensitiveDetectorObjectsensitive
 Reference to hosting top level sensitve detector structure. More...
 
DDSegmentation::Segmentationsegmentation = 0
 Reference to base segmentation. More...
 

Detailed Description

Implementation class supporting generic Segmentation of sensitive detectors.

The SegmentationObject wraps the functionality of the DDSegmentation base class.

Author
M.Frank
Version
1.0

Definition at line 46 of file SegmentationsInterna.h.

Constructor & Destructor Documentation

◆ SegmentationObject()

SegmentationObject::SegmentationObject ( DDSegmentation::Segmentation seg = 0)

Standard constructor.

Definition at line 23 of file SegmentationsInterna.cpp.

◆ ~SegmentationObject()

SegmentationObject::~SegmentationObject ( )
virtual

Default destructor.

Definition at line 31 of file SegmentationsInterna.cpp.

Member Function Documentation

◆ cellID()

CellID SegmentationObject::cellID ( const Position localPosition,
const Position globalPosition,
const VolumeID volumeID 
) const

Determine the cell ID based on the position.

Definition at line 93 of file SegmentationsInterna.cpp.

◆ decoder()

const BitFieldCoder * SegmentationObject::decoder ( ) const

Access the underlying decoder.

Definition at line 63 of file SegmentationsInterna.cpp.

◆ description()

const std::string & SegmentationObject::description ( ) const

Access the description of the segmentation.

Definition at line 58 of file SegmentationsInterna.cpp.

◆ fieldDescription()

std::string SegmentationObject::fieldDescription ( ) const

Access the encoding string.

Definition at line 39 of file SegmentationsInterna.cpp.

◆ name()

const std::string & SegmentationObject::name ( ) const

Access the segmentation name.

Definition at line 44 of file SegmentationsInterna.cpp.

◆ neighbours()

void dd4hep::SegmentationObject::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.

◆ parameter()

DDSegmentation::Parameter SegmentationObject::parameter ( const std::string &  parameterName) const

Access to parameter by name.

Definition at line 73 of file SegmentationsInterna.cpp.

◆ parameters()

DDSegmentation::Parameters SegmentationObject::parameters ( ) const

Access to all parameters.

Definition at line 78 of file SegmentationsInterna.cpp.

◆ position()

Position SegmentationObject::position ( const CellID cellID) const

Determine the local position based on the cell ID.

Segmentation interface

Definition at line 88 of file SegmentationsInterna.cpp.

◆ setDecoder()

void SegmentationObject::setDecoder ( const BitFieldCoder *  decoder) const

Set the underlying decoder.

Definition at line 68 of file SegmentationsInterna.cpp.

◆ setName()

void SegmentationObject::setName ( const std::string &  value)

Set the segmentation name.

Definition at line 48 of file SegmentationsInterna.cpp.

◆ setParameters()

void SegmentationObject::setParameters ( const DDSegmentation::Parameters parameters)

Set all parameters from an existing set of parameters.

Definition at line 83 of file SegmentationsInterna.cpp.

◆ type()

const std::string & SegmentationObject::type ( ) const

Access the segmentation type.

Definition at line 53 of file SegmentationsInterna.cpp.

◆ volumeID()

VolumeID SegmentationObject::volumeID ( const CellID cellID) const

Determine the volume ID from the full cell ID by removing all local fields.

Definition at line 100 of file SegmentationsInterna.cpp.

Member Data Documentation

◆ detector

Handle<DetElementObject> dd4hep::SegmentationObject::detector

Reference to hosting top level DetElement structure.

Definition at line 92 of file SegmentationsInterna.h.

◆ magic

unsigned long dd4hep::SegmentationObject::magic

Magic word to check object integrity.

Data members.

Definition at line 88 of file SegmentationsInterna.h.

◆ segmentation

DDSegmentation::Segmentation* dd4hep::SegmentationObject::segmentation = 0

Reference to base segmentation.

Definition at line 96 of file SegmentationsInterna.h.

◆ sensitive

Handle<SensitiveDetectorObject> dd4hep::SegmentationObject::sensitive

Reference to hosting top level sensitve detector structure.

Definition at line 94 of file SegmentationsInterna.h.

◆ useForHitPosition

unsigned char dd4hep::SegmentationObject::useForHitPosition

Flag to use segmentation for hit positioning.

Definition at line 90 of file SegmentationsInterna.h.


The documentation for this class was generated from the following files: