ATLAS Offline Software
LArG4TBECBeamChSensitiveDetector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef LARG4H6SD_LARG4TBECBEAMCHSENSITIVEDETECTOR_H
6 #define LARG4H6SD_LARG4TBECBEAMCHSENSITIVEDETECTOR_H
7 
9 #include "G4VSensitiveDetector.hh"
10 #include <vector>
11 #include <memory>
12 
13 // Forward declarations.
14 class LArG4TBECBeamChHit;
15 
16 class LArG4TBECBeamChSensitiveDetector : public G4VSensitiveDetector
17 {
18 public:
23 
24  // The required functions for all sensitive detectors:
25  virtual void Initialize(G4HCofThisEvent* HCE) override;
26  virtual G4bool ProcessHits(G4Step* step, G4TouchableHistory* ROhist) override;
27  virtual void EndOfEvent(G4HCofThisEvent* HCE) override;
28 
29 private:
30  // Pointer to a calculator class.
31  std::unique_ptr<LArG4TBECBeamChCalculator> m_calculator{};
32 
33  // The name of the sensitive detector.
34  G4String m_detectorName;
35 
36  // The name associated the hit collection of this sensitive
37  // detector.
38  G4String m_HCname;
39 
40  std::vector< std::unique_ptr<LArG4TBECBeamChHit>> m_Hits;
41 };
42 
43 #endif // LARG4H6SD_LARG4TBECBEAMCHSENSITIVEDETECTOR_H
LArG4TBECBeamChSensitiveDetector::~LArG4TBECBeamChSensitiveDetector
~LArG4TBECBeamChSensitiveDetector()=default
LArG4TBECBeamChSensitiveDetector::LArG4TBECBeamChSensitiveDetector
LArG4TBECBeamChSensitiveDetector(const G4String &name)
LArG4TBECBeamChSensitiveDetector::m_calculator
std::unique_ptr< LArG4TBECBeamChCalculator > m_calculator
Definition: LArG4TBECBeamChSensitiveDetector.h:31
LArG4TBECBeamChSensitiveDetector::Initialize
virtual void Initialize(G4HCofThisEvent *HCE) override
LArG4TBECBeamChSensitiveDetector::m_detectorName
G4String m_detectorName
Definition: LArG4TBECBeamChSensitiveDetector.h:34
LArG4TBECBeamChSensitiveDetector::LArG4TBECBeamChSensitiveDetector
LArG4TBECBeamChSensitiveDetector(const LArG4TBECBeamChSensitiveDetector &)=delete
LArG4TBECBeamChCalculator.h
LArG4TBECBeamChSensitiveDetector::m_HCname
G4String m_HCname
Definition: LArG4TBECBeamChSensitiveDetector.h:38
LArG4TBECBeamChSensitiveDetector::EndOfEvent
virtual void EndOfEvent(G4HCofThisEvent *HCE) override
LArG4TBECBeamChSensitiveDetector::operator=
LArG4TBECBeamChSensitiveDetector & operator=(const LArG4TBECBeamChSensitiveDetector &)=delete
LArG4TBECBeamChSensitiveDetector::ProcessHits
virtual G4bool ProcessHits(G4Step *step, G4TouchableHistory *ROhist) override
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
LArG4TBECBeamChSensitiveDetector
Definition: LArG4TBECBeamChSensitiveDetector.h:17
LArCellBinning.step
step
Definition: LArCellBinning.py:158
LArG4TBECBeamChHit
Definition: LArG4TBECBeamChHit.h:11
LArG4TBECBeamChSensitiveDetector::m_Hits
std::vector< std::unique_ptr< LArG4TBECBeamChHit > > m_Hits
Definition: LArG4TBECBeamChSensitiveDetector.h:40