Geant4  10.00.p03
G4VBiasingOperator Class Referenceabstract

#include <G4VBiasingOperator.hh>

+ Inheritance diagram for G4VBiasingOperator:
+ Collaboration diagram for G4VBiasingOperator:

Public Member Functions

 G4VBiasingOperator (G4String name)
 
virtual ~G4VBiasingOperator ()
 
virtual void StartRun ()
 
virtual void StartTracking (const G4Track *)
 
virtual void EndTracking ()
 
const G4String GetName () const
 
void AttachTo (const G4LogicalVolume *)
 
G4BiasingAppliedCase GetPreviousBiasingAppliedCase () const
 
G4VBiasingOperationGetProposedOccurenceBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)
 
G4VBiasingOperationGetProposedFinalStateBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)
 
G4VBiasingOperationGetProposedNonPhysicsBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)
 
void ExitingBiasing (const G4Track *track, const G4BiasingProcessInterface *callingProcess)
 
void ReportOperationApplied (const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)
 
void ReportOperationApplied (const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *occurenceOperationApplied, G4double weightForOccurenceInteraction, G4VBiasingOperation *finalStateOperationApplied, const G4VParticleChange *particleChangeProduced)
 
const G4VBiasingOperationGetPreviousNonPhysicsAppliedOperation ()
 
const G4VBiasingOperationGetBirthOperation (const G4Track *)
 

Static Public Member Functions

static const std::vector
< G4VBiasingOperator * > & 
GetBiasingOperators ()
 
static G4VBiasingOperatorGetBiasingOperator (const G4LogicalVolume *)
 

Protected Member Functions

virtual G4VBiasingOperationProposeNonPhysicsBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)=0
 
virtual G4VBiasingOperationProposeOccurenceBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)=0
 
virtual G4VBiasingOperationProposeFinalStateBiasingOperation (const G4Track *track, const G4BiasingProcessInterface *callingProcess)=0
 
virtual void OperationApplied (const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)
 
virtual void OperationApplied (const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *occurenceOperationApplied, G4double weightForOccurenceInteraction, G4VBiasingOperation *finalStateOperationApplied, const G4VParticleChange *particleChangeProduced)
 
virtual void ExitBiasing (const G4Track *track, const G4BiasingProcessInterface *callingProcess)
 
void RememberSecondaries (const G4BiasingProcessInterface *callingProcess, const G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)
 
void ForgetTrack (const G4Track *track)
 

Private Attributes

const G4String fName
 
std::vector< const
G4LogicalVolume * > 
fRootVolumes
 
std::map< const
G4LogicalVolume *, G4int
fDepthInTree
 
G4VBiasingOperationfOccurenceBiasingOperation
 
G4VBiasingOperationfFinalStateBiasingOperation
 
G4VBiasingOperationfNonPhysicsBiasingOperation
 
const G4VBiasingOperationfPreviousProposedOccurenceBiasingOperation
 
const G4VBiasingOperationfPreviousProposedFinalStateBiasingOperation
 
const G4VBiasingOperationfPreviousProposedNonPhysicsBiasingOperation
 
const G4VBiasingOperationfPreviousAppliedOccurenceBiasingOperation
 
const G4VBiasingOperationfPreviousAppliedFinalStateBiasingOperation
 
const G4VBiasingOperationfPreviousAppliedNonPhysicsBiasingOperation
 
G4BiasingAppliedCase fPreviousBiasingAppliedCase
 

Static Private Attributes

static G4MapCache< const
G4LogicalVolume
*, G4VBiasingOperator * > 
fLogicalToSetupMap
 
static G4VectorCache
< G4VBiasingOperator * > 
fOperators
 

Detailed Description

Definition at line 191 of file G4VBiasingOperator.hh.

Constructor & Destructor Documentation

G4VBiasingOperator::G4VBiasingOperator ( G4String  name)

Definition at line 37 of file G4VBiasingOperator.cc.

References fOperators, and G4VectorCache< VALTYPE >::Push_back().

+ Here is the call graph for this function:

G4VBiasingOperator::~G4VBiasingOperator ( )
virtual

Definition at line 43 of file G4VBiasingOperator.cc.

Member Function Documentation

void G4VBiasingOperator::AttachTo ( const G4LogicalVolume logical)

