19#ifndef BDSMULTISENSITIVEDETECTORORDERED_H
20#define BDSMULTISENSITIVEDETECTORORDERED_H
22#include "BDSSensitiveDetector.hh"
26#include "G4VSensitiveDetector.hh"
50 virtual void Initialize(G4HCofThisEvent* ) {;}
51 virtual void EndOfEvent(G4HCofThisEvent* ) {;}
53 virtual void DrawAll();
54 virtual void PrintAll();
55 virtual G4VSensitiveDetector* Clone()
const;
57 using sds_t = std::vector<BDSSensitiveDetector*>;
58 using sdsConstIter = sds_t::const_iterator;
60 sds_t::size_type GetSize()
const {
return sensitiveDetectors.size();}
61 sdsConstIter GetBegin()
const {
return sensitiveDetectors.begin();}
62 sdsConstIter GetEnd()
const {
return sensitiveDetectors.end();}
63 void ClearSDs() {sensitiveDetectors.clear();}
67 virtual G4bool ProcessHits(G4Step* step,
68 G4TouchableHistory* rOHist);
74 sds_t sensitiveDetectors;
Modified G4MultiSensitiveDetector that retains order and passes hits in sequence.
virtual G4int GetCollectionID(G4int) final
The following method does not have a meaning for this concrete class.
Virtual class to define interface for ordered multi-sensitive detector.