26 #ifndef __TERRALIB_MAPTOOLS_INTERNAL_ABSTRACTLAYER_H 27 #define __TERRALIB_MAPTOOLS_INTERNAL_ABSTRACTLAYER_H 30 #include "../common/Enums.h" 31 #include "../common/TreeItem.h" 32 #include "../dataaccess/dataset/DataSet.h" 33 #include "../dataaccess/dataset/DataSetType.h" 34 #include "../geometry/Enums.h" 35 #include "../geometry/Envelope.h" 46 namespace dt {
class Property; }
54 namespace gm {
class Geometry; }
56 namespace se {
class Style; }
113 virtual const std::string& getId()
const;
120 virtual void setId(
const std::string&
id);
127 virtual const std::string& getTitle()
const;
134 virtual void setTitle(
const std::string& title);
141 std::vector<te::map::AbstractLayer*> getDescendants();
148 std::vector<te::map::AbstractLayer*> getAncestors();
173 bool hasVisibilityChanged();
180 void setVisibilityAsChanged(
bool visChanged);
185 void updateVisibilityOfAncestors();
190 virtual void updateVisibility();
213 virtual int getSRID()
const;
220 virtual void setSRID(
int srid);
252 virtual void clearSelected();
349 virtual const std::string& getGeomPropertyName()
const;
356 virtual void setGeomPropertytName(
const std::string& name);
365 virtual std::unique_ptr<LayerSchema> getSchema()
const = 0;
411 virtual std::unique_ptr<te::da::DataSet> getData(
const std::string& propertyName,
441 virtual std::unique_ptr<te::da::DataSet> getData(
const std::string& propertyName,
496 virtual const std::string& getType()
const = 0;
505 virtual bool isValid()
const = 0;
519 virtual void draw(
Canvas* canvas,
const te::gm::Envelope& bbox,
int srid,
const double& scale,
bool* cancel) = 0;
560 virtual void setOutOfDate();
567 const std::string& getDataSetName()
const;
574 void setDataSetName(
const std::string& name);
581 virtual const std::string& getDataSourceId()
const;
588 virtual void setDataSourceId(
const std::string&
id);
616 #endif // __TERRALIB_MAPTOOLS_INTERNAL_ABSTRACTLAYER_H te::map::RasterContrast * m_contrast
The contrast information to be applied to a raster object in the layer.
te::map::Grouping * m_grouping
The grouping information.
std::string m_datasetName
The dataset name where we will retrieve the layer objects.
te::map::Chart * m_chart
The chart information.
The Style defines the styling that is to be applied to a geographic dataset (vector geometries or cov...
This is the base class for layers.
std::string m_id
Layer id.
This abstract class describes a basic item to be organized in a tree-oriented way.
A class that models the description of a dataset.
A wdiget used to customize a chart's style parameters.
te::da::ObjectIdSet * m_selected
The selected group of the layer.
SpatialRelation
Spatial relations between geometric objects.
std::string m_geomPropertyName
The name of the referenced geometry property.
This is an abstract class that models a query expression.
int m_srid
The identifier of the layer spatial reference system.
EncodingType
Supported character encodings.
CompositionMode
The composition mode used to render the canvas.
AccessPolicy
Supported data access policies (can be used as bitfield).
This class contains the parameters needed for grouping the values of a Property.
TraverseType
A dataset can be traversed in two ways:
te::map::CompositionMode m_compositionMode
The composition mode used to merged the canvas.
This class represents the informations needed to build map charts.
An Envelope defines a 2D rectangular region.
This class represents a set of unique ids created in the same context. i.e. from the same data set...
te::gm::Envelope m_mbr
The layer bounding box.
te::da::DataSetType LayerSchema
te::se::Style * m_selectionStyle
The selection style to be applied to the geographic objects in the layer.
std::string m_title
A brief description of this Layer that can be used by applications to show a text identifying this la...
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
This class contains the parameters needed to apply dynamic contrast over a raster.
A canvas is an abstraction of a drawing area.
std::string m_datasourceId
DataSource id.
te::se::Style * m_style
The style to be applied to the geographic objects in the layer.
Visibility
Each layer can have three states of visibility.
boost::intrusive_ptr< AbstractLayer > AbstractLayerPtr
Visibility m_visibility
It indicates the layer visibility.
te::core::EncodingType m_encoding
The char encoding of the layer;.
bool m_visibilityChanged
It indicates if the layer visibility has changed.