Cogs.Core
Public Types | Public Member Functions | Private Attributes | List of all members
Cogs::PoolIterator< ResourceType > Struct Template Reference

Iterator type for iterating over resource pools accessing the actual wrapped resource instances. More...

#include <ResourcePolicies.h>

Public Types

typedef ResourceWrapper< ResourceType > WrapperType
 
typedef std::forward_iterator_tag iterator_category
 
typedef ResourceType value_type
 Value type for dereferencing the iterator is the templated ResourceType.
 
typedef size_t difference_type
 Difference type to calculate iterator distance.
 
typedef ResourceType * pointer
 Pointer type to the templated ResourceType.
 
typedef ResourceType & reference
 Reference type to the templated ResourceType.
 

Public Member Functions

 PoolIterator (WrapperType *current)
 
 PoolIterator (const PoolIterator &other)
 
PoolIterator operator++ ()
 
PoolIteratoroperator++ (int)
 
constexpr bool operator== (const PoolIterator &other) const
 
reference operator* ()
 
reference operator* () const
 
const pointer operator-> () const
 
pointer operator-> ()
 

Private Attributes

WrapperTypecurrent
 

Detailed Description

template<typename ResourceType>
struct Cogs::PoolIterator< ResourceType >

Iterator type for iterating over resource pools accessing the actual wrapped resource instances.

Definition at line 43 of file ResourcePolicies.h.

Member Typedef Documentation

◆ difference_type

template<typename ResourceType >
typedef size_t Cogs::PoolIterator< ResourceType >::difference_type

Difference type to calculate iterator distance.

Definition at line 53 of file ResourcePolicies.h.

◆ iterator_category

template<typename ResourceType >
typedef std::forward_iterator_tag Cogs::PoolIterator< ResourceType >::iterator_category

Definition at line 47 of file ResourcePolicies.h.

◆ pointer

template<typename ResourceType >
typedef ResourceType* Cogs::PoolIterator< ResourceType >::pointer

Pointer type to the templated ResourceType.

Definition at line 56 of file ResourcePolicies.h.

◆ reference

template<typename ResourceType >
typedef ResourceType& Cogs::PoolIterator< ResourceType >::reference

Reference type to the templated ResourceType.

Definition at line 59 of file ResourcePolicies.h.

◆ value_type

template<typename ResourceType >
typedef ResourceType Cogs::PoolIterator< ResourceType >::value_type

Value type for dereferencing the iterator is the templated ResourceType.

Definition at line 50 of file ResourcePolicies.h.

◆ WrapperType

template<typename ResourceType >
typedef ResourceWrapper<ResourceType> Cogs::PoolIterator< ResourceType >::WrapperType

Definition at line 45 of file ResourcePolicies.h.

Constructor & Destructor Documentation

◆ PoolIterator() [1/2]

template<typename ResourceType >
Cogs::PoolIterator< ResourceType >::PoolIterator ( WrapperType current)
inline

Definition at line 61 of file ResourcePolicies.h.

◆ PoolIterator() [2/2]

template<typename ResourceType >
Cogs::PoolIterator< ResourceType >::PoolIterator ( const PoolIterator< ResourceType > &  other)
inline

Definition at line 63 of file ResourcePolicies.h.

Member Function Documentation

◆ operator*() [1/2]

template<typename ResourceType >
reference Cogs::PoolIterator< ResourceType >::operator* ( )
inline

Definition at line 70 of file ResourcePolicies.h.

◆ operator*() [2/2]

template<typename ResourceType >
reference Cogs::PoolIterator< ResourceType >::operator* ( ) const
inline

Definition at line 72 of file ResourcePolicies.h.

◆ operator++() [1/2]

template<typename ResourceType >
PoolIterator Cogs::PoolIterator< ResourceType >::operator++ ( )
inline

Definition at line 65 of file ResourcePolicies.h.

◆ operator++() [2/2]

template<typename ResourceType >
PoolIterator & Cogs::PoolIterator< ResourceType >::operator++ ( int  )
inline

Definition at line 66 of file ResourcePolicies.h.

◆ operator->() [1/2]

template<typename ResourceType >
pointer Cogs::PoolIterator< ResourceType >::operator-> ( )
inline

Definition at line 76 of file ResourcePolicies.h.

◆ operator->() [2/2]

template<typename ResourceType >
const pointer Cogs::PoolIterator< ResourceType >::operator-> ( ) const
inline

Definition at line 74 of file ResourcePolicies.h.

◆ operator==()

template<typename ResourceType >
constexpr bool Cogs::PoolIterator< ResourceType >::operator== ( const PoolIterator< ResourceType > &  other) const
inlineconstexpr

Definition at line 68 of file ResourcePolicies.h.

Member Data Documentation

◆ current

template<typename ResourceType >
WrapperType* Cogs::PoolIterator< ResourceType >::current
private

Definition at line 79 of file ResourcePolicies.h.


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