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::auto_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;
98 std::string getDatasetNameOfProperty(std::size_t pos)
const;
100 bool isEmpty()
const;
102 bool isConnected()
const;
104 std::size_t size()
const;
110 bool moveBeforeFirst();
116 bool move(std::size_t i);
118 bool isAtBegin()
const;
120 bool isBeforeBegin()
const;
122 bool isAtEnd()
const;
124 bool isAfterEnd()
const;
126 char getChar(std::size_t i)
const;
128 unsigned char getUChar(std::size_t i)
const;
130 boost::int16_t getInt16(std::size_t i)
const;
132 boost::int32_t getInt32(std::size_t i)
const;
134 boost::int64_t getInt64(std::size_t i)
const;
136 bool getBool(std::size_t i)
const;
138 float getFloat(std::size_t i)
const;
142 std::string getNumeric(std::size_t i)
const;
144 std::string getString(std::size_t i)
const;
146 std::auto_ptr<te::dt::ByteArray> getByteArray(std::size_t i)
const;
148 std::auto_ptr<te::gm::Geometry> getGeometry(std::size_t i)
const;
150 std::auto_ptr<te::rst::Raster> getRaster(std::size_t i)
const;
152 std::auto_ptr<te::dt::DateTime> getDateTime(std::size_t i)
const;
154 std::auto_ptr<te::dt::Array> getArray(std::size_t i)
const;
156 bool isNull(std::size_t i)
const;
163 void setSRID(
int srid);
179 void add(
const std::string& newPropertyName,
181 const std::vector<std::size_t>& adaptedPropertyPos,
209 #endif // __TERRALIB_DATAACCESS_INTERNAL_DATASETADAPTER_H
std::vector< AttributeConverter > m_converters
A vector that stores the attribute converters functions.
int m_srid
The identifier of the layer spatial reference system.
std::vector< std::vector< std::size_t > > m_propertyIndexes
A vector that stores the adapted property indexes.
boost::function3< te::dt::AbstractData *, DataSet *, const std::vector< std::size_t > &, int > AttributeConverter
The type of attribute converter functions.
An auxiliary data structure for helping to control the garbage collection of C++ objects.
std::vector< std::string > m_pnames
The name for each property.
AccessPolicy
Supported data access policies (can be used as bitfield).
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.
Definition of attribute converter and a set of them.
std::vector< int > m_datatypes
The datatype for each property.
TraverseType
A dataset can be traversed in two ways:
A base class for values that can be retrieved from the data access module.
double getDouble(const std::string &value, std::vector< std::string > &sVector)
te::common::Holder< DataSet > m_ds
A pointer to the DataSet that will be handled by adapter.
A dataset is the unit of information manipulated by the data access module of TerraLib.
A dataset is the unit of information manipulated by the data access module of TerraLib.