Geant4-11
Public Types | Public Member Functions | Data Fields
G4FastList_const_iterator< OBJECT > Struct Template Reference

#include <G4FastList.hh>

Public Types

typedef G4FastListNode< OBJECT > _Node
 
typedef G4FastList_const_iterator< OBJECT > _Self
 

Public Member Functions

 G4FastList_const_iterator ()=default
 
 G4FastList_const_iterator (const _Node *__x)
 
 G4FastList_const_iterator (const G4FastList_const_iterator &right)=default
 
 G4FastList_const_iterator (const G4FastList_iterator< OBJECT > &right)
 
G4bool operator!= (const _Self &__x) const
 
const OBJECT * operator* () const
 
_Selfoperator++ ()
 
_Self operator++ (int)
 
_Selfoperator-- ()
 
_Self operator-- (int)
 
const OBJECT * operator-> () const
 
_Selfoperator= (const G4FastList_const_iterator &right)=default
 
_Selfoperator= (const G4FastList_iterator< OBJECT > &right)
 
G4bool operator== (const _Self &__x) const
 

Data Fields

const _NodefpNode = nullptr
 

Detailed Description

template<typename OBJECT>
struct G4FastList_const_iterator< OBJECT >

G4FastList_iterator enables to go through the tracks contained by a list.

Definition at line 544 of file G4FastList.hh.

Member Typedef Documentation

◆ _Node

template<typename OBJECT >
typedef G4FastListNode<OBJECT> G4FastList_const_iterator< OBJECT >::_Node

Definition at line 548 of file G4FastList.hh.

◆ _Self

template<typename OBJECT >
typedef G4FastList_const_iterator<OBJECT> G4FastList_const_iterator< OBJECT >::_Self

Definition at line 547 of file G4FastList.hh.

Constructor & Destructor Documentation

◆ G4FastList_const_iterator() [1/4]

template<typename OBJECT >
G4FastList_const_iterator< OBJECT >::G4FastList_const_iterator ( )
default

◆ G4FastList_const_iterator() [2/4]

template<typename OBJECT >
G4FastList_const_iterator< OBJECT >::G4FastList_const_iterator ( const _Node __x)
inlineexplicit

Definition at line 552 of file G4FastList.hh.

552 :
553 fpNode(__x)
554 {
555 }

◆ G4FastList_const_iterator() [3/4]

template<typename OBJECT >
G4FastList_const_iterator< OBJECT >::G4FastList_const_iterator ( const G4FastList_const_iterator< OBJECT > &  right)
default

◆ G4FastList_const_iterator() [4/4]

template<typename OBJECT >
G4FastList_const_iterator< OBJECT >::G4FastList_const_iterator ( const G4FastList_iterator< OBJECT > &  right)
inline

Definition at line 560 of file G4FastList.hh.

560 :
561 fpNode(right.GetNode())
562 {
563 }

Member Function Documentation

◆ operator!=()

template<typename OBJECT >
G4bool G4FastList_const_iterator< OBJECT >::operator!= ( const _Self __x) const
inline

Definition at line 618 of file G4FastList.hh.

619 {
620 return (fpNode != __x.fpNode);
621 }

References G4FastList_const_iterator< OBJECT >::fpNode.

◆ operator*()

template<typename OBJECT >
const OBJECT * G4FastList_const_iterator< OBJECT >::operator* ( ) const
inline

Definition at line 572 of file G4FastList.hh.

573 {
574 if(fpNode == 0) return 0;
575 return fpNode->GetObject();
576 }
OBJECT * GetObject()
Definition: G4FastList.hh:152

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastListNode< OBJECT >::GetObject().

◆ operator++() [1/2]

template<typename OBJECT >
_Self & G4FastList_const_iterator< OBJECT >::operator++ ( )
inline

Definition at line 586 of file G4FastList.hh.

587 {
588 fpNode = fpNode->GetNext();
589 return *this;
590 }
G4FastListNode< OBJECT > * GetNext()
Definition: G4FastList.hh:162

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastListNode< OBJECT >::GetNext().

◆ operator++() [2/2]

template<typename OBJECT >
_Self G4FastList_const_iterator< OBJECT >::operator++ ( int  )
inline

Definition at line 592 of file G4FastList.hh.

593 {
594 _Self __tmp = *this;
595 fpNode = fpNode->GetNext();
596 return __tmp;
597 }
G4FastList_const_iterator< OBJECT > _Self
Definition: G4FastList.hh:547

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastListNode< OBJECT >::GetNext().

◆ operator--() [1/2]

template<typename OBJECT >
_Self & G4FastList_const_iterator< OBJECT >::operator-- ( )
inline

Definition at line 600 of file G4FastList.hh.

601 {
603 return *this;
604 }
G4FastListNode< OBJECT > * GetPrevious()
Definition: G4FastList.hh:170

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastListNode< OBJECT >::GetPrevious().

◆ operator--() [2/2]

template<typename OBJECT >
_Self G4FastList_const_iterator< OBJECT >::operator-- ( int  )
inline

Definition at line 606 of file G4FastList.hh.

607 {
608 _Self __tmp = *this;
610 return __tmp;
611 }

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastListNode< OBJECT >::GetPrevious().

◆ operator->()

template<typename OBJECT >
const OBJECT * G4FastList_const_iterator< OBJECT >::operator-> ( ) const
inline

Definition at line 579 of file G4FastList.hh.

580 {
581 if(fpNode == 0) return 0;
582 return fpNode->GetObject();
583 }

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastListNode< OBJECT >::GetObject().

◆ operator=() [1/2]

template<typename OBJECT >
_Self & G4FastList_const_iterator< OBJECT >::operator= ( const G4FastList_const_iterator< OBJECT > &  right)
default

◆ operator=() [2/2]

template<typename OBJECT >
_Self & G4FastList_const_iterator< OBJECT >::operator= ( const G4FastList_iterator< OBJECT > &  right)
inline

Definition at line 565 of file G4FastList.hh.

566 {
567 fpNode = right.GetNode();
568 return *this;
569 }

References G4FastList_const_iterator< OBJECT >::fpNode, and G4FastList_iterator< OBJECT >::GetNode().

◆ operator==()

template<typename OBJECT >
G4bool G4FastList_const_iterator< OBJECT >::operator== ( const _Self __x) const
inline

Definition at line 613 of file G4FastList.hh.

614 {
615 return (fpNode == __x.fpNode);
616 }

References G4FastList_const_iterator< OBJECT >::fpNode.

Field Documentation

◆ fpNode

template<typename OBJECT >
const _Node* G4FastList_const_iterator< OBJECT >::fpNode = nullptr

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