26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_FILTEREDDATASET_H
27 #define __TERRALIB_DATAACCESS_INTERNAL_FILTEREDDATASET_H
30 #include "../../common/Holder.h"
31 #include "../Config.h"
76 const std::vector<std::size_t>& positions,
bool isOwner =
false);
87 std::unique_ptr<te::gm::Envelope>
getExtent(std::size_t i);
147 std::unique_ptr<te::gm::Geometry>
getGeometry(std::size_t i)
const;
149 std::unique_ptr<te::rst::Raster>
getRaster(std::size_t i)
const;
151 std::unique_ptr<te::dt::DateTime>
getDateTime(std::size_t i)
const;
153 std::unique_ptr<te::dt::Array>
getArray(std::size_t i)
const;
A class that informs what the dataset implementation of a given data source can perform.
te::da::DataSourceCapabilities capabilities
A class that informs what the dataset implementation of a given data source can perform.
A dataset is the unit of information manipulated by the data access module of TerraLib.
This class represents a filtered data set.
bool isConnected() const
It returns true if the dataset is connected and false if it is disconnected. A dataset can be connect...
bool getBool(std::size_t i) const
Method for retrieving a boolean attribute value.
te::common::Holder< DataSet > m_ds
A pointer to the DataSet that will be filtered.
FilteredDataSet(DataSet *dataset, const std::vector< std::size_t > &positions, bool isOwner=false)
Constructor.
bool isAfterEnd() const
It tells if the dataset internal pointer is on the sentinel position after the last element of the co...
std::unique_ptr< te::rst::Raster > getRaster(std::size_t i) const
Method for retrieving a raster attribute value.
te::common::AccessPolicy getAccessPolicy() const
It returns the read and write permission associated to the dataset.
std::string getPropertyName(std::size_t i) const
It returns the property name at position pos.
char getChar(std::size_t i) const
Method for retrieving a signed character attribute value (1 byte long).
FilteredDataSet(DataSet *dataset, const DataSetCapabilities &capabilities, const std::vector< std::size_t > &positions, bool isOwner=false)
Constructor.
std::size_t getNumProperties() const
It returns the number of properties that composes an item of the dataset.
bool moveBeforeFirst()
It moves the internal pointer to a position before the first item in the collection.
std::unique_ptr< te::gm::Envelope > getExtent(std::size_t i)
It computes the bounding rectangle for a spatial property of the dataset.
std::unique_ptr< te::dt::Array > getArray(std::size_t i) const
Method for retrieving an array.
bool movePrevious()
It moves the internal pointer to the previous item of the collection.
~FilteredDataSet()
Destructor.
std::unique_ptr< te::dt::ByteArray > getByteArray(std::size_t i) const
Method for retrieving a byte array.
boost::int32_t getInt32(std::size_t i) const
Method for retrieving a 32-bit integer attribute value (4 bytes long).
DataSetCapabilities m_capabilites
bool moveNext()
It moves the internal pointer to the next item of the collection.
bool moveFirst()
It moves the internal pointer to the first item in the collection.
bool moveLast()
It sets the dataset internal pointer to the last item in the collection.
bool isNull(std::size_t i) const
It checks if the attribute value is NULL.
int getPropertyDataType(std::size_t i) const
It returns the underlying data type of the property at position pos.
boost::int16_t getInt16(std::size_t i) const
Method for retrieving a 16-bit integer attribute value (2 bytes long).
unsigned char getUChar(std::size_t i) const
Method for retrieving an unsigned character attribute value (1 byte long).
std::unique_ptr< te::dt::DateTime > getDateTime(std::size_t i) const
Method for retrieving a date and time attribute value.
float getFloat(std::size_t i) const
Method for retrieving a float attribute value.
std::vector< std::size_t > m_positions
The data set positions that actually will be accessed.
bool isEmpty() const
It returns true if the collection is empty.
boost::int64_t getInt64(std::size_t i) const
Method for retrieving a 64-bit integer attribute value (8 bytes long).
bool isAtBegin() const
It tells if the dataset internal pointer is on the first element of the collection or not.
bool isPositionValid() const
It tells if the dataset internal pointer is on a valid position.
std::string getDatasetNameOfProperty(std::size_t i) const
It returns the underlying dataset name of the property at position pos.
std::unique_ptr< te::gm::Geometry > getGeometry(std::size_t i) const
Method for retrieving a geometric attribute value.
bool isBeforeBegin() const
It tells if the dataset internal pointer is in a position before the first element of the collection ...
te::common::TraverseType getTraverseType() const
It returns the traverse type associated to the dataset.
double getDouble(std::size_t i) const
Method for retrieving a double attribute value.
bool move(std::size_t i)
It moves the dataset internal pointer to a given position.
std::string getNumeric(std::size_t i) const
Method for retrieving a numeric attribute value.
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.
std::string getString(std::size_t i) const
Method for retrieving a string value attribute.
TraverseType
A dataset can be traversed in two ways:
AccessPolicy
Supported data access policies (can be used as bitfield).
Implementation of an in-memory data set that contains spatiotemporal observations indexed by time and...
An auxiliary data structure for helping to control the garbage collection of C++ objects.
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.