27 #include "../common/ByteSwapUtils.h"
28 #include "../common/Globals.h"
29 #include "../common/StringUtils.h"
30 #include "../common/Translator.h"
31 #include "../dataaccess/dataset/DataSetType.h"
32 #include "../datatype/Array.h"
33 #include "../datatype/ByteArray.h"
34 #include "../datatype/DateTimeProperty.h"
35 #include "../datatype/SimpleData.h"
36 #include "../datatype/TimeInstant.h"
37 #include "../geometry/Envelope.h"
38 #include "../geometry/Geometry.h"
39 #include "../geometry/WKBReader.h"
40 #include "../raster/Raster.h"
48 #include <terralib4/kernel/TeAttribute.h>
49 #include <terralib4/kernel/TeDatabase.h>
50 #include <terralib4/kernel/TeLayer.h>
51 #include <terralib4/kernel/TeQuerierParams.h>
57 #include <boost/dynamic_bitset.hpp>
58 #include <boost/lexical_cast.hpp>
61 : m_raster(raster), m_i(-1)
179 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
184 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
189 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
194 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
199 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
204 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
209 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
214 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
219 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
224 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
229 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
234 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
239 return std::auto_ptr<te::rst::Raster>(
new Raster(m_raster));
244 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
249 throw Exception(
TE_TR(
"Not supported by this type of dataset!"));
std::string getPropertyName(std::size_t i) const
It returns the property name at position pos.
bool isConnected() const
It returns true if the dataset is connected and false if it is disconnected. A dataset can be connect...
CharEncoding
Supported charsets (character encoding).
boost::int64_t getInt64(std::size_t i) const
Method for retrieving a 64-bit integer attribute value (8 bytes long).
std::auto_ptr< te::dt::Array > getArray(std::size_t i) const
Method for retrieving an array.
std::auto_ptr< te::gm::Geometry > getGeometry(std::size_t i) const
Method for retrieving a geometric attribute value.
bool moveFirst()
It moves the internal pointer to the first item in the collection.
bool isAfterEnd() const
It tells if the dataset internal pointer is on the sentinel position after the last element of the co...
std::auto_ptr< te::dt::ByteArray > getByteArray(std::size_t i) const
Method for retrieving a byte array.
Implements the DataSource class for the TerraLib 4.x Data Access Driver.
bool movePrevious()
It moves the internal pointer to the previous item of the collection.
std::auto_ptr< te::dt::DateTime > getDateTime(std::size_t i) const
Method for retrieving a date and time attribute value.
int getPropertyDataType(std::size_t i) const
It returns the underlying data type of the property at position pos.
bool isAtBegin() const
It tells if the dataset internal pointer is on the first element of the collection or not...
#define TE_TR(message)
It marks a string in order to get translated.
bool isBeforeBegin() const
It tells if the dataset internal pointer is in a position before the first element of the collection ...
char getChar(std::size_t i) const
Method for retrieving a signed character attribute value (1 byte long).
bool getBool(std::size_t i) const
Method for retrieving a boolean attribute value.
te::common::AccessPolicy getAccessPolicy() const
It returns the read and write permission associated to the dataset.
te::common::TraverseType getTraverseType() const
It returns the traverse type associated to the dataset.
std::string getString(std::size_t i) const
Method for retrieving a string value attribute.
std::auto_ptr< te::dt::Property > Convert2T5(const TeAttributeRep &attRep)
It creates a valid TerraLib 5 property given a valid TerraLib 4.x attribute representation.
te::common::CharEncoding getPropertyCharEncoding(std::size_t i) const
It returns the property character encoding at position pos.
RasterDataSet(TeRaster *raster)
AccessPolicy
Supported data access policies (can be used as bitfield).
std::string getNumeric(std::size_t i) const
Method for retrieving a numeric attribute value.
TraverseType
A dataset can be traversed in two ways:
bool isNull(std::size_t i) const
It checks if the attribute value is NULL.
unsigned char getUChar(std::size_t i) const
Method for retrieving an unsigned character attribute value (1 byte long).
An abstract class for raster data strucutures.
std::string getDatasetNameOfProperty(std::size_t i) const
It returns the underlying dataset name of the property at position pos.
bool moveNext()
It moves the internal pointer to the next item of the collection.
bool moveBeforeFirst()
It moves the internal pointer to a position before the first item in the collection.
std::auto_ptr< te::rst::Raster > getRaster(std::size_t i) const
Method for retrieving a raster attribute value.
std::auto_ptr< te::gm::Envelope > getExtent(std::size_t i)
It computes the bounding rectangle for a spatial property of the dataset.
bool moveLast()
It sets the dataset internal pointer to the last item in the collection.
double getDouble(std::size_t i) const
Method for retrieving a double attribute value.
bool isEmpty() const
It returns true if the collection is empty.
std::size_t getNumProperties() const
It returns the number of properties that composes an item of the dataset.
bool move(std::size_t i)
It moves the dataset internal pointer to a given position.
std::size_t size() const
It returns the collection size, if it is known.
bool isAtEnd() const
It tells if the dataset internal pointer is on the last element of the collection.
boost::int16_t getInt16(std::size_t i) const
Method for retrieving a 16-bit integer attribute value (2 bytes long).
Utilitary functions for dealing with TerraLib 5 and 4.x conversion.
float getFloat(std::size_t i) const
Method for retrieving a float attribute value.
boost::int32_t getInt32(std::size_t i) const
Method for retrieving a 32-bit integer attribute value (4 bytes long).