Go to the documentation of this file.
26 #ifndef __TERRALIB_RASTER_INTERNAL_RASTERFACTORY_H
27 #define __TERRALIB_RASTER_INTERNAL_RASTERFACTORY_H
30 #include "../common/AbstractFactory.h"
91 static Raster*
make(
Grid* g,
const std::vector<BandProperty*> bands,
const std::map<std::string, std::string>& rinfo,
void* h = 0,
void (*deleter)(
void*) = 0);
109 static Raster*
make(
const std::string& rType,
Grid* g,
const std::vector<BandProperty*> bands,
const std::map<std::string, std::string>& rinfo,
void* h = 0,
void (*deleter)(
void*) = 0);
124 static Raster*
make(
const std::map<std::string, std::string>& rinfo,
void* h = 0,
void (*deleter)(
void*) = 0);
140 static Raster*
make(
const std::string& rType,
const std::map<std::string, std::string>& rinfo,
void* h,
void (*deleter)(
void*) = 0);
198 virtual const std::string&
getType()
const = 0;
240 virtual Raster*
create(
Grid* g,
const std::vector<BandProperty*> bands,
const std::map<std::string, std::string>& rinfo,
void* h = 0,
void (*deleter)(
void*) = 0) = 0;
246 #endif // __TERRALIB_RASTER_INTERNAL_RASTERFACTORY_H
Raster implementaton for TerraLib 4.x.
This class defines the interface of abstract factories without initializing parameters.
An abstract class for raster data strucutures.
virtual Raster * create(Grid *g, const std::vector< BandProperty * > bands, const std::map< std::string, std::string > &rinfo, void *h=0, void(*deleter)(void *)=0)=0
This method must be implemented by subclasses (raster drivers).
virtual std::map< std::string, std::string > getCapabilities() const =0
It returns a map<string, string> containing all supported formats.
RasterFactory(const std::string &factoryKey)
Constructor.
static Raster * make(const std::string &rType, const std::map< std::string, std::string > &rinfo, void *h, void(*deleter)(void *)=0)
It creates a raster with the given parameters using a proper driver.
static Raster * open(const std::string &key, const std::string &value, te::common::AccessPolicy p=te::common::RAccess)
It creates a raster with the given parameters and default raster driver.
A rectified grid is the spatial support for raster data.
static Raster * make(const std::map< std::string, std::string > &rinfo, void *h=0, void(*deleter)(void *)=0)
It creates a raster with the given parameters using the default driver.
static Raster * make()
It creates and returns an empty raster with default raster driver.
#define TERASTEREXPORT
You can use this macro in order to export/import classes and functions from this module.
This is the abstract factory for Rasters.
static Raster * open(const std::string &rType, const std::string &key, const std::string &value, te::common::AccessPolicy p=te::common::RAccess)
It creates a raster with the given parameters.
static Raster * make(Grid *g, const std::vector< BandProperty * > bands, const std::map< std::string, std::string > &rinfo, void *h=0, void(*deleter)(void *)=0)
It creates a raster with the given parameters using the default raster driver.
virtual void getCreationalParameters(std::vector< std::pair< std::string, std::string > > ¶ms) const =0
It returns the list of parameters accepted as raster info.
virtual ~RasterFactory()
Destructor.
static Raster * open(const std::string &rType, const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess)
It creates a raster with the given parameters.
static Raster * make(const std::string &rType, Grid *g, const std::vector< BandProperty * > bands, const std::map< std::string, std::string > &rinfo, void *h=0, void(*deleter)(void *)=0)
It creates a raster with the given parameters using a proper driver.
static Raster * make(const std::string &rType)
It creates an empty raster with the proper driver.
static Raster * open(const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess)
It opens a raster with the given parameters and default raster driver.
virtual Raster * iOpen(const std::map< std::string, std::string > &rinfo, te::common::AccessPolicy p=te::common::RAccess)
This method may be re-implemented by subclasses in order to have a finner control for the raster obje...
virtual const std::string & getType() const =0
Returns the type (name) of this factory.
AccessPolicy
Supported data access policies (can be used as bitfield).