Geant4  10.02.p03
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 ()
 
void SetSteppingManagerPointer (G4SteppingManager *pValue)
 

Private Attributes

G4bool mercuryFlag
 

Additional Inherited Members

- Protected Attributes inherited from G4UserSteppingAction
G4SteppingManagerfpSteppingManager
 

Detailed Description

Definition at line 47 of file XrayFluoSteppingAction.hh.

Constructor & Destructor Documentation

◆ XrayFluoSteppingAction()

XrayFluoSteppingAction::XrayFluoSteppingAction ( )

Definition at line 45 of file XrayFluoSteppingAction.cc.

46  :mercuryFlag(false)
47 {;}

◆ ~XrayFluoSteppingAction()

XrayFluoSteppingAction::~XrayFluoSteppingAction ( )

Definition at line 51 of file XrayFluoSteppingAction.cc.

52 {;}

Member Function Documentation

◆ SetMercuryFlag()

void XrayFluoSteppingAction::SetMercuryFlag ( G4bool  val)
inline

Definition at line 55 of file XrayFluoSteppingAction.hh.

Here is the caller graph for this function:

◆ UserSteppingAction()

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()
static XrayFluoAnalysisManager * getInstance()
G4ThreeVector GetObjectTranslation() const
Here is the call graph for this function:

Member Data Documentation

◆ mercuryFlag

G4bool XrayFluoSteppingAction::mercuryFlag
private

Definition at line 55 of file XrayFluoSteppingAction.hh.


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