te::ogr Namespace Reference

Namespace for the OGR Driver Implementation of TerraLib. More...

Classes

class  DataSet
 Implementation of a DataSet for OGR data provider. More...
 
class  DataSource
 The OGR data source provider. More...
 
class  Globals
 An static class with global definitions. More...
 
class  SQLVisitor
 
class  Transactor
 

Functions

te::da::DataSourceBuild (const te::core::URI &uri)
 
TEOGREXPORT OGRGeometry * Convert2OGR (const te::gm::Geometry *teGeom)
 It converts the TerraLib Geometry to OGR Geometry. More...
 
TEOGREXPORT OGRGeometry * Convert2OGR (const te::gm::Geometry *teGeom, const OGRSpatialReference *srs)
 It converts the TerraLib Geometry to OGR Geometry. More...
 
TEOGREXPORT OGREnvelope * Convert2OGR (const te::gm::Envelope *env)
 It converts the TerraLib Envelope to OGR Envelope. More...
 
TEOGREXPORT OGRFeatureDefn * Convert2OGR (te::da::DataSetType *dt)
 It converts the TerraLib DataSet Type to OGR Feature Definition. More...
 
TEOGREXPORT OGRFieldDefn * Convert2OGR (te::dt::Property *p)
 It converts the TerraLib Property Type to OGR Field Definition. More...
 
TEOGREXPORT OGRwkbGeometryType Convert2OGR (te::gm::GeomType geomType)
 It converts the TerraLib Geometry Type element to OGR Geometry Type. More...
 
TEOGREXPORT OGRSpatialReference * Convert2OGRProjection (int srid)
 It converts the TerraLib Projection to OGR Projection. More...
 
TEOGREXPORT te::gm::GeometryConvert2TerraLib (OGRGeometry *ogrGeom)
 It converts the OGR Geometry to TerraLib Geometry. More...
 
TEOGREXPORT te::gm::EnvelopeConvert2TerraLib (const OGREnvelope *env)
 It converts the OGR Envelope to TerraLib Envelope. More...
 
TEOGREXPORT void Convert2TerraLib (OGRFeatureDefn *featDef, te::da::DataSetType *dt, int srs=TE_UNKNOWN_SRS)
 It inserts a OGR Feature Definition to TerraLib DataSet Type. More...
 
TEOGREXPORT te::da::DataSetTypeConvert2TerraLib (OGRFeatureDefn *featDef, int srs=TE_UNKNOWN_SRS)
 It converts the OGR Feature Definition to TerraLib DataSet Type. More...
 
TEOGREXPORT te::dt::PropertyConvert2TerraLib (OGRFieldDefn *fieldDef)
 It converts the OGR Field Definition to TerraLib Property Type. More...
 
TEOGREXPORT te::gm::GeomType Convert2TerraLib (OGRwkbGeometryType ogrGeomType)
 It converts the OGR Geometry Type element to TerraLib Geometry Type. More...
 
TEOGREXPORT int Convert2TerraLibProjection (OGRSpatialReference *osrs)
 It converts the OGR Projection to TerraLib Projection. More...
 
std::string GetDriverName (const std::string &path)
 It tries extract the driver name used by OGR Library based on the given path. More...
 
TEOGREXPORT std::string GetOGRConnectionInfo (const std::map< std::string, std::string > &connInfo)
 
TEOGREXPORT std::vector< std::string > GetOGRDrivers (bool filterCreate=false)
 It returns the list of OGR Drivers available. More...
 
TEOGREXPORT boost::mutex & getStaticMutex ()
 Returns a reference to a static mutex initialized when this module is initialized. More...
 
 OGRCleanupAll ()
 
void OGRErrorHandler (CPLErr eErrClass, int errNo, const char *msg)
 
TEOGREXPORT std::string RemoveSpatialSql (const std::string &sql)
 
 TE_LOG_TRACE (TE_TR("TerraLib OGR driver shutdown!"))
 
 TERRALIB_CPP_PLUGIN_BEGIN (Plugin) TERRALIB_CPP_PLUGIN_STARTUP
 

Variables

 m_initialized = false
 
 TERRALIB_CPP_PLUGIN_SHUTDOWN
 

Detailed Description

