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>
Public Member Functions | |
IlvDefaultSDOTileLoader (const IlvMapAdapter *mapadapter, IldDbms *dbms, const char *layerName) | |
Initializes a new 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 IlvRect * | getSize () |
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 IlvRect & | getTileOrigin () 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. More... | |
IlvMapsError | getInitStatus () const |
Returns the error code that may have happened during the loader construction. More... | |
virtual IlBoolean | isPersistent () const |
Indicates whether this IlvSDOTileLoader is persistent. 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 | |
IlvSDOFeatureIterator * | getFeatureIterator (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 a new instance of IlvSDOTileLoader . More... | |
IldRequest * | executeQuery (const char *query) |
Executes the specified query and exports a trace if the SQL traces are enabled. More... | |
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 setTileGroupingCount()
method.
IlvSDOLayer
. IlvDefaultSDOTileLoader::IlvDefaultSDOTileLoader | ( | const IlvMapAdapter * | mapadapter, |
IldDbms * | dbms, | ||
const char * | layerName | ||
) |
Initializes a new instance of IlvDefaultSDOTileLoader
, which loads tiles from the specified layer of an SDO database.
mapadapter | The map adapter of the tile loader. |
dbms | The database connection. |
layerName | The name of the layer. |
|
virtual |
Called by the IlvSDOLayer
read from an .ilv
file, after the connection to an Oracle SDO database has been restored.
IlvMapsError
code. Reimplemented from IlvSDOTileLoader.
|
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.
request | The request from which geometries are read. |
status | The error that may have been produced by the method. |
IlvSDOFeatureIterator
used by the tile loader.
|
virtual |
Returns an IldRequest
containing all the geometries that intersect the tile.
This method is called by the load(IlvTile)
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.
tile | The tile. |
getSDOCode()
. Reimplemented from IlvSDOTileLoader.
const char* IlvDefaultSDOTileLoader::getSDOCode | ( | IlvTile * | tile | ) |
Returns the SDO code associated with the tile.
tile | The tile for the load-on-demand mechanism. |
|
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.
The default implementation returns 0
.
Reimplemented from IlvSDOTileLoader.
IlUShort IlvDefaultSDOTileLoader::getTileGroupingCount | ( | ) | const |
Returns the number of tiles to be loaded in one unique request.
setTileGroupingCount()
.
|
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.
tile | The tile to be loaded. |
getRequest()
. 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).