Geant4 VMC Version 6.6
Loading...
Searching...
No Matches
TG4SpecialControlsV2 Class Reference

The manager class for G3 process controls. More...

#include <TG4SpecialControlsV2.h>

Inheritance diagram for TG4SpecialControlsV2:

Public Member Functions

 TG4SpecialControlsV2 ()
 
virtual ~TG4SpecialControlsV2 ()
 
void StartTrack (const G4Track *track)
 
void ApplyControls ()
 
void RestoreProcessActivations ()
 
Bool_t IsApplicable () const
 
- Public Member Functions inherited from TG4Verbose
 TG4Verbose (const G4String &cmdName)
 
 TG4Verbose (const G4String &cmdName, G4int verboseLevel)
 
virtual ~TG4Verbose ()
 
virtual void VerboseLevel (G4int level)
 
virtual G4int VerboseLevel () const
 

Private Types

enum  Switch { kSwitch , kReswitch , kUnswitch }
 The action to be performed in the current step. More...
 

Private Member Functions

 TG4SpecialControlsV2 (const TG4SpecialControlsV2 &right)
 Not implemented.
 
TG4SpecialControlsV2operator= (const TG4SpecialControlsV2 &right)
 Not implemented.
 
void SetSwitch ()
 
void Reset ()
 

Private Attributes

G4bool fIsApplicable
 Applicability for the current track.
 
const G4Track * fkTrack
 The current track.
 
Switch fSwitch
 The action to be performed in the current step.
 
G4ProcessVector fSwitchedProcesses
 Vector of the processes the activation of which is changed by this process.
 
TG4boolVector fSwitchedControls
 Vector for storing the current values of the processes activation.
 
TG4boolVector fProcessActivations
 vector of the origin process activations
 

Detailed Description

The manager class for G3 process controls.

This class takes care of activation/inactivation of physics processes in current tracking medium according to user setting via TVirtualMC::Gstpar() method.

Note that the global activation/inactivation of physics processes via TVirtualMC::SetProcess() method is not managed by this class.

Author
I. Hrivnacova; IPN Orsay

Definition at line 43 of file TG4SpecialControlsV2.h.

Member Enumeration Documentation

◆ Switch

The action to be performed in the current step.

Enumerator
kSwitch 

switch the process activation

kReswitch 

switch the process activation back

kUnswitch 

do not switch the process activation

Definition at line 46 of file TG4SpecialControlsV2.h.

Constructor & Destructor Documentation

◆ TG4SpecialControlsV2() [1/2]

TG4SpecialControlsV2::TG4SpecialControlsV2 ( )

Standard constructor

Definition at line 26 of file TG4SpecialControlsV2.cxx.

◆ ~TG4SpecialControlsV2()

TG4SpecialControlsV2::~TG4SpecialControlsV2 ( )
virtual

Destructor

Definition at line 39 of file TG4SpecialControlsV2.cxx.

◆ TG4SpecialControlsV2() [2/2]

TG4SpecialControlsV2::TG4SpecialControlsV2 ( const TG4SpecialControlsV2 & right)
private

Not implemented.

Member Function Documentation

◆ StartTrack()

void TG4SpecialControlsV2::StartTrack ( const G4Track * track)

Store the processes activations in fProcessActivations vector

Definition at line 109 of file TG4SpecialControlsV2.cxx.

Referenced by TG4TrackingAction::PreUserTrackingAction().

◆ ApplyControls()

void TG4SpecialControlsV2::ApplyControls ( )

Change processes activation of the current track according to the current user limits.

Definition at line 142 of file TG4SpecialControlsV2.cxx.

Referenced by StartTrack(), and TG4SteppingAction::UserSteppingAction().

◆ RestoreProcessActivations()

void TG4SpecialControlsV2::RestoreProcessActivations ( )

Restore the processes activations from fProcessActivations vector and reset values

Definition at line 220 of file TG4SpecialControlsV2.cxx.

Referenced by TG4TrackingAction::PostUserTrackingAction().

◆ IsApplicable()

Bool_t TG4SpecialControlsV2::IsApplicable ( ) const
inline

Return true if special controls are applicable for the current track

Definition at line 96 of file TG4SpecialControlsV2.h.

Referenced by TG4TrackingAction::PostUserTrackingAction(), and TG4SteppingAction::UserSteppingAction().

◆ operator=()

TG4SpecialControlsV2 & TG4SpecialControlsV2::operator= ( const TG4SpecialControlsV2 & right)
private

Not implemented.

◆ SetSwitch()

void TG4SpecialControlsV2::SetSwitch ( )
private

Define the action which should be performed at this step

Definition at line 49 of file TG4SpecialControlsV2.cxx.

Referenced by ApplyControls().

◆ Reset()

void TG4SpecialControlsV2::Reset ( )
private

Reset the buffers to the initial state.

Definition at line 92 of file TG4SpecialControlsV2.cxx.

Referenced by RestoreProcessActivations().

Member Data Documentation

◆ fIsApplicable

G4bool TG4SpecialControlsV2::fIsApplicable
private

Applicability for the current track.

Definition at line 78 of file TG4SpecialControlsV2.h.

Referenced by IsApplicable(), and StartTrack().

◆ fkTrack

const G4Track* TG4SpecialControlsV2::fkTrack
private

The current track.

Definition at line 81 of file TG4SpecialControlsV2.h.

Referenced by ApplyControls(), RestoreProcessActivations(), SetSwitch(), and StartTrack().

◆ fSwitch

Switch TG4SpecialControlsV2::fSwitch
private

The action to be performed in the current step.

Definition at line 84 of file TG4SpecialControlsV2.h.

Referenced by ApplyControls(), Reset(), and SetSwitch().

◆ fSwitchedProcesses

G4ProcessVector TG4SpecialControlsV2::fSwitchedProcesses
private

Vector of the processes the activation of which is changed by this process.

Definition at line 87 of file TG4SpecialControlsV2.h.

Referenced by ApplyControls(), and Reset().

◆ fSwitchedControls

TG4boolVector TG4SpecialControlsV2::fSwitchedControls
private

Vector for storing the current values of the processes activation.

Definition at line 90 of file TG4SpecialControlsV2.h.

Referenced by ApplyControls(), and Reset().

◆ fProcessActivations

TG4boolVector TG4SpecialControlsV2::fProcessActivations
private

vector of the origin process activations

Definition at line 93 of file TG4SpecialControlsV2.h.

Referenced by Reset(), RestoreProcessActivations(), and StartTrack().


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