25 #ifndef __TERRALIB_RP_INTERNAL_SEGMENTERSTRATEGY_H
26 #define __TERRALIB_RP_INTERNAL_SEGMENTERSTRATEGY_H
34 #include "../raster/Raster.h"
94 const std::vector< unsigned int >& inputRasterBands,
95 const std::vector< std::complex< double > >& inputRasterNoDataValues,
96 const std::vector< std::complex< double > >& inputRasterBandMinValues,
97 const std::vector< std::complex< double > >& inputRasterBandMaxValues,
99 const unsigned int outputRasterBand,
100 const bool enableProgressInterface ) = 0;
110 const unsigned int pixelsNumber )
const = 0;
Raster segmenter strategy parameters base class.
Segmenter segments IDs manager.
Segmenter segments block description class.
Segmenter Strategy Parameters.
Raster segmenter strategy base class.
SegmenterStrategy(const SegmenterStrategy &)
virtual ~SegmenterStrategy()
SegmenterStrategy & operator=(const SegmenterStrategy &)
virtual double getMemUsageEstimation(const unsigned int bandsToProcess, const unsigned int pixelsNumber) const =0
Returns a memory estimation (bytes).
std::string m_errorMessage
Current error message.
BlocksMergingMethod
Blocks merging method.
virtual BlocksMergingMethod getBlocksMergingMethod() const =0
Return the strategy blocks merging method.
virtual unsigned int getOptimalBlocksOverlapSize() const =0
Returns a optimal blocks overlap size (number of border pixels overlapped between blocks,...
virtual void reset()
Clear all internal allocated resources and go back to the initial not-initialized state.
virtual bool shouldComputeMinMaxValues() const =0
Returns if the min and max pixel values should be computed.
void setErrorMessage(const std::string &newErrorMessage)
Set the current error message.
virtual bool execute(SegmenterIdsManager &segmenterIdsManager, const te::rp::SegmenterSegmentsBlock &block2ProcessInfo, const te::rst::Raster &inputRaster, const std::vector< unsigned int > &inputRasterBands, const std::vector< std::complex< double > > &inputRasterNoDataValues, const std::vector< std::complex< double > > &inputRasterBandMinValues, const std::vector< std::complex< double > > &inputRasterBandMaxValues, te::rst::Raster &outputRaster, const unsigned int outputRasterBand, const bool enableProgressInterface)=0
Executes the segmentation strategy over region delimited by the given block.
const std::string & getErrorMessage() const
Return the current error message if there is any.
virtual bool initialize(SegmenterStrategyParameters const *const strategyParams)=0
Initialize the segmentation strategy.
An abstract class for raster data strucutures.
#define TERPEXPORT
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).
An exception class for the XML module.