|
LDMX Software
|
ECal sensitive detector that uses an EcalHexReadout to create the hits_. More...
#include <EcalSD.h>
Public Member Functions | |
| EcalSD (const std::string &name, simcore::ConditionsInterface &ci, const framework::config::Parameters &p) | |
| Class constructor. | |
| virtual | ~EcalSD ()=default |
| Class destructor. | |
| virtual bool | isSensDet (G4LogicalVolume *vol) const override |
| Should the input volume be consider apart of this sensitive detector? | |
| G4bool | ProcessHits (G4Step *aStep, G4TouchableHistory *ROhist) override |
| Process steps to create hits_. | |
| virtual void | saveHits (framework::Event &event) override |
| Add our hits to the event bus. | |
| virtual void | onFinishedEvent () override |
| Clear the map of hits we have accumulated. | |
Public Member Functions inherited from simcore::SensitiveDetector | |
| SensitiveDetector (const std::string &name, simcore::ConditionsInterface &ci, const framework::config::Parameters ¶meters) | |
| Constructor. | |
| DECLARE_FACTORY_WITH_WAREHOUSE (SensitiveDetector, SensitiveDetector *, const std::string &, simcore::ConditionsInterface &, const framework::config::Parameters &) | |
| The SD Factory. | |
| virtual | ~SensitiveDetector ()=default |
| Destructor. | |
| virtual void | EndOfEvent (G4HCofThisEvent *) override |
| This is Geant4's handle to tell us the event is ending. | |
Static Public Attributes | |
| static const std::string | COLLECTION_NAME = "EcalSimHits" |
| Name of output collection of hits_. | |
Private Attributes | |
| std::map< ldmx::EcalID, ldmx::SimCalorimeterHit > | hits_ |
| map of hits to add to the event (will be squashed) | |
| bool | enable_hit_contribs_ |
| enable hit contribs | |
| bool | compress_hit_contribs_ |
| compress hit contribs | |
| int | max_origin_track_id_ |
| maximum track ID to be considered an "origin" | |
Additional Inherited Members | |
Protected Member Functions inherited from simcore::SensitiveDetector | |
| template<class T > | |
| const T & | getCondition (const std::string &condition_name) |
| Record the configuration of this detector into the run header. | |
| bool | isGeantino (const G4Step *step) const |
| Check if the passed step is a step of a geantino. | |
| const TrackMap & | getTrackMap () const |
| Get a handle to the current track map. | |
| enableLogging ("SensitiveDetector") | |
| Enable logging for this class. | |
ECal sensitive detector that uses an EcalHexReadout to create the hits_.
| simcore::EcalSD::EcalSD | ( | const std::string & | name, |
| simcore::ConditionsInterface & | ci, | ||
| const framework::config::Parameters & | p ) |
Class constructor.
| name | The name of the sensitive detector. |
| theCollectionName | The name of the hits collection. |
| subDetID | The subdetector ID. |
Definition at line 7 of file EcalSD.cxx.
References compress_hit_contribs_, enable_hit_contribs_, framework::config::Parameters::get(), and max_origin_track_id_.
|
inlineoverridevirtual |
Should the input volume be consider apart of this sensitive detector?
Implements simcore::SensitiveDetector.
Definition at line 61 of file EcalSD.h.
|
inlineoverridevirtual |
Clear the map of hits we have accumulated.
Implements simcore::SensitiveDetector.
Definition at line 84 of file EcalSD.h.
References hits_.
|
overridevirtual |
Process steps to create hits_.
| aStep | The step information. |
| ROhist | The readout history. |
DEBUG this printout is helpful when developing the GDML and/or EcalGeometry since Geant4 will probe where exactly the GDML sensitive volumes are std::cout << "(" << position[0] << ", " << position[1] << ", " << position[2] << ") " << cpynum << " -> layer " << layerNumber << " module " << module_position << std::endl;
Implements simcore::SensitiveDetector.
Definition at line 15 of file EcalSD.cxx.
References compress_hit_contribs_, enable_hit_contribs_, simcore::SensitiveDetector::getCondition(), simcore::SensitiveDetector::getTrackMap(), hits_, simcore::SensitiveDetector::isGeantino(), and max_origin_track_id_.
|
overridevirtual |
Add our hits to the event bus.
Implements simcore::SensitiveDetector.
Definition at line 126 of file EcalSD.cxx.
References COLLECTION_NAME, and hits_.
|
static |
Name of output collection of hits_.
Definition at line 40 of file EcalSD.h.
Referenced by saveHits().
|
private |
compress hit contribs
Definition at line 92 of file EcalSD.h.
Referenced by EcalSD(), and ProcessHits().
|
private |
enable hit contribs
Definition at line 90 of file EcalSD.h.
Referenced by EcalSD(), and ProcessHits().
|
private |
map of hits to add to the event (will be squashed)
Definition at line 88 of file EcalSD.h.
Referenced by onFinishedEvent(), ProcessHits(), and saveHits().
|
private |
maximum track ID to be considered an "origin"
Definition at line 94 of file EcalSD.h.
Referenced by EcalSD(), and ProcessHits().