Namespace for the OGR Driver Implementation of TerraLib.

Function Documentation

te::da::DataSource * te::ogr::Build ( const te::core::URI uri)

Definition at line 349 of file src/terralib/ogr/DataSource.cpp.

References te::ogr::DataSource::DataSource(), and ds.

Referenced by TERRALIB_CPP_PLUGIN_BEGIN().

OGRGeometry * te::ogr::Convert2OGR ( const te::gm::Geometry teGeom)

It converts the TerraLib Geometry to OGR Geometry.

Parameters
teGeomA valid TerraLib Geometry.
Returns
A valid TerraLib geometry.
Exceptions
ExceptionIt throws an exception if the TerraLib geometry can not be converted.
Note
It uses the WKB to create the TerraLib Geometry
The caller of this function will take the ownership of the returned OGR Geometry.

Definition at line 81 of file src/terralib/ogr/Utils.cpp.

References Convert2OGRProjection(), and te::gm::Geometry::getSRID().

Referenced by te::ogr::Transactor::add(), te::ogr::Transactor::addProperty(), te::gpkg::Convert2OGR(), Convert2OGR(), te::ogr::Transactor::createDataSet(), te::ogr::Transactor::getDataSet(), te::wfs::Transactor::getDataSet(), te::gdal::Rasterize(), and te::ogr::Transactor::update().

OGRGeometry * te::ogr::Convert2OGR ( const te::gm::Geometry teGeom,
const OGRSpatialReference *  srs 
)

It converts the TerraLib Geometry to OGR Geometry.

Parameters
teGeomA valid TerraLib Geometry.
srsOGR srs information..
Returns
A valid TerraLib geometry.
Exceptions
ExceptionIt throws an exception if the TerraLib geometry can not be converted.
Note
It uses the WKB to create the TerraLib Geometry
The caller of this function will take the ownership of the returned OGR Geometry.

Definition at line 92 of file src/terralib/ogr/Utils.cpp.

References te::gm::Geometry::getWkb(), te::gm::Geometry::getWkbSize(), te::common::Globals::sm_machineByteOrder, and TE_TR.

OGREnvelope * te::ogr::Convert2OGR ( const te::gm::Envelope env)

It converts the TerraLib Envelope to OGR Envelope.

Parameters
envA valid TerraLib Envelope.
Returns
A valid OGR Envelope.
Note
The caller of this function will take the ownership of the returned OGR Envelope.

Definition at line 128 of file src/terralib/ogr/Utils.cpp.

References te::gm::Envelope::m_llx, te::gm::Envelope::m_lly, te::gm::Envelope::m_urx, and te::gm::Envelope::m_ury.

OGRFeatureDefn * te::ogr::Convert2OGR ( te::da::DataSetType dt)

It converts the TerraLib DataSet Type to OGR Feature Definition.

Parameters
dtA valid TerraLib DataSet Type.
Returns
A valid OGR Feature Definition.
Exceptions
ExceptionIt throws an exception if the data set type can not be converted.
Note
It uses the method that converts a TerraLib Property Type to OGR Field Definition.
The caller of this function will take the ownership of the returned OGR Feature Definition.

Definition at line 332 of file src/terralib/ogr/Utils.cpp.

References Convert2OGR(), te::dt::GEOMETRY_TYPE, te::da::GetFirstGeomProperty(), te::gm::GeometryProperty::getGeometryType(), te::dt::Property::getName(), te::dt::CompositeProperty::getProperties(), te::dt::Property::getType(), te::da::DataSetType::hasGeom(), and p.

OGRFieldDefn * te::ogr::Convert2OGR ( te::dt::Property p)

It converts the TerraLib Property Type to OGR Field Definition.

Parameters
ptA valid TerraLib Property Type.
Returns
A valid OGR Field Definition.
Exceptions
ExceptionIt throws an exception if the data type is not supported by OGR.

Definition at line 419 of file src/terralib/ogr/Utils.cpp.

