ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
QuirkStackingAction Class Reference

#include <QuirkStackingAction.h>

Inheritance diagram for QuirkStackingAction:
Collaboration diagram for QuirkStackingAction:

Public Member Functions

 QuirkStackingAction (G4UserStackingAction *defaultStackingAction=0)
 
virtual ~QuirkStackingAction ()
 
virtual G4ClassificationOfNewTrack ClassifyNewTrack (const G4Track *aTrack)
 
virtual void NewStage ()
 
virtual void PrepareNewEvent ()
 

Private Attributes

G4bool m_firstTrack
 
G4UserStackingAction * m_defaultStackingAction
 

Detailed Description

Definition at line 11 of file QuirkStackingAction.h.

Constructor & Destructor Documentation

◆ QuirkStackingAction()

QuirkStackingAction::QuirkStackingAction ( G4UserStackingAction *  defaultStackingAction = 0)

Definition at line 11 of file QuirkStackingAction.cxx.

11  :
12  m_firstTrack(true),
13  m_defaultStackingAction(defaultStackingAction)
14 {}

◆ ~QuirkStackingAction()

QuirkStackingAction::~QuirkStackingAction ( )
virtual

Definition at line 16 of file QuirkStackingAction.cxx.

16  {
18 }

Member Function Documentation

◆ ClassifyNewTrack()

G4ClassificationOfNewTrack QuirkStackingAction::ClassifyNewTrack ( const G4Track *  aTrack)
virtual

Definition at line 20 of file QuirkStackingAction.cxx.

20  {
21  G4ClassificationOfNewTrack defaultClassification = fUrgent;
23  m_defaultStackingAction->SetStackManager(stackManager);
24  defaultClassification = m_defaultStackingAction->ClassifyNewTrack(aTrack);
25  }
26  const Quirk* quirkDef = dynamic_cast<const Quirk*>(aTrack->GetParticleDefinition());
27  if (quirkDef == 0 || (defaultClassification != fUrgent && defaultClassification != fWaiting)) {
28  return defaultClassification;
29  } else if (m_firstTrack) {
30  m_firstTrack = false;
31  return fWaiting;
32  } else {
33  return fWaiting_1;
34  }
35 }

◆ NewStage()

void QuirkStackingAction::NewStage ( )
virtual

Definition at line 37 of file QuirkStackingAction.cxx.

37  {
39  m_defaultStackingAction->SetStackManager(stackManager);
40  m_defaultStackingAction->NewStage();
41  }
42 }

◆ PrepareNewEvent()

void QuirkStackingAction::PrepareNewEvent ( )
virtual

Definition at line 44 of file QuirkStackingAction.cxx.

44  {
46  m_defaultStackingAction->SetStackManager(stackManager);
47  m_defaultStackingAction->PrepareNewEvent();
48  }
49  m_firstTrack = true;
50 }

Member Data Documentation

◆ m_defaultStackingAction

G4UserStackingAction* QuirkStackingAction::m_defaultStackingAction
private

Definition at line 20 of file QuirkStackingAction.h.

◆ m_firstTrack

G4bool QuirkStackingAction::m_firstTrack
private

Definition at line 19 of file QuirkStackingAction.h.


The documentation for this class was generated from the following files:
QuirkStackingAction::m_defaultStackingAction
G4UserStackingAction * m_defaultStackingAction
Definition: QuirkStackingAction.h:20
Quirk
Definition: Quirk.h:12
QuirkStackingAction::m_firstTrack
G4bool m_firstTrack
Definition: QuirkStackingAction.h:19