61    fImportanceAlgorithm(aImportanceAlgorithm),
 
   64    fGhostWorldName(
"NoParallelWorld"),fGhostWorld(0),
 
   65    fGhostNavigator(0), fNavigatorID(-1), fFieldTrack(
'0'),
 
   66    fParaflag(para), fEndTrack(
'0'), feLimited(
kDoNot)  
 
   80     G4Exception(
"G4ImportanceProcess::G4ImportanceProcess()",
 
   82                 "Failed allocation of G4ParticleChange !");
 
   99   G4cout << 
"G4ImportanceProcess:: importance process paraflag is: " << fParaflag << 
G4endl;
 
  106   delete fPostStepAction;
 
  107   delete fParticleChange;
 
  125   G4cout << 
"G4ImportanceProcess:: SetParallelWorld name = " << parallelWorldName << 
G4endl;
 
  129   fGhostWorldName = parallelWorldName;
 
  131   fGhostNavigator = fTransportationManager->
GetNavigator(fGhostWorld);
 
  170             "G4ImportanceProcess is used for tracking without having a parallel world assigned");
 
  186     fNewGhostTouchable = fOldGhostTouchable;
 
  241     fNewGhostTouchable = fOldGhostTouchable;
 
  270         G4cout << 
"WARNING - G4ImportanceProcess::PostStepDoIt()" 
  271            << 
"          StopAndKill track. on boundary" << 
G4endl;
 
  305     fPostStepAction->
DoIt(aTrack, fParticleChange, nw);
 
  315         G4cout << 
"WARNING - G4ImportanceProcess::PostStepDoIt()" 
  316            << 
"          StopAndKill track. on boundary non-parallel" << 
G4endl;
 
  339     fPostStepAction->
DoIt(aTrack, fParticleChange, nw);
 
  343   return fParticleChange;
 
  365     if (previousStepSize > 0.)
 
  366       { fGhostSafety -= previousStepSize; }
 
  369     if (fGhostSafety < 0.) fGhostSafety = 0.0;
 
  374     if (currentMinimumStep <= fGhostSafety && currentMinimumStep > 0.)
 
  377     returnedStep = currentMinimumStep;
 
  379     proposedSafety = fGhostSafety - currentMinimumStep;
 
  389       = fPathFinder->
ComputeStep(fFieldTrack,currentMinimumStep,fNavigatorID,
 
  398         fGhostSafety = fGhostNavigator->
ComputeSafety(fEndTrack.GetPosition());
 
  407     proposedSafety = fGhostSafety;
 
  411       returnedStep *= (1.0 + 1.0e-9);  
 
  456 void G4ImportanceProcess::CopyStep(
const G4Step & step)
 
void PrepareNewTrack(const G4ThreeVector &position, const G4ThreeVector &direction, G4VPhysicalVolume *massStartVol=0)
 
static G4PathFinder * GetInstance()
 
G4double condition(const G4ErrorSymMatrix &m)
 
void SetStepLength(G4double value)
 
virtual void Initialize(const G4Track &)
 
virtual G4double AlongStepGetPhysicalInteractionLength(const G4Track &, G4double, G4double, G4double &, G4GPILSelection *)
 
void SetTrack(G4Track *value)
 
void SetParallelWorld(const G4String ¶llelWorldName)
 
virtual G4VParticleChange * AlongStepDoIt(const G4Track &, const G4Step &)
 
G4double GetStepLength() const 
 
G4StepStatus GetStepStatus() const 
 
const G4ThreeVector & GetPosition() const 
 
G4TrackStatus GetTrackStatus() const 
 
virtual G4VParticleChange * AtRestDoIt(const G4Track &, const G4Step &)
 
G4TouchableHandle CreateTouchableHandle(G4int navId) const 
 
G4SteppingControl GetControlFlag() const 
 
const G4VTouchable * GetTouchable() const 
 
void SetStepStatus(const G4StepStatus aValue)
 
virtual G4double PostStepGetPhysicalInteractionLength(const G4Track &aTrack, G4double previousStepSize, G4ForceCondition *condition)
 
G4StepPoint * GetPreStepPoint() const 
 
G4GLOB_DLL std::ostream G4cout
 
G4int GetCurrentStepNumber() const 
 
virtual const G4String & GetName() const 
 
G4VPhysicalVolume * GetPhysicalVolume() const 
 
void SetControlFlag(G4SteppingControl StepControlFlag)
 
G4double ComputeStep(const G4FieldTrack &pFieldTrack, G4double pCurrentProposedStepLength, G4int navigatorId, G4int stepNo, G4double &pNewSafety, ELimited &limitedStep, G4FieldTrack &EndState, G4VPhysicalVolume *currentVolume)
 
const G4String & GetProcessName() const 
 
virtual G4double GetImportance(const G4GeometryCell &gCell) const =0
 
G4double GetTotalEnergyDeposit() const 
 
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
 
static G4TransportationManager * GetTransportationManager()
 
virtual void KillTrack() const 
 
void StartTracking(G4Track *)
 
virtual void Initialize(const G4Track &)
 
G4VPhysicalVolume * GetParallelWorld(const G4String &worldName)
 
G4int ActivateNavigator(G4Navigator *aNavigator)
 
void DoIt(const G4Track &aTrack, G4ParticleChange *aParticleChange, const G4Nsplit_Weight &nw)
 
const G4ThreeVector & GetMomentumDirection() const 
 
G4Navigator * GetNavigator(const G4String &worldName)
 
G4StepPoint * GetPostStepPoint() const 
 
virtual ~G4ImportanceProcess()
 
virtual G4int GetReplicaNumber(G4int depth=0) const 
 
G4VParticleChange * pParticleChange
 
G4VPhysicalVolume * GetVolume() const 
 
G4double GetWeight() const 
 
G4ImportanceProcess(const G4VImportanceAlgorithm &aImportanceAlgorithm, const G4VIStore &aIstore, const G4VTrackTerminator *TrackTerminator, const G4String &aName="ImportanceProcess", G4bool para=false)
 
void SetTotalEnergyDeposit(G4double value)
 
void ProposeTrackStatus(G4TrackStatus status)
 
virtual G4double ComputeSafety(const G4ThreeVector &globalpoint, const G4double pProposedMaxLength=DBL_MAX, const G4bool keepState=true)
 
G4Track * GetTrack() const 
 
virtual G4double AtRestGetPhysicalInteractionLength(const G4Track &, G4ForceCondition *)
 
void SetTouchableHandle(const G4TouchableHandle &apValue)
 
const G4TouchableHandle & GetTouchableHandle() const 
 
static void Update(G4FieldTrack *, const G4Track *)
 
virtual G4VParticleChange * PostStepDoIt(const G4Track &, const G4Step &)