CMS 3D CMS Logo

Bcm1fSD.h
Go to the documentation of this file.
1 #ifndef Forward_Bcm1fSD_h
2 #define Forward_Bcm1fSD_h
3 
4 // system include files
5 
6 // user include files
7 
13 
16 
17 #include "G4Step.hh"
18 #include "G4StepPoint.hh"
19 #include "G4Track.hh"
20 
21 #include <string>
22 
23 class TrackInformation;
24 class SimTrackManager;
25 class TrackingSlaveSD;
26 class UpdatablePSimHit;
29 
31  public Observer<const BeginOfEvent*>,
32  public Observer<const BeginOfTrack*>,
33  public Observer<const BeginOfJob*> {
34 
35 public:
36 
39  edm::ParameterSet const &, const SimTrackManager*);
40  ~Bcm1fSD() override;
41 
42  bool ProcessHits(G4Step *,G4TouchableHistory *) override;
43  uint32_t setDetUnitId(G4Step*) override;
44  void EndOfEvent(G4HCofThisEvent*) override;
45 
46  void fillHits (edm::PSimHitContainer&, std::string use) override;
47 
48 private:
49 
50  virtual void sendHit();
51  virtual void updateHit(G4Step *);
52  virtual bool newHit(G4Step *);
53  virtual bool closeHit(G4Step *);
54  virtual void createHit(G4Step *);
55  void update(const BeginOfEvent *) override;
56  void update(const BeginOfTrack *) override;
57  void update(const BeginOfJob *) override;
58  void clearHits() override;
60 
61 private:
62 
68  float energyCut;
70 
73  G4VPhysicalVolume * oldVolume;
74  uint32_t lastId;
75  unsigned int lastTrack;
76  int eventno;
78 
79 };
80 
81 #endif
UpdatablePSimHit * mySimHit
Definition: Bcm1fSD.h:67
Local3DPoint globalExitPoint
Definition: Bcm1fSD.h:72
bool ProcessHits(G4Step *, G4TouchableHistory *) override
Definition: Bcm1fSD.cc:70
G4TrackToParticleID * myG4TrackToParticleID
Definition: Bcm1fSD.h:65
uint32_t lastId
Definition: Bcm1fSD.h:74
G4VPhysicalVolume * oldVolume
Definition: Bcm1fSD.h:73
void fillHits(edm::PSimHitContainer &, std::string use) override
Definition: Bcm1fSD.cc:161
void clearHits() override
Definition: Bcm1fSD.cc:284
G4ProcessTypeEnumerator * theG4ProcessTypeEnumerator
Definition: Bcm1fSD.h:64
TrackInformation * getOrCreateTrackInformation(const G4Track *)
Definition: Bcm1fSD.cc:288
std::string myName
Definition: Bcm1fSD.h:66
~Bcm1fSD() override
Definition: Bcm1fSD.cc:64
virtual bool closeHit(G4Step *)
Definition: Bcm1fSD.cc:211
TrackingSlaveSD * slave
Definition: Bcm1fSD.h:63
Local3DPoint globalEntryPoint
Definition: Bcm1fSD.h:71
float energyHistoryCut
Definition: Bcm1fSD.h:69
type of data representation of DDCompactView
Definition: DDCompactView.h:90
int eventno
Definition: Bcm1fSD.h:76
virtual bool newHit(G4Step *)
Definition: Bcm1fSD.cc:197
uint32_t setDetUnitId(G4Step *) override
Definition: Bcm1fSD.cc:101
void EndOfEvent(G4HCofThisEvent *) override
Definition: Bcm1fSD.cc:153
float energyCut
Definition: Bcm1fSD.h:68
Bcm1fSD(std::string, const DDCompactView &, const SensitiveDetectorCatalog &, edm::ParameterSet const &, const SimTrackManager *)
Definition: Bcm1fSD.cc:33
virtual void sendHit()
Definition: Bcm1fSD.cc:165
virtual void updateHit(G4Step *)
Definition: Bcm1fSD.cc:180
void update(const BeginOfEvent *) override
This routine will be called when the appropriate signal arrives.
Definition: Bcm1fSD.cc:271
unsigned int lastTrack
Definition: Bcm1fSD.h:75
std::vector< PSimHit > PSimHitContainer
virtual void createHit(G4Step *)
Definition: Bcm1fSD.cc:223
std::string pname
Definition: Bcm1fSD.h:77