52 if (__trackListNode == 0)
55 exceptionDescription <<
"This track " <<
GetIT(__track)->
GetName();
56 exceptionDescription <<
" was not connected to any trackList ";
58 exceptionDescription);
61 return __trackListNode;
105 if (__trackListNode != 0)
111 exceptionDescription <<
"This track " << __iTrack->
GetName();
112 exceptionDescription <<
" is already attached to a TrackList ";
113 G4Exception(
"G4FastList<OBJECT>::Flag",
"G4TrackList001",
115 exceptionDescription);
125 return __trackListNode;
132 if (__trackListNode->
fListRef->fpList !=
this)
136 exceptionDescription <<
"The track " <<
GetIT(track)->
GetName()
138 <<
" is not correctly linked to a TrackList."
140 <<
"You are probably trying to withdraw this track "
141 <<
"from the list but it probably does not belong to "
142 <<
"this track list." <<
G4endl;
143 G4Exception(
"G4FastList<OBJECT>::CheckFlag",
"G4FastList002",
168 if (__trackListNode == 0)
172 return __trackListNode;
182 if(__trackListNode == 0)
return 0;
183 if(__trackListNode->
fListRef ==
nullptr)
return 0;
185 return __trackListNode->
fListRef->fpList;
G4FastListNode< OBJECT > * Unflag(OBJECT *)
G4FastListNode< OBJECT > * GetNext()
void DeleteObject(OBJECT *)
std::ostringstream G4ExceptionDescription
G4TrackListNode * GetListNode()
void DeleteSecondaryVector()
static G4AllocatorList * GetAllocatorListIfExist()
static G4FastList< OBJECT > * GetList(OBJECT *)
G4FastListNode< OBJECT > * EraseListNode(OBJECT *)
virtual const G4String & GetName() const =0
G4shared_ptr< _ListRef< G4FastList< OBJECT > > > fListRef
const G4Step * GetStep() const
void SetListNode(G4TrackListNode *node)
void CheckFlag(G4FastListNode< OBJECT > *)
G4IT * GetIT(const G4Track *track)
bool Holds(const OBJECT *) const
return an iterator that contains an empty node use for boundary checking only
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *comments)
static G4FastListNode< OBJECT > * GetNode(OBJECT *)
Complexity = constant.
G4FastListNode< G4FastList< OBJECT > > * GetListNode()
G4TrackVector * GetfSecondary()
G4FastListNode< OBJECT > * Flag(OBJECT *)
static G4FastListNode< OBJECT > * __GetNode(OBJECT *)
G4shared_ptr< _ListRef< G4FastList< OBJECT > > > fListRef
void Unhook(G4FastListNode< OBJECT > *)