DD4hep  1.30.0
Detector Description Toolkit for High Energy Physics
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
dd4hep::sim::Geant4SensitiveAction< T > Class Template Reference

Template class to ease the construction of sensitive detectors using particle template specialization. More...

#include <Geant4SensDetAction.h>

Inheritance diagram for dd4hep::sim::Geant4SensitiveAction< T >:
dd4hep::sim::Geant4Sensitive dd4hep::sim::Geant4Action

Public Types

typedef T UserData
 
- Public Types inherited from dd4hep::sim::Geant4Sensitive
enum  HitCreationFlags { SIMPLE_MODE = 0, MEDIUM_MODE = 1<<0, DETAILED_MODE = 1<<1 }
 

Public Member Functions

 Geant4SensitiveAction (Geant4Context *context, const std::string &name, DetElement det, Detector &description)
 Standard , initializing constructor. More...
 
virtual ~Geant4SensitiveAction ()
 Default destructor. More...
 
void declareOptionalProperties ()
 Declare optional properties from embedded structure. More...
 
virtual void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
Readout readout ()
 Access the readout object. Note: if m_readoutName is set, the m_readout != m_sensitive.readout() More...
 
template<typename HIT >
std::size_t declareReadoutFilteredCollection ()
 Define readout specific hit collection with volume ID filtering. More...
 
template<typename HIT >
std::size_t defineReadoutCollection (const std::string collection_name)
 Define readout specific hit collection. matching name must be present in readout structure. More...
 
virtual void initialize () final
 Initialization overload for specialization. More...
 
virtual void finalize () final
 Finalization overload for specialization. More...
 
virtual void begin (G4HCofThisEvent *hce) final
 G4VSensitiveDetector interface: Method invoked at the begining of each event. More...
 
virtual void end (G4HCofThisEvent *hce) final
 G4VSensitiveDetector interface: Method invoked at the end of each event. More...
 
virtual void clear (G4HCofThisEvent *hce) final
 G4VSensitiveDetector interface: Method invoked if the event was aborted. More...
 
virtual bool process (const G4Step *step, G4TouchableHistory *history) final
 G4VSensitiveDetector interface: Method for generating hit(s) using the G4Step object. More...
 
virtual bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *history) final
 GFLASH/FastSim interface: Method for generating hit(s) using the information of the fast simulation spot object. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
bool process (const G4Step *, G4TouchableHistory *)
 G4VSensitiveDetector interface: Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *, G4TouchableHistory *)
 GFLASH/FastSim interface: Method for generating hit(s) using the information of G4Step object. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
bool process (const G4Step *step, G4TouchableHistory *)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *)
 GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
bool process (const G4Step *step, G4TouchableHistory *)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *)
 GFlash/FastSim interface: Method for generating hit(s) using the information of G4Step object. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
bool process (const G4Step *step, G4TouchableHistory *)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *)
 GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
bool process (const G4Step *step, G4TouchableHistory *)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *)
 GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
bool process (const G4Step *step, G4TouchableHistory *)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *)
 GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object. More...
 
void initialize ()
 Initialization overload for specialization. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
void clear (G4HCofThisEvent *)
 Method for generating hit(s) using the information of G4Step object. More...
 
G4bool process (const G4Step *step, G4TouchableHistory *history)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *history)
 GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object. More...
 
void initialize ()
 Initialization overload for specialization. More...
 
void begin (G4HCofThisEvent *)
 G4VSensitiveDetector interface: Method invoked at the begining of each event. More...
 
void end (G4HCofThisEvent *)
 G4VSensitiveDetector interface: Method invoked at the end of each event. More...
 
void defineCollections ()
 Define collections created by this sensitivie action object. More...
 
void clear (G4HCofThisEvent *)
 Method for generating hit(s) using the information of G4Step object. More...
 
G4bool process (const G4Step *step, G4TouchableHistory *history)
 Method for generating hit(s) using the information of G4Step object. More...
 
bool processFastSim (const Geant4FastSimSpot *spot, G4TouchableHistory *history)
 Method for generating hit(s) using the information of the Geant4FastSimSpot object. More...
 
