rwlogo

Rogue Wave Views
Maps Package API Reference Guide

Product Documentation:

Rogue Wave Views
Documentation Home

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros
List of all members | Public Member Functions | Protected Member Functions | Friends
IlvObjectSDOFeatureIterator Class Reference

This class converts Oracle Spatial geometries retrieved from an Oracle database (9i and above), into IlvMapFeature objects. More...

#include <ilviews/maps/format/oracle/objectmodel/8iread.h>

Inheritance diagram for IlvObjectSDOFeatureIterator:
IlvMapFeatureIterator

Public Member Functions

 IlvObjectSDOFeatureIterator (IldDbms *dbms, const char *request, const char *geometryName="GEOMETRY", const char *keyColumnName=0, const char *xDimensionName=0, const char *yDimensionName=0)
 Creates a new feature iterator to read geometries from the specified request. More...
 
 IlvObjectSDOFeatureIterator (IldRequest *request, const char *geometryName="GEOMETRY", const char *keyColumnName=0, const char *xDimensionName=0, const char *yDimensionName=0)
 Creates a new feature iterator to read geometries from the specified request, using the column named geometryName. More...
 
 IlvObjectSDOFeatureIterator (IldRequest *request, const char *geometryName, IlvObjectSDOKeyExtractor *keyExtractor, const char *xDimensionName=0, const char *yDimensionName=0)
 Creates a new feature iterator to read geometries from the specified request. More...
 
virtual IlvFeatureRenderergetDefaultFeatureRenderer (IlvDisplay *display)
 Returns the default renderer for this feature iterator. More...
 
virtual IlvMapsError getInitStatus () const
 Returns the error code that may have happened during the iterator initialization. More...
 
virtual IlBoolean getLowerRightCorner (IlvCoordinate &coord) const
 Returns IlFalse. More...
 
virtual const IlvMapFeaturegetNextFeature (IlvMapsError &status)
 Converts the next SDO geometry of the iterator into an IlvMapFeature object. More...
 
virtual IlvMapFeatureIdgetNextFeatureId (IlvMapsError &status)
 Returns the feature ID for the next object. More...
 
const IlvProjectiongetProjection () const
 Returns the projection of the data source.
 
virtual IlBoolean getUpperLeftCorner (IlvCoordinate &coord) const
 Returns IlFalse. More...
 
IlBoolean isGeoreferenced () const
 Returns IlTrue if a source projection has been assigned to the iterator. More...
 
IlBoolean isLoadingAttributes () const
 Returns IlTrue if this feature iterator is loading attributes. More...
 
void setLoadingAttributes (IlBoolean loadAttributes)
 If loadAttributes is set to IlTrue, the iterator will attach attributes to the features read. More...
 
void setSourceProjection (IlvProjection *projection)
 Used to specify the source projection of the geometries stored in the SDO database. More...
 
virtual IlBoolean skipNextFeature (IlvMapsError &status)
 Skips the next feature. More...
 
- Public Member Functions inherited from IlvMapFeatureIterator
virtual IlvClassInfogetClassInfo () const =0
 Returns the class information for this feature iterator. More...
 

Protected Member Functions

virtual
IlvFeatureAttributeProperty
makeAttributes (IldRequest *req, IlvMapsError &status)
 Reads attributes from the specified result set row. More...
 
virtual IlvMapGeometrymakeGeometry (IldADTValue *geomADT, IlvMapsError &status)
 Creates a geometry from the specified object. More...
 

Friends

class IlvDefaultObjectSDOTileLoader
 

Additional Inherited Members

- Static Public Member Functions inherited from IlvMapFeatureIterator
static IlvClassInfoClassInfo ()
 Returns the class information of the class. More...
 
static IlvClassInfo ** ClassInfoRef ()
 Returns the address of the class information of the class. More...
 

Detailed Description

This class converts Oracle Spatial geometries retrieved from an Oracle database (9i and above), into IlvMapFeature objects.

Library: ilvdbmaps

It supports the object implementation of Oracle Spatial. It can use an IlvObjectSDOKeyExtractor in order to extract IlvMapFeatureIds from the current request from where it extracts the map features too.

