25 #ifndef __TERRALIB_RP_INTERNAL_SEGMENTER_H 
   26 #define __TERRALIB_RP_INTERNAL_SEGMENTER_H 
   35 #include "../common/progress/TaskProgress.h" 
  114             void setSegStrategyParams( 
 
  125             void reset() throw( te::rp::Exception );
 
  131             AbstractParameters* clone() const;   
 
  163             void reset() throw( te::rp::Exception );
 
  169             AbstractParameters* clone() const;   
 
  177         bool execute( AlgorithmOutputParameters& outputParams ) throw( te::rp::Exception );          
 
  180         void reset() throw( te::rp::Exception );        
 
  184           throw( te::rp::Exception );
 
  186         bool isInitialized() const;
 
  244             SegmenterThreadEntryParams();
 
  246             ~SegmenterThreadEntryParams();
 
  266         bool calcBestBlockSize( 
 
  267           const unsigned int totalImageLines, 
 
  268           const unsigned int totalImageCols, 
 
  269           const unsigned int minExapandedBlockPixels,
 
  270           const unsigned int maxExapandedBlockPixels, 
 
  271           const unsigned int blocksHOverlapSize,
 
  272           const unsigned int blocksVOverlapSize, 
 
  273           unsigned int& nonExpandedBlockWidth,
 
  274           unsigned int& nonExpandedBlockHeight ) 
const;        
 
  295         bool genImageHCutOffProfile( 
const unsigned int profileCenter,
 
  297           const std::vector< unsigned int >& inRasterBands,
 
  298           const unsigned int pixelNeighborhoodSize,
 
  299           const unsigned int tileNeighborhoodSize,
 
  300           const unsigned int profileAntiSmoothingFactor,
 
  301           std::vector< unsigned int>& profile ) 
const;  
 
  316         bool genImageVCutOffProfile( 
const unsigned int profileCenter,
 
  318           const std::vector< unsigned int >& inRasterBands,
 
  319           const unsigned int pixelNeighborhoodSize,
 
  320           const unsigned int tileNeighborhoodSize,
 
  321           const unsigned int profileAntiSmoothingFactor,
 
  322           std::vector< unsigned int>& profile ) 
const;          
 
  331         bool updateBlockCutOffProfiles( 
 
  332           const std::vector< std::vector< unsigned int> >& imageHorizontalProfiles,
 
  333           const std::vector< std::vector< unsigned int> >& imageVerticalProfiles,
 
  336         bool createCutOffLinesTiff(  
 
  337           const std::vector< std::vector< unsigned int> >& imageHorizontalProfiles,
 
  338           const std::vector< unsigned int >& imageHorizontalProfilesCenterLines,
 
  339           const std::vector< std::vector< unsigned int> >& imageVerticalProfiles,
 
  340           const std::vector< unsigned int >& imageVerticalProfilesCenterLines,
 
  341           const std::string& filename );
 
bool m_instanceInitialized
 
Segmenter segments IDs manager. 
 
Segmenter Output Parameters. 
 
SegmenterIdsManager * m_segmentsIdsManagerPtr
Pointer to the segments Ids manager - (default 0) */. 
 
std::vector< double > const * m_inputRasterGainsPtr
Pointer to a vector of input raster bands gain values */. 
 
boost::mutex * m_outputRasterIOMutexPtr
Pointer to the mutex used when accessing the output raster (default:0)*/. 
 
boost::mutex * m_blockProcessedSignalMutexPtr
Pointer to the mutex used by the block processed signal (default:0)*/. 
 
This class can be used to inform the progress of a task. 
 
Raster Processing algorithm output parameters base interface. 
 
std::auto_ptr< te::rst::Raster > m_outputRasterPtr
A pointer the ge generated output raster (label image). 
 
std::string m_rType
Output raster data source type (as described in te::raster::RasterFactory ). 
 
The parameters passed to the Segmenter::segmenterthreadEntry method. 
 
std::vector< double > const * m_inputRasterOffsetsPtr
Pointer to a vector of input raster bands offset values */. 
 
bool volatile * m_abortSegmentationFlagPtr
Pointer to the abort segmentation flag (default:0)*/. 
 
Segmenter Strategy Parameters. 
 
Raster Processing algorithm base interface. 
 
Segmenter::InputParameters m_inputParameters
Segmenter execution parameters. 
 
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. 
 
Raster Processing algorithm base interface class. 
 
Segmenter::OutputParameters * m_outputParametersPtr
A pointer to the global segmenter input execution parameters (default:0). */. 
 
Raster segmenter strategy base class. 
 
std::map< std::string, std::string > m_rInfo
The necessary information to create the raster (as described in te::raster::RasterFactory). 
 
Configuration flags for the Raster Processing module of TerraLib. 
 
boost::mutex * m_inputRasterIOMutexPtr
Pointer to the mutex used when accessing the input raster (default:0)*/. 
 
bool m_enableStrategyProgress
Enable/Disable the segmentation strategy to use its own progress interface (default:false). */. 
 
Raster segmenter strategy parameters base class. 
 
A generic template matrix. 
 
SegmentsBlocksMatrixT * m_segsBlocksMatrixPtr
Pointer to the segments blocks matrix (default:0)*/. 
 
Segmenter segments block description class. 
 
boost::condition_variable * m_blockProcessedSignalPtr
Pointer to a signal to be emited when a segments block was processed (default:0)*/. 
 
boost::mutex * m_generalMutexPtr
Pointer to a general global mutex (default:0)*/. 
 
Segmenter::InputParameters const * m_inputParametersPtr
A pointer to the global segmenter input execution parameters (default:0). */. 
 
unsigned int volatile * m_runningThreadsCounterPtr
Pointer to the running threads counter - default 0) */. 
 
te::common::TaskProgress * m_progressPtr
A pointer to an active task progress tha should be pulsed for each processed block or a null pointer ...