Geant4 11.2.2
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4FastListNode< OBJECT > Class Template Reference

#include <G4FastList.hh>

Public Member Functions

 ~G4FastListNode ()
 
OBJECT * GetObject ()
 
const OBJECT * GetObject () const
 
G4FastListNode< OBJECT > * GetNext ()
 
const G4FastListNode< OBJECT > * GetNext () const
 
G4FastListNode< OBJECT > * GetPrevious ()
 
const G4FastListNode< OBJECT > * GetPrevious () const
 
bool IsAttached ()
 
 G4FastListNode (OBJECT *track=nullptr)
 
void SetNext (G4FastListNode< OBJECT > *node)
 
void SetPrevious (G4FastListNode< OBJECT > *node)
 
void SetAttachedToList (bool flag)
 
void UnHook ()
 
void DetachYourSelf ()
 
void DetachYourSelf ()
 
void DetachYourSelf ()
 

Public Attributes

bool fAttachedToList
 
G4shared_ptr< _ListRef< G4FastList< OBJECT > > > fListRef
 
OBJECT * fpObject
 
G4FastListNode< OBJECT > * fpPrevious
 
G4FastListNode< OBJECT > * fpNext
 

Detailed Description

template<class OBJECT>
class G4FastListNode< OBJECT >

G4FastListNode is the entity actually stored by the G4FastList. A G4FastListNode should belong only to one list. Also, an object should belong only to one list.

Definition at line 124 of file G4FastList.hh.

Constructor & Destructor Documentation

◆ ~G4FastListNode()

template<class OBJECT >
G4FastListNode< OBJECT >::~G4FastListNode ( )

◆ G4FastListNode()

template<class OBJECT >
G4FastListNode< OBJECT >::G4FastListNode ( OBJECT * track = nullptr)

Default constructor

Member Function Documentation

◆ DetachYourSelf() [1/3]

template<class OBJECT >
void G4FastListNode< OBJECT >::DetachYourSelf ( )

◆ DetachYourSelf() [2/3]

void G4FastListNode< G4Track >::DetachYourSelf ( )

◆ DetachYourSelf() [3/3]

void G4FastListNode< G4Track >::DetachYourSelf ( )

Definition at line 81 of file G4TrackList.cc.

82 {
83 if(fpObject != nullptr)
84 {
85 GetIT(fpObject)->SetListNode(nullptr);
86 }
87 }
G4IT * GetIT(const G4Track *track)
Definition G4IT.cc:48
OBJECT * fpObject
void SetListNode(G4TrackListNode *node)
Definition G4IT.hh:152

◆ GetNext() [1/2]

◆ GetNext() [2/2]

template<class OBJECT >
const G4FastListNode< OBJECT > * G4FastListNode< OBJECT >::GetNext ( ) const
inline

Definition at line 165 of file G4FastList.hh.

166 {
167 return fpNext;
168 }

◆ GetObject() [1/2]

template<class OBJECT >
OBJECT * G4FastListNode< OBJECT >::GetObject ( )
inline

◆ GetObject() [2/2]

template<class OBJECT >
const OBJECT * G4FastListNode< OBJECT >::GetObject ( ) const
inline

Definition at line 156 of file G4FastList.hh.

157 {
158 return fpObject;
159 }

◆ GetPrevious() [1/2]

template<class OBJECT >
G4FastListNode< OBJECT > * G4FastListNode< OBJECT >::GetPrevious ( )
inline

◆ GetPrevious() [2/2]

template<class OBJECT >
const G4FastListNode< OBJECT > * G4FastListNode< OBJECT >::GetPrevious ( ) const
inline

Definition at line 173 of file G4FastList.hh.

174 {
175 return fpPrevious;
176 }

◆ IsAttached()

template<class OBJECT >
bool G4FastListNode< OBJECT >::IsAttached ( )
inline

Definition at line 177 of file G4FastList.hh.

178 {
179 return fAttachedToList;
180 }

◆ SetAttachedToList()

template<class OBJECT >
void G4FastListNode< OBJECT >::SetAttachedToList ( bool flag)
inline

Definition at line 194 of file G4FastList.hh.

195 {
196 fAttachedToList = flag;
197 }

◆ SetNext()

template<class OBJECT >
void G4FastListNode< OBJECT >::SetNext ( G4FastListNode< OBJECT > * node)
inline

Definition at line 186 of file G4FastList.hh.

187 {
188 fpNext = node;
189 }

◆ SetPrevious()

template<class OBJECT >
void G4FastListNode< OBJECT >::SetPrevious ( G4FastListNode< OBJECT > * node)
inline

Definition at line 190 of file G4FastList.hh.

191 {
192 fpPrevious = node;
193 }

◆ UnHook()

template<class OBJECT >
void G4FastListNode< OBJECT >::UnHook ( )

Member Data Documentation

◆ fAttachedToList

template<class OBJECT >
bool G4FastListNode< OBJECT >::fAttachedToList

◆ fListRef

template<class OBJECT >
G4shared_ptr<_ListRef<G4FastList<OBJECT> > > G4FastListNode< OBJECT >::fListRef

◆ fpNext

template<class OBJECT >
G4FastListNode<OBJECT>* G4FastListNode< OBJECT >::fpNext

◆ fpObject

template<class OBJECT >
OBJECT* G4FastListNode< OBJECT >::fpObject

◆ fpPrevious

template<class OBJECT >
G4FastListNode<OBJECT>* G4FastListNode< OBJECT >::fpPrevious

The documentation for this class was generated from the following file: