148 G4Track* theTrack = theStep->GetTrack();
152 G4StepPoint* thePrePoint = theStep->GetPreStepPoint();
153 G4StepPoint* thePostPoint = theStep->GetPostStepPoint();
162 thePrePVname = thePrePV->
GetName();
163 thePostPVname = thePostPV->
GetName();
167 if (theTrack->GetParentID()==0) {
169 if ( theTrack->GetCurrentStepNumber() == 1 ) {
186 G4int MAXofPostStepLoops =
191 for (
G4int i=0; i<MAXofPostStepLoops; i++) {
192 G4VProcess* fCurrentProcess = (*fPostStepDoItVector)[i];
205 G4double px = theTrack->GetVertexMomentumDirection().x();
206 G4double py = theTrack->GetVertexMomentumDirection().y();
207 G4double x = theTrack->GetPosition().x();
208 G4double y = theTrack->GetPosition().y();
213 fInitGamma / std::sqrt(px*px + py*py) / std::sqrt(x*x + y*y);
236 isFiber = thePostPVname ==
"WLSFiber" 237 || thePostPVname ==
"Clad1" 238 || thePostPVname ==
"Clad2";
278 theTrack->SetTrackStatus(fStopAndKill);
306 theTrack->SetTrackStatus(fStopAndKill);
322 if ( thePostPVname ==
"Mirror" )
331 if ( thePostPVname ==
"PhotonDet" ) {
346 theTrack->SetTrackStatus(fStopAndKill);
358 if (theTrack->GetTrackStatus() != fAlive &&
G4bool ProcessHits_constStep(const G4Step *, G4TouchableHistory *)
G4OpBoundaryProcessStatus
G4ProcessManager * GetProcessManager() const
G4ProcessVector * GetPostStepProcessVector(G4ProcessVectorTypeIndex typ=typeGPIL) const
G4GLOB_DLL std::ostream G4cout
G4OpBoundaryProcess * fOpProcess
G4VSensitiveDetector * FindSensitiveDetector(G4String dName, G4bool warning=true)
static G4OpticalPhoton * OpticalPhoton()
const G4String & GetName() const
static G4SDManager * GetSDMpointer()
G4OpBoundaryProcessStatus GetStatus() const
G4int fCounterClad2Bounce
G4double GetWLSFiberEnd()
G4int fCounterClad1Bounce
WLSDetectorConstruction * fDetector