Kanzi  3.9.9
Kanzi Engine C++ API
kanzi::ImmutableIteratorRange Class Reference

Iterator location range pointing to a particular location of an iterator range. More...

#include <kanzi/core.ui/binding/iterator_range.hpp>

Inheritance diagram for kanzi::ImmutableIteratorRange:
[legend]

Public Member Functions

void advance ()
 Advance the iterator location. More...
 
- Public Member Functions inherited from kanzi::IteratorRange
void adapt (AbstractRange &range)
 Adapt another range. More...
 
PropertyObjectSharedPtr getPropertyObject ()
 Gets a property object from the current iterator location. More...
 
bool getPropertyValue (AbstractPropertyType propertyType, Variant &value)
 Gets a property value from the property object at current location. More...
 
bool getValue (Variant &value)
 Gets the value at current location. More...
 
- Public Member Functions inherited from kanzi::AbstractIndexedRange
PropertyObjectSharedPtr getPropertyObjectByIndex (size_t index)
 Gets a property object by index. More...
 
bool getPropertyValueByIndex (size_t index, AbstractPropertyType propertyType, Variant &value)
 Access a property in a property object at an index. More...
 
size_t getSize ()
 Gets the size of the indexed range. More...
 
bool getValueByIndex (size_t index, Variant &value)
 Reads a value by index and writes it to a variant. More...
 
- Public Member Functions inherited from kanzi::AbstractRange
bool adaptView (AbstractRange &potentialViewRange, size_t length)
 Attempts to reuse a view over this range. More...
 
AbstractRangeIterator beginIteration ()
 Gets an iterator to the beginning of this range. More...
 
AbstractRangeSharedPtr createView (size_t length)
 Creates a view over this range. More...
 
AbstractRangeSharedPtr evaluate ()
 Evaluate the abstract range. More...
 
AbstractRangeLocationPtr locationBegin ()
 Gets an iteratable location to beginning of the range. More...
 
virtual ~AbstractRange ()=default
 Destructor. More...
 

Static Public Member Functions

static ImmutableIteratorRangeSharedPtr create (const AbstractRangeIterator &sourceIterator)
 Creates a new iterator range. More...
 
- Static Public Member Functions inherited from kanzi::IteratorRange
static IteratorRangeSharedPtr create (AbstractRangeSharedPtr sourceRange)
 Creates a new iterator range. More...
 
static IteratorRangeSharedPtr create (const AbstractRangeIterator &sourceIterator)
 Creates a new iterator range. More...
 
static IteratorRangeSharedPtr create (AbstractRangeIterator &&sourceIterator)
 Creates a new iterator range. More...
 

Protected Member Functions

AbstractRangeSharedPtr evaluateOverride () override
 AbstractRange::evaluateOverride() implementation. More...
 
 ImmutableIteratorRange (const AbstractRangeIterator &sourceIterator)
 Constructor. More...
 
- Protected Member Functions inherited from kanzi::IteratorRange
PropertyObjectSharedPtr getPropertyObjectByIndexOverride (size_t index) override
 AbstractIndexedRange::getPropertyObjectByIndexOverride() implementation. More...
 
bool getPropertyValueByIndexOverride (size_t index, AbstractPropertyType propertyType, Variant &value) override
 AbstractIndexedRange::getPropertyValueByIndexOverride() implementation. More...
 
size_t getSizeOverride () override
 AbstractIndexedRange::getSizeOverride() implementation. More...
 
bool getValueByIndexOverride (size_t index, Variant &value) override
 AbstractIndexedRange::getValueByIndexOverride() implementation. More...
 
 IteratorRange (const AbstractRangeIterator &sourceIterator)
 Constructor. More...
 
 IteratorRange (AbstractRangeIterator &&sourceIterator)
 Constructor. More...
 
AbstractRangeLocationPtr locationBeginOverride () override
 AbstractRange::locationBeginOverride() implementation. More...
 
- Protected Member Functions inherited from kanzi::AbstractIndexedRange
bool adaptViewOverride (AbstractRange &potentialViewRange, size_t length) override
 AbstractRange::adaptViewOverride() implementation. More...
 
AbstractRangeSharedPtr createViewOverride (size_t length) override
 AbstractRange::createViewOverride() implementation. More...
 
- Protected Member Functions inherited from kanzi::AbstractRange
 AbstractRange ()=default
 Constructor. More...
 

Additional Inherited Members

- Public Types inherited from kanzi::IteratorRange
using const_iterator = vector< Variant >::const_iterator
 Const iterator type for values. More...
 
using iterator = vector< Variant >::iterator
 Iterator type for values. More...
 
- Protected Attributes inherited from kanzi::IteratorRange
AbstractRangeIterator m_iter
 Iterator into a source range. More...
 
AbstractRangeSharedPtr m_sourceRangeReference
 Reference to the source range. More...
 

Detailed Description

Iterator location range pointing to a particular location of an iterator range.

As opposed to the iterator range that advances when evaluated, and the first evaluation returns the initial location, evaluating IteratorLocationRange will not modify its own iterator and returns the next element in sequence.

Since
Kanzi 3.9.0

Constructor & Destructor Documentation

kanzi::ImmutableIteratorRange::ImmutableIteratorRange ( const AbstractRangeIterator sourceIterator)
explicitprotected

Constructor.

Parameters
sourceIteratorIterator to another range.

Member Function Documentation

static ImmutableIteratorRangeSharedPtr kanzi::ImmutableIteratorRange::create ( const AbstractRangeIterator sourceIterator)
static

Creates a new iterator range.

Parameters
sourceIteratorIterator to another range.
Returns
Iterator range shared pointer.
void kanzi::ImmutableIteratorRange::advance ( )

Advance the iterator location.

Called internally by Kanzi after the creation of ImmutableIterationRange as needed.

AbstractRangeSharedPtr kanzi::ImmutableIteratorRange::evaluateOverride ( )
overrideprotectedvirtual

AbstractRange::evaluateOverride() implementation.

Reimplemented from kanzi::IteratorRange.


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