25 #ifndef __TERRALIB_RP_INTERNAL_TIEPOINTSLOCATORSTRATEGY_H    26 #define __TERRALIB_RP_INTERNAL_TIEPOINTSLOCATORSTRATEGY_H    31 #include "../geometry/GTParameters.h"    32 #include "../raster/Raster.h"    33 #include "../raster/Interpolator.h"    46     class TiePointsLocator;
    66         virtual void getSubSampledSpecStrategyParams( 
    67           const double subSampleOptimizationRescaleFactor,
    69           std::unique_ptr< TiePointsLocatorStrategyParameters >& subSampledSpecParamsPtr ) 
const = 0;
    77         virtual void getDefaultSpecStrategyParams( 
    78           std::unique_ptr< TiePointsLocatorStrategyParameters >& defaultSpecParamsPtr ) 
const = 0;          
    85         const std::string& getErrorMessage() 
const;
   122               : m_x( 0 ), m_y( 0 ), m_feature1( 0 ), m_feature2( 0 ),
   178               m_point1( point1 ), m_point2( point2 ),
   179               m_feature( feature ) {};
   206         virtual bool initialize( 
   212         virtual void reset();
   218         virtual unsigned int getAutoMaxTiePointsNumber() 
const = 0;
   227         virtual bool getMatchedInterestPoints( 
   229           const double raster1ToRaster2TransfDMapError,
   271         static bool loadRasterData( 
   273           const std::vector< unsigned int >& rasterBands,
   275           const unsigned int maskRasterBand,
   276           const unsigned int rasterTargetAreaLineStart,
   277           const unsigned int rasterTargetAreaColStart,
   278           const unsigned int rasterTargetAreaWidth,
   279           const unsigned int rasterTargetAreaHeight,
   280           const double desiredRescaleFactorX,
   281           const double desiredRescaleFactorY,
   283           const unsigned char maxMemPercentUsage, 
   284           std::vector< boost::shared_ptr< FloatsMatrix > >& loadedRasterData,
   286           double& achievedRescaleFactorX,
   287           double& achievedRescaleFactorY );
   296         template< 
typename BufferElementT >
   298           const unsigned int& bufferLinesNumber )
   301           assert( bufferLinesNumber );
   303           unsigned int idx = 0;
   304           BufferElementT* auxLinePtr = bufferPtr[ 0 ];
   305           const unsigned int lastLineIdx = bufferLinesNumber - 1;
   307           for( idx = 0 ; idx < lastLineIdx ; ++idx )
   309             bufferPtr[ idx ] = bufferPtr[ idx + 1 ];
   312           bufferPtr[ lastLineIdx ] = auxLinePtr;
   324         static void createTifFromMatrix( 
   325           const FloatsMatrix& rasterData,
   326           const InterestPointsSetT& interestPoints,
   327           const std::string& tifFileName );         
   338         static void features2Tiff( 
   339           const DoublesMatrix& features,
   340           const InterestPointsSetT& interestPoints,
   341           const std::string& fileNameBeginning ); 
   350         static bool checkForDuplicatedInterestPoints( 
const InterestPointsSetT& interestPoints,
   351           double& x, 
double& y );         
   358         void setErrorMessage( 
const std::string& newErrorMessage );
 
te::rp::Matrix< float > FloatsMatrix
A matrix do store float values. 
 
unsigned int m_y
Point Y coord. 
 
InterestPointT & operator=(const InterestPointT &other)
 
MatchedInterestPointsT(const MatchedInterestPointsT &other)
 
MatchedInterestPointsT(const InterestPointT &point1, const InterestPointT &point2, const float &feature)
 
float m_feature
Matched interest feature. 
 
InterpolationMethod
Allowed interpolation methods. 
 
std::string m_errorMessage
Current error message. 
 
unsigned int m_x
Point X coord. 
 
bool operator<(const MatchedInterestPointsT &other) const
 
std::list< InterestPointT > InterestPointsListT
 
te::rp::Matrix< unsigned char > UCharsMatrix
A matrix do store unsigned char values. 
 
TiePointsLocator strategy parameters. 
 
An abstract class for raster data strucutures. 
 
std::multiset< InterestPointT > InterestPointsSetT
 
#define TERPEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
te::rp::Matrix< double > DoublesMatrix
A matrix do store double values. 
 
Tie-points locator strategy. 
 
static void roolUpBuffer(BufferElementT **bufferPtr, const unsigned int &bufferLinesNumber)
RoolUp a buffer of lines. 
 
Configuration flags for the Raster Processing module of TerraLib. 
 
float m_feature3
Interest point feature 3 value. 
 
A generic template matrix. 
 
bool operator<(const InterestPointT &other) const
 
~MatchedInterestPointsT()
 
InterestPointT m_point2
Interest point 2. 
 
float m_feature2
Interest point feature 2 value. 
 
std::multiset< MatchedInterestPointsT > MatchedInterestPointsSetT
 
const MatchedInterestPointsT & operator=(const MatchedInterestPointsT &other)
 
InterestPointT m_point1
Interest point 1. 
 
InterestPointT(const InterestPointT &other)
 
float m_feature1
Interest point feature 1 value.