26 #ifndef __TERRALIB_EDIT_INTERNAL_SNAPMANAGER_H 
   27 #define __TERRALIB_EDIT_INTERNAL_SNAPMANAGER_H 
   30 #include "../common/Singleton.h" 
   34 #include <boost/function.hpp> 
   74         bool hasSnap(
const std::string& source) 
const;
 
   76         void createSnap(
const std::string& source, 
int srid);
 
   78         void buildSnap(
const std::string& source, 
int srid, 
te::da::DataSet* dataset);
 
   80         void removeSnap(
const std::string& source);
 
   82         const std::map<std::string, Snap*>& getSnaps() 
const;
 
   84         Snap* getSnap(
const std::string& source) 
const;
 
   86         void clear(
const std::string& source);
 
   92         void setWorld(
const double& llx, 
const double& lly,
 
   93                       const double& urx, 
const double& ury,
 
   94                       const std::size_t& width, 
const std::size_t& height);
 
   96         void reg(
const std::string& name, 
const SnapStrategyFnctType& strategy);
 
   98         void clearStrategies();
 
  117 #endif  // __TERRALIB_EDIT_INTERNAL_SNAPMANAGER_H 
This class implements geometry snap concept. 
 
This is a singleton for managing geometries snap. 
 
#define TEEDITEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
std::map< std::string, Snap * > m_snaps
 
An utility struct for representing 2D coordinates. 
 
std::map< std::string, SnapStrategyFnctType > SnapStrategies
 
SnapStrategies m_snapStrategies
 
Configuration flags for the TerraLib Edit module. 
 
A dataset is the unit of information manipulated by the data access module of TerraLib. 
 
boost::function< Snap *(const std::string &source, int srid)> SnapStrategyFnctType
 
Template support for singleton pattern.