26 #ifndef __TERRALIB_WS_OGC_WMSLAYER_H
27 #define __TERRALIB_WS_OGC_WMSLAYER_H
31 #include "../../../../maptools/AbstractLayer.h"
34 #include "../client/DataTypes.h"
35 #include "../../../../raster/Raster.h"
86 virtual std::unique_ptr<te::map::LayerSchema>
getSchema()
const;
91 std::unique_ptr<te::da::DataSet>
getData(
const std::string& propertyName,
97 std::unique_ptr<te::da::DataSet>
getData(
const std::string& propertyName,
143 const std::string
saveGetMap(
const std::string& filename)
const;
163 mutable std::unique_ptr<te::map::LayerSchema>
m_schema;
This is an abstract class that models a query expression.
This class represents a set of unique ids created in the same context. i.e. from the same data set.
An Envelope defines a 2D rectangular region.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
This is the base class for layers.
A canvas is an abstraction of a drawing area.
A layer with reference to a WMS Layer.
std::string m_datasourceId
The DataSource associated to this layer.
const te::ws::ogc::wms::WMSGetFeatureInfoResponse getFeatureInfo(const te::ws::ogc::wms::WMSGetFeatureInfoRequest &request)
const std::string & getDataSourceId() const
const std::string saveGetMap(const std::string &filename) const
It execute a WMS GetMap and save the result image on disk. The request will be based on WMSGetMapRequ...
static const std::string sm_type
A static data member used in the implementation of getType method.
te::ws::ogc::wms::WMSGetMapRequest getRequest() const
std::unique_ptr< te::da::DataSet > getData(te::da::Expression *restriction, te::common::TraverseType travType=te::common::FORWARDONLY, const te::common::AccessPolicy accessPolicy=te::common::RAccess) const
It gets the dataset identified by the layer name using the given restriction.
void setCurrentSRID(const int &srid)
WMSLayer(const std::string &id, const std::string &title, te::map::AbstractLayer *parent=0)
It initializes a new Layer.
std::unique_ptr< te::da::DataSet > getData(te::common::TraverseType travType=te::common::FORWARDONLY, const te::common::AccessPolicy accessPolicy=te::common::RAccess) const
It gets the dataset identified by the layer name.
te::ws::ogc::wms::WMSGetMapRequest m_getMapRequest
void setDataSourceId(const std::string &datadourceId)
WMSLayer(te::map::AbstractLayer *parent=0)
It initializes a new layer.
const te::ws::ogc::wms::WMSGetMapResponse getMap() const
It gets a WMS GetMap response with the image on a buffer. The request will be based on WMSGetMapReque...
virtual const te::gm::Envelope & getExtent() const
It returns the Layer extent (or minimum bounding box).
int m_currentSRID
SRID used when the layer is drawn.
std::string m_rendererType
A pointer to the internal renderer used to paint this layer.
std::unique_ptr< te::da::DataSet > getData(const te::da::ObjectIdSet *oids, te::common::TraverseType travType=te::common::FORWARDONLY, const te::common::AccessPolicy accessPolicy=te::common::RAccess) const
It gets the dataset from the given set of objects identification.
void setGetMapRequest(const te::ws::ogc::wms::WMSGetMapRequest &getMapRequest)
void draw(te::map::Canvas *canvas, const te::gm::Envelope &bbox, int srid, const double &scale, bool *cancel)
It draws the layer geographic objects in the given canvas using the informed SRS.
bool isValid() const
It returns true if the layer can be used for instance to draw, otherwise, it returns false.
WMSLayer(const std::string &id, te::map::AbstractLayer *parent=0)
It initializes a new layer.
virtual int getSRID() const
It returns the Spatial Reference System ID associated to the Layer.
std::unique_ptr< te::map::LayerSchema > m_schema
The WMS layer schema.
std::unique_ptr< te::da::DataSet > getData(const std::string &propertyName, const te::gm::Geometry *g, te::gm::SpatialRelation r, te::common::TraverseType travType=te::common::FORWARDONLY, const te::common::AccessPolicy accessPolicy=te::common::RAccess) const
It gets the dataset identified by the layer name using a spatial filter over the given geometric prop...
virtual std::unique_ptr< te::map::LayerSchema > getSchema() const
It returns the layer schema.
const std::string & getType() const
It returns the layer type.
void setRendererType(const std::string &rendererType)
std::unique_ptr< te::da::DataSet > getData(const std::string &propertyName, const te::gm::Envelope *e, te::gm::SpatialRelation r=te::gm::INTERSECTS, te::common::TraverseType travType=te::common::FORWARDONLY, const te::common::AccessPolicy accessPolicy=te::common::RAccess) const
It gets the dataset identified by the layer name using a spatial filter over the specified property.
te::gm::Envelope m_currentExtent
Layer extent in current SRID.
const std::string & getRendererType() const
te::map::AbstractLayer * clone()
It returns a clone of the object.
TraverseType
A dataset can be traversed in two ways:
AccessPolicy
Supported data access policies (can be used as bitfield).
SpatialRelation
Spatial relations between geometric objects.
boost::intrusive_ptr< WMSLayer > WMSLayerPtr
The WMSGetFeatureInfoRequest WMS 1.3.0 struct.
The WMSGetMapResponse WMS 1.3.0 struct.
The WMSGetMapRequest WMS 1.3.0 struct.
The WMSGetMapResponse WMS 1.3.0 struct.
#define TEOGCWMSDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.
Proxy configuration file for TerraView (see terraview_config.h).