Rogue Wave Views
Maps Package API Reference Guide
Product Documentation:

Rogue Wave Views
Documentation Home
List of all members | Public Member Functions | Protected Member Functions
IlvDefaultSDOTileLoader Class Reference

This tile loader loads a complete SDO layer with tiles that are equivalent to the SDO tiles. More...

#include <ilviews/maps/format/oracle/sdotileload.h>

Inheritance diagram for IlvDefaultSDOTileLoader:
IlvSDOTileLoader IlvTileLoader

Public Member Functions

 IlvDefaultSDOTileLoader (const IlvMapAdapter *mapadapter, IldDbms *dbms, const char *layerName)
 Initializes an instance of IlvDefaultSDOTileLoader, which loads tiles from the specified layer of an SDO database. More...
 
virtual IlvMapsError dbmsRestored ()
 Called by the IlvSDOLayer read from an .ilv file, after the connection to an Oracle SDO database has been restored. More...
 
const char * getLayerName ()
 Returns the name of the SDO layer of this tile loader.
 
virtual IldRequest * getRequest (IlvTile *tile)
 Returns an IldRequest containing all the geometries that intersect the tile. More...
 
const char * getSDOCode (IlvTile *tile)
 Returns the SDO code associated with the tile. More...
 
virtual IlvRectgetSize ()
 Returns the bounding box of the data set managed by the tile loader. More...
 
IlUShort getTileGroupingCount () const
 Returns the number of tiles to be loaded in one unique request. More...
 
const IlvRectgetTileOrigin () const
 Returns the bounding box of the upper-left SDO tile.
 
virtual IlvMapsError load (IlvTile *tile)
 Loads a tile from the Oracle database and adds the graphic objects to the layer of the tile. More...
 
void setTileGroupingCount (IlUShort nb)
 Sets the number of tiles to be loaded in one unique request. More...
 
- Public Member Functions inherited from IlvSDOTileLoader
IldDbms * getDbms () const
 Returns the IldDbms representing the connection to the Oracle database.
 
IlvMapsError getInitStatus () const
 Returns the error code that may have happened during the loader construction.
 
virtual IlBoolean isPersistent () const
 Returns IlTrue. More...
 
virtual void release (IlvTile *tile)
 Releases the content of a tile when required by the cache of the layer. More...
 
- Public Member Functions inherited from IlvTileLoader
virtual void controllerDeleted (IlvTileController *controller)
 Called when the controller is deleted. More...
 
virtual void tileDeleted (IlvTile *tile)
 Called when a tile is deleted during the controller destruction. More...
 

Protected Member Functions

IlvSDOFeatureIteratorgetFeatureIterator (IldRequest *request, IlvMapsError &status)
 Returns the instance of IlvSDOFeatureIterator that is used by the tile loader. More...
 
- Protected Member Functions inherited from IlvSDOTileLoader
 IlvSDOTileLoader (IldDbms *dbms)
 Initializes an instance of IlvSDOTileLoader. More...
 
IldRequest * executeQuery (const char *query)
 Executes the specified query and exports a trace if the SQL traces are enabled. More...
 

Detailed Description

This tile loader loads a complete SDO layer with tiles that are equivalent to the SDO tiles.

Library: ilvdbmaps

This tile loader is optimized for speed performance thanks to the tile grouping capacity that can be used through the IlvDefaultSDOTileLoader#setTileGroupingCount method.

See also
IlvSDOLayer

Constructor & Destructor Documentation

IlvDefaultSDOTileLoader::IlvDefaultSDOTileLoader ( const IlvMapAdapter mapadapter,
IldDbms *  dbms,
const char *  layerName 
)

Initializes an instance of IlvDefaultSDOTileLoader, which loads tiles from the specified layer of an SDO database.

Parameters
mapadapterThe map adapter of the tile loader.
dbmsThe IldDbms.
layerNameThe name of the layer.

Member Function Documentation

virtual IlvMapsError IlvDefaultSDOTileLoader::dbmsRestored ( )
virtual

Called by the IlvSDOLayer read from an .ilv file, after the connection to an Oracle SDO database has been restored.

Returns
An IlvMapsError code.

Reimplemented from IlvSDOTileLoader.

IlvSDOFeatureIterator* IlvDefaultSDOTileLoader::getFeatureIterator ( IldRequest *  request,
IlvMapsError &  status 
)
protected

Returns the instance of IlvSDOFeatureIterator that is used by the tile loader.

You can override this method in order to use your own feature iterator.

Parameters
requestThe IldRequest from which geometries are read.
statusThe error that may have been produced by the method.
Returns
The instance of IlvSDOFeatureIterator used by the tile loader.
virtual IldRequest* IlvDefaultSDOTileLoader::getRequest ( IlvTile tile)
virtual

Returns an IldRequest containing all the geometries that intersect the tile.

This method is called by the load(IlvTile tile) method to define the list of geometries that have to be loaded in a tile. The implementation of this class returns all the geometries that have the same SDO_CODE as the specified tile.

See also
IlvDefaultSDOTileLoader::GetSDOCode
Parameters
tileThe tile.

Reimplemented from IlvSDOTileLoader.

const char* IlvDefaultSDOTileLoader::getSDOCode ( IlvTile tile)

Returns the SDO code associated with the tile.

Parameters
tileThe tile for the load-on-demand mechanism.
Returns
The SDO code associated with the tile.
virtual IlvRect* IlvDefaultSDOTileLoader::getSize ( )
virtual

Returns the bounding box of the data set managed by the tile loader.

If the bounding box cannot be computed, this method can return 0. The IlvSDOLayer using this object will have an undefined size.

Returns
0

Reimplemented from IlvSDOTileLoader.

IlUShort IlvDefaultSDOTileLoader::getTileGroupingCount ( ) const

Returns the number of tiles to be loaded in one unique request.

See also
IlvDefaultSDOTileLoader::setTileGroupingCount
virtual IlvMapsError IlvDefaultSDOTileLoader::load ( IlvTile tile)
virtual

Loads a tile from the Oracle database and adds the graphic objects to the layer of the tile.

This method calls getRequest to get the SDO geometries, transforms them into graphic objects using the renderer of the layer, and then adds the objects to the layer.

See also
IlvSDOTileLoader::getRequest
Parameters
tileThe tile to be loaded.

Reimplemented from IlvSDOTileLoader.

void IlvDefaultSDOTileLoader::setTileGroupingCount ( IlUShort  nb)

Sets the number of tiles to be loaded in one unique request.

This is particularly useful for the load on demand where you can group a given number of tiles to be loaded together (when for instance the zoom factor is important so that you are visualizing a certain number of tiles at the same time).


© Copyright 2016, 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.