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; }
112 virtual const std::string& getId()
const;
119 virtual void setId(
const std::string&
id);
126 virtual const std::string& getTitle()
const;
133 virtual void setTitle(
const std::string& title);
140 std::vector<te::map::AbstractLayer*> getDescendants();
147 std::vector<te::map::AbstractLayer*> getAncestors();
172 bool hasVisibilityChanged();
179 void setVisibilityAsChanged(
bool visChanged);
184 void updateVisibilityOfAncestors();
189 virtual void updateVisibility();
212 virtual int getSRID()
const;
219 virtual void setSRID(
int srid);
251 virtual void clearSelected();
330 virtual const std::string& getGeomPropertyName()
const;
337 virtual void setGeomPropertytName(
const std::string& name);
346 virtual std::auto_ptr<LayerSchema> getSchema()
const = 0;
392 virtual std::auto_ptr<te::da::DataSet> getData(
const std::string& propertyName,
422 virtual std::auto_ptr<te::da::DataSet> getData(
const std::string& propertyName,
477 virtual const std::string& getType()
const = 0;
486 virtual bool isValid()
const = 0;
500 virtual void draw(
Canvas* canvas,
const te::gm::Envelope& bbox,
int srid,
const double& scale,
bool* cancel) = 0;
541 virtual void setOutOfDate();
548 const std::string& getDataSetName()
const;
555 void setDataSetName(
const std::string& name);
562 virtual const std::string& getDataSourceId()
const;
569 virtual void setDataSourceId(
const std::string&
id);
596 #endif // __TERRALIB_MAPTOOLS_INTERNAL_ABSTRACTLAYER_H 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.
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.