28#ifndef __TERRALIB_SA_INTERNAL_KERNELOPERATION_H
29#define __TERRALIB_SA_INTERNAL_KERNELOPERATION_H
This file contains a functions used by the kernel operation.
This file contains a class that represents the kernel parameters.
A class that models the description of a dataset.
A dataset is the unit of information manipulated by the data access module of TerraLib.
An Envelope defines a 2D rectangular region.
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards.
Implementation of a random-access dataset class for the TerraLib In-Memory Data Access driver.
An abstract class for raster data strucutures.
KernelOperation()
Default constructor.
virtual ~KernelOperation()
Virtual destructor.
void setOutputParameters(te::sa::KernelOutputParams *outParams)
std::unique_ptr< te::rst::Raster > buildRaster(te::sa::KernelInputParams *inputParams, te::sa::KernelTree &kTree, std::string driver)
void saveDataSet(te::da::DataSet *dataSet, te::da::DataSetType *dsType)
std::unique_ptr< te::sa::KernelOutputParams > m_outputParams
Attribute with the kernel output parameters.
void runRasterKernel(te::sa::KernelInputParams *inputParams, te::sa::KernelTree &kTree, te::sa::KernelMap &kMap, te::rst::Raster *raster)
std::unique_ptr< te::mem::DataSet > createDataSet(te::da::DataSet *inputDataSet, te::da::DataSetType *dsType)
te::sa::KernelTree m_kTree
Attribute used to locate near geometries.
std::unique_ptr< te::mem::DataSet > runDataSetKernel(te::sa::KernelInputParams *inputParams, te::sa::KernelTree &kTree, te::sa::KernelMap &kMap, te::da::DataSetType *dsType)
std::unique_ptr< te::da::DataSetType > createDataSetType(te::da::DataSetType *dsType)
virtual void execute()=0
Function to execute the kernel operation.
std::unique_ptr< te::rst::Raster > buildRaster(te::sa::KernelInputParams *inputParams, te::gm::Envelope extentLayer, std::string driver)
virtual void buildTree()=0
Class that represents the kernel output parameters.
Namespace for the DataAccess API of TerraLib.
Namespace for the Vector Geometry module of TerraLib.
Namespace for the memory data source of TerraLib.
Namespace for the Raster module of TerraLib.
Namespace for the TerraLib SA module.
te::sam::rtree::Index< int > KernelTree
< Tree used to store the dataset geometries MBR and its id value
std::map< int, std::pair< te::gm::Geometry *, double > > KernelMap
Configuration flags for the Terrralib Spatial Analysis module.
#define TESAEXPORT
You can use this macro in order to export/import classes and functions from this module.