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

Indexed property access range. More...

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

Inheritance diagram for kanzi::IndexedPropertyAccessRange:
[legend]

Classes

class  IndexedPropertyAccessRangeLocation
 Location implementation for indexed property access range. More...
 

Public Member Functions

void adapt (AbstractIndexedRange &sourceRange, AbstractPropertyType propertyType)
 Adapts a new range and property type. More...
 
AbstractPropertyType getPropertyType () const
 Gets the property type used for access. 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 IndexedPropertyAccessRangeSharedPtr create (AbstractIndexedRangeSharedPtr sourceRange, AbstractPropertyType propertyType)
 Creates a new iterator range. More...
 

Protected Member Functions

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...
 
 IndexedPropertyAccessRange (AbstractIndexedRangeSharedPtr sourceRange, AbstractPropertyType propertyType)
 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...
 
virtual AbstractRangeSharedPtr evaluateOverride ()
 Implementation-dependent evaluation of the range. More...
 

Protected Attributes

AbstractPropertyType m_propertyType
 Property type being accessed. More...
 
AbstractIndexedRangeSharedPtr m_sourceRangeReference
 Reference to the source range. More...
 

Detailed Description

Indexed property access range.

Wraps property access from a range but includes the indexed access interface.

Since
Kanzi 3.9.0

Constructor & Destructor Documentation

kanzi::IndexedPropertyAccessRange::IndexedPropertyAccessRange ( AbstractIndexedRangeSharedPtr  sourceRange,
AbstractPropertyType  propertyType 
)
inlineexplicitprotected

Constructor.

Parameters
sourceRangeRange to iterate.
propertyTypeProperty type to access.

Member Function Documentation

static IndexedPropertyAccessRangeSharedPtr kanzi::IndexedPropertyAccessRange::create ( AbstractIndexedRangeSharedPtr  sourceRange,
AbstractPropertyType  propertyType 
)
static

Creates a new iterator range.

Parameters
sourceRangeRange to iterate.
propertyTypeProperty type to access.
Returns
Property access range shared pointer.
void kanzi::IndexedPropertyAccessRange::adapt ( AbstractIndexedRange sourceRange,
AbstractPropertyType  propertyType 
)

Adapts a new range and property type.

Parameters
sourceRangeRange to iterate.
propertyTypeProperty type to access.
AbstractPropertyType kanzi::IndexedPropertyAccessRange::getPropertyType ( ) const
inline

Gets the property type used for access.

Returns
Property type.
AbstractRangeLocationPtr kanzi::IndexedPropertyAccessRange::locationBeginOverride ( )
overrideprotectedvirtual
size_t kanzi::IndexedPropertyAccessRange::getSizeOverride ( )
overrideprotectedvirtual
PropertyObjectSharedPtr kanzi::IndexedPropertyAccessRange::getPropertyObjectByIndexOverride ( size_t  index)
overrideprotectedvirtual
bool kanzi::IndexedPropertyAccessRange::getPropertyValueByIndexOverride ( size_t  index,
AbstractPropertyType  propertyType,
Variant value 
)
overrideprotectedvirtual
bool kanzi::IndexedPropertyAccessRange::getValueByIndexOverride ( size_t  index,
Variant value 
)
overrideprotectedvirtual

Member Data Documentation

AbstractIndexedRangeSharedPtr kanzi::IndexedPropertyAccessRange::m_sourceRangeReference
protected

Reference to the source range.

AbstractPropertyType kanzi::IndexedPropertyAccessRange::m_propertyType
protected

Property type being accessed.


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