26 #ifndef __TERRALIB_VP_INTERNAL_SUBDIVIDEOPERATION_H
27 #define __TERRALIB_VP_INTERNAL_SUBDIVIDEOPERATION_H
70 SubdivideOperationCapabilities(
const std::string& operationName, std::size_t numberOfInputs, std::size_t numberOfOutputs,
const std::string& dataHandlerName,
bool snapGeometries,
bool allowCoordinateSubdivision);
92 virtual std::unique_ptr<te::vp::AbstractOperationCapabilities>
getCapabilities()
const override;
94 std::vector<te::vp::FeatureSet>
executeImpl(
const std::vector<te::vp::FeatureSet>& vecInput)
override;
Abstract Class to represent an abstract vector operation.
A class that models the description of a dataset.
Algorithm to help controlling creating and iterating in a tile.
Abstract class used to define the capabilities of the operation, inclusing number of inputs and outpu...
Abstract class used to define an operation.
Abstract class used to define the input/ ouptut parameters for TerraAmazon Operations.
Abstract factory used to create Operations.
std::unique_ptr< AbstractParameters > createParameters() const override
SubdivideOperationCapabilities(const std::string &operationName, std::size_t numberOfInputs, std::size_t numberOfOutputs, const std::string &dataHandlerName, bool snapGeometries, bool allowCoordinateSubdivision)
Creates the parameters for this operation. If the concrete operation has specific parameters,...
virtual te::vp::AbstractOperation * build() override
Concrete factories (derived from this one) must implement this method in order to create objects.
SubdivideOperationFactory()
virtual ~SubdivideOperationFactory()
std::size_t m_maxCoordinates
void setMaxCoordinates(std::size_t maxCoordinates)
SubdivideOperationParameters(std::size_t maxCoordinates=0, te::gm::CellTilling *cellTilling=nullptr)
~SubdivideOperationParameters()
std::size_t getMaxCoordinates() const
void setCellTilling(te::gm::CellTilling *cellTilling)
std::unique_ptr< te::gm::CellTilling > m_cellTilling
const te::gm::CellTilling * getCellTilling() const
This operation subdivides geometries ensuring that they don't have more than the given number of coor...
std::size_t safeCreateParentId()
std::vector< te::vp::FeatureSet > executeImpl(const std::vector< te::vp::FeatureSet > &vecInput) override
SubdivideOperation()
Constructor.
virtual std::unique_ptr< te::vp::AbstractOperationCapabilities > getCapabilities() const override
Makes all the necessaries adaptations to the input dataAccess to avoid duplicate column names.
te::da::DataSetType * createBasicOutputDataSetType(const std::string &dataSetName, int srid, te::gm::GeomType geometryType, const std::string &geometryColumnName) const override
< Creates the basic dataSetType for the output containing all the columns that are required
virtual ~SubdivideOperation()
GeomType
Each enumerated type is compatible with a Well-known Binary (WKB) type code.
#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).