CMS 3D CMS Logo

PltSD.h
Go to the documentation of this file.
1 #ifndef Forward_PltSD_h
2 #define Forward_PltSD_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 
30 class PltSD : public SensitiveTkDetector,
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  virtual ~PltSD();
41 
42  virtual bool ProcessHits(G4Step *,G4TouchableHistory *);
43  virtual uint32_t setDetUnitId(G4Step*);
44  virtual void EndOfEvent(G4HCofThisEvent*);
45 
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 *);
56  void update(const BeginOfTrack *);
57  void update(const BeginOfJob *);
58  virtual void clearHits();
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: PltSD.h:67
virtual bool newHit(G4Step *)
Definition: PltSD.cc:241
std::string myName
Definition: PltSD.h:66
G4TrackToParticleID * myG4TrackToParticleID
Definition: PltSD.h:65
PltSD(std::string, const DDCompactView &, const SensitiveDetectorCatalog &, edm::ParameterSet const &, const SimTrackManager *)
Definition: PltSD.cc:35
virtual void updateHit(G4Step *)
Definition: PltSD.cc:224
int eventno
Definition: PltSD.h:76
TrackingSlaveSD * slave
Definition: PltSD.h:63
type of data representation of DDCompactView
Definition: DDCompactView.h:90
Definition: PltSD.h:30
float energyCut
Definition: PltSD.h:68
virtual void sendHit()
Definition: PltSD.cc:209
float energyHistoryCut
Definition: PltSD.h:69
Local3DPoint globalExitPoint
Definition: PltSD.h:72
virtual uint32_t setDetUnitId(G4Step *)
Definition: PltSD.cc:103
void update(const BeginOfEvent *)
This routine will be called when the appropriate signal arrives.
Definition: PltSD.cc:315
virtual void EndOfEvent(G4HCofThisEvent *)
Definition: PltSD.cc:197
virtual void createHit(G4Step *)
Definition: PltSD.cc:267
virtual void clearHits()
Definition: PltSD.cc:328
G4VPhysicalVolume * oldVolume
Definition: PltSD.h:73
virtual bool closeHit(G4Step *)
Definition: PltSD.cc:255
unsigned int lastTrack
Definition: PltSD.h:75
virtual ~PltSD()
Definition: PltSD.cc:66
std::vector< PSimHit > PSimHitContainer
virtual bool ProcessHits(G4Step *, G4TouchableHistory *)
Definition: PltSD.cc:72
void fillHits(edm::PSimHitContainer &, std::string use)
Definition: PltSD.cc:205
std::string pname
Definition: PltSD.h:77
TrackInformation * getOrCreateTrackInformation(const G4Track *)
Definition: PltSD.cc:332
uint32_t lastId
Definition: PltSD.h:74
G4ProcessTypeEnumerator * theG4ProcessTypeEnumerator
Definition: PltSD.h:64
Local3DPoint globalEntryPoint
Definition: PltSD.h:71