Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
|
#include <G4FastList.hh>
Classes | |
class | TWatcher |
class | Watcher |
Public Types | |
using | object = OBJECT |
using | iterator = G4FastList_iterator<OBJECT> |
using | const_iterator = G4FastList_const_iterator<OBJECT> |
using | node = G4FastListNode<OBJECT> |
Public Member Functions | |
G4FastList () | |
~G4FastList () | |
void | SetListNode (G4FastListNode< G4FastList< OBJECT > > *__node) |
G4FastListNode< G4FastList< OBJECT > > * | GetListNode () |
void | AddWatcher (Watcher *watcher) |
void | RemoveWatcher (Watcher *watcher) |
OBJECT * | back () |
G4int | size () const |
bool | empty () const |
iterator | insert (iterator, OBJECT *) |
iterator | begin () |
const_iterator | begin () const |
iterator | end () |
const_iterator | end () const |
bool | Holds (const OBJECT *) const |
void | push_front (OBJECT *__track) |
void | push_back (OBJECT *__track) |
OBJECT * | pop_back () |
void | remove (OBJECT *) |
iterator | pop (OBJECT *) |
iterator | pop (G4FastListNode< OBJECT > *) |
iterator | pop (iterator __first, iterator __last) |
iterator | erase (OBJECT *) |
iterator | erase (iterator __first, iterator __last) |
void | clear () |
void | transferTo (G4FastList< OBJECT > *) |
bool | Holds (const G4Track *track) const |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | GetNode (G4Track *__track) |
SPECIFIC TO TRACKS. | |
G4FastList< G4Track > * | GetList (G4Track *__track) |
SPECIFIC TO TRACKS. | |
bool | Holds (const G4Track *track) const |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | GetNode (G4Track *__track) |
SPECIFIC TO TRACKS. | |
G4FastList< G4Track > * | GetList (G4Track *__track) |
SPECIFIC TO TRACKS. | |
Static Public Member Functions | |
static G4FastListNode< OBJECT > * | GetNode (OBJECT *) |
static void | SetNode (OBJECT *__obj, G4FastListNode< OBJECT > *__node) |
static G4FastList< OBJECT > * | GetList (OBJECT *) |
static G4FastList< OBJECT > * | GetList (G4FastListNode< OBJECT > *__trackListNode) |
static void | Pop (OBJECT *) |
Protected Types | |
using | WatcherSet |
Protected Member Functions | |
G4FastListNode< OBJECT > * | CreateNode (OBJECT *) |
G4FastListNode< OBJECT > * | Flag (OBJECT *) |
G4FastListNode< OBJECT > * | Unflag (OBJECT *) |
void | Unflag (G4FastListNode< OBJECT > *__trackListNode) |
void | CheckFlag (G4FastListNode< OBJECT > *) |
void | DeleteObject (OBJECT *) |
void | Hook (G4FastListNode< OBJECT > *, G4FastListNode< OBJECT > *) |
void | Unhook (G4FastListNode< OBJECT > *) |
G4FastListNode< OBJECT > * | EraseListNode (OBJECT *) |
G4FastListNode< G4Track > * | __GetNode (G4Track *__track) |
SPECIFIC TO TRACKS. | |
void | DeleteObject (G4Track *__track) |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | Flag (G4Track *__track) |
SPECIFIC TO TRACKS. | |
void | CheckFlag (G4FastListNode< G4Track > *__trackListNode) |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | EraseListNode (G4Track *__track) |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | __GetNode (G4Track *__track) |
SPECIFIC TO TRACKS. | |
void | DeleteObject (G4Track *__track) |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | Flag (G4Track *__track) |
SPECIFIC TO TRACKS. | |
void | CheckFlag (G4FastListNode< G4Track > *__trackListNode) |
SPECIFIC TO TRACKS. | |
G4FastListNode< G4Track > * | EraseListNode (G4Track *__track) |
SPECIFIC TO TRACKS. | |
Static Protected Member Functions | |
static G4FastListNode< OBJECT > * | __GetNode (OBJECT *) |
Protected Attributes | |
G4int | fNbObjects |
G4shared_ptr< _ListRef< G4FastList< OBJECT > > > | fListRef |
G4FastListNode< OBJECT > | fBoundary |
WatcherSet | fWatchers |
G4FastListNode< G4FastList< OBJECT > > * | fpNodeInManyLists |
G4FastList is used by G4TrackHolder to save G4IT tracks only. Its advantage lies to a fast search of a track in this list.
Definition at line 217 of file G4FastList.hh.
using G4FastList< OBJECT >::const_iterator = G4FastList_const_iterator<OBJECT> |
Definition at line 321 of file G4FastList.hh.
using G4FastList< OBJECT >::iterator = G4FastList_iterator<OBJECT> |
Definition at line 320 of file G4FastList.hh.
using G4FastList< OBJECT >::node = G4FastListNode<OBJECT> |
Definition at line 322 of file G4FastList.hh.
using G4FastList< OBJECT >::object = OBJECT |
Definition at line 319 of file G4FastList.hh.
|
protected |
Definition at line 313 of file G4FastList.hh.
G4FastList< OBJECT >::G4FastList | ( | ) |
G4FastList< OBJECT >::~G4FastList | ( | ) |
|
protected |
SPECIFIC TO TRACKS.
|
protected |
SPECIFIC TO TRACKS.
Definition at line 46 of file G4TrackList.cc.
|
staticprotected |
|
inline |
Definition at line 337 of file G4FastList.hh.
Referenced by G4ITTrackHolder::AddWatcher(), and G4FastList< OBJECT >::Watcher::Watch().
|
inline |
Definition at line 349 of file G4FastList.hh.
|
inline |
Referenced by G4ManyFastLists< OBJECT >::Add(), G4ManyFastLists< OBJECT >::AddGlobalWatcher(), G4ManyFastLists< OBJECT >::ClearLists(), G4ManyFastLists< OBJECT >::Holds(), G4DNAIRT::IRTSampling(), G4ITTrackHolder::KillTracks(), G4ManyFastLists_iterator< OBJECT >::operator--(), G4ManyFastLists< OBJECT >::RemoveLists(), and G4DNAIRT::SpaceBinning().
|
inline |
|
protected |
SPECIFIC TO TRACKS.
|
protected |
SPECIFIC TO TRACKS.
Definition at line 129 of file G4TrackList.cc.
|
protected |
void G4FastList< OBJECT >::clear | ( | ) |
Complexity = linear in size between __first and __last
Referenced by G4ManyFastLists< OBJECT >::RemoveLists().
|
protected |
|
protected |
SPECIFIC TO TRACKS.
|
protected |
SPECIFIC TO TRACKS.
Definition at line 65 of file G4TrackList.cc.
|
protected |
|
inline |
|
inline |
Referenced by G4ManyFastLists< OBJECT >::Add(), G4ManyFastLists< OBJECT >::AddGlobalWatcher(), G4ManyFastLists< OBJECT >::ClearLists(), G4ManyFastLists_iterator< OBJECT >::HasReachedEnd(), G4ManyFastLists< OBJECT >::Holds(), G4DNAIRT::IRTSampling(), G4ITTrackHolder::KillTracks(), G4ManyFastLists_iterator< OBJECT >::operator--(), G4ManyFastLists< OBJECT >::RemoveLists(), G4DNAIRT::SpaceBinning(), and G4FastList< OBJECT >::Watcher::~Watcher().
|
inline |
iterator G4FastList< OBJECT >::erase | ( | iterator | __first, |
iterator | __last ) |
Complexity = constant By storing the node inside the object, we avoid searching through all the container.
iterator G4FastList< OBJECT >::erase | ( | OBJECT * | ) |
Referenced by G4ITTrackHolder::KillTracks().
|
protected |
SPECIFIC TO TRACKS.
|
protected |
SPECIFIC TO TRACKS.
Definition at line 149 of file G4TrackList.cc.
|
protected |
|
protected |
SPECIFIC TO TRACKS.
|
protected |
SPECIFIC TO TRACKS.
Definition at line 99 of file G4TrackList.cc.
|
protected |
|
static |
G4FastList< G4Track > * G4FastList< G4Track >::GetList | ( | G4Track * | __track | ) |
SPECIFIC TO TRACKS.
G4FastList< G4Track > * G4FastList< G4Track >::GetList | ( | G4Track * | __track | ) |
SPECIFIC TO TRACKS.
Definition at line 176 of file G4TrackList.cc.
|
static |
|
inline |
Definition at line 332 of file G4FastList.hh.
Referenced by PriorityList::PushToListOfSecondaries().
G4FastListNode< G4Track > * G4FastList< G4Track >::GetNode | ( | G4Track * | __track | ) |
SPECIFIC TO TRACKS.
G4FastListNode< G4Track > * G4FastList< G4Track >::GetNode | ( | G4Track * | __track | ) |
SPECIFIC TO TRACKS.
Definition at line 162 of file G4TrackList.cc.
|
static |
Complexity = constant
bool G4FastList< G4Track >::Holds | ( | const G4Track * | track | ) | const |
SPECIFIC TO TRACKS.
bool G4FastList< G4Track >::Holds | ( | const G4Track * | track | ) | const |
SPECIFIC TO TRACKS.
Definition at line 92 of file G4TrackList.cc.
bool G4FastList< OBJECT >::Holds | ( | const OBJECT * | ) | const |
return an iterator that contains an empty node use for boundary checking only
|
protected |
iterator G4FastList< OBJECT >::insert | ( | iterator | , |
OBJECT * | ) |
|
static |
iterator G4FastList< OBJECT >::pop | ( | G4FastListNode< OBJECT > * | ) |
iterator G4FastList< OBJECT >::pop | ( | iterator | __first, |
iterator | __last ) |
iterator G4FastList< OBJECT >::pop | ( | OBJECT * | ) |
Referenced by G4ManyFastLists< OBJECT >::NotifyDeletingList(), and G4ManyFastLists< OBJECT >::Remove().
OBJECT * G4FastList< OBJECT >::pop_back | ( | ) |
|
inline |
|
inline |
void G4FastList< OBJECT >::remove | ( | OBJECT * | ) |
|
inline |
Definition at line 342 of file G4FastList.hh.
Referenced by G4ManyFastLists< OBJECT >::Remove(), and G4FastList< OBJECT >::Watcher::StopWatching().
|
inline |
Definition at line 327 of file G4FastList.hh.
|
static |
|
inline |
Definition at line 356 of file G4FastList.hh.
Referenced by PriorityList::GetNTracks(), and G4ITTrackHolder::KillTracks().
void G4FastList< OBJECT >::transferTo | ( | G4FastList< OBJECT > * | ) |
|
protected |
|
protected |
|
protected |
|
protected |
Definition at line 225 of file G4FastList.hh.
Referenced by G4FastList< OBJECT >::back().
|
protected |
Definition at line 223 of file G4FastList.hh.
|
protected |
Definition at line 220 of file G4FastList.hh.
Referenced by G4FastList< OBJECT >::back(), and G4FastList< OBJECT >::size().
|
protected |
Definition at line 316 of file G4FastList.hh.
Referenced by G4FastList< OBJECT >::GetListNode(), and G4FastList< OBJECT >::SetListNode().
|
protected |
Definition at line 315 of file G4FastList.hh.
Referenced by G4FastList< OBJECT >::AddWatcher(), and G4FastList< OBJECT >::RemoveWatcher().