Ilwis-Objects
1.0
GIS and Remote Sensing framework for data access and processing
|
#include <itemrange.h>
Public Member Functions | |
virtual QVariant | impliedValue (const QVariant &v) const =0 |
virtual quint32 | count () const =0 |
virtual SPDomainItem | item (quint32 raw) const =0 |
virtual SPDomainItem | item (const QString &nam) const =0 |
virtual SPDomainItem | itemByOrder (quint32 index) const =0 |
virtual bool | contains (const QVariant &name, bool inclusive=true) const =0 |
virtual bool | contains (SPRange rng, bool inclusive=true) const |
virtual bool | contains (const ItemRange &itemrng, bool inclusive=true) const |
virtual bool | isValid () const =0 |
virtual void | add (DomainItem *item)=0 |
virtual void | add (SPDomainItem item)=0 |
virtual void | remove (const QString &nm)=0 |
QVariant | ensure (const QVariant &v, bool inclusive=true) const |
virtual void | addRange (const ItemRange &range) |
virtual qint32 | gotoIndex (qint32 index, qint32 step) const =0 |
ItemRange * | merge (const QSharedPointer< Range > &otherRange) const |
virtual void | clear ()=0 |
![]() | |
virtual QString | toString () const =0 |
virtual IlwisTypes | valueType () const |
valueType returns the type of values contained in the range More... | |
virtual IlwisTypes | determineType () const |
determineType determines the minimal range needed type for this range. More... | |
virtual Range * | clone () const =0 |
template<typename T > | |
T * | merge (const QSharedPointer< T > &range1, const QSharedPointer< T > &range2, RenumberMap *rnm=0) |
virtual bool | isContinuous () const |
void | interpolation (const QString &ip) |
virtual QString | interpolation () const |
Static Public Member Functions | |
static DomainItem * | create (const QString &type) |
static void | addCreateItem (const QString &type, CreateItemFunc func) |
static ItemRange * | merge (const QSharedPointer< ItemRange > &nr1, const QSharedPointer< ItemRange > &nr2) |
Friends | |
template<typename T > | |
class | ItemDomain |
Additional Inherited Members | |
![]() | |
IlwisTypes | _vt |
QString | _interpolation |
Template for the ItemRange subclasses. A Range decides what kind of values the items on this range can take. a Range is an essential component of Domains because it determines the possible values within a domain
|
pure virtual |
Adds an item to this ItemRange.
the added item must be valid.
item | the item to be added |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
|
pure virtual |
Adds an item to this ItemRange.
The added item must be valid.
item | the item to be added |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
|
static |
??
|
virtual |
adds a certain ItemRange to this range.
In the case of duplicate items, only 1 will be kept in the final result.
The range that has to be added must be valid.
range | the range to be added |
Reimplemented in Ilwis::NumericItemRange.
|
pure virtual |
Checks if the ItemRange contains a certain item. Returns true if there is and item which name matches the given string.
name | name of the item |
inclusive | template parameter |
Implements Ilwis::Range.
Implemented in Ilwis::NamedIdentifierRange, Ilwis::ColorPalette, Ilwis::NumericItemRange, and Ilwis::IndexedIdentifierRange.
|
virtual |
Checks if the ItemRange contains a certain range of items.
The range must be valid.
rng | the range to be checked |
inclusive | template parameter |
Reimplemented in Ilwis::ColorPalette.
|
virtual |
|
pure virtual |
Query for the amount of items in this range.
Cannot be negative
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
|
static |
Checks if you can create a certain type of item with this ItemRange??
|
virtual |
at this moment a empty method, will always return the same double as you give it
Reimplemented from Ilwis::Range.
|
pure virtual |
combines a index and a step size into a new position the index cannot be lower as 0, neither can it be higher than the maximum index. step size may be negative.
index | the (current) index |
step | step size |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, and Ilwis::NumericItemRange.
|
pure virtual |
Transforms a QVariant into the String representation of this value on the range.
Will only work when the given value is in this range.
v | The QVariant you want translated |
Reimplemented from Ilwis::Range.
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
|
pure virtual |
checks the validity of this range.
Implements Ilwis::Range.
Implemented in Ilwis::NamedIdentifierRange, Ilwis::ColorPalette, Ilwis::IndexedIdentifierRange, and Ilwis::NumericItemRange.
|
pure virtual |
Query for an item based on the raw value of that item.
Will not work if there is no item with this raw value in the range.(returns null or undef)
raw | The raw value of the item |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
|
pure virtual |
Query for an item based on the name of that item.
Will not work if there is no item with this name in the range.(returns null or undef)
nam | the name of the item |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
|
pure virtual |
Query for an item based on the index of that item Will not work if there is no item on this index in the range.(returns null or undef)
index | the index of the item |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.
Merges this ItemRange with another.
Both ranges must be valid, and both ranges must be itemranges for this to work.
otherRange | the other range to be merged |
|
pure virtual |
Removes an item from this range.
If there is no item of this name in the range nothing will happen.
nm | the name of the item to be removed |
Implemented in Ilwis::NamedIdentifierRange, Ilwis::IndexedIdentifierRange, Ilwis::ColorPalette, and Ilwis::NumericItemRange.