References te::dt::ARRAY_TYPE, te::dt::BYTE_ARRAY_TYPE, te::dt::DATE, te::dt::DATETIME_TYPE, te::dt::DOUBLE_TYPE, te::dt::ArrayProperty::getElementType(), te::dt::Property::getName(), te::dt::DateTimeProperty::getSubType(), te::dt::Property::getType(), te::dt::INT32_TYPE, te::dt::INT64_TYPE, te::dt::NUMERIC_TYPE, p, te::dt::STRING_TYPE, TE_TR, te::dt::TIME_DURATION, and te::dt::TIME_INSTANT.

OGRwkbGeometryType te::ogr::Convert2OGR ( te::gm::GeomType  geomType)
OGRSpatialReference * te::ogr::Convert2OGRProjection ( int  srid)

It converts the TerraLib Projection to OGR Projection.

Parameters
sridA valid TerraLib Projection id.
Returns
A valid OGR Spatial Reference System.
Exceptions
ExceptionIt throws an exception if the SRS can not be imported using OGR.
Note
The caller of this function will take the ownership of the returned OGR Spatial Reference System.

Definition at line 248 of file src/terralib/ogr/Utils.cpp.

References te::common::Singleton< SpatialReferenceSystemManager >::getInstance(), and TE_TR.

Referenced by te::ogr::Transactor::add(), te::gpkg::Convert2OGR(), Convert2OGR(), and te::ogr::Transactor::createDataSet().

te::gm::Geometry * te::ogr::Convert2TerraLib ( OGRGeometry *  ogrGeom)

It converts the OGR Geometry to TerraLib Geometry.

Parameters
ogrGeomA valid OGR Geometry.
Returns
A valid TerraLib Geometry.
Exceptions
ExceptionIt throws an exception if the OGR geometry can not be converted.
Note
It uses the WKB to create the TerraLib Geometry
The caller of this function will take the ownership of the returned TerraLib Geometry.

Definition at line 56 of file src/terralib/ogr/Utils.cpp.

References te::gm::WKBReader::read().

Referenced by Convert2TerraLib(), te::ogr::DataSet::DataSet(), te::ogr::Transactor::getDataSetType(), te::wfs::Transactor::getDataSetType(), te::ogr::DataSet::getExtent(), te::ogr::Transactor::getExtent(), te::wfs::Transactor::getExtent(), te::ogr::Transactor::getProperties(), te::ogr::Transactor::getProperty(), te::wfs::Transactor::getProperty(), and te::gdal::Vectorize().

te::gm::Envelope * te::ogr::Convert2TerraLib ( const OGREnvelope *  env)

It converts the OGR Envelope to TerraLib Envelope.

Parameters
envA valid OGR Envelope.
Returns
A valid TerraLib Envelope.
Note
The caller of this function will take the ownership of the returned TerraLib Envelope.

Definition at line 123 of file src/terralib/ogr/Utils.cpp.

void te::ogr::Convert2TerraLib ( OGRFeatureDefn *  featDef,
te::da::DataSetType dt,
int  srs = TE_UNKNOWN_SRS 
)

It inserts a OGR Feature Definition to TerraLib DataSet Type.

Parameters
featDefA valid OGR Feature Definition.
dtPointer to a TerraLib dataset type previously created. Do not pass NULL.
srsOptional parameter to set the SRS of geometry fields.
Exceptions
ExceptionIt throws an exception if the feature definition can not be converted.
Note
It uses the method that converts a OGR Field Definition to TerraLib Property Type.
It uses the method that converts a OGR Geometry Type to TerraLib Geometry Type.

Definition at line 298 of file src/terralib/ogr/Utils.cpp.

References te::da::DataSetType::add(), te::sqlite::Convert2TerraLib(), and p.

te::da::DataSetType * te::ogr::Convert2TerraLib ( OGRFeatureDefn *  featDef,
int  srs = TE_UNKNOWN_SRS 
)

It converts the OGR Feature Definition to TerraLib DataSet Type.

Parameters
featDefA valid OGR Feature Definition.
srsOptional parameter to set the SRS of geometry fields.
Returns
A valid TerraLib DataSet Type.
Exceptions
ExceptionIt throws an exception if the feature definition can not be converted.
Note
It uses the method that converts a OGR Field Definition to TerraLib Property Type.
It uses the method that converts a OGR Geometry Type to TerraLib Geometry Type.
The caller of this function will take the ownership of the returned TerraLib DataSet Type.

