CMS 3D CMS Logo

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 #include "G4VPhysicalVolume.hh"
11 #include "G4Track.hh"
12 
13 #include <map>
14 
15 class G4Step;
16 class G4HCofThisEvent;
17 
19 public:
20  explicit HFWedgeSD(const std::string&,
21  const edm::EventSetup& cpv,
22  const SensitiveDetectorCatalog& clg,
23  edm::ParameterSet const& p,
24  const SimTrackManager*);
25  ~HFWedgeSD() override;
26 
27  void Initialize(G4HCofThisEvent* HCE) override;
28  bool ProcessHits(G4Step* step, G4TouchableHistory* tHistory) override;
29  void EndOfEvent(G4HCofThisEvent* eventHC) override;
30  void clear() override;
31  void DrawAll() override;
32  void PrintAll() override;
33 
34  void clearHits() override;
35  uint32_t setDetUnitId(const G4Step*) override;
36  void fillHits(edm::PCaloHitContainer&, const std::string&) override;
37 
38 protected:
39  G4bool hitExists();
41  void updateHit(HFShowerG4Hit*);
42 
43 private:
45 
46  int hcID;
48  std::map<int, HFShowerG4Hit*> hitMap;
49 
51  double edep, time;
52  G4ThreeVector globalPos, localPos, momDir;
54 };
55 
56 #endif
HFWedgeSD::hitMap
std::map< int, HFShowerG4Hit * > hitMap
Definition: HFWedgeSD.h:48
SimTrackManager
Definition: SimTrackManager.h:35
HFWedgeSD::edep
double edep
Definition: HFWedgeSD.h:51
MessageLogger.h
HFWedgeSD::DrawAll
void DrawAll() override
Definition: HFWedgeSD.cc:68
HFWedgeSD::createNewHit
HFShowerG4Hit * createNewHit()
Definition: HFWedgeSD.cc:88
SensitiveCaloDetector.h
HFShowerG4HitsCollection
G4THitsCollection< HFShowerG4Hit > HFShowerG4HitsCollection
Definition: HFShowerG4Hit.h:55
step
step
Definition: StallMonitor.cc:94
HFWedgeSD::hcID
int hcID
Definition: HFWedgeSD.h:46
AlCaHLTBitMon_ParallelJobs.p
p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
HFShowerG4Hit.h
HFWedgeSD::hitExists
G4bool hitExists()
Definition: HFWedgeSD.cc:72
HFShowerG4Hit
Definition: HFShowerG4Hit.h:15
SensitiveCaloDetector
Definition: SensitiveCaloDetector.h:10
HFWedgeSD::PrintAll
void PrintAll() override
Definition: HFWedgeSD.cc:70
HFWedgeSD::setDetUnitId
uint32_t setDetUnitId(const G4Step *) override
Definition: HFWedgeSD.cc:120
HFWedgeSD
Definition: HFWedgeSD.h:18
SensitiveDetectorCatalog
Definition: SensitiveDetectorCatalog.h:10
HFWedgeSD::momDir
G4ThreeVector momDir
Definition: HFWedgeSD.h:52
HFWedgeSD::time
double time
Definition: HFWedgeSD.h:51
HFWedgeSD::fillHits
void fillHits(edm::PCaloHitContainer &, const std::string &) override
Definition: HFWedgeSD.cc:125
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
HFWedgeSD::~HFWedgeSD
~HFWedgeSD() override
Definition: HFWedgeSD.cc:30
HFWedgeSD::currentHit
HFShowerG4Hit * currentHit
Definition: HFWedgeSD.h:53
HFWedgeSD::updateHit
void updateHit(HFShowerG4Hit *)
Definition: HFWedgeSD.cc:107
edm::ParameterSet
Definition: ParameterSet.h:47
HFWedgeSD::clear
void clear() override
Definition: HFWedgeSD.cc:66
edm::EventSetup
Definition: EventSetup.h:57
HFWedgeSD::clearHits
void clearHits() override
Definition: HFWedgeSD.cc:115
HFWedgeSD::globalPos
G4ThreeVector globalPos
Definition: HFWedgeSD.h:52
HFWedgeSD::ProcessHits
bool ProcessHits(G4Step *step, G4TouchableHistory *tHistory) override
Definition: HFWedgeSD.cc:42
HFWedgeSD::localPos
G4ThreeVector localPos
Definition: HFWedgeSD.h:52
SimTrackManager.h
HFWedgeSD::Initialize
void Initialize(G4HCofThisEvent *HCE) override
Definition: HFWedgeSD.cc:32
HFWedgeSD::currentID
int currentID
Definition: HFWedgeSD.h:50
edm::PCaloHitContainer
std::vector< PCaloHit > PCaloHitContainer
Definition: PCaloHitContainer.h:8
HFWedgeSD::EndOfEvent
void EndOfEvent(G4HCofThisEvent *eventHC) override
Definition: HFWedgeSD.cc:61
HFWedgeSD::trackID
int trackID
Definition: HFWedgeSD.h:50
HFWedgeSD::HFWedgeSD
HFWedgeSD(const std::string &, const edm::EventSetup &cpv, const SensitiveDetectorCatalog &clg, edm::ParameterSet const &p, const SimTrackManager *)
Definition: HFWedgeSD.cc:19
HFWedgeSD::previousID
int previousID
Definition: HFWedgeSD.h:50
HFWedgeSD::theHC
HFShowerG4HitsCollection * theHC
Definition: HFWedgeSD.h:47
HFWedgeSD::m_trackManager
const SimTrackManager * m_trackManager
Definition: HFWedgeSD.h:44