See Also
IlvObjectSDOWriter

Constructor & Destructor Documentation

IlvObjectSDOFeatureIterator::IlvObjectSDOFeatureIterator ( IldDbms *  dbms,
const char *  request,
const char *  geometryName = "GEOMETRY",
const char *  keyColumnName = 0,
const char *  xDimensionName = 0,
const char *  yDimensionName = 0 
)

Creates a new feature iterator to read geometries from the specified request.

Note that if you pass an keyColumnName (that should represent a DB column whose datatype corresponds to IldIntegerType, IldByteType, IldStringType or IldLongTextType and that has to be a unique Key), the iterator will use a default key extractor in order to associate the column value as an IlvMapFeatureId of the map feature returned. You can use IlvMapFeature::getId() in order to retrieve this value.

Parameters
dbmsThe IldDbms containing the connection to Oracle.
requestThe string representing the query to be executed.
geometryNameThe name of the column containing geometries.
keyColumnNameThe name of the column containing an ID considered as a Key for each geometry. If set to 0, no ID is associated to this feature.
xDimensionNameThe name of the X dimension. If set to 0, the index of the X dimension in the metadata table (in the SDO_DIM_ARRAY) will be considered as 0.
yDimensionNameThe name of the Y dimension. If set to 0, the index of the Y dimension in the metadata table (in the SDO_DIM_ARRAY) will be considered as 1.
See Also
IlvObjectSDOKeyExtractor
IlvObjectSDOFeatureIterator::IlvObjectSDOFeatureIterator ( IldRequest *  request,
const char *  geometryName = "GEOMETRY",
const char *  keyColumnName = 0,
const char *  xDimensionName = 0,
const char *  yDimensionName = 0 
)

Creates a new feature iterator to read geometries from the specified request, using the column named geometryName.

Note that if you pass an keyColumnName (that should represent a DB column whose datatype corresponds to IldIntegerType, IldByteType, IldStringType or IldLongTextType and that has to be a unique Key), the iterator will use a default key extractor in order to associate the column value as an IlvMapFeatureId of the map feature returned. You can use IlvMapFeature::getId() in order to retrieve this value.

Parameters
requestThe IldRequest from which geometries are read.
geometryNameThe name of the column containing geometries.
keyColumnNameThe name of the column containing an ID considered as a Key for each geometry. If set to 0, no ID is associated to this feature.
xDimensionNameThe name of the X dimension. If set to 0, the index of the X dimension in the metadata table (in the SDO_DIM_ARRAY) will be considered as 0.
yDimensionNameThe name of the Y dimension. If set to 0, the index of the Y dimension in the metadata table (in the SDO_DIM_ARRAY) will be considered as 1.
See Also
IlvObjectSDOKeyExtractor
IlvObjectSDOFeatureIterator::IlvObjectSDOFeatureIterator ( IldRequest *  request,
const char *  geometryName,
IlvObjectSDOKeyExtractor keyExtractor,
const char *  xDimensionName = 0,
const char *  yDimensionName = 0 
)

Creates a new feature iterator to read geometries from the specified request.

Parameters
requestThe IldRequest from which geometries are read.
geometryNameThe name of the column containing geometries
keyExtractorThe extractor that can extract features ID from the request rows.
xDimensionNameThe name of the X dimension. If set to 0, the index of the X dimension in the metadata table (in the SDO_DIM_ARRAY) will be considered as 0.
yDimensionNameThe name of the Y dimension. If set to 0, the index of the Y dimension in the metadata table (in the SDO_DIM_ARRAY) will be considered as 1.
See Also
IlvObjectSDOKeyExtractor

Member Function Documentation

virtual IlvFeatureRenderer* IlvObjectSDOFeatureIterator::getDefaultFeatureRenderer ( IlvDisplay display)
virtual

Returns the default renderer for this feature iterator.

Returns a renderer that can be used to translate the map features returned by this iterator into graphic objects. Feature iterators that store some rendering information in the attributes of the map features, such as color, text font, line thickness and so on, can return a specific renderer which is able to take these attributes into account during the rendering process.

