163#ifndef G4VBiasingOperator_hh
164#define G4VBiasingOperator_hh 1
G4BiasingOperatorStateNotifier()
G4ApplicationState fPreviousState
~G4BiasingOperatorStateNotifier()
G4bool Notify(G4ApplicationState requestedState)
virtual void ExitBiasing(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
static G4MapCache< const G4LogicalVolume *, G4VBiasingOperator * > fLogicalToSetupMap
virtual void StartTracking(const G4Track *)
virtual void ConfigureForWorker()
G4VBiasingOperation * GetProposedOccurenceBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
const G4String GetName() const
virtual void OperationApplied(const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)
std::vector< const G4LogicalVolume * > fRootVolumes
virtual ~G4VBiasingOperator()
virtual G4VBiasingOperation * ProposeFinalStateBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)=0
const G4VBiasingOperation * fPreviousProposedNonPhysicsBiasingOperation
static G4VectorCache< G4VBiasingOperator * > fOperators
G4VBiasingOperator(G4String name)
G4VBiasingOperation * fNonPhysicsBiasingOperation
virtual G4VBiasingOperation * ProposeNonPhysicsBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)=0
const G4VBiasingOperation * GetPreviousNonPhysicsAppliedOperation()
G4BiasingAppliedCase fPreviousBiasingAppliedCase
void AttachTo(const G4LogicalVolume *)
G4VBiasingOperation * GetProposedNonPhysicsBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
static const std::vector< G4VBiasingOperator * > & GetBiasingOperators()
static G4VBiasingOperator * GetBiasingOperator(const G4LogicalVolume *)
void ExitingBiasing(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
G4VBiasingOperation * fOccurenceBiasingOperation
G4VBiasingOperation * fFinalStateBiasingOperation
std::map< const G4LogicalVolume *, G4int > fDepthInTree
const G4VBiasingOperation * fPreviousProposedOccurenceBiasingOperation
const G4VBiasingOperation * fPreviousAppliedOccurenceBiasingOperation
virtual void EndTracking()
const G4VBiasingOperation * fPreviousAppliedNonPhysicsBiasingOperation
virtual G4VBiasingOperation * ProposeOccurenceBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)=0
void ReportOperationApplied(const G4BiasingProcessInterface *callingProcess, G4BiasingAppliedCase biasingCase, G4VBiasingOperation *operationApplied, const G4VParticleChange *particleChangeProduced)
const G4VBiasingOperation * fPreviousProposedFinalStateBiasingOperation
G4VBiasingOperation * GetProposedFinalStateBiasingOperation(const G4Track *track, const G4BiasingProcessInterface *callingProcess)
G4BiasingAppliedCase GetPreviousBiasingAppliedCase() const
const G4VBiasingOperation * fPreviousAppliedFinalStateBiasingOperation
static G4Cache< G4BiasingOperatorStateNotifier * > fStateNotifier
const char * name(G4int ptype)