Kanzi 3.9.10
kanzi::ViewRange Class Reference

View over another range. More...

#include <kanzi/core/property/view_range.hpp>

Inheritance diagram for kanzi::ViewRange:
[legend]

Classes

class  ViewRangeLocation
 Location class for indexed view range. More...
 

Static Public Member Functions

static bool adapt (AbstractRange &potentialViewRange, AbstractRange *sourceRange, size_t length)
 Reuses a view range.
 
static ViewRangeSharedPtr create (AbstractRangeSharedPtr sourceRange, size_t length)
 Creates a new view range over a range.
 

Protected Member Functions

AbstractRangeLocationPtr locationBeginOverride () override
 AbstractRange::locationBeginOverride() implementation.
 
 ViewRange (AbstractRangeSharedPtr sourceRange, size_t length)
 Creates a new view range over a range.
 
- Protected Member Functions inherited from kanzi::AbstractRange
 AbstractRange ()=default
 Constructor.
 
virtual bool adaptViewOverride (AbstractRange &potentialViewRange, size_t length)
 Implementation-dependent adaptation of a view over the range.
 
virtual AbstractRangeSharedPtr createViewOverride (size_t length)
 Implementation-dependent view over the range.
 
virtual AbstractRangeSharedPtr evaluateOverride ()
 Implementation-dependent evaluation of the range.
 
- Protected Member Functions inherited from kanzi::ViewRangeImpl
 ViewRangeImpl (AbstractRangeSharedPtr sourceRange, size_t length)
 Constructor.
 

Additional Inherited Members

- Public Member Functions inherited from kanzi::AbstractRange
bool adaptView (AbstractRange &potentialViewRange, size_t length)
 Attempts to reuse a view over this range.
 
AbstractRangeIterator beginIteration ()
 Gets an iterator to the beginning of this range.
 
AbstractRangeSharedPtr createView (size_t length)
 Creates a view over this range.
 
AbstractRangeSharedPtr evaluate ()
 Evaluate the abstract range.
 
AbstractRangeLocationPtr locationBegin ()
 Gets an iteratable location to beginning of the range.
 
virtual ~AbstractRange ()=default
 Destructor.
 
- Public Member Functions inherited from kanzi::ViewRangeImpl
AbstractRangegetSourceRange () const
 Gets the source range.
 
size_t getViewLength () const
 Gets the length of the view.
 
void setSourceRange (AbstractRangeSharedPtr sourceRange)
 Sets the source range.
 
void setViewLength (size_t viewLength)
 Sets the length of the view.
 
- Protected Attributes inherited from kanzi::ViewRangeImpl
size_t m_length
 Limiting length.
 
AbstractRangeSharedPtr m_sourceRange
 Source range.
 

Detailed Description

View over another range.

View range abstracts a view over another range, but with limited size. This version of the view range only provides an iterator access interface.

Constructor & Destructor Documentation

◆ ViewRange()

kanzi::ViewRange::ViewRange ( AbstractRangeSharedPtr sourceRange,
size_t length )
inlineexplicitprotected

Creates a new view range over a range.

Parameters
sourceRangeRange as input to the view range.
lengthView range length.

Member Function Documentation

◆ create()

static ViewRangeSharedPtr kanzi::ViewRange::create ( AbstractRangeSharedPtr sourceRange,
size_t length )
inlinestatic

Creates a new view range over a range.

Parameters
sourceRangeRange as input to the view range.
lengthView range length.

◆ adapt()

static bool kanzi::ViewRange::adapt ( AbstractRange & potentialViewRange,
AbstractRange * sourceRange,
size_t length )
static

Reuses a view range.

Parameters
potentialViewRangePotential view range.
sourceRangeSource range.
lengthView length.
Returns
If it is possible to use the existing range, true, otherwise false.
Since
Kanzi 3.9.6

◆ locationBeginOverride()

AbstractRangeLocationPtr kanzi::ViewRange::locationBeginOverride ( )
overrideprotectedvirtual

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