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

#include <XrayFluoSteppingAction.hh>

Inheritance diagram for XrayFluoSteppingAction:
Collaboration diagram for XrayFluoSteppingAction:

Public Member Functions

 XrayFluoSteppingAction ()
 
 ~XrayFluoSteppingAction ()
 
void UserSteppingAction (const G4Step *)
 
void SetMercuryFlag (G4bool val)
 
- 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

Definition at line 47 of file XrayFluoSteppingAction.hh.

Constructor & Destructor Documentation

XrayFluoSteppingAction::XrayFluoSteppingAction ( )

Definition at line 45 of file XrayFluoSteppingAction.cc.

46  :mercuryFlag(false)
47 {;}
XrayFluoSteppingAction::~XrayFluoSteppingAction ( )

Definition at line 51 of file XrayFluoSteppingAction.cc.

52 {;}

Member Function Documentation

void XrayFluoSteppingAction::SetMercuryFlag ( G4bool  val)
inline

Definition at line 55 of file XrayFluoSteppingAction.hh.

55 {mercuryFlag=val;};

Here is the caller graph for this function:

void XrayFluoSteppingAction::UserSteppingAction ( const G4Step aStep)
virtual

Reimplemented from G4UserSteppingAction.

Definition at line 56 of file XrayFluoSteppingAction.cc.

57 {
59  analysis->analyseStepping(aStep);
60 
61  if (mercuryFlag){
62  const
65 
66  if(aStep->GetTrack()->GetNextVolume())
67  {
68  if(aStep->GetTrack()->GetNextVolume()->GetName() == "DetectorOptic") {
69  G4ThreeVector particlePosition = aStep->GetPostStepPoint()->GetPosition();
70  G4ThreeVector detectorPosition = detector->GetOptic()->GetObjectTranslation();
71  G4ThreeVector newDirection = detectorPosition - particlePosition;
72  aStep->GetPostStepPoint()->SetMomentumDirection(newDirection);
73  }
74  }
75  }
76 }
void analyseStepping(const G4Step *aStep)
static XrayFluoMercuryDetectorConstruction * GetInstance()
G4VPhysicalVolume * GetNextVolume() const
void SetMomentumDirection(const G4ThreeVector &aValue)
const G4String & GetName() const
const G4ThreeVector & GetPosition() const
static XrayFluoAnalysisManager * getInstance()
G4StepPoint * GetPostStepPoint() const
G4ThreeVector GetObjectTranslation() const
G4Track * GetTrack() const

Here is the call graph for this function:


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