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

Handle class to hold the information of a sensitive detector. More...

#include <DetElement.h>

Inheritance diagram for dd4hep::SensitiveDetector:
dd4hep::Handle< SensitiveDetectorObject >

Public Member Functions

 SensitiveDetector ()
 Default constructor. More...
 
 SensitiveDetector (Object *obj_pointer)
 Constructor to copy handled object. More...
 
 SensitiveDetector (Handle< SensitiveDetectorObject > &&sd)
 Move from named handle. More...
 
 SensitiveDetector (const Handle< SensitiveDetectorObject > &sd)
 Copy from named handle. More...
 
 SensitiveDetector (SensitiveDetector &&sd)=default
 Move from handle. More...
 
 SensitiveDetector (const SensitiveDetector &sd)=default
 Copy from handle. More...
 
template<typename Q >
 SensitiveDetector (const Handle< Q > &e)
 Templated constructor for handle conversions. More...
 
 SensitiveDetector (const std::string &name, const std::string &type="sensitive")
 Constructor for a new sensitive detector element. More...
 
SensitiveDetectoroperator= (SensitiveDetector &&sd)=default
 Assignment move operator. More...
 
SensitiveDetectoroperator= (const SensitiveDetector &sd)=default
 Assignment copy operator. More...
 
template<typename T >
bool operator== (const Handle< T > &e) const
 Equality operator. More...
 
template<typename T >
bool operator!= (const Handle< T > &e) const
 Non-Equality operator. More...
 
std::string type () const
 Access the type of the sensitive detector. More...
 
SensitiveDetectorsetType (const std::string &typ)
 Set detector type (structure, tracker, calorimeter, etc.). More...
 
SensitiveDetectorsetVerbose (bool value)
 Set flag to handle hits collection. More...
 
bool verbose () const
 Access flag to combine hist. More...
 
SensitiveDetectorsetCombineHits (bool value)
 Set flag to handle hits collection. More...
 
bool combineHits () const
 Access flag to combine hist. More...
 
SensitiveDetectorsetHitsCollection (const std::string &spec)
 Assign the name of the hits collection. More...
 
const std::string & hitsCollection () const
 Access the hits collection name. More...
 
SensitiveDetectorsetReadout (Readout readout)
 Assign the IDDescriptor reference. More...
 
Readout readout () const
 Access readout structure of the sensitive detector. More...
 
IDDescriptor idSpec () const
 Access IDDescription structure. More...
 
SensitiveDetectorsetEnergyCutoff (double value)
 Set energy cut off. More...
 
double energyCutoff () const
 Access energy cut off. More...
 
SensitiveDetectorsetRegion (Region reg)
 Set the regional attributes to the sensitive detector. More...
 
Region region () const
 Access to the region setting of the sensitive detector (not mandatory) More...
 
SensitiveDetectorsetLimitSet (LimitSet limits)
 Set the limits to the sensitive detector. More...
 
LimitSet limits () const
 Access to the limit set of the sensitive detector (not mandatory). More...
 
void * addExtension (unsigned long long int key, ExtensionEntry *entry) const
 Add an extension object to the detector element. More...
 
void * extension (unsigned long long int key) const
 Access an existing extension object from the detector element. More...
 
void * extension (unsigned long long int key, bool alert) const
 Access an existing extension object from the detector element. More...
 
template<typename IFACE , typename CONCRETE >
IFACE * addExtension (CONCRETE *c) const
 Extend the sensitive detector element with an arbitrary structure accessible by the type. More...
 
template<typename IFACE >
IFACE * extension () const
 Access extension element by the type. More...
 
- Public Member Functions inherited from dd4hep::Handle< SensitiveDetectorObject >
 Handle ()=default
 Default constructor. More...
 
 Handle (Handle< SensitiveDetectorObject > &&element)=default
 Copy constructor. More...
 
 Handle (const Handle< SensitiveDetectorObject > &element)=default
 Copy constructor. More...
 
 Handle (SensitiveDetectorObject *element)
 Initializing constructor from pointer. More...
 
 Handle (Q *element)
 Initializing constructor from unrelated pointer with type checking. More...
 
 Handle (const Handle< Q > &element)
 Initializing constructor from unrelated handle with type checking. More...
 
Handle< SensitiveDetectorObject > & operator= (Handle< SensitiveDetectorObject > &&element)=default
 Assignment move operator. More...
 
Handle< SensitiveDetectorObject > & operator= (const Handle< SensitiveDetectorObject > &element)=default
 Assignment copy operator. More...
 
bool operator== (const Handle< SensitiveDetectorObject > &element) const
 Boolean operator == used for RB tree insertions. More...
 
bool operator< (const Handle< SensitiveDetectorObject > &element) const
 Boolean operator < used for RB tree insertions. More...
 
bool operator> (const Handle< SensitiveDetectorObject > &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< SensitiveDetectorObject > & clear ()
 Release the object held by the handle. More...
 
SensitiveDetectorObjectoperator-> () const
 Access the held object using the -> operator. More...
 
 operator SensitiveDetectorObject & () const
 Automatic type conversion to an object references. More...
 
SensitiveDetectorObjectoperator* () const
 Access the held object using the * operator. More...
 
SensitiveDetectorObjectptr () const
 Access to the held object. More...
 
Q * _ptr () const
 Access to an unrelated object type. More...
 
Q * data () const
 Access to an unrelated object type. More...
 
Q & object () const
 Access to an unrelated object type. More...
 
SensitiveDetectorObjectaccess () 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...
 
const char * name () const
 
const char * name () const
 
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 assign (_Segmentation *s, const std::string &n, const std::string &)
 
void assign (NamedObject *p, const std::string &n, const std::string &t)
 
void destroy ()
 Destroy the underlying object (be careful here: things are not reference counted)! More...
 

Additional Inherited Members

- Public Types inherited from dd4hep::Handle< SensitiveDetectorObject >
typedef SensitiveDetectorObject Object
 Extern accessible definition of the contained element type. More...
 
typedef Handle< SensitiveDetectorObjectBase
 Self type: used by sub-classes. More...
 
- Static Public Member Functions inherited from dd4hep::Handle< SensitiveDetectorObject >
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< SensitiveDetectorObject >
SensitiveDetectorObjectm_element
 Single and only data member: Reference to the actual element. More...
 

Detailed Description

Handle class to hold the information of a sensitive detector.

Author
M.Frank
Version
1.0

Definition at line 44 of file DetElement.h.

Constructor & Destructor Documentation

◆ SensitiveDetector() [1/8]

dd4hep::SensitiveDetector::SensitiveDetector ( )
inline

Default constructor.

Definition at line 48 of file DetElement.h.

◆ SensitiveDetector() [2/8]

dd4hep::SensitiveDetector::SensitiveDetector ( Object obj_pointer)
inline

Constructor to copy handled object.

Definition at line 51 of file DetElement.h.

◆ SensitiveDetector() [3/8]

dd4hep::SensitiveDetector::SensitiveDetector ( Handle< SensitiveDetectorObject > &&  sd)
inline

Move from named handle.

Definition at line 55 of file DetElement.h.

◆ SensitiveDetector() [4/8]

dd4hep::SensitiveDetector::SensitiveDetector ( const Handle< SensitiveDetectorObject > &  sd)
inline

Copy from named handle.

Definition at line 59 of file DetElement.h.

◆ SensitiveDetector() [5/8]

dd4hep::SensitiveDetector::SensitiveDetector ( SensitiveDetector &&  sd)
default

Move from handle.

◆ SensitiveDetector() [6/8]

dd4hep::SensitiveDetector::SensitiveDetector ( const SensitiveDetector sd)
default

Copy from handle.

◆ SensitiveDetector() [7/8]

template<typename Q >
dd4hep::SensitiveDetector::SensitiveDetector ( const Handle< Q > &  e)
inline

Templated constructor for handle conversions.

Definition at line 69 of file DetElement.h.

◆ SensitiveDetector() [8/8]

SensitiveDetector::SensitiveDetector ( const std::string &  name,
const std::string &  type = "sensitive" 
)

Constructor for a new sensitive detector element.

Constructor.

Definition at line 389 of file DetElement.cpp.

Member Function Documentation

◆ addExtension() [1/2]

template<typename IFACE , typename CONCRETE >
IFACE* dd4hep::SensitiveDetector::addExtension ( CONCRETE *  c) const
inline

Extend the sensitive detector element with an arbitrary structure accessible by the type.

Definition at line 151 of file DetElement.h.

◆ addExtension() [2/2]

void * SensitiveDetector::addExtension ( unsigned long long int  key,
ExtensionEntry entry 
) const

Add an extension object to the detector element.

Definition at line 497 of file DetElement.cpp.

◆ combineHits()

bool SensitiveDetector::combineHits ( ) const

Access flag to combine hist.

Definition at line 470 of file DetElement.cpp.

◆ energyCutoff()

double SensitiveDetector::energyCutoff ( ) const

Access energy cut off.

Definition at line 435 of file DetElement.cpp.

◆ extension() [1/3]

template<typename IFACE >
IFACE* dd4hep::SensitiveDetector::extension ( ) const
inline

Access extension element by the type.

Definition at line 157 of file DetElement.h.

◆ extension() [2/3]

void * SensitiveDetector::extension ( unsigned long long int  key) const

Access an existing extension object from the detector element.

Definition at line 503 of file DetElement.cpp.

◆ extension() [3/3]

void * SensitiveDetector::extension ( unsigned long long int  key,
bool  alert 
) const

Access an existing extension object from the detector element.

Definition at line 508 of file DetElement.cpp.

◆ hitsCollection()

const std::string & SensitiveDetector::hitsCollection ( ) const

Access the hits collection name.

Definition at line 446 of file DetElement.cpp.

◆ idSpec()

IDDescriptor SensitiveDetector::idSpec ( ) const

Access IDDescription structure.

Assign the IDDescriptor reference.

Definition at line 424 of file DetElement.cpp.

◆ limits()

LimitSet SensitiveDetector::limits ( ) const

Access to the limit set of the sensitive detector (not mandatory).

Definition at line 492 of file DetElement.cpp.

◆ operator!=()

template<typename T >
bool dd4hep::SensitiveDetector::operator!= ( const Handle< T > &  e) const
inline

Non-Equality operator.

Definition at line 86 of file DetElement.h.

◆ operator=() [1/2]

SensitiveDetector& dd4hep::SensitiveDetector::operator= ( const SensitiveDetector sd)
default

Assignment copy operator.

◆ operator=() [2/2]

SensitiveDetector& dd4hep::SensitiveDetector::operator= ( SensitiveDetector &&  sd)
default

Assignment move operator.

◆ operator==()

template<typename T >
bool dd4hep::SensitiveDetector::operator== ( const Handle< T > &  e) const
inline

Equality operator.

Definition at line 82 of file DetElement.h.

◆ readout()

Readout SensitiveDetector::readout ( ) const

Access readout structure of the sensitive detector.

Assign the IDDescriptor reference.

Definition at line 419 of file DetElement.cpp.

◆ region()

Region SensitiveDetector::region ( ) const

Access to the region setting of the sensitive detector (not mandatory)

Definition at line 481 of file DetElement.cpp.

◆ setCombineHits()

SensitiveDetector & SensitiveDetector::setCombineHits ( bool  value)

Set flag to handle hits collection.

Assign the name of the hits collection.

Definition at line 463 of file DetElement.cpp.

◆ setEnergyCutoff()

SensitiveDetector & SensitiveDetector::setEnergyCutoff ( double  value)

Set energy cut off.

Definition at line 429 of file DetElement.cpp.

◆ setHitsCollection()

SensitiveDetector & SensitiveDetector::setHitsCollection ( const std::string &  spec)

Assign the name of the hits collection.

Definition at line 440 of file DetElement.cpp.

◆ setLimitSet()

SensitiveDetector & SensitiveDetector::setLimitSet ( LimitSet  limits)

Set the limits to the sensitive detector.

Definition at line 486 of file DetElement.cpp.

◆ setReadout()

SensitiveDetector & SensitiveDetector::setReadout ( Readout  readout)

Assign the IDDescriptor reference.

Definition at line 413 of file DetElement.cpp.

◆ setRegion()

SensitiveDetector & SensitiveDetector::setRegion ( Region  reg)

Set the regional attributes to the sensitive detector.

Definition at line 475 of file DetElement.cpp.

◆ setType()

SensitiveDetector & SensitiveDetector::setType ( const std::string &  typ)

Set detector type (structure, tracker, calorimeter, etc.).

Set the type of the sensitive detector.

Definition at line 402 of file DetElement.cpp.

◆ setVerbose()

SensitiveDetector & SensitiveDetector::setVerbose ( bool  value)

Set flag to handle hits collection.

Assign the name of the hits collection.

Definition at line 451 of file DetElement.cpp.

◆ type()

std::string SensitiveDetector::type ( ) const

Access the type of the sensitive detector.

Definition at line 408 of file DetElement.cpp.

◆ verbose()

bool SensitiveDetector::verbose ( ) const

Access flag to combine hist.

Definition at line 458 of file DetElement.cpp.


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