26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_DATASETADAPTER_H    27 #define __TERRALIB_DATAACCESS_INTERNAL_DATASETADAPTER_H    30 #include "../../common/Holder.h"    31 #include "../Config.h"    43     class DataSourceCapabilities;
    81         std::unique_ptr<te::gm::Envelope> getExtent(std::size_t i);
    83         std::size_t getNumProperties() 
const;
    85         int getPropertyDataType(std::size_t pos) 
const;
    87         std::string getPropertyName(std::size_t pos) 
const;
    89         std::string getDatasetNameOfProperty(std::size_t pos) 
const;
    93         bool isConnected() 
const;
    95         std::size_t size() 
const;
   101         bool moveBeforeFirst();
   107         bool move(std::size_t i);
   109         bool isAtBegin() 
const;
   111         bool isBeforeBegin() 
const;
   113         bool isAtEnd() 
const;
   115         bool isAfterEnd() 
const;
   117         char getChar(std::size_t i) 
const;
   119         unsigned char getUChar(std::size_t i) 
const;
   121         boost::int16_t getInt16(std::size_t i) 
const;
   123         boost::int32_t getInt32(std::size_t i) 
const;
   125         boost::int64_t getInt64(std::size_t i) 
const;
   127         bool getBool(std::size_t i) 
const;
   129         float getFloat(std::size_t i) 
const;
   131         double getDouble(std::size_t i) 
const;
   133         std::string getNumeric(std::size_t i) 
const;
   135         std::string getString(std::size_t i) 
const;
   137         std::unique_ptr<te::dt::ByteArray> getByteArray(std::size_t i) 
const;
   139         std::unique_ptr<te::gm::Geometry> getGeometry(std::size_t i) 
const;
   141         std::unique_ptr<te::rst::Raster> getRaster(std::size_t i) 
const;
   143         std::unique_ptr<te::dt::DateTime> getDateTime(std::size_t i) 
const;
   145         std::unique_ptr<te::dt::Array> getArray(std::size_t i) 
const;
   147         bool isNull(std::size_t i) 
const;
   163         void add(
const std::string& newPropertyName,
   165                  const std::vector<std::size_t>& adaptedPropertyPos,
   192 #endif  // __TERRALIB_DATAACCESS_INTERNAL_DATASETADAPTER_H An auxiliary data structure for helping to control the garbage collection of C++ objects. 
 
te::common::Holder< DataSet > m_ds
A pointer to the DataSet that will be handled by adapter. 
 
std::vector< std::vector< std::size_t > > m_propertyIndexes
A vector that stores the adapted property indexes. 
 
std::vector< AttributeConverter > m_converters
A vector that stores the attribute converters functions. 
 
std::vector< int > m_datatypes
The datatype for each property. 
 
AccessPolicy
Supported data access policies (can be used as bitfield). 
 
TraverseType
A dataset can be traversed in two ways: 
 
boost::function3< te::dt::AbstractData *, DataSet *, const std::vector< std::size_t > &, int > AttributeConverter
The type of attribute converter functions. 
 
A base class for values that can be retrieved from the data access module. 
 
Definition of attribute converter and a set of them. 
 
A dataset is the unit of information manipulated by the data access module of TerraLib. 
 
std::vector< std::string > m_pnames
The name for each property. 
 
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
A dataset is the unit of information manipulated by the data access module of TerraLib.