|
Geant4-11
|
#include <G4ITTrackHolder.hh>
Public Types | |
| typedef int | Key |
| typedef std::map< double, std::map< Key, G4TrackList * > > | MapOfDelayedLists |
| typedef std::map< Key, PriorityList * > | MapOfPriorityLists |
Public Member Functions | |
| bool | AddWatcher (int, G4TrackList::Watcher *, PriorityList::Type=PriorityList::MainList) |
| void | AddWatcherForKillList (G4TrackList::Watcher *) |
| void | AddWatcherForMainList (G4TrackList::Watcher *) |
| bool | CheckMapIsNOTEmpty (MapOfPriorityLists &mapOfLists, PriorityList::Type type) |
| void | Clear () |
| bool | DelayListsNOTEmpty () |
| G4ITTrackHolder () | |
| MapOfDelayedLists & | GetDelayedLists () |
| G4TrackList * | GetKillList () |
| MapOfPriorityLists & | GetLists () |
| G4TrackManyList * | GetMainList () |
| G4TrackList * | GetMainList (Key) |
| double | GetNextTime () |
| virtual size_t | GetNTracks () |
| PriorityList * | GetPriorityList (Key) |
| G4TrackManyList * | GetSecondariesList () |
| void | KillTracks () |
| bool | MainListsNOTEmpty () |
| bool | MergeNextTimeToMainList (double &time) |
| void | MergeSecondariesWithMainList () |
| void | MoveMainToWaitingList () |
| virtual void | Push (G4Track *) |
| void | PushToKill (G4Track *track) |
| bool | SecondaryListsNOTEmpty () |
| void | SetVerbose (int verbose) |
| virtual | ~G4ITTrackHolder () |
Static Public Member Functions | |
| static G4ITTrackHolder * | Instance () |
| static G4ITTrackHolder * | MasterInstance () |
| static void | PushToMaster (G4Track *) |
Protected Member Functions | |
| void | _PushTrack (G4Track *track) |
| void | AddTrackID (G4Track *track) |
| void | PushDelayed (G4Track *track) |
| void | PushTo (G4Track *, PriorityList::Type) |
Protected Attributes | |
| G4TrackManyList | fAllMainList |
| G4TrackManyList | fAllSecondariesList |
| MapOfDelayedLists | fDelayedList |
| std::map< Key, PriorityList * > | fLists |
| bool | fMainListHaveBeenSet |
| int | fNbTracks |
| double | fPostActivityGlobalTime |
| G4TrackList | fToBeKilledList |
| int | fVerbose |
Static Protected Attributes | |
| static G4ThreadLocal G4VITTrackHolder * | fInstance |
Static Private Attributes | |
| static G4ThreadLocal G4ITTrackHolder * | fgInstance |
| static G4ITTrackHolder * | fgMasterInstance |
Friends | |
| class | G4ITModelProcessor |
| class | G4ITStepProcessor |
| class | G4Scheduler |
Definition at line 121 of file G4ITTrackHolder.hh.
| typedef int G4ITTrackHolder::Key |
Definition at line 138 of file G4ITTrackHolder.hh.
| typedef std::map<double, std::map<Key, G4TrackList*> > G4ITTrackHolder::MapOfDelayedLists |
Definition at line 140 of file G4ITTrackHolder.hh.
| typedef std::map<Key, PriorityList*> G4ITTrackHolder::MapOfPriorityLists |
Definition at line 139 of file G4ITTrackHolder.hh.
| G4ITTrackHolder::G4ITTrackHolder | ( | ) |
Definition at line 223 of file G4ITTrackHolder.cc.
References fMainListHaveBeenSet, fNbTracks, fPostActivityGlobalTime, and fVerbose.
Referenced by Instance(), and MasterInstance().
|
virtual |
Definition at line 234 of file G4ITTrackHolder.cc.
References fAllMainList, fAllSecondariesList, fDelayedList, fLists, fNbTracks, and G4ManyFastLists< OBJECT >::RemoveLists().
|
protected |
Definition at line 447 of file G4ITTrackHolder.cc.
References AddTrackID(), FatalErrorInArgument, fMainListHaveBeenSet, fVerbose, G4BestUnit, G4cout, G4endl, G4Exception(), G4Scheduler::GetGlobalTime(), G4Track::GetGlobalTime(), GetIT(), G4IT::GetName(), G4Scheduler::GetTimeTolerance(), G4Track::GetTrackID(), G4Scheduler::Instance(), PriorityList::MainList, PushDelayed(), PushTo(), and PriorityList::SecondariesList.
Referenced by Push(), and G4ITStepProcessor::PushSecondaries().
|
protected |
Definition at line 377 of file G4ITTrackHolder.cc.
References fNbTracks, and G4Track::SetTrackID().
Referenced by _PushTrack().
| bool G4ITTrackHolder::AddWatcher | ( | int | id, |
| G4TrackList::Watcher * | watcher, | ||
| PriorityList::Type | type = PriorityList::MainList |
||
| ) |
Definition at line 783 of file G4ITTrackHolder.cc.
References G4FastList< OBJECT >::AddWatcher(), and fLists.
| void G4ITTrackHolder::AddWatcherForKillList | ( | G4TrackList::Watcher * | watcher | ) |
Definition at line 801 of file G4ITTrackHolder.cc.
References fToBeKilledList.
| void G4ITTrackHolder::AddWatcherForMainList | ( | G4TrackList::Watcher * | watcher | ) |
Definition at line 796 of file G4ITTrackHolder.cc.
References G4ManyFastLists< OBJECT >::AddGlobalWatcher(), and fAllMainList.
| bool G4ITTrackHolder::CheckMapIsNOTEmpty | ( | MapOfPriorityLists & | mapOfLists, |
| PriorityList::Type | type | ||
| ) |
Definition at line 880 of file G4ITTrackHolder.cc.
Referenced by MainListsNOTEmpty(), and SecondaryListsNOTEmpty().
| void G4ITTrackHolder::Clear | ( | ) |
Definition at line 726 of file G4ITTrackHolder.cc.
References G4ManyFastLists< OBJECT >::ClearLists(), fAllMainList, fAllSecondariesList, fDelayedList, fLists, fNbTracks, KillTracks(), and G4ManyFastLists< OBJECT >::RemoveLists().
Referenced by G4Scheduler::ClearList().
| bool G4ITTrackHolder::DelayListsNOTEmpty | ( | ) |
Definition at line 857 of file G4ITTrackHolder.cc.
References fDelayedList.
Referenced by G4Scheduler::Process().
|
inline |
Definition at line 206 of file G4ITTrackHolder.hh.
References fDelayedList.
|
inline |
Definition at line 235 of file G4ITTrackHolder.hh.
References fToBeKilledList.
|
inline |
|
inline |
Definition at line 196 of file G4ITTrackHolder.hh.
References fAllMainList.
| G4TrackList * G4ITTrackHolder::GetMainList | ( | Key | i | ) |
Definition at line 773 of file G4ITTrackHolder.cc.
References PriorityList::GetMainList(), and GetPriorityList().
Referenced by G4DNAIRTMoleculeEncounterStepper::CalculateMinTimeStep(), G4DNAMoleculeEncounterStepper::CalculateMinTimeStep(), G4DNAIndependentReactionTimeStepper::CalculateMinTimeStep(), G4ITStepProcessor::ComputeInteractionLength(), G4ITStepProcessor::DoIt(), G4Scheduler::EndTracking(), G4DNAIRT_geometries::Initialize(), G4DNAIRT::IRTSampling(), G4DNAIRT_geometries::IRTSampling(), G4DNAIRT::SpaceBinning(), G4DNAIRT_geometries::SpaceBinning(), and G4DNAEventScheduler::Voxelizing().
|
inline |
Definition at line 152 of file G4ITTrackHolder.hh.
References DBL_MAX, and fDelayedList.
Referenced by G4Scheduler::Process(), and G4Scheduler::SynchronizeTracks().
|
virtual |
Reimplemented from G4VITTrackHolder.
Definition at line 815 of file G4ITTrackHolder.cc.
References fAllMainList, fAllSecondariesList, fDelayedList, and G4ManyFastLists< OBJECT >::size().
Referenced by G4Scheduler::GetNTracks().
| PriorityList * G4ITTrackHolder::GetPriorityList | ( | Key | i | ) |
Definition at line 766 of file G4ITTrackHolder.cc.
References fLists.
Referenced by GetMainList().
|
inline |
Definition at line 201 of file G4ITTrackHolder.hh.
References fAllSecondariesList.
Referenced by G4Scheduler::EndTracking().
|
static |
Definition at line 196 of file G4ITTrackHolder.cc.
References fgInstance, fgMasterInstance, G4ITTrackHolder(), G4Threading::IsMasterThread(), and G4Threading::IsMultithreadedApplication().
Referenced by G4ITTrackingManager::EndTracking(), G4DNAIRTMoleculeEncounterStepper::G4DNAIRTMoleculeEncounterStepper(), G4DNAMoleculeEncounterStepper::G4DNAMoleculeEncounterStepper(), G4ITModelProcessor::Initialize(), G4ITStepProcessor::Initialize(), G4DNAIRT::Initialize(), G4DNAIRT_geometries::Initialize(), G4DNAMakeReaction::MakeReaction(), G4DNAMolecularReaction::MakeReaction(), G4DNAScavengerProcess::PostStepDoIt(), G4DNAChemistryManager::PushTrack(), and G4DNAEventScheduler::Voxelizing().
| void G4ITTrackHolder::KillTracks | ( | ) |
Definition at line 696 of file G4ITTrackHolder.cc.
References G4FastList< OBJECT >::begin(), G4FastList< OBJECT >::end(), G4FastList< OBJECT >::erase(), fToBeKilledList, fVerbose, G4cout, G4endl, GetIT(), G4IT::GetName(), G4VScheduler::GetNbSteps(), G4Track::GetTrackID(), G4VScheduler::Instance(), and G4FastList< OBJECT >::size().
Referenced by Clear(), G4ITModelProcessor::ComputeTrackReaction(), and G4ITStepProcessor::DoIt().
|
inline |
Definition at line 215 of file G4ITTrackHolder.hh.
References CheckMapIsNOTEmpty(), fLists, and PriorityList::MainList.
Referenced by G4Scheduler::DoProcess(), G4Scheduler::EndTracking(), and G4Scheduler::PrintWhyDoYouStop().
|
static |
Definition at line 212 of file G4ITTrackHolder.cc.
References creationOfTheMasterInstance, fgMasterInstance, G4ITTrackHolder(), and G4TemplateAutoLock< _Mutex_t >::unlock().
Referenced by PushToMaster().
| bool G4ITTrackHolder::MergeNextTimeToMainList | ( | double & | time | ) |
Definition at line 289 of file G4ITTrackHolder.cc.
References fAllMainList, fDelayedList, fLists, PriorityList::GetMainList(), G4FastList< OBJECT >::size(), and PriorityList::TransferToMainList().
Referenced by G4Scheduler::SynchronizeTracks().
| void G4ITTrackHolder::MergeSecondariesWithMainList | ( | ) |
Definition at line 359 of file G4ITTrackHolder.cc.
References fAllMainList, and fLists.
Referenced by G4ITModelProcessor::ComputeTrackReaction(), G4ITStepProcessor::DoIt(), G4Scheduler::EndTracking(), G4DNAIRT::MakeReaction(), and G4DNAIRT_geometries::MakeReaction().
| void G4ITTrackHolder::MoveMainToWaitingList | ( | ) |
Definition at line 842 of file G4ITTrackHolder.cc.
References fAllMainList, fLists, and G4ManyFastLists< OBJECT >::RemoveLists().
|
virtual |
Reimplemented from G4VITTrackHolder.
Definition at line 386 of file G4ITTrackHolder.cc.
References _PushTrack().
Referenced by G4DNAIRT::MakeReaction(), G4DNAIRT_geometries::MakeReaction(), G4DNAMakeReaction::MakeReaction(), G4DNAMolecularReaction::MakeReaction(), G4DNAScavengerProcess::PostStepDoIt(), G4DNAChemistryManager::PushTrack(), G4DNAIRT::Sampling(), and G4DNAIRT_geometries::Sampling().
|
protected |
Definition at line 621 of file G4ITTrackHolder.cc.
References fDelayedList, fVerbose, G4cout, G4endl, G4Track::GetGlobalTime(), GetIT(), and G4IT::GetITSubType().
Referenced by _PushTrack(), and PushToMaster().
|
protected |
Definition at line 402 of file G4ITTrackHolder.cc.
References fAllMainList, fAllSecondariesList, fLists, GetIT(), G4IT::GetITSubType(), PriorityList::MainList, PriorityList::PushToListOfSecondaries(), PriorityList::PushToMainList(), PriorityList::PushToWaitingList(), PriorityList::SecondariesList, and PriorityList::WaitingList.
Referenced by _PushTrack().
|
inline |
Definition at line 164 of file G4ITTrackHolder.hh.
References fKillTrackAndSecondaries, fStopAndKill, fToBeKilledList, G4Track::GetTrackStatus(), G4FastList< G4Track >::Pop(), G4FastList< OBJECT >::push_back(), and G4Track::SetTrackStatus().
Referenced by G4ITTrackingManager::EndTracking().
|
static |
Definition at line 806 of file G4ITTrackHolder.cc.
References MasterInstance(), PushDelayed(), pushToTheMasterInstance, and G4TemplateAutoLock< _Mutex_t >::unlock().
|
inline |
Definition at line 220 of file G4ITTrackHolder.hh.
References CheckMapIsNOTEmpty(), fLists, and PriorityList::SecondariesList.
Referenced by G4Scheduler::EndTracking().
|
inline |
Definition at line 230 of file G4ITTrackHolder.hh.
References fVerbose.
|
friend |
Definition at line 134 of file G4ITTrackHolder.hh.
|
friend |
Definition at line 133 of file G4ITTrackHolder.hh.
|
friend |
Definition at line 132 of file G4ITTrackHolder.hh.
|
protected |
Definition at line 257 of file G4ITTrackHolder.hh.
Referenced by AddWatcherForMainList(), Clear(), GetMainList(), GetNTracks(), MergeNextTimeToMainList(), MergeSecondariesWithMainList(), MoveMainToWaitingList(), PushTo(), and ~G4ITTrackHolder().
|
protected |
Definition at line 258 of file G4ITTrackHolder.hh.
Referenced by Clear(), GetNTracks(), GetSecondariesList(), PushTo(), and ~G4ITTrackHolder().
|
protected |
Definition at line 248 of file G4ITTrackHolder.hh.
Referenced by Clear(), DelayListsNOTEmpty(), GetDelayedLists(), GetNextTime(), GetNTracks(), MergeNextTimeToMainList(), PushDelayed(), and ~G4ITTrackHolder().
|
staticprivate |
Definition at line 130 of file G4ITTrackHolder.hh.
Referenced by Instance().
|
staticprivate |
Definition at line 131 of file G4ITTrackHolder.hh.
Referenced by Instance(), and MasterInstance().
|
staticprotectedinherited |
Definition at line 65 of file G4VITTrackHolder.hh.
Referenced by G4VITTrackHolder::G4VITTrackHolder(), G4VITTrackHolder::Instance(), and G4VITTrackHolder::~G4VITTrackHolder().
|
protected |
Definition at line 247 of file G4ITTrackHolder.hh.
Referenced by AddWatcher(), Clear(), GetLists(), GetPriorityList(), MainListsNOTEmpty(), MergeNextTimeToMainList(), MergeSecondariesWithMainList(), MoveMainToWaitingList(), PushTo(), SecondaryListsNOTEmpty(), and ~G4ITTrackHolder().
|
protected |
Definition at line 250 of file G4ITTrackHolder.hh.
Referenced by _PushTrack(), and G4ITTrackHolder().
|
protected |
Definition at line 252 of file G4ITTrackHolder.hh.
Referenced by AddTrackID(), Clear(), G4ITTrackHolder(), and ~G4ITTrackHolder().
|
protected |
Definition at line 254 of file G4ITTrackHolder.hh.
Referenced by G4ITTrackHolder().
|
protected |
Definition at line 249 of file G4ITTrackHolder.hh.
Referenced by AddWatcherForKillList(), GetKillList(), KillTracks(), and PushToKill().
|
protected |
Definition at line 251 of file G4ITTrackHolder.hh.
Referenced by _PushTrack(), G4ITTrackHolder(), KillTracks(), PushDelayed(), and SetVerbose().