44 #ifndef G4ParallelGeometriesLimiterProcess_hh
45 #define G4ParallelGeometriesLimiterProcess_hh
81 const std::vector< G4VPhysicalVolume* >&
GetParallelWorlds()
const {
return fParallelWorlds; }
108 const std::vector< const G4VPhysicalVolume* >&
GetCurrentVolumes()
const {
return fCurrentVolumes; }
109 const std::vector< const G4VPhysicalVolume* >&
GetPreviousVolumes()
const {
return fPreviousVolumes; }
115 const std::vector< G4bool >&
GetIsLimiting()
const {
return fParallelWorldIsLimiting; }
116 const std::vector< G4bool >&
GetWasLimiting()
const {
return fParallelWorldWasLimiting; }
167 std::vector< G4VPhysicalVolume* > fParallelWorlds;
168 std::vector< G4Navigator* > fParallelWorldNavigators;
169 std::vector< G4int > fParallelWorldNavigatorIndeces;
170 std::vector< G4double > fParallelWorldSafeties;
171 std::vector< G4bool > fParallelWorldIsLimiting;
172 std::vector< G4bool > fParallelWorldWasLimiting;
173 std::vector< const G4VPhysicalVolume* > fCurrentVolumes;
174 std::vector< const G4VPhysicalVolume* > fPreviousVolumes;
G4VParticleChange * AtRestDoIt(const G4Track &, const G4Step &)
G4ParallelGeometriesLimiterProcess(const G4String &processName="biasLimiter")
const std::vector< G4Navigator * > & GetActiveNavigators() const
const std::vector< const G4VPhysicalVolume * > & GetCurrentVolumes() const
const G4Navigator * GetNavigator(G4int worldIndex) const
virtual void SetProcessManager(const G4ProcessManager *)
const std::vector< const G4VPhysicalVolume * > & GetPreviousVolumes() const
G4int GetParallelWorldIndex(const G4VPhysicalVolume *parallelWorld) const
void AddParallelWorld(const G4String ¶llelWorldName)
void StartTracking(G4Track *)
G4double AtRestGetPhysicalInteractionLength(const G4Track &, G4ForceCondition *)
const G4VPhysicalVolume * GetPreviousVolume(G4int worldIndex) const
const G4VPhysicalVolume * GetCurrentVolume(G4int worldIndex) const
const std::vector< G4bool > & GetIsLimiting() const
const std::vector< G4bool > & GetWasLimiting() const
G4bool GetWasLimiting(G4int worldIndex) const
G4double AlongStepGetPhysicalInteractionLength(const G4Track &track, G4double previousStepSize, G4double currentMinimumStep, G4double &proposedSafety, G4GPILSelection *selection)
virtual ~G4ParallelGeometriesLimiterProcess()
void RemoveParallelWorld(const G4String ¶llelWorldName)
G4VParticleChange * AlongStepDoIt(const G4Track &track, const G4Step &step)
const std::vector< G4VPhysicalVolume * > & GetParallelWorlds() const
G4double PostStepGetPhysicalInteractionLength(const G4Track &, G4double, G4ForceCondition *)
G4bool GetIsLimiting(G4int worldIndex) const
G4VParticleChange * PostStepDoIt(const G4Track &, const G4Step &)