Definition at line 47 of file G4VBiasingOperator.cc.

References G4MapCache< KEYTYPE, VALTYPE >::End(), G4MapCache< KEYTYPE, VALTYPE >::Find(), fLogicalToSetupMap, G4endl, G4Exception(), G4LogicalVolume::GetName(), GetName(), and JustWarning.

Referenced by GB01DetectorConstruction::Construct(), and GB02DetectorConstruction::ConstructSDandField().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void G4VBiasingOperator::EndTracking ( )
inlinevirtual

Definition at line 268 of file G4VBiasingOperator.hh.

void G4VBiasingOperator::ExitBiasing ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)
protectedvirtual

Reimplemented in GB02BOptrMultiParticleForceCollision, and G4BOptrForceCollision.

Definition at line 233 of file G4VBiasingOperator.cc.

Referenced by ExitingBiasing().

+ Here is the caller graph for this function:

void G4VBiasingOperator::ExitingBiasing ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)

Definition at line 194 of file G4VBiasingOperator.cc.

References BAC_None, ExitBiasing(), fFinalStateBiasingOperation, fNonPhysicsBiasingOperation, fOccurenceBiasingOperation, fPreviousAppliedFinalStateBiasingOperation, fPreviousAppliedNonPhysicsBiasingOperation, fPreviousAppliedOccurenceBiasingOperation, fPreviousBiasingAppliedCase, fPreviousProposedFinalStateBiasingOperation, fPreviousProposedNonPhysicsBiasingOperation, and fPreviousProposedOccurenceBiasingOperation.

Referenced by G4BiasingProcessInterface::EndTracking(), GB02BOptrMultiParticleForceCollision::ExitBiasing(), and G4BiasingProcessInterface::PostStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VBiasingOperator::ForgetTrack ( const G4Track track)
protected

Definition at line 223 of file G4VBiasingOperator.cc.

References G4BiasingTrackDataStore::GetBiasingTrackData(), and G4BiasingTrackDataStore::GetInstance().

Referenced by G4BOptrForceCollision::ExitBiasing().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VBiasingOperator * G4VBiasingOperator::GetBiasingOperator ( const G4LogicalVolume logical)
static

Definition at line 66 of file G4VBiasingOperator.cc.

References G4MapCache< KEYTYPE, VALTYPE >::End(), G4MapCache< KEYTYPE, VALTYPE >::Find(), and fLogicalToSetupMap.

Referenced by G4BiasingProcessInterface::PostStepGetPhysicalInteractionLength().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

static const std::vector< G4VBiasingOperator* >& G4VBiasingOperator::GetBiasingOperators ( )
inlinestatic

Definition at line 282 of file G4VBiasingOperator.hh.

References fOperators, and G4Cache< VALTYPE >::Get().

Referenced by G4BiasingProcessInterface::BuildPhysicsTable(), G4BiasingProcessInterface::BuildWorkerPhysicsTable(), G4BiasingProcessInterface::EndTracking(), and G4BiasingProcessInterface::StartTracking().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4VBiasingOperation * G4VBiasingOperator::GetBirthOperation ( const G4Track track)

Definition at line 113 of file G4VBiasingOperator.cc.

References G4BiasingTrackDataStore::GetBiasingTrackData(), G4BiasingTrackData::GetBirthOperation(), and G4BiasingTrackDataStore::GetInstance().

Referenced by G4BOptrForceCollision::ProposeOccurenceBiasingOperation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

const G4String G4VBiasingOperator::GetName ( void  ) const
inline

Definition at line 277 of file G4VBiasingOperator.hh.

References fName.

Referenced by AttachTo(), GB01DetectorConstruction::Construct(), and GB02DetectorConstruction::ConstructSDandField().

+ Here is the caller graph for this function:

G4BiasingAppliedCase G4VBiasingOperator::GetPreviousBiasingAppliedCase ( ) const
inline

Definition at line 280 of file G4VBiasingOperator.hh.

References fPreviousBiasingAppliedCase.

const G4VBiasingOperation* G4VBiasingOperator::GetPreviousNonPhysicsAppliedOperation ( )
inline

Definition at line 304 of file G4VBiasingOperator.hh.

References fPreviousAppliedNonPhysicsBiasingOperation.