- Public Member Functions inherited from dd4hep::sim::Geant4Sensitive
 Geant4Sensitive (Geant4Context *context, const std::string &name, DetElement det, Detector &description)
 Constructor. The sensitive detector element is identified by the detector name. More...
 
virtual ~Geant4Sensitive ()
 Standard destructor. More...
 
Geant4ActionSDdetector () const
 Access to the sensitive detector object. More...
 
void setDetector (Geant4ActionSD *sens_det)
 Access to the sensitive detector object. More...
 
int hitCreationMode () const
 Property access to the hit creation mode. More...
 
std::string detectorName () const
 G4VSensitiveDetector internals: Access to the detector name. More...
 
std::string path () const
 G4VSensitiveDetector internals: Access to the detector path name. More...
 
std::string fullPath () const
 G4VSensitiveDetector internals: Access to the detector path name. More...
 
bool isActive () const
 G4VSensitiveDetector internals: Is the detector active? More...
 
SensitiveDetector sensitiveDetector () const
 Access the dd4hep sensitive detector. More...
 
G4VReadOutGeometry * readoutGeometry () const
 Access to the readout geometry of the sensitive detector. More...
 
DetectordetectorDescription () const
 Access the detector desciption object. More...
 
void mark (const G4Track *track) const
 Mark the track to be kept for MC truth propagation during hit processing. More...
 
void mark (const G4Step *step) const
 Mark the track of this step to be kept for MC truth propagation during hit processing. More...
 
Geant4SensDetActionSequencesequence () const
 Access to the hosting sequence. More...
 
void adopt (Geant4Filter *filter)
 Add an actor responding to all callbacks. Sequence takes ownership. More...
 
void adopt_front (Geant4Filter *filter)
 Add an actor responding to all callbacks to the sequence front. Sequence takes ownership. More...
 
void adoptFilter (Geant4Action *filter)
 Add an actor responding to all callbacks. Sequence takes ownership. More...
 
void adoptFilter_front (Geant4Action *filter)
 Add an actor responding to all callbacks to the sequence front. Sequence takes ownership. More...
 
bool accept (const G4Step *step) const
 Callback before hit processing starts. Invoke all filters. More...
 
bool accept (const Geant4FastSimSpot *step) const
 GFLASH/FastSim interface: Callback before hit processing starts. Invoke all filters. More...
 
template<typename TYPE >
std::size_t defineCollection (const std::string &coll_name)
 Initialize the usage of a single hit collection. Returns the collection ID. More...
 
const std::string & hitCollectionName (std::size_t which) const
 Access HitCollection container names. More...
 
Geant4HitCollectioncollection (std::size_t which)
 Retrieve the hits collection associated with this detector by its serial number. More...
 
Geant4HitCollectioncollectionByID (std::size_t id)
 Retrieve the hits collection associated with this detector by its collection identifier. More...
 
long long int volumeID (const G4Step *step)
 Returns the volumeID of the sensitive volume corresponding to the step. More...
 
long long int volumeID (const G4VTouchable *touchable)
 Returns the volumeID of the sensitive volume corresponding to the G4VTouchable. More...
 
long long int cellID (const G4Step *step)
 Returns the cellID of the sensitive volume corresponding to the step. More...
 
long long int cellID (const G4VTouchable *touchable, const G4ThreeVector &global)
 Returns the cellID of the sensitive volume corresponding to the G4VTouchable. More...
 
- Public Member Functions inherited from dd4hep::sim::Geant4Action
 Geant4Action (Geant4Context *context, const std::string &nam)
 Standard constructor. More...
 
long addRef ()
 Increase reference count. More...
 
long release ()
 Decrease reference count. Implicit destruction. More...
 
Geant4Contextcontext () const
 Access the context. More...
 
virtual void updateContext (Geant4Context *ctxt)
 Set or update client context. More...
 
virtual void configureFiber (Geant4Context *thread_context)
 Set or update client for the use in a new thread fiber. More...
 
const std::string & name () const
 Access name of the action. More...
 
const char * c_name () const
 Access name of the action. More...
 
void setName (const std::string &new_name)
 Set the object name. More...
 
PropertyManagerproperties ()
 Access to the properties of the object. More...
 
PrintLevel outputLevel () const
 Access the output level. More...
 
PrintLevel setOutputLevel (PrintLevel new_level)
 Set the output level; returns previous value. More...
 
Geant4UIMessengercontrol () const
 Access to the UI messenger. More...
 
virtual void enableUI ()
 Enable and install UI messenger. More...
 
template<typename T >
Geant4ActiondeclareProperty (const std::string &nam, T &val)
 Declare property. More...
 
template<typename T >
Geant4ActiondeclareProperty (const char *nam, T &val)
 Declare property. More...
 
bool hasProperty (const std::string &name) const
 Check property for existence. More...
 
Propertyproperty (const std::string &name)
 Access single property. More...
 
virtual void installMessengers ()
 Install property control messenger if wanted. More...
 
virtual void installCommandMessenger ()
 Install command control messenger if wanted. More...
 
virtual void installPropertyMessenger ()
 Install property control messenger if wanted. More...
 
void print (const char *fmt,...) const
 Support for messages with variable output level using output level. More...
 
void printM1 (const char *fmt,...) const
 Support for messages with variable output level using output level-1. More...
 
void printM2 (const char *fmt,...) const
 Support for messages with variable output level using output level-2. More...
 
void printP1 (const char *fmt,...) const
 Support for messages with variable output level using output level+1. More...
 
void printP2 (const char *fmt,...) const
 Support for messages with variable output level using output level+2. More...
 
void always (const char *fmt,...) const
 Support of always printed messages. More...
 
void debug (const char *fmt,...) const
 Support of debug messages. More...
 
void info (const char *fmt,...) const
 Support of info messages. More...
 
void warning (const char *fmt,...) const
 Support of warning messages. More...
 
void error (const char *fmt,...) const
 Support of error messages. More...
 
bool return_error (bool return_value, const char *fmt,...) const
 Action to support error messages. More...
 
void fatal (const char *fmt,...) const
 Support of fatal messages. Throws exception. More...
 
void except (const char *fmt,...) const
 Support of exceptions: Print fatal message and throw runtime_error. More...
 
void abortRun (const std::string &exception, const char *fmt,...) const
 Abort Geant4 Run by throwing a G4Exception with type RunMustBeAborted. More...
 
Geant4RunActionSequencerunAction () const
 Access to the main run action sequence from the kernel object. More...
 
Geant4EventActionSequenceeventAction () const
 Access to the main event action sequence from the kernel object. More...
 
Geant4SteppingActionSequencesteppingAction () const
 Access to the main stepping action sequence from the kernel object. More...
 
Geant4TrackingActionSequencetrackingAction () const
 Access to the main tracking action sequence from the kernel object. More...
 
Geant4StackingActionSequencestackingAction () const
 Access to the main stacking action sequence from the kernel object. More...
 
Geant4GeneratorActionSequencegeneratorAction () const
 Access to the main generator action sequence from the kernel object. More...
 

Protected Member Functions

 DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4SensitiveAction)
 Define standard assignments and constructors. More...
 
- Protected Member Functions inherited from dd4hep::sim::Geant4Sensitive
 DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4Sensitive)
 Define standard assignments and constructors. More...
 
- Protected Member Functions inherited from dd4hep::sim::Geant4Action
 DDG4_DEFINE_ACTION_CONSTRUCTORS (Geant4Action)
 Define standard assignments and constructors. More...
 
virtual ~Geant4Action ()
 Default destructor. More...
 

Protected Attributes

std::string m_collectionName { }
 Property: collection name. If not set default is readout name! More...
 
std::string m_readoutName { }
 Property: segmentation name for parallel readouts. If not set readout segmentation is used! More...
 
std::size_t m_collectionID { 0 }
 Collection identifier. More...
 
UserData m_userData { }
 User data block. More...
 
- Protected Attributes inherited from dd4hep::sim::Geant4Sensitive
int m_hitCreationMode = 0
 Property: Hit creation mode. Maybe one of the enum HitCreationFlags. More...
 
Detectorm_detDesc
 Reference to the detector description object. More...
 
DetElement m_detector { }
 Reference to the detector element describing this sensitive element. More...
 
SensitiveDetector m_sensitive { }
 Reference to the sensitive detector element. More...
 
Readout m_readout { }
 Reference to the readout structure. More...
 
Segmentation m_segmentation { }
 Reference to segmentation. More...
 
Actors< Geant4Filterm_filters
 The list of sensitive detector filter objects. More...
 
- Protected Attributes inherited from dd4hep::sim::Geant4Action
Geant4Contextm_context { nullptr }
 Reference to the Geant4 context. More...
 
Geant4UIMessengerm_control { nullptr }
 Control directory of this action. More...
 
int m_outputLevel { 3 }
 Default property: Output level. More...
 
bool m_needsControl { false }
 Default property: Flag to create control instance. More...
 
std::string m_name { }
 Action name. More...
 
PropertyManager m_properties { }
 Property pool. More...
 
long m_refCount { 1 }
 Reference count. Initial value: 1. More...
 

Detailed Description

template<typename T>
class dd4hep::sim::Geant4SensitiveAction< T >

Template class to ease the construction of sensitive detectors using particle template specialization.

Templated implementation to realize sensitive detectors. Default implementations for all functions are provided in the file DDG4/Geant4SensDetAction.inl.

Users may override any of the templated callbacks or the of the virtual functions of the base class using explicit template specialization. An example may be found in DDG4/plugins/Geant4SDActions.

Author
M.Frank
Version
1.0

Definition at line 514 of file Geant4SensDetAction.h.

Member Typedef Documentation

◆ UserData

template<typename T >
typedef T dd4hep::sim::Geant4SensitiveAction< T >::UserData

Definition at line 516 of file Geant4SensDetAction.h.

Constructor & Destructor Documentation

◆ Geant4SensitiveAction()

template<typename T >
dd4hep::sim::Geant4SensitiveAction< T >::Geant4SensitiveAction ( Geant4Context context,
const std::string &  name,
DetElement  det,
Detector description 
)

Standard , initializing constructor.

◆ ~Geant4SensitiveAction()

template<typename T >
virtual dd4hep::sim::Geant4SensitiveAction< T >::~Geant4SensitiveAction ( )
virtual

Default destructor.

Member Function Documentation

◆ begin() [1/2]

void dd4hep::sim::Geant4SensitiveAction< TrackerWeighted >::begin ( G4HCofThisEvent *  )
virtual

G4VSensitiveDetector interface: Method invoked at the begining of each event.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 442 of file Geant4TrackerWeightedSD.cpp.

◆ begin() [2/2]

template<typename T >
virtual void dd4hep::sim::Geant4SensitiveAction< T >::begin ( G4HCofThisEvent *  hce)
finalvirtual

G4VSensitiveDetector interface: Method invoked at the begining of each event.

Reimplemented from dd4hep::sim::Geant4Sensitive.

◆ clear() [1/3]

void dd4hep::sim::Geant4SensitiveAction< TrackerWeighted >::clear ( G4HCofThisEvent *  )
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 457 of file Geant4TrackerWeightedSD.cpp.

◆ clear() [2/3]

void dd4hep::sim::Geant4SensitiveAction< TrackerCombine >::clear ( G4HCofThisEvent *  )
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 748 of file Geant4SDActions.cpp.

◆ clear() [3/3]

template<typename T >
virtual void dd4hep::sim::Geant4SensitiveAction< T >::clear ( G4HCofThisEvent *  hce)
finalvirtual

G4VSensitiveDetector interface: Method invoked if the event was aborted.

Reimplemented from dd4hep::sim::Geant4Sensitive.

◆ DDG4_DEFINE_ACTION_CONSTRUCTORS()

template<typename T >
dd4hep::sim::Geant4SensitiveAction< T >::DDG4_DEFINE_ACTION_CONSTRUCTORS ( Geant4SensitiveAction< T >  )
protected

Define standard assignments and constructors.

◆ declareOptionalProperties()

template<typename T >
void dd4hep::sim::Geant4SensitiveAction< T >::declareOptionalProperties ( )

Declare optional properties from embedded structure.

◆ declareReadoutFilteredCollection()

template<typename T >
template<typename HIT >
std::size_t dd4hep::sim::Geant4SensitiveAction< T >::declareReadoutFilteredCollection ( )

Define readout specific hit collection with volume ID filtering.

Convenience function. To be called by specialized sensitive actions inheriting this class.

  • If the property CollectionName ist NOT set, one default collection is declared, with the readout name as the collection name.
  • If the property CollectionName is set, the readout structure is searched for the corresponding entry and a collection with the corrsponding name is declared. At the same time a VolumeID filter is injected at the front of the sensitive's filter queue to ONLY act on volume IDs matching this criterium.

◆ defineCollections() [1/9]

void dd4hep::sim::Geant4SensitiveAction< Geant4VoidSensitive >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 45 of file Geant4SDActions.cpp.

◆ defineCollections() [2/9]

void dd4hep::sim::Geant4SensitiveAction< Geant4Tracker >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 77 of file Geant4SDActions.cpp.

◆ defineCollections() [3/9]

void dd4hep::sim::Geant4SensitiveAction< Geant4OpticalTracker >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 150 of file Geant4SDActions.cpp.

◆ defineCollections() [4/9]

void dd4hep::sim::Geant4SensitiveAction< Geant4Calorimeter >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 222 of file Geant4SDActions.cpp.

◆ defineCollections() [5/9]

void dd4hep::sim::Geant4SensitiveAction< Geant4OpticalCalorimeter >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 341 of file Geant4SDActions.cpp.

◆ defineCollections() [6/9]

void dd4hep::sim::Geant4SensitiveAction< Geant4ScintillatorCalorimeter >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 437 of file Geant4SDActions.cpp.

◆ defineCollections() [7/9]

void dd4hep::sim::Geant4SensitiveAction< TrackerWeighted >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 452 of file Geant4TrackerWeightedSD.cpp.

◆ defineCollections() [8/9]

template<typename T >
virtual void dd4hep::sim::Geant4SensitiveAction< T >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

◆ defineCollections() [9/9]

void dd4hep::sim::Geant4SensitiveAction< TrackerCombine >::defineCollections ( )
virtual

Define collections created by this sensitivie action object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 743 of file Geant4SDActions.cpp.

◆ defineReadoutCollection()

template<typename T >
template<typename HIT >
std::size_t dd4hep::sim::Geant4SensitiveAction< T >::defineReadoutCollection ( const std::string  collection_name)

Define readout specific hit collection. matching name must be present in readout structure.

◆ end() [1/2]

void dd4hep::sim::Geant4SensitiveAction< TrackerWeighted >::end ( G4HCofThisEvent *  )
virtual

G4VSensitiveDetector interface: Method invoked at the end of each event.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 447 of file Geant4TrackerWeightedSD.cpp.

◆ end() [2/2]

template<typename T >
virtual void dd4hep::sim::Geant4SensitiveAction< T >::end ( G4HCofThisEvent *  hce)
finalvirtual

G4VSensitiveDetector interface: Method invoked at the end of each event.

Reimplemented from dd4hep::sim::Geant4Sensitive.

◆ finalize()

template<typename T >
virtual void dd4hep::sim::Geant4SensitiveAction< T >::finalize ( )
finalvirtual

Finalization overload for specialization.

◆ initialize() [1/3]

Initialization overload for specialization.

Definition at line 434 of file Geant4TrackerWeightedSD.cpp.

◆ initialize() [2/3]

Initialization overload for specialization.

Definition at line 736 of file Geant4SDActions.cpp.

◆ initialize() [3/3]

template<typename T >
virtual void dd4hep::sim::Geant4SensitiveAction< T >::initialize ( )
finalvirtual

Initialization overload for specialization.

◆ process() [1/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4VoidSensitive >::process ( const G4Step *  ,
G4TouchableHistory *   
)
virtual

G4VSensitiveDetector interface: Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 51 of file Geant4SDActions.cpp.

◆ process() [2/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4Tracker >::process ( const G4Step *  step,
G4TouchableHistory *   
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 83 of file Geant4SDActions.cpp.

◆ process() [3/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4OpticalTracker >::process ( const G4Step *  step,
G4TouchableHistory *   
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 156 of file Geant4SDActions.cpp.

◆ process() [4/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4Calorimeter >::process ( const G4Step *  step,
G4TouchableHistory *   
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 228 of file Geant4SDActions.cpp.

◆ process() [5/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4OpticalCalorimeter >::process ( const G4Step *  step,
G4TouchableHistory *   
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 346 of file Geant4SDActions.cpp.

◆ process() [6/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4ScintillatorCalorimeter >::process ( const G4Step *  step,
G4TouchableHistory *   
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 442 of file Geant4SDActions.cpp.

◆ process() [7/9]

G4bool dd4hep::sim::Geant4SensitiveAction< TrackerWeighted >::process ( const G4Step *  step,
G4TouchableHistory *  history 
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 463 of file Geant4TrackerWeightedSD.cpp.

◆ process() [8/9]

G4bool dd4hep::sim::Geant4SensitiveAction< TrackerCombine >::process ( const G4Step *  step,
G4TouchableHistory *  history 
)
virtual

Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 754 of file Geant4SDActions.cpp.

◆ process() [9/9]

template<typename T >
virtual bool dd4hep::sim::Geant4SensitiveAction< T >::process ( const G4Step *  step,
G4TouchableHistory *  history 
)
finalvirtual

G4VSensitiveDetector interface: Method for generating hit(s) using the G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

◆ processFastSim() [1/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4VoidSensitive >::processFastSim ( const Geant4FastSimSpot ,
G4TouchableHistory *   
)
virtual

GFLASH/FastSim interface: Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 58 of file Geant4SDActions.cpp.

◆ processFastSim() [2/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4Tracker >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *   
)
virtual

GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 109 of file Geant4SDActions.cpp.

◆ processFastSim() [3/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4OpticalTracker >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *   
)
virtual

GFlash/FastSim interface: Method for generating hit(s) using the information of G4Step object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 185 of file Geant4SDActions.cpp.

◆ processFastSim() [4/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4Calorimeter >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *   
)
virtual

GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 277 of file Geant4SDActions.cpp.

◆ processFastSim() [5/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4OpticalCalorimeter >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *   
)
virtual

GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 382 of file Geant4SDActions.cpp.

◆ processFastSim() [6/9]

bool dd4hep::sim::Geant4SensitiveAction< Geant4ScintillatorCalorimeter >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *   
)
virtual

GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 488 of file Geant4SDActions.cpp.

◆ processFastSim() [7/9]

bool dd4hep::sim::Geant4SensitiveAction< TrackerWeighted >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *  history 
)
virtual

Method for generating hit(s) using the information of the Geant4FastSimSpot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 469 of file Geant4TrackerWeightedSD.cpp.

◆ processFastSim() [8/9]

bool dd4hep::sim::Geant4SensitiveAction< TrackerCombine >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *  history 
)
virtual

GFlash/FastSim interface: Method for generating hit(s) using the information of Geant4FastSimSpot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

Definition at line 760 of file Geant4SDActions.cpp.

◆ processFastSim() [9/9]

template<typename T >
virtual bool dd4hep::sim::Geant4SensitiveAction< T >::processFastSim ( const Geant4FastSimSpot spot,
G4TouchableHistory *  history 
)
finalvirtual

GFLASH/FastSim interface: Method for generating hit(s) using the information of the fast simulation spot object.

Reimplemented from dd4hep::sim::Geant4Sensitive.

◆ readout()

template<typename T >
Readout dd4hep::sim::Geant4SensitiveAction< T >::readout ( )

Access the readout object. Note: if m_readoutName is set, the m_readout != m_sensitive.readout()

Member Data Documentation

◆ m_collectionID

template<typename T >
std::size_t dd4hep::sim::Geant4SensitiveAction< T >::m_collectionID { 0 }
protected

Collection identifier.

Definition at line 524 of file Geant4SensDetAction.h.

◆ m_collectionName

template<typename T >
std::string dd4hep::sim::Geant4SensitiveAction< T >::m_collectionName { }
protected

Property: collection name. If not set default is readout name!

Definition at line 519 of file Geant4SensDetAction.h.

◆ m_readoutName

template<typename T >
std::string dd4hep::sim::Geant4SensitiveAction< T >::m_readoutName { }
protected

Property: segmentation name for parallel readouts. If not set readout segmentation is used!

Definition at line 521 of file Geant4SensDetAction.h.

◆ m_userData

template<typename T >
UserData dd4hep::sim::Geant4SensitiveAction< T >::m_userData { }
protected

User data block.

Definition at line 526 of file Geant4SensDetAction.h.


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