26 #ifndef __TERRALIB_MEMORY_INTERNAL_DATASET_H 
   27 #define __TERRALIB_MEMORY_INTERNAL_DATASET_H 
   30 #include "../dataaccess/dataset/DataSet.h" 
   37 #include <boost/ptr_container/ptr_vector.hpp> 
   38 #include <boost/shared_ptr.hpp> 
  103         explicit DataSet(
const DataSet& rhs, 
const bool deepCopy = 
false);
 
  165         void copy(
te::da::DataSet& src, 
const std::vector<std::size_t>& properties, std::size_t limit = 0);
 
  202         void add(
const std::string& propertyName, std::size_t propertyType, 
const te::dt::AbstractData* defaultValue = 0);
 
  213         void drop(std::size_t pos);
 
  235         std::size_t getNumProperties() 
const;
 
  237         int getPropertyDataType(std::size_t pos) 
const;
 
  239         void setPropertyDataType(
int dt, std::size_t pos);
 
  241         std::string getPropertyName(std::size_t pos) 
const;
 
  243         void setPropertyName(
const std::string& name, std::size_t pos);
 
  245         std::string getDatasetNameOfProperty(std::size_t pos) 
const;
 
  249         bool isEmpty() 
const;
 
  251         bool isConnected() 
const;
 
  253         std::size_t size() 
const;
 
  255         std::auto_ptr<te::gm::Envelope> getExtent(std::size_t i);
 
  261         bool moveBeforeFirst();
 
  267         bool move(std::size_t i);
 
  269         bool isAtBegin() 
const;
 
  271         bool isBeforeBegin() 
const;
 
  273         bool isAtEnd() 
const;
 
  275         bool isAfterEnd() 
const;
 
  277         char getChar(std::size_t i) 
const;
 
  279         unsigned char getUChar(std::size_t i) 
const;
 
  281         boost::int16_t getInt16(std::size_t i) 
const;
 
  283         boost::int32_t getInt32(std::size_t i) 
const;
 
  285         boost::int64_t getInt64(std::size_t i) 
const;
 
  287         bool getBool(std::size_t i) 
const;
 
  289         float getFloat(std::size_t i) 
const;
 
  293         std::string getNumeric(std::size_t i) 
const;
 
  295         std::string getString(std::size_t i) 
const;
 
  297         std::auto_ptr<te::dt::ByteArray> getByteArray(std::size_t i) 
const;
 
  299         std::auto_ptr<te::gm::Geometry> getGeometry(std::size_t i) 
const;
 
  301         std::auto_ptr<te::rst::Raster> getRaster(std::size_t i) 
const;
 
  303         std::auto_ptr<te::dt::DateTime> getDateTime(std::size_t i) 
const;
 
  305         std::auto_ptr<te::dt::Array> getArray(std::size_t i) 
const;
 
  307         std::auto_ptr<te::dt::AbstractData> getValue(std::size_t i) 
const;
 
  309         bool isNull(std::size_t i) 
const;
 
  317         void setChar(std::size_t i, 
char value);
 
  319         void setChar(
const std::string& name, 
char value);
 
  321         void setUChar(std::size_t i, 
unsigned char value);
 
  323         void setUChar(
const std::string& name, 
unsigned char value);
 
  325         void setInt16(std::size_t i, boost::int16_t value);
 
  327         void setInt16(
const std::string& name, boost::int16_t value);
 
  329         void setInt32(std::size_t i, boost::int32_t value);
 
  331         void setInt32(
const std::string& name, boost::int32_t value);
 
  333         void setInt64(std::size_t i, boost::int64_t value);
 
  335         void setInt64(
const std::string& name, boost::int64_t value);
 
  337         void setBool(std::size_t i, 
bool value);
 
  339         void setBool(
const std::string& name, 
bool value);
 
  341         void setFloat(std::size_t i, 
float value);
 
  343         void setFloat(
const std::string& name, 
float value);
 
  345         void setDouble(std::size_t i, 
double value);
 
  347         void setDouble(
const std::string& name, 
double value);
 
  349         void setNumeric(std::size_t i, 
const std::string& value);
 
  351         void setNumeric(
const std::string& name, 
const std::string& value);
 
  353         void setString(std::size_t i, 
const std::string& value);
 
  355         void setString(
const std::string& name, 
const std::string& value);
 
  380         boost::shared_ptr<boost::ptr_vector<DataSetItem> > 
m_items;   
 
  391 #endif  // __TERRALIB_MEMORY_INTERNAL_DATASET_H 
int m_i
The index of the current item. 
 
#define TEMEMORYEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
Implementation of a random-access dataset class for the TerraLib In-Memory Data Access driver...
 
Configuration flags for the TerraLib In-memory Data Access driver. 
 
std::vector< int > m_ptypes
The list of property types. 
 
An implementation of the DatasetItem class for the TerraLib In-Memory Data Access driver...
 
boost::shared_ptr< DataSet > DataSetPtr
 
AccessPolicy
Supported data access policies (can be used as bitfield). 
 
std::vector< std::string > m_pnames
The list of property names. 
 
Geometry is the root class of the geometries hierarchy, it follows OGC and ISO standards. 
 
boost::shared_ptr< boost::ptr_vector< DataSetItem > > m_items
The list of dataset items. 
 
TraverseType
A dataset can be traversed in two ways: 
 
A base class for values that can be retrieved from the data access module. 
 
A class that models the description of a dataset. 
 
It models a property definition. 
 
double getDouble(const std::string &value, std::vector< std::string > &sVector)
 
An abstract class for raster data strucutures. 
 
A class for representing binary data. 
 
A dataset is the unit of information manipulated by the data access module of TerraLib.