CMS 3D CMS Logo

FiberSD.h
Go to the documentation of this file.
1 #ifndef SimG4CMS_ShowerLibraryProducer_FiberSD_h
2 #define SimG4CMS_ShowerLibraryProducer_FiberSD_h
3 
11 
14 
16 
17 #include "G4Track.hh"
18 
19 #include <iostream>
20 #include <fstream>
21 #include <vector>
22 
23 class G4Step;
24 class G4HCofThisEvent;
25 
27  public Observer<const BeginOfJob *>,
28  public Observer<const BeginOfRun *>,
29  public Observer<const BeginOfEvent *>,
30  public Observer<const EndOfEvent *> {
31 public:
32  explicit FiberSD(const std::string &,
33  const edm::EventSetup &,
35  edm::ParameterSet const &,
36  const SimTrackManager *);
37  ~FiberSD() override;
38 
39  void Initialize(G4HCofThisEvent *HCE) override;
40  G4bool ProcessHits(G4Step *aStep, G4TouchableHistory *ROhist) override;
41  void EndOfEvent(G4HCofThisEvent *HCE) override;
42  void clear() override;
43  void DrawAll() override;
44  void PrintAll() override;
45 
46  void clearHits() override;
47  uint32_t setDetUnitId(const G4Step *) override;
48  void fillHits(edm::PCaloHitContainer &, const std::string &) override;
49 
50 protected:
51  void update(const BeginOfJob *) override;
52  void update(const BeginOfRun *) override;
53  void update(const BeginOfEvent *) override;
54  void update(const ::EndOfEvent *) override;
55 
56 private:
59 
60  G4int theHCID;
62 };
63 
64 #endif
SimTrackManager
Definition: SimTrackManager.h:35
FiberSD::FiberSD
FiberSD(const std::string &, const edm::EventSetup &, const SensitiveDetectorCatalog &, edm::ParameterSet const &, const SimTrackManager *)
Definition: FiberSD.cc:22
Observer
Definition: Observer.h:23
MessageLogger.h
SensitiveCaloDetector.h
FiberSD
Definition: FiberSD.h:26
BeginOfJob.h
FiberSD::update
void update(const BeginOfJob *) override
This routine will be called when the appropriate signal arrives.
Definition: FiberSD.cc:120
FiberSD::theHC
FiberG4HitsCollection * theHC
Definition: FiberSD.h:61
FiberSD::~FiberSD
~FiberSD() override
Definition: FiberSD.cc:51
FiberSD::EndOfEvent
void EndOfEvent(G4HCofThisEvent *HCE) override
Definition: FiberSD.cc:108
FiberSD::fillHits
void fillHits(edm::PCaloHitContainer &, const std::string &) override
Definition: FiberSD.cc:138
EndOfEvent.h
FiberSD::clear
void clear() override
Definition: FiberSD.cc:114
Observer.h
FiberSD::m_trackManager
const SimTrackManager * m_trackManager
Definition: FiberSD.h:57
SensitiveCaloDetector
Definition: SensitiveCaloDetector.h:10
BeginOfRun.h
FiberSD::DrawAll
void DrawAll() override
Definition: FiberSD.cc:116
FiberSD::theHCID
G4int theHCID
Definition: FiberSD.h:60
FiberG4Hit.h
SensitiveDetectorCatalog
Definition: SensitiveDetectorCatalog.h:10
BeginOfJob
Definition: BeginOfJob.h:8
HFShower
Definition: HFShower.h:22
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HFShower.h
edm::ParameterSet
Definition: ParameterSet.h:47
FiberSD::ProcessHits
G4bool ProcessHits(G4Step *aStep, G4TouchableHistory *ROhist) override
Definition: FiberSD.cc:64
FiberSD::clearHits
void clearHits() override
Definition: FiberSD.cc:128
BeginOfEvent.h
BeginOfEvent
Definition: BeginOfEvent.h:6
BeginOfRun
Definition: BeginOfRun.h:6
edm::EventSetup
Definition: EventSetup.h:57
FiberSD::theShower
HFShower * theShower
Definition: FiberSD.h:58
SimTrackManager.h
edm::PCaloHitContainer
std::vector< PCaloHit > PCaloHitContainer
Definition: PCaloHitContainer.h:8
FiberSD::PrintAll
void PrintAll() override
Definition: FiberSD.cc:118
FiberG4HitsCollection
G4THitsCollection< FiberG4Hit > FiberG4HitsCollection
Definition: FiberG4Hit.h:54
FiberSD::setDetUnitId
uint32_t setDetUnitId(const G4Step *) override
Definition: FiberSD.cc:130
FiberSD::Initialize
void Initialize(G4HCofThisEvent *HCE) override
Definition: FiberSD.cc:56