ATLAS Offline Software
Loading...
Searching...
No Matches
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.
15
16class LArG4TBECBeamChSensitiveDetector : public G4VSensitiveDetector
17{
18public:
19 LArG4TBECBeamChSensitiveDetector(const G4String& name);
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
29private:
30 // Pointer to a calculator class.
31 std::unique_ptr<LArG4TBECBeamChCalculator> m_calculator{};
32
33 // The name of the sensitive detector.
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(const G4String &name)
virtual void Initialize(G4HCofThisEvent *HCE) override
virtual void EndOfEvent(G4HCofThisEvent *HCE) override
virtual G4bool ProcessHits(G4Step *step, G4TouchableHistory *ROhist) override
LArG4TBECBeamChSensitiveDetector & operator=(const LArG4TBECBeamChSensitiveDetector &)=delete
std::vector< std::unique_ptr< LArG4TBECBeamChHit > > m_Hits
LArG4TBECBeamChSensitiveDetector(const LArG4TBECBeamChSensitiveDetector &)=delete
std::unique_ptr< LArG4TBECBeamChCalculator > m_calculator