33#include "G4HCofThisEvent.hh"
34#include "G4TouchableHistory.hh"
37#include "G4SystemOfUnits.hh"
44 fMuonCollection(0), fPositionResolution(0.)
47 collectionName.insert(HCname=
"muonCollection");
62 (SensitiveDetectorName,collectionName[0]);
64 { HCID = GetCollectionID(0); }
72 G4double edep = aStep->GetTotalEnergyDeposit();
74 if(edep==0.)
return true;
78 G4ThreeVector hitpos = aStep->GetPreStepPoint()->GetPosition();
79 for(
int i=0;i<nHit;i++)
81 aHit = (*fMuonCollection)[i];
82 G4ThreeVector pos = aHit->
GetPos();
83 G4double dist2 = sqr(pos.x()-hitpos.x())
84 +sqr(pos.y()-hitpos.y())+sqr(pos.z()-hitpos.z());
92 aHit->
SetPos( aStep->GetPreStepPoint()->GetPosition() );
Definition of the RE05MuonHit class.
G4THitsCollection< RE05MuonHit > RE05MuonHitsCollection
Definition of the RE05MuonSD class.
void SetPos(G4ThreeVector xyz)
void AddEdep(G4double de)
void SetEdep(G4double de)
RE05MuonHitsCollection * fMuonCollection
virtual G4bool ProcessHits(G4Step *aStep, G4TouchableHistory *ROhist)
RE05MuonSD(G4String name)
G4double fPositionResolution
virtual void Initialize(G4HCofThisEvent *HCE)
virtual void EndOfEvent(G4HCofThisEvent *HCE)