5#ifndef ISF_FASTCALOSIMSD_SDWRAPPER_H
6#define ISF_FASTCALOSIMSD_SDWRAPPER_H
14#include "G4VSensitiveDetector.hh"
46template <
class SDType,
class HitContainerType>
54 SDWrapper(
const std::string& name,
const std::string& hitCollectionName);
60 virtual void Initialize(G4HCofThisEvent*)
override final;
63 virtual bool ProcessHits(G4Step*, G4TouchableHistory*)
override final;
Handle class for recording to StoreGate.
A template class which wraps multiple sensitive detectors.
std::vector< FCS_StepInfoSD * > SDList_t
virtual bool ProcessHits(G4Step *, G4TouchableHistory *) override final
This method should not be called. It will throw.
virtual void Initialize(G4HCofThisEvent *) override final
Beginning of G4 event; initialize the hit collection.
SDWrapper(const std::string &name, const std::string &hitCollectionName)
Construct the wrapper from the output collection name.
void EndOfAthenaEvent()
Gather the hits into the WriteHandle from all the SDs.
std::string m_hitCollName
void addSD(SDType *sd)
Add an SD to this wrapper.
SG::WriteHandle< ISF_FCS_Parametrization::FCS_StepInfoCollection > m_hitColl
Common sensitive detector class for LAr systems.
Class for collection of StepInfo class (G4 hits) copied and modified version to ISF.
detail::SDWrapper< FCS_StepInfoSD, ISF_FCS_Parametrization::FCS_StepInfoCollection > FCS_StepInfoSDWrapper
Template instantiation for LArG4SimpleSD.