Definition at line 321 of file src/terralib/ogr/Utils.cpp.

References Convert2TerraLib(), dt, and te::da::DataSetType::setTitle().

te::dt::Property * te::ogr::Convert2TerraLib ( OGRFieldDefn *  fieldDef)

It converts the OGR Field Definition to TerraLib Property Type.

Parameters
fieldDefA valid OGR Field Definition.
Returns
A valid TerraLib Property Type.
Exceptions
ExceptionIt throws an exception if the data type is not supported by TerraLib.
Note
The caller of this function will take the ownership of the returned TerraLib Property Type.

Definition at line 353 of file src/terralib/ogr/Utils.cpp.

References te::dt::BYTE_ARRAY_TYPE, te::dt::DATE, te::dt::DOUBLE_TYPE, te::dt::INT32_TYPE, te::dt::INT64_TYPE, p, te::dt::STRING, TE_TR, te::dt::TIME_DURATION, te::dt::TIME_INSTANT, and te::dt::VAR_STRING.

int te::ogr::Convert2TerraLibProjection ( OGRSpatialReference *  osrs)

It converts the OGR Projection to TerraLib Projection.

Parameters
osrsA valid OGR Projection.
Returns
An SRS id recognized by TerraLib or an indication of unknown SRS (TE_UNKNOWN_SRS)

Definition at line 138 of file src/terralib/ogr/Utils.cpp.

References te::common::Singleton< SpatialReferenceSystemManager >::getInstance(), TE_SRS_SIRGAS2000, and TE_UNKNOWN_SRS.

Referenced by te::ogr::DataSet::DataSet(), te::ogr::Transactor::getDataSetType(), te::wfs::Transactor::getDataSetType(), te::gdal::GetGrid(), and te::ogr::Transactor::getProperties().

std::string te::ogr::GetDriverName ( const std::string &  path)

It tries extract the driver name used by OGR Library based on the given path.

Parameters
pathThe path that will be consulted.
Returns
The driver name used by OGR Library or an empty string if not possible extract the driver name.

Definition at line 799 of file src/terralib/ogr/Utils.cpp.

Referenced by te::ogr::DataSource::createOGRDataSource(), and te::ogr::DataSource::drop().

std::string te::ogr::GetOGRConnectionInfo ( const std::map< std::string, std::string > &  connInfo)

Definition at line 849 of file src/terralib/ogr/Utils.cpp.

References TE_TR.

std::vector< std::string > te::ogr::GetOGRDrivers ( bool  filterCreate = false)

It returns the list of OGR Drivers available.

Parameters
filterCreateSet TRUE to indicate to retrieve only the drivers with the capacity to create datasources.
Returns
A list of OGR Drivers.

Definition at line 832 of file src/terralib/ogr/Utils.cpp.

TEOGREXPORT boost::mutex & te::ogr::getStaticMutex ( )

Returns a reference to a static mutex initialized when this module is initialized.

Returns
Returns a reference to a static mutex initialized when this module is initialized.

Definition at line 885 of file src/terralib/ogr/Utils.cpp.

Referenced by te::ogr::Transactor::getDataSet(), te::ogr::Transactor::query(), and TERRALIB_CPP_PLUGIN_BEGIN().

te::ogr::OGRCleanupAll ( )
void te::ogr::OGRErrorHandler ( CPLErr  eErrClass,
int  errNo,
const char *  msg 
)

Definition at line 891 of file src/terralib/ogr/Utils.cpp.

References TE_LOG_ERROR.

Referenced by TERRALIB_CPP_PLUGIN_BEGIN().

std::string te::ogr::RemoveSpatialSql ( const std::string &  sql)
te::ogr::TE_LOG_TRACE ( TE_TR("TerraLib OGR driver shutdown!")  )

Variable Documentation

te::ogr::m_initialized = false

Definition at line 143 of file src/terralib/ogr/Plugin.cpp.

Referenced by TERRALIB_CPP_PLUGIN_BEGIN().

te::ogr::TERRALIB_CPP_PLUGIN_SHUTDOWN
Initial value:

Definition at line 127 of file src/terralib/ogr/Plugin.cpp.

Referenced by TERRALIB_CPP_PLUGIN_BEGIN().