26 #ifndef __TERRALIB_DATAACCESS_INTERNAL_DATASETTYPE_H    27 #define __TERRALIB_DATAACCESS_INTERNAL_DATASETTYPE_H    30 #include "../../datatype/CompositeProperty.h"    31 #include "../Config.h"    37 #include <boost/shared_ptr.hpp>    44     class CheckConstraint;
    46     class DataSourceCatalog;
    76         using CompositeProperty::add;
    77         using CompositeProperty::getPropertyPosition;
    94         DataSetType(
const std::string& name, 
unsigned int id = 0);
   130         const std::string& 
getTitle()
 const { 
return m_title; }
   137         void setTitle(
const std::string& title) { m_title = title; }
   144         bool hasGeom() 
const;
   151         bool hasRaster() 
const;
   281         void add(
const std::vector<UniqueKey*>& uks);
   303         UniqueKey* getUniqueKey(
const std::string& name) 
const;
   317         void clearUniqueKeys();
   343         void add(
const std::vector<CheckConstraint*>& ccs);
   377         void clearCheckConstraints();
   403         void add(
Index* idx);
   415         void add(
const std::vector<Index*>& idxs);
   437         Index* getIndex(
const std::string& name) 
const;
   450         void remove(
Index* idx);
   489         ForeignKey* getForeignKey(
const std::string& name) 
const;
   550         void remove(Property* p);
   574         void replace(Property* p, Property* pp); 
   600         Property* clone() 
const;
   616         void removeUniqueKeys(Property* p);
   623         void removeIndexes(Property* p);
   637         void removeForeignKeys(Property* p);
   668 #endif  // __TERRALIB_DATAACCESS_INTERNAL_DATASETTYPE_H DataSourceCatalog * getCatalog() const 
It returns the catalog that owns the DataSetType. 
 
void setTitle(const std::string &title)
It sets a human descriptive title for the DataSetType. 
 
A base class for a compound property (non-atomic properties). 
 
void setCatalog(DataSourceCatalog *catalog)
It sets the DataSetType associated catalog. 
 
boost::shared_ptr< DataSetType > DataSetTypePtr
 
bool hasGeom() const 
It returns true if the DataSetType has at least one geometry property; otherwise, it returns false...
 
It represents the system catalog of a DataSource. 
 
PrimaryKey * m_pk
The DataSetType primary key. 
 
A class that models the description of a dataset. 
 
std::size_t getNumberOfUniqueKeys() const 
It returns the number of unique keys defined for the dataset type. 
 
CheckConstraint * getCheckConstraint(std::size_t i) const 
It returns the i-th check-constraint associated to the dataset type. 
 
int m_category
A category. 
 
DataSourceCatalog * m_catalog
The associated catalog. 
 
PrimaryKey * getPrimaryKey() const 
It returns the primary key associated to the dataset type. 
 
A class that describes a check constraint. 
 
std::vector< ForeignKey * > m_foreignKeys
A vector of foreign key constraints. 
 
Index * getIndex(std::size_t i) const 
It returns the i-th index associated to the dataset type. 
 
std::string m_title
A brief description of the DataSetType. 
 
std::size_t getNumberOfForeignKeys() const 
It returns the number of foreign keys defined for the dataset type. 
 
bool hasRaster() const 
It returns true if the DataSetType has at least one raster property; otherwise, it returns false...
 
std::size_t getNumberOfIndexes() const 
It returns the number of indexes defined for the dataset type. 
 
It models a foreign key constraint for a DataSetType. 
 
int getCategory() const 
It returns the dataset category. 
 
It describes a unique key (uk) constraint. 
 
ForeignKey * getForeignKey(std::size_t i) const 
It returns the i-th foreign key associated to the dataset type. 
 
std::size_t getNumberOfCheckConstraints() const 
It returns the number of check-constraints defined over the dataset type. 
 
It describes a primary key (pk) constraint. 
 
std::vector< CheckConstraint * > m_checkConstraints
A vector of check constraints. 
 
std::vector< UniqueKey * > m_uniqueKeys
A vector of unique key constraints. 
 
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module. 
 
std::vector< Index * > m_idxs
A vector of indexes. 
 
void setCategory(int c)
It sets the dataset category. 
 
It describes an index associated to a DataSetType. 
 
UniqueKey * getUniqueKey(std::size_t i) const 
It returns the i-th unique key. 
 
const std::string & getTitle() const 
A human descriptive title for the DataSetType.