ATLAS Offline Software
MuonWallSD.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 //************************************************************
6 //
7 // Class MuonWallSD
8 // Sensitive detector for the Muon Wall
9 //
10 //************************************************************
11 
12 #ifndef MUONWALL_MUONWALLSD_H
13 #define MUONWALL_MUONWALLSD_H
14 
15 // Base class
16 #include "G4VSensitiveDetector.hh"
17 
18 // use of the hits
20 #include "StoreGate/WriteHandle.h"
21 
22 // STL header
23 #include <string>
24 
25 class G4Step;
26 class G4TouchableHistory;
27 
28 class G4Step;
29 class G4HCofThisEvent;
30 class TileTBID;
31 
32 class MuonWallSD : public G4VSensitiveDetector
33 {
34 public:
35  MuonWallSD(const std::string& name, const std::string& hitCollectionName, int verbose);
36  ~MuonWallSD() = default;
37 
38  // Called from MuonWallSDTool::SetupEvent
39  void StartOfAthenaEvent ();
40  void Initialize(G4HCofThisEvent*) override final;
41  G4bool ProcessHits(G4Step*, G4TouchableHistory*) override final;
42  void EndOfAthenaEvent();
43 
44 private:
45  const TileTBID* m_tileTBID{};
46 
47  static const int s_nCellMu = 14;
48  static const int s_nCellS = 4;
49  static const int s_nCell = s_nCellMu+s_nCellS;
50 
54  // The hits collections
56 
57 };
58 
59 #endif // MUONWALL_MUONWALLSD_H
MuonWallSD::ProcessHits
G4bool ProcessHits(G4Step *, G4TouchableHistory *) override final
Definition: MuonWallSD.cxx:83
MuonWallSD::m_nhits
int m_nhits[s_nCell]
Definition: MuonWallSD.h:51
MuonWallSD::~MuonWallSD
~MuonWallSD()=default
MuonWallSD::MuonWallSD
MuonWallSD(const std::string &name, const std::string &hitCollectionName, int verbose)
Definition: MuonWallSD.cxx:27
MuonWallSD::m_hit
TileSimHit * m_hit[s_nCell]
Definition: MuonWallSD.h:52
TileSimHit
Definition: TileSimHit.h:31
MuonWallSD::EndOfAthenaEvent
void EndOfAthenaEvent()
Definition: MuonWallSD.cxx:142
MuonWallSD::m_tileTBID
const TileTBID * m_tileTBID
Definition: MuonWallSD.h:45
MuonWallSD::m_id
Identifier m_id[s_nCell]
Definition: MuonWallSD.h:53
WriteHandle.h
Handle class for recording to StoreGate.
MuonWallSD::m_HitColl
SG::WriteHandle< TileHitVector > m_HitColl
Definition: MuonWallSD.h:55
MuonWallSD::s_nCell
static const int s_nCell
Definition: MuonWallSD.h:49
MuonWallSD
Definition: MuonWallSD.h:33
TileHitVector.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
MuonWallSD::s_nCellMu
static const int s_nCellMu
Definition: MuonWallSD.h:47
SG::WriteHandle
Definition: StoreGate/StoreGate/WriteHandle.h:76
MuonWallSD::s_nCellS
static const int s_nCellS
Definition: MuonWallSD.h:48
python.TriggerHandler.verbose
verbose
Definition: TriggerHandler.py:297
MuonWallSD::StartOfAthenaEvent
void StartOfAthenaEvent()
Definition: MuonWallSD.cxx:65
MuonWallSD::Initialize
void Initialize(G4HCofThisEvent *) override final
Definition: MuonWallSD.cxx:73
TileTBID
Helper class for TileCal offline identifiers of ancillary testbeam detectors and MBTS.
Definition: Calorimeter/CaloIdentifier/CaloIdentifier/TileTBID.h:65
Identifier
Definition: IdentifierFieldParser.cxx:14