Geant4
10.02.p02
|
#include <G4ITTrackHolder.hh>
Public Types | |
typedef int | Key |
typedef std::map< Key, PriorityList * > | MapOfPriorityLists |
typedef std::map< double, std::map< Key, G4TrackList * > > | MapOfDelayedLists |
Public Member Functions | |
G4ITTrackHolder () | |
virtual | ~G4ITTrackHolder () |
double | GetNextTime () |
virtual void | Push (G4Track *) |
void | PushToKill (G4Track *track) |
bool | MergeNextTimeToMainList (double &time) |
void | MergeSecondariesWithMainList () |
void | MoveMainToWaitingList () |
void | KillTracks () |
void | Clear () |
bool | AddWatcher (int, G4TrackList::Watcher *, PriorityList::Type=PriorityList::MainList) |
void | AddWatcherForMainList (G4TrackList::Watcher *) |
void | AddWatcherForKillList (G4TrackList::Watcher *) |
MapOfPriorityLists & | GetLists () |
PriorityList * | GetPriorityList (Key) |
G4TrackList * | GetMainList (Key) |
G4TrackManyList * | GetMainList () |
G4TrackManyList * | GetSecondariesList () |
MapOfDelayedLists & | GetDelayedLists () |
virtual size_t | GetNTracks () |
bool | MainListsNOTEmpty () |
bool | SecondaryListsNOTEmpty () |
bool | DelayListsNOTEmpty () |
bool | CheckMapIsNOTEmpty (MapOfPriorityLists &mapOfLists, PriorityList::Type type) |
void | SetVerbose (int verbose) |
G4TrackList * | GetKillList () |
Static Public Member Functions | |
static G4ITTrackHolder * | Instance () |
static G4ITTrackHolder * | MasterInstance () |
static void | PushToMaster (G4Track *) |
Static Public Member Functions inherited from G4VITTrackHolder | |
static G4VITTrackHolder * | Instance () |
Protected Member Functions | |
void | AddTrackID (G4Track *track) |
void | _PushTrack (G4Track *track) |
void | PushTo (G4Track *, PriorityList::Type) |
void | PushDelayed (G4Track *track) |
Protected Member Functions inherited from G4VITTrackHolder | |
G4VITTrackHolder () | |
virtual | ~G4VITTrackHolder () |
Protected Attributes | |
std::map< Key, PriorityList * > | fLists |
MapOfDelayedLists | fDelayedList |
G4TrackList | fToBeKilledList |
bool | fMainListHaveBeenSet |
int | fVerbose |
int | fNbTracks |
double | fPostActivityGlobalTime |
G4TrackManyList | fAllMainList |
G4TrackManyList | fAllSecondariesList |
Static Private Attributes | |
static G4ThreadLocal G4ITTrackHolder * | fgInstance |
static G4ITTrackHolder * | fgMasterInstance |
Friends | |
class | G4Scheduler |
class | G4ITStepProcessor |
class | G4ITModelProcessor |
Additional Inherited Members | |
Static Protected Attributes inherited from G4VITTrackHolder | |
static G4ThreadLocal G4VITTrackHolder * | fInstance |
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(), G4Track::GetGlobalTime(), G4Scheduler::GetGlobalTime(), GetIT(), G4IT::GetName(), G4Scheduler::GetTimeTolerance(), G4Track::GetTrackID(), G4Scheduler::Instance(), G4Scheduler::IsRunning(), PriorityList::MainList, PushDelayed(), PushTo(), and PriorityList::SecondariesList.
Referenced by Push().
|
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 201 of file G4ITTrackHolder.hh.
References fDelayedList.
|
inline |
Definition at line 230 of file G4ITTrackHolder.hh.
References fToBeKilledList.
|
inline |
Definition at line 187 of file G4ITTrackHolder.hh.
References fLists.
G4TrackList * G4ITTrackHolder::GetMainList | ( | Key | i | ) |
Definition at line 773 of file G4ITTrackHolder.cc.
References PriorityList::GetMainList(), and GetPriorityList().
Referenced by G4ITStepProcessor::ComputeInteractionLength(), and G4Scheduler::EndTracking().
|
inline |
Definition at line 191 of file G4ITTrackHolder.hh.
References fAllMainList.
|
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 196 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(), G4ITModelProcessor::Initialize(), and G4ITStepProcessor::Initialize().
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(), left, and G4FastList< OBJECT >::size().
Referenced by Clear().
|
inline |
Definition at line 210 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< M, L, U >::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 G4Scheduler::EndTracking().
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().
|
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 fToBeKilledList, and G4FastList< OBJECT >::push_back().
Referenced by G4ITTrackingManager::EndTracking().
|
static |
Definition at line 806 of file G4ITTrackHolder.cc.
References MasterInstance(), PushDelayed(), pushToTheMasterInstance, and G4TemplateAutoLock< M, L, U >::unlock().
|
inline |
Definition at line 215 of file G4ITTrackHolder.hh.
References CheckMapIsNOTEmpty(), fLists, and PriorityList::SecondariesList.
Referenced by G4Scheduler::EndTracking().
|
inline |
Definition at line 225 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 252 of file G4ITTrackHolder.hh.
Referenced by AddWatcherForMainList(), Clear(), GetMainList(), GetNTracks(), MergeNextTimeToMainList(), MergeSecondariesWithMainList(), MoveMainToWaitingList(), PushTo(), and ~G4ITTrackHolder().
|
protected |
Definition at line 253 of file G4ITTrackHolder.hh.
Referenced by Clear(), GetNTracks(), GetSecondariesList(), PushTo(), and ~G4ITTrackHolder().
|
protected |
Definition at line 243 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().
|
protected |
Definition at line 242 of file G4ITTrackHolder.hh.
Referenced by AddWatcher(), Clear(), GetLists(), GetPriorityList(), MainListsNOTEmpty(), MergeNextTimeToMainList(), MergeSecondariesWithMainList(), MoveMainToWaitingList(), PushTo(), SecondaryListsNOTEmpty(), and ~G4ITTrackHolder().
|
protected |
Definition at line 245 of file G4ITTrackHolder.hh.
Referenced by _PushTrack(), and G4ITTrackHolder().
|
protected |
Definition at line 247 of file G4ITTrackHolder.hh.
Referenced by AddTrackID(), Clear(), G4ITTrackHolder(), and ~G4ITTrackHolder().
|
protected |
Definition at line 249 of file G4ITTrackHolder.hh.
Referenced by G4ITTrackHolder().
|
protected |
Definition at line 244 of file G4ITTrackHolder.hh.
Referenced by AddWatcherForKillList(), GetKillList(), KillTracks(), and PushToKill().
|
protected |
Definition at line 246 of file G4ITTrackHolder.hh.
Referenced by _PushTrack(), G4ITTrackHolder(), KillTracks(), PushDelayed(), and SetVerbose().