27 #include "../common/StringUtils.h"
28 #include "../common/Translator.h"
51 params.push_back(std::pair<std::string, std::string>(
"MEM_SRC_RASTER_DRIVER_TYPE",
""));
52 params.push_back(std::pair<std::string, std::string>(
"MEM_TILED_RASTER",
""));
53 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_TILE_WIDTH",
""));
54 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_TILE_HEIGHT",
""));
56 params.push_back(std::pair<std::string, std::string>(
"MEM_IS_DATA_BUFFER",
""));
57 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_NROWS",
""));
58 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_NCOLS",
""));
59 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_DATATYPE",
""));
60 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_NBANDS",
""));
61 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_SRID",
""));
62 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_RES_X",
""));
63 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_RES_Y",
""));
64 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_MIN_X",
""));
65 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_MIN_Y",
""));
66 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_MAX_X",
""));
67 params.push_back(std::pair<std::string, std::string>(
"MEM_BUFFER_MAX_Y",
""));
69 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_NROWS",
""));
70 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_NCOLS",
""));
71 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_DATATYPE",
""));
72 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_NBANDS",
""));
73 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_SRID",
""));
74 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_RES_X",
""));
75 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_RES_Y",
""));
76 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_MIN_X",
""));
77 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_MIN_Y",
""));
78 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_MAX_X",
""));
79 params.push_back(std::pair<std::string, std::string>(
"MEM_RASTER_MAX_Y",
""));
88 const std::vector<te::rst::BandProperty*> bands,
89 const std::map<std::string, std::string>& rinfo,
91 void (*deleter)(
void*))
93 std::auto_ptr<Raster> raster(
new Raster);
95 raster->create(g, bands, rinfo, h, deleter);
97 return raster.release();
107 std::map<std::string, std::string>
capabilities = std::map<std::string, std::string>();
te::rst::Raster * build()
Concrete factories (derived from this one) must implement this method in order to create objects...
static std::string sg_rasterFactoryId(TE_MEMORY_DRIVER_IDENTIFIER)
A raster class for memory.
std::map< std::string, std::string > getCapabilities() const
It returns a map containing all supported formats.
An exception class for the TerraLib In-Memory Data Access driver.
An abstract class for raster data strucutures.
te::da::DataSourceCapabilities capabilities
This is the abstract factory for Rasters.
static RasterFactory sm_factory
const std::string & getType() const
Returns the type (name) of this factory.
A raster class for memory.
~RasterFactory()
Destructor.
This is the concrete factory for In-Memory driver.
void getCreationalParameters(std::vector< std::pair< std::string, std::string > > ¶ms) const
It returns the list of parameters accepted as raster info.
A rectified grid is the spatial support for raster data.
te::rst::Raster * create(te::rst::Grid *g, const std::vector< te::rst::BandProperty * > bands, const std::map< std::string, std::string > &rinfo, void *h=0, void(*deleter)(void *)=0)
This method must be implemented by subclasses (raster drivers).
#define TE_MEMORY_DRIVER_IDENTIFIER
The In-Memory driver identifier string.