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; }
120 virtual const std::string& getId()
const;
127 virtual void setId(
const std::string&
id);
134 virtual const std::string& getTitle()
const;
141 virtual void setTitle(
const std::string& title);
148 std::vector<te::map::AbstractLayer*> getDescendants();
155 std::vector<te::map::AbstractLayer*> getAncestors();
180 bool hasVisibilityChanged();
187 void setVisibilityAsChanged(
bool visChanged);
192 void updateVisibilityOfAncestors();
197 virtual void updateVisibility();
220 virtual int getSRID()
const;
227 virtual void setSRID(
int srid);
259 virtual void clearSelected();
356 virtual const std::string& getGeomPropertyName()
const;
363 virtual void setGeomPropertytName(
const std::string& name);
372 virtual std::unique_ptr<LayerSchema> getSchema()
const = 0;
418 virtual std::unique_ptr<te::da::DataSet> getData(
const std::string& propertyName,
448 virtual std::unique_ptr<te::da::DataSet> getData(
const std::string& propertyName,
503 virtual const std::string& getType()
const = 0;
512 virtual bool isValid()
const = 0;
526 virtual void draw(
Canvas* canvas,
const te::gm::Envelope& bbox,
int srid,
const double& scale,
bool* cancel) = 0;
567 virtual void setOutOfDate();
574 const std::string& getDataSetName()
const;
581 void setDataSetName(
const std::string& name);
588 virtual const std::string& getDataSourceId()
const;
595 virtual void setDataSourceId(
const std::string&
id);
623 #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.