Geant4  10.03.p03
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
OpNoviceSteppingAction Class Reference

#include <OpNoviceSteppingAction.hh>

Inheritance diagram for OpNoviceSteppingAction:
Collaboration diagram for OpNoviceSteppingAction:

Public Member Functions

 OpNoviceSteppingAction ()
 
virtual ~OpNoviceSteppingAction ()
 
virtual void UserSteppingAction (const G4Step *)
 
- Public Member Functions inherited from G4UserSteppingAction
 G4UserSteppingAction ()
 
virtual ~G4UserSteppingAction ()
 
virtual void SetSteppingManagerPointer (G4SteppingManager *pValue)
 

Additional Inherited Members

- Protected Attributes inherited from G4UserSteppingAction
G4SteppingManagerfpSteppingManager
 

Detailed Description

Stepping action class

Definition at line 40 of file OpNoviceSteppingAction.hh.

Constructor & Destructor Documentation

OpNoviceSteppingAction::OpNoviceSteppingAction ( )

Definition at line 42 of file OpNoviceSteppingAction.cc.

44 {
45  fScintillationCounter = 0;
46  fCerenkovCounter = 0;
47  fEventNumber = -1;
48 }
OpNoviceSteppingAction::~OpNoviceSteppingAction ( )
virtual

Definition at line 52 of file OpNoviceSteppingAction.cc.

53 { ; }

Member Function Documentation

void OpNoviceSteppingAction::UserSteppingAction ( const G4Step step)
virtual

Reimplemented from G4UserSteppingAction.

Definition at line 57 of file OpNoviceSteppingAction.cc.

58 {
59  G4int eventNumber = G4RunManager::GetRunManager()->
60  GetCurrentEvent()->GetEventID();
61 
62  if (eventNumber != fEventNumber) {
63  fEventNumber = eventNumber;
64  fScintillationCounter = 0;
65  fCerenkovCounter = 0;
66  }
67 
68  G4Track* track = step->GetTrack();
69 
70  G4String ParticleName = track->GetDynamicParticle()->
71  GetParticleDefinition()->GetParticleName();
72 
73  if (ParticleName == "opticalphoton") return;
74 
75  const std::vector<const G4Track*>* secondaries =
77 
78  if (secondaries->size()>0) {
79  for(unsigned int i=0; i<secondaries->size(); ++i) {
80  if (secondaries->at(i)->GetParentID()>0) {
81  if(secondaries->at(i)->GetDynamicParticle()->GetParticleDefinition()
83  if (secondaries->at(i)->GetCreatorProcess()->GetProcessName()
84  == "Scintillation")fScintillationCounter++;
85  if (secondaries->at(i)->GetCreatorProcess()->GetProcessName()
86  == "Cerenkov")fCerenkovCounter++;
87  }
88  }
89  }
90  }
91 }
const G4DynamicParticle * GetDynamicParticle() const
int G4int
Definition: G4Types.hh:78
const std::vector< const G4Track * > * GetSecondaryInCurrentStep() const
Definition: G4Step.cc:193
static G4RunManager * GetRunManager()
Definition: G4RunManager.cc:79
static G4OpticalPhoton * OpticalPhotonDefinition()
G4Track * GetTrack() const

Here is the call graph for this function:


The documentation for this class was generated from the following files: