CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HFWedgeSD.h
Go to the documentation of this file.
1 #ifndef SimG4CMS_ShowerLibraryProducer_HFWedgeSD_h
2 #define SimG4CMS_ShowerLibraryProducer_HFWedgeSD_h
3 
6 
9 
10 
11 #include "G4VPhysicalVolume.hh"
12 #include "G4Track.hh"
13 
14 #include <iostream>
15 #include <fstream>
16 #include <vector>
17 #include <map>
18 
19 class G4Step;
20 class G4HCofThisEvent;
21 
23 
24 public:
25 
26  HFWedgeSD(std::string name, const DDCompactView & cpv,
28  edm::ParameterSet const & p, const SimTrackManager*);
29  virtual ~HFWedgeSD();
30 
31  virtual void Initialize(G4HCofThisEvent * HCE);
32  virtual bool ProcessHits(G4Step * step,G4TouchableHistory * tHistory);
33  virtual void EndOfEvent(G4HCofThisEvent * eventHC);
34  virtual void clear();
35  virtual void DrawAll();
36  virtual void PrintAll();
37 
38 protected:
39 
40  G4bool hitExists();
42  void updateHit(HFShowerG4Hit*);
43 
44  virtual void clearHits();
45  virtual uint32_t setDetUnitId(G4Step*);
46  virtual void fillHits(edm::PCaloHitContainer&, std::string);
47 
48 
49 private:
50 
51  std::string theName;
53 
54  int hcID;
56  std::map<int,HFShowerG4Hit*> hitMap;
57 
59  double edep, time;
60  G4ThreeVector globalPos, localPos, momDir;
62 };
63 
64 #endif
virtual void PrintAll()
Definition: HFWedgeSD.cc:89
virtual void clearHits()
Definition: HFWedgeSD.cc:140
std::vector< PCaloHit > PCaloHitContainer
int previousID
Definition: HFWedgeSD.h:58
list step
Definition: launcher.py:15
void updateHit(HFShowerG4Hit *)
Definition: HFWedgeSD.cc:130
int hcID
Definition: HFWedgeSD.h:54
G4ThreeVector momDir
Definition: HFWedgeSD.h:60
virtual uint32_t setDetUnitId(G4Step *)
Definition: HFWedgeSD.cc:145
type of data representation of DDCompactView
Definition: DDCompactView.h:77
virtual void clear()
Definition: HFWedgeSD.cc:85
virtual void EndOfEvent(G4HCofThisEvent *eventHC)
Definition: HFWedgeSD.cc:79
double edep
Definition: HFWedgeSD.h:59
int trackID
Definition: HFWedgeSD.h:58
const SimTrackManager * m_trackManager
Definition: HFWedgeSD.h:52
G4bool hitExists()
Definition: HFWedgeSD.cc:91
G4ThreeVector localPos
Definition: HFWedgeSD.h:60
HFShowerG4HitsCollection * theHC
Definition: HFWedgeSD.h:55
HFShowerG4Hit * currentHit
Definition: HFWedgeSD.h:61
double time
Definition: HFWedgeSD.h:59
std::string theName
Definition: HFWedgeSD.h:51
HFShowerG4Hit * createNewHit()
Definition: HFWedgeSD.cc:108
int currentID
Definition: HFWedgeSD.h:58
virtual bool ProcessHits(G4Step *step, G4TouchableHistory *tHistory)
Definition: HFWedgeSD.cc:59
virtual void DrawAll()
Definition: HFWedgeSD.cc:87
std::map< int, HFShowerG4Hit * > hitMap
Definition: HFWedgeSD.h:56
virtual ~HFWedgeSD()
Definition: HFWedgeSD.cc:44
virtual void fillHits(edm::PCaloHitContainer &, std::string)
Definition: HFWedgeSD.cc:150
virtual void Initialize(G4HCofThisEvent *HCE)
Definition: HFWedgeSD.cc:48
G4THitsCollection< HFShowerG4Hit > HFShowerG4HitsCollection
Definition: HFShowerG4Hit.h:60
G4ThreeVector globalPos
Definition: HFWedgeSD.h:60
HFWedgeSD(std::string name, const DDCompactView &cpv, SensitiveDetectorCatalog &clg, edm::ParameterSet const &p, const SimTrackManager *)
Definition: HFWedgeSD.cc:16