28 #ifndef __TERRALIB_SA_INTERNAL_KERNELOPERATION_H
29 #define __TERRALIB_SA_INTERNAL_KERNELOPERATION_H
32 #include "../Config.h"
44 namespace da {
class DataSetType; }
45 namespace gm {
class Geometry; }
46 namespace mem {
class DataSet; }
47 namespace rst {
class Raster; }
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.
An abstract class for raster data strucutures.
Virtual class used to execute the kernel operations.
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::gm::Envelope extentLayer, std::string driver)
void saveDataSet(te::da::DataSet *dataSet, te::da::DataSetType *dsType)
std::unique_ptr< te::rst::Raster > buildRaster(te::sa::KernelInputParams *inputParams, te::sa::KernelTree &kTree, std::string driver)
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::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::da::DataSetType > createDataSetType(te::da::DataSetType *dsType)
te::sa::KernelTree m_kTree
Attribute used to locate near geometries.
virtual void execute()=0
Function to execute the kernel operation.
virtual void buildTree()=0
std::unique_ptr< te::mem::DataSet > createDataSet(te::da::DataSet *inputDataSet, te::da::DataSetType *dsType)
Class that represents the kernel output parameters.
std::map< int, std::pair< te::gm::Geometry *, double > > KernelMap
#define TESAEXPORT
You can use this macro in order to export/import classes and functions from this module.