Dataflow Runtime API  3.1.1.0
Public Member Functions | Protected Attributes | List of all members
imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > Class Template Reference

LinkedList class iterator. More...

#include <Imt.Base.Core.Util/LinkedListConstIterator.h>

Public Member Functions

 LinkedListConstIterator (const LinkedListNode *ptr=NULL)
 constructor More...
 
LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > & operator= (const LinkedListNode *ptr)
 asignment operator More...
 
 operator bool () const
 typecast operator More...
 
bool operator== (const LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > &rawIterator) const
 equal operator More...
 
bool operator!= (const LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > &rawIterator) const
 not equal operator More...
 
LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > & operator++ ()
 increments operator More...
 
LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > & operator-- ()
 decrements operator More...
 
const LinkedListNode & operator* () const
 get the current Node as const reference More...
 
const LinkedListNode * operator-> () const
 dereferencing operator More...
 
const LinkedListNode * getPtr () const
 get current pointer More...
 
const LinkedListNode * getConstPtr () const
 get current pointer as const More...
 

Protected Attributes

const LinkedListNode * m_pNode
 stores the address to the current node More...
 

Detailed Description

template<typename LinkedListNode>
class imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >

LinkedList class iterator.

LinkedListConstIterator specialization for bidirectional iteration

Template Parameters
LinkedListNodeNode type used by a LinkedList object

Constructor & Destructor Documentation

◆ LinkedListConstIterator()

template<typename LinkedListNode >
imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::LinkedListConstIterator ( const LinkedListNode *  ptr = NULL)
inline

constructor

Parameters
ptrto a valid LinkedList Node

Member Function Documentation

◆ getConstPtr()

template<typename LinkedListNode >
const LinkedListNode* imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::getConstPtr ( ) const
inline

get current pointer as const

Returns
the current Node the iterator points to as const pointer reference

◆ getPtr()

template<typename LinkedListNode >
const LinkedListNode* imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::getPtr ( ) const
inline

get current pointer

Note
same as the operator->
Returns
the current Node the iterator points to as pointer reference

◆ operator bool()

template<typename LinkedListNode >
imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator bool ( ) const
inline

typecast operator

Returns
true if the iterator is pointing to a valid Node; otherwise false is returned

◆ operator!=()

template<typename LinkedListNode >
bool imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator!= ( const LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > &  rawIterator) const
inline

not equal operator

Parameters
rawIteratorthe right hand side object to compare.
Returns
true if the containing inside the node is NOT equal between the two compared nodes. Otherwise false is returned.

◆ operator*()

template<typename LinkedListNode >
const LinkedListNode& imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator* ( ) const
inline

get the current Node as const reference

Returns
the current Node the iterator points to

◆ operator++()

template<typename LinkedListNode >
LinkedListConstIterator<LinkedListNode, cIteratorType::BIDIRECTIONAL>& imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator++ ( )
inline

increments operator

Increments the node the iterator points to.

Returns
the node after incrementing has finished

◆ operator--()

template<typename LinkedListNode >
LinkedListConstIterator<LinkedListNode, cIteratorType::BIDIRECTIONAL>& imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator-- ( )
inline

decrements operator

Decrements the node the iterator points to.

Returns
the node after decrementing has finished

◆ operator->()

template<typename LinkedListNode >
const LinkedListNode* imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator-> ( ) const
inline

dereferencing operator

Returns
the current Node the iterator points to as pointer reference

◆ operator=()

template<typename LinkedListNode >
LinkedListConstIterator<LinkedListNode, cIteratorType::BIDIRECTIONAL>& imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator= ( const LinkedListNode *  ptr)
inline

asignment operator

◆ operator==()

template<typename LinkedListNode >
bool imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::operator== ( const LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL > &  rawIterator) const
inline

equal operator

Parameters
rawIteratorthe right hand side object to compare.
Returns
true if the containing inside the node is equal between the two compared nodes. Otherwise false is returned.

Member Data Documentation

◆ m_pNode

template<typename LinkedListNode >
const LinkedListNode* imt::base::core::util::LinkedListConstIterator< LinkedListNode, cIteratorType::BIDIRECTIONAL >::m_pNode
protected

stores the address to the current node


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