Geant4  10.02.p02
G4FastListNode< OBJECT > Singleton Reference

G4FastListNode is the entity actually stored by the G4FastList. More...

#include <G4FastList.hh>

+ Inheritance diagram for G4FastListNode< OBJECT >:
+ Collaboration diagram for G4FastListNode< OBJECT >:

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=0)
 Default constructor. More...
 
void SetNext (G4FastListNode< OBJECT > *node)
 
void SetPrevious (G4FastListNode< OBJECT > *node)
 
void SetAttachedToList (bool flag)
 
void UnHook ()
 
void DetachYourSelf ()
 

Public Attributes

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

Private Types

typedef type_wrapper< OBJECT > ObjectW
 
typedef G4FastList< typename
ObjectW::type
LIST
 
typedef type_wrapper
< G4FastList< OBJECT > > 
ListW
 
typedef type_wrapper
< G4ManyFastLists< OBJECT > > 
ManyListsW
 
typedef type_wrapper
< G4ManyFastLists_iterator
< OBJECT > > 
ManyListsIteratorW
 

Detailed Description

template<class OBJECT>
singleton 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 127 of file G4FastList.hh.

Member Typedef Documentation

template<class OBJECT>
typedef G4FastList<typename ObjectW::type> G4FastListNode< OBJECT >::LIST
private

Definition at line 130 of file G4FastList.hh.

template<class OBJECT>
typedef type_wrapper<G4FastList<OBJECT> > G4FastListNode< OBJECT >::ListW
private

Definition at line 132 of file G4FastList.hh.

template<class OBJECT>
typedef type_wrapper<G4ManyFastLists_iterator<OBJECT> > G4FastListNode< OBJECT >::ManyListsIteratorW
private

Definition at line 136 of file G4FastList.hh.

template<class OBJECT>
typedef type_wrapper<G4ManyFastLists<OBJECT> > G4FastListNode< OBJECT >::ManyListsW
private

Definition at line 134 of file G4FastList.hh.

template<class OBJECT>
typedef type_wrapper<OBJECT> G4FastListNode< OBJECT >::ObjectW
private

Definition at line 129 of file G4FastList.hh.

Constructor & Destructor Documentation

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

Default constructor.

Member Function Documentation

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

Referenced by G4FastList< G4Track >::EraseListNode().

+ Here is the caller graph for this function:

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

Definition at line 164 of file G4FastList.hh.

Referenced by G4FastList< G4Track >::EraseListNode(), G4FastList_iterator< OBJECT >::operator++(), and G4FastList_const_iterator< OBJECT >::operator++().

+ Here is the caller graph for this function:

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

Definition at line 168 of file G4FastList.hh.

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

Definition at line 154 of file G4FastList.hh.

Referenced by G4FastList< G4Track >::CheckFlag(), G4FastList_const_iterator< OBJECT >::operator*(), G4ManyFastLists_iterator< OBJECT >::operator--(), G4FastList_const_iterator< OBJECT >::operator->(), and G4ManyFastLists< G4Track >::RemoveLists().

+ Here is the caller graph for this function:

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

Definition at line 159 of file G4FastList.hh.

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

Definition at line 172 of file G4FastList.hh.

Referenced by G4FastList< G4FastList< G4Track > >::back(), G4FastList_iterator< OBJECT >::operator--(), and G4FastList_const_iterator< OBJECT >::operator--().

+ Here is the caller graph for this function:

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

Definition at line 176 of file G4FastList.hh.

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

Definition at line 180 of file G4FastList.hh.

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

Definition at line 197 of file G4FastList.hh.

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

Definition at line 189 of file G4FastList.hh.

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

Definition at line 193 of file G4FastList.hh.

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

Member Data Documentation

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

Definition at line 207 of file G4FastList.hh.

Referenced by G4FastList< G4Track >::CheckFlag(), and G4FastList< G4Track >::Flag().

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

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