G4VBiasingOperation * G4VBiasingOperator::GetProposedFinalStateBiasingOperation ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)

Definition at line 83 of file G4VBiasingOperator.cc.

References fFinalStateBiasingOperation, and ProposeFinalStateBiasingOperation().

Referenced by G4BiasingProcessInterface::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VBiasingOperation * G4VBiasingOperator::GetProposedNonPhysicsBiasingOperation ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)

Definition at line 92 of file G4VBiasingOperator.cc.

References fNonPhysicsBiasingOperation, and ProposeNonPhysicsBiasingOperation().

Referenced by G4BiasingProcessInterface::PostStepGetPhysicalInteractionLength(), and GB02BOptrMultiParticleForceCollision::ProposeNonPhysicsBiasingOperation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

G4VBiasingOperation * G4VBiasingOperator::GetProposedOccurenceBiasingOperation ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)

Definition at line 74 of file G4VBiasingOperator.cc.

References fOccurenceBiasingOperation, and ProposeOccurenceBiasingOperation().

Referenced by G4BiasingProcessInterface::PostStepGetPhysicalInteractionLength(), GB02BOptrMultiParticleForceCollision::ProposeOccurenceBiasingOperation(), and GB01BOptrMultiParticleChangeCrossSection::ProposeOccurenceBiasingOperation().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VBiasingOperator::OperationApplied ( const G4BiasingProcessInterface callingProcess,
G4BiasingAppliedCase  biasingCase,
G4VBiasingOperation operationApplied,
const G4VParticleChange particleChangeProduced 
)
protectedvirtual

Reimplemented in G4BOptrForceCollision, and GB02BOptrMultiParticleForceCollision.

Definition at line 235 of file G4VBiasingOperator.cc.

Referenced by ReportOperationApplied().

+ Here is the caller graph for this function:

void G4VBiasingOperator::OperationApplied ( const G4BiasingProcessInterface callingProcess,
G4BiasingAppliedCase  biasingCase,
G4VBiasingOperation occurenceOperationApplied,
G4double  weightForOccurenceInteraction,
G4VBiasingOperation finalStateOperationApplied,
const G4VParticleChange particleChangeProduced 
)
protectedvirtual
virtual G4VBiasingOperation* G4VBiasingOperator::ProposeFinalStateBiasingOperation ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)
protectedpure virtual

Implemented in GB01BOptrMultiParticleChangeCrossSection, GB01BOptrChangeCrossSection, G4BOptrForceCollision, and GB02BOptrMultiParticleForceCollision.

Referenced by GetProposedFinalStateBiasingOperation().

+ Here is the caller graph for this function:

virtual G4VBiasingOperation* G4VBiasingOperator::ProposeNonPhysicsBiasingOperation ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)
protectedpure virtual

Implemented in GB01BOptrMultiParticleChangeCrossSection, GB01BOptrChangeCrossSection, G4BOptrForceCollision, and GB02BOptrMultiParticleForceCollision.

Referenced by GetProposedNonPhysicsBiasingOperation().

+ Here is the caller graph for this function:

virtual G4VBiasingOperation* G4VBiasingOperator::ProposeOccurenceBiasingOperation ( const G4Track track,
const G4BiasingProcessInterface callingProcess 
)
protectedpure virtual

Implemented in GB01BOptrMultiParticleChangeCrossSection, GB01BOptrChangeCrossSection, G4BOptrForceCollision, and GB02BOptrMultiParticleForceCollision.

Referenced by GetProposedOccurenceBiasingOperation().

+ Here is the caller graph for this function:

void G4VBiasingOperator::RememberSecondaries ( const G4BiasingProcessInterface callingProcess,
const G4VBiasingOperation operationApplied,
const G4VParticleChange particleChangeProduced 
)
protected

Definition at line 212 of file G4VBiasingOperator.cc.

References G4VParticleChange::GetNumberOfSecondaries(), and G4VParticleChange::GetSecondary().

Referenced by G4BOptrForceCollision::OperationApplied().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VBiasingOperator::ReportOperationApplied ( const G4BiasingProcessInterface callingProcess,
G4BiasingAppliedCase  biasingCase,
G4VBiasingOperation operationApplied,
const G4VParticleChange particleChangeProduced 
)

Definition at line 121 of file G4VBiasingOperator.cc.

References BAC_DenyInteraction, BAC_FinalState, BAC_None, BAC_NonPhysics, BAC_Occurence, fPreviousAppliedFinalStateBiasingOperation, fPreviousAppliedNonPhysicsBiasingOperation, fPreviousAppliedOccurenceBiasingOperation, fPreviousBiasingAppliedCase, G4Exception(), JustWarning, and OperationApplied().

Referenced by GB02BOptrMultiParticleForceCollision::OperationApplied(), GB01BOptrMultiParticleChangeCrossSection::OperationApplied(), and G4BiasingProcessInterface::PostStepDoIt().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4VBiasingOperator::ReportOperationApplied ( const G4BiasingProcessInterface callingProcess,
G4BiasingAppliedCase  biasingCase,
G4VBiasingOperation occurenceOperationApplied,
G4double  weightForOccurenceInteraction,
G4VBiasingOperation finalStateOperationApplied,
const G4VParticleChange particleChangeProduced 
)

Definition at line 169 of file G4VBiasingOperator.cc.

References fPreviousAppliedFinalStateBiasingOperation, fPreviousAppliedOccurenceBiasingOperation, fPreviousBiasingAppliedCase, and OperationApplied().

+ Here is the call graph for this function:

virtual void G4VBiasingOperator::StartRun ( )
inlinevirtual

Definition at line 265 of file G4VBiasingOperator.hh.

virtual void G4VBiasingOperator::StartTracking ( const G4Track )
inlinevirtual

Member Data Documentation

std::map< const G4LogicalVolume*, G4int > G4VBiasingOperator::fDepthInTree
private

Definition at line 320 of file G4VBiasingOperator.hh.

G4VBiasingOperation* G4VBiasingOperator::fFinalStateBiasingOperation
private

Definition at line 324 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing(), and GetProposedFinalStateBiasingOperation().

G4MapCache< const G4LogicalVolume *, G4VBiasingOperator * > G4VBiasingOperator::fLogicalToSetupMap
staticprivate

Definition at line 312 of file G4VBiasingOperator.hh.

Referenced by AttachTo(), and GetBiasingOperator().

const G4String G4VBiasingOperator::fName
private

Definition at line 309 of file G4VBiasingOperator.hh.

Referenced by GetName().

G4VBiasingOperation* G4VBiasingOperator::fNonPhysicsBiasingOperation
private

Definition at line 325 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing(), and GetProposedNonPhysicsBiasingOperation().

G4VBiasingOperation* G4VBiasingOperator::fOccurenceBiasingOperation
private

Definition at line 323 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing(), and GetProposedOccurenceBiasingOperation().

G4VectorCache< G4VBiasingOperator * > G4VBiasingOperator::fOperators
staticprivate

Definition at line 314 of file G4VBiasingOperator.hh.

Referenced by G4VBiasingOperator(), and GetBiasingOperators().

const G4VBiasingOperation* G4VBiasingOperator::fPreviousAppliedFinalStateBiasingOperation
private

Definition at line 332 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing(), and ReportOperationApplied().

const G4VBiasingOperation* G4VBiasingOperator::fPreviousAppliedNonPhysicsBiasingOperation
private
const G4VBiasingOperation* G4VBiasingOperator::fPreviousAppliedOccurenceBiasingOperation
private

Definition at line 331 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing(), and ReportOperationApplied().

G4BiasingAppliedCase G4VBiasingOperator::fPreviousBiasingAppliedCase
private
const G4VBiasingOperation* G4VBiasingOperator::fPreviousProposedFinalStateBiasingOperation
private

Definition at line 329 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing().

const G4VBiasingOperation* G4VBiasingOperator::fPreviousProposedNonPhysicsBiasingOperation
private

Definition at line 330 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing().

const G4VBiasingOperation* G4VBiasingOperator::fPreviousProposedOccurenceBiasingOperation
private

Definition at line 328 of file G4VBiasingOperator.hh.

Referenced by ExitingBiasing().

std::vector< const G4LogicalVolume* > G4VBiasingOperator::fRootVolumes
private

Definition at line 319 of file G4VBiasingOperator.hh.


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