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