28 #ifndef __TERRALIB_VP_INTERNAL_BUFFER_OP_H
29 #define __TERRALIB_VP_INTERNAL_BUFFER_OP_H
33 #include "../dataaccess/dataset/DataSet.h"
34 #include "../dataaccess/dataset/DataSetTypeConverter.h"
35 #include "../dataaccess/datasource/DataSource.h"
37 #include "../datatype/Property.h"
39 #include "../memory/DataSet.h"
40 #include "../statistics/core/Enums.h"
76 virtual bool run() = 0;
94 std::string inDsetName,
95 std::unique_ptr<te::da::DataSetTypeConverter> converter,
114 const int& bufferPolygonRule,
115 const int& bufferBoundariesRule,
116 const bool& copyInputColumns,
118 const int& attributePosition = -1);
A class that models the description of a dataset.
This class represents a set of unique ids created in the same context. i.e. from the same data set.
An abstract class to compute the buffer memory and buffer query operation.
int m_bufferBoundariesRule
The buffer boundary rule (DISSOLVE = 0 and NOT_DISSOLVE = 1).
double m_distance
The fixed distance.
virtual bool run()=0
It executes the operation.
void setOutput(te::da::DataSourcePtr outDsrc, std::string dsname)
It sets the output parameters that will be used to persist operation result.
te::da::DataSourcePtr m_outDsrc
The output datasource.
BufferOp()
Default constructor that can be called by subclasses.
int m_bufferPolygonRule
The buffer polygon rule (INSIDE_OUTSIDE = 0, ONLY_OUTSIDE = 1, ONLY_INSIDE = 2).
int m_attributePosition
The buffer can be calculated by attribute values. The attribute must be numeric type.
te::da::DataSetType * GetDataSetType()
It builds the output DataSetType.
std::string m_inDsetName
The input dataset name.
te::da::DataSourcePtr m_inDsrc
The input datasource.
void setParams(const double &distance, const int &newSrid, const int &bufferPolygonRule, const int &bufferBoundariesRule, const bool ©InputColumns, const int &levels, const int &attributePosition=-1)
It sets the input parameters that will be consumed to execute the operation.
int m_levels
The number of levels buffer will have.
virtual bool paramsAreValid()
It verifies if the parameters are valid.
virtual ~BufferOp()
Virtual destructor.
bool m_copyInputColumns
Copy columns from input DataSet.
int m_newSRID
A new SRID if it's necessary to transform the data.
void setInput(te::da::DataSourcePtr inDsrc, std::string inDsetName, std::unique_ptr< te::da::DataSetTypeConverter > converter, const te::da::ObjectIdSet *oidSet=0)
It sets the input data will be calculated.
std::unique_ptr< te::da::DataSetTypeConverter > m_converter
The input datasettype.
const te::da::ObjectIdSet * m_oidSet
The input objectid set.
std::string m_outDsetName
The output dataset name.
boost::shared_ptr< DataSource > DataSourcePtr
#define TEVPEXPORT
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).
Enumerations of XML module.