1#ifndef SIMCORE_TRIGSD_H
2#define SIMCORE_TRIGSD_H
5#include "SimCore/SensitiveDetector.h"
37 virtual bool isSensDet(G4LogicalVolume* vol)
const override {
38 return vol->GetName().contains(
vol_name_) and
39 not vol->GetName().contains(
"sp_");
48 G4bool
ProcessHits(G4Step* step, G4TouchableHistory* history)
override;
61 std::vector<ldmx::SimCalorimeterHit>
hits_;
Class which stores simulated calorimeter hit information.
Implements an event buffer system for storing event data.
Class encapsulating parameters for configuring a processor.
Handle to the conditions system, provided at construction to classes which require it.
Dynamically loaded Geant4 SensitiveDetector for saving hits in specific volumes within the simulation...
Class defining a sensitive detector of type trigger scintillator.
virtual bool isSensDet(G4LogicalVolume *vol) const override
Should the input logical volume be included in this sensitive detector?
std::string vol_name_
name of trigger pad volume this SD is capturing
G4bool ProcessHits(G4Step *step, G4TouchableHistory *history) override
Process steps to create hits.
std::string collection_name_
name of the hit collection for this SD
virtual void OnFinishedEvent() override
Cleanup SD and prepare a new-event state.
std::vector< ldmx::SimCalorimeterHit > hits_
our collection of hits in this SD
virtual ~TrigScintSD()=default
Destructor.
virtual void saveHits(framework::Event &event) override
Save our hits collection into the event bus and reset it.
int module_id_
the ID number for the module we are gathering hits from