Returns
The default renderer for this feature iterator.

Implements IlvMapFeatureIterator.

virtual IlvMapsError IlvObjectSDOFeatureIterator::getInitStatus ( ) const
virtual

Returns the error code that may have happened during the iterator initialization.

Returns
The init status of the iterator.

Implements IlvMapFeatureIterator.

virtual IlBoolean IlvObjectSDOFeatureIterator::getLowerRightCorner ( IlvCoordinate coord) const
virtual

Returns IlFalse.

Returns
IlFalse.

Implements IlvMapFeatureIterator.

virtual const IlvMapFeature* IlvObjectSDOFeatureIterator::getNextFeature ( IlvMapsError &  status)
virtual

Converts the next SDO geometry of the iterator into an IlvMapFeature object.

Parameters
statusThe error status raised by this function call.
Returns
The next available IlvMapFeature.

Implements IlvMapFeatureIterator.

virtual IlvMapFeatureId* IlvObjectSDOFeatureIterator::getNextFeatureId ( IlvMapsError &  status)
virtual

Returns the feature ID for the next object.

Parameters
statusThe error that may have been produced by the method.
Returns
The next feature ID or 0 if no more feature ID is available.
virtual IlBoolean IlvObjectSDOFeatureIterator::getUpperLeftCorner ( IlvCoordinate coord) const
virtual

Returns IlFalse.

Returns
IlFalse.

Implements IlvMapFeatureIterator.

IlBoolean IlvObjectSDOFeatureIterator::isGeoreferenced ( ) const

Returns IlTrue if a source projection has been assigned to the iterator.

Returns
IlTrue if a source projection has been assigned to the iterator, IlFalse otherwise.
IlBoolean IlvObjectSDOFeatureIterator::isLoadingAttributes ( ) const

Returns IlTrue if this feature iterator is loading attributes.

Returns
IlTrue if this feature iterator is loading attributes, IlFalse otherwise.
See Also
setLoadingAttributes()
makeAttributes()
virtual IlvFeatureAttributeProperty* IlvObjectSDOFeatureIterator::makeAttributes ( IldRequest *  req,
IlvMapsError &  status 
)
protectedvirtual

Reads attributes from the specified result set row.

The default implementation of this method is to attach all columns of the current request to an IlvFeatureAttributeProperty. The names of the resulting attributes is the same as the database column name of these attributes. Only columns of known type (see below) are processed.

Types from DbLink IldColumnType are mapped the following way:

Parameters
reqThe IldRequest that contains also the geometry.
statusStatus returned : IlvMaps::NoError() if the operation was successful or an error code if it failed.
Returns
The made IlvFeatureAttributeProperty.
virtual IlvMapGeometry* IlvObjectSDOFeatureIterator::makeGeometry ( IldADTValue *  geomADT,
IlvMapsError &  status 
)
protectedvirtual

Creates a geometry from the specified object.

Parameters
geomADTThe DbLink IldADTValue representing a MDSYS.SDO_GEOMETRY.
statusStatus returned : IlvMaps::NoError() if the operation was successful or an error code if it failed.
Returns
The created IlvMapGeometry.
void IlvObjectSDOFeatureIterator::setLoadingAttributes ( IlBoolean  loadAttributes)

If loadAttributes is set to IlTrue, the iterator will attach attributes to the features read.

See Also
isLoadingAttributes()
makeAttributes()
void IlvObjectSDOFeatureIterator::setSourceProjection ( IlvProjection projection)
virtual

Used to specify the source projection of the geometries stored in the SDO database.

The projection will be assigned to the IlvMapFeature produced by this iterator.

Parameters
projectionThe projection of the geometries stored in the database.

Reimplemented from IlvMapFeatureIterator.

virtual IlBoolean IlvObjectSDOFeatureIterator::skipNextFeature ( IlvMapsError &  status)
virtual

Skips the next feature.

Parameters
statusThe error that may have been produced by the method.
Returns
IlFalse if no more features are available.

© Copyright 2015, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.