26#ifndef __TERRALIB_DATAACCESS_INTERNAL_QUERYCAPABILITIES_H
27#define __TERRALIB_DATAACCESS_INTERNAL_QUERYCAPABILITIES_H
30#include "../../geometry/Enums.h"
A class that informs the query support of a given data source.
const std::set< te::gm::GeomType > & getGeometryOperands() const
void addSpatialTopologicOperator(const std::string &op)
bool m_alter
A flag that indicates if the data source supports the ALTER command.
bool supportsDelete() const
const std::set< std::string > & getArithmeticOperators() const
bool supportsCreate() const
const std::set< std::string > & getSpatialMetricOperators() const
std::set< std::string > m_functions
The names of supported functions.
const std::set< std::string > & getLogicalOperators() const
void setSupportCreate(const bool &support)
void setSupportDelete(const bool &support)
void setSupportAlter(const bool &support)
void setSupportInsert(const bool &support)
void addGeometryOperand(const te::gm::GeomType &type)
bool m_insert
A flag that indicates if the data source supports the INSERT command.
void addSpatialNewGeomOperator(const std::string &op)
bool supportsSelectInto() const
bool supportsInsert() const
void addSpatialOperator(const std::string &op)
bool m_update
A flag that indicates if the data source supports the UPDATE command.
bool supportsSpatialSQLDialect() const
void setSupportDrop(const bool &support)
void setSupportUpdate(const bool &support)
void setSupportSpatialSQLDialect(const bool &support)
const std::set< std::string > & getFunctions() const
bool supportsAlter() const
bool supportsDrop() const
const std::set< std::string > & getSpatialOperators() const
bool m_delete
A flag that indicates if the data source supports the DELETE command.
bool m_drop
A flag that indicates if the data source supports the DROP command.
void setSupportSelect(const bool &support)
void setSupportSQLDialect(const bool &support)
bool m_create
A flag that indicates if the data source supports the CREATE command.
void setSupportSelectInto(const bool &support)
~QueryCapabilities()
Destructor.
bool supportsSelect() const
std::set< te::gm::GeomType > m_geomOperands
The types of geometry supported operands.
bool supportsSQLDialect() const
const std::set< std::string > & getSpatialTopologicOperators() const
void addComparsionOperator(const std::string &op)
std::set< std::string > m_spatialMetricOperators
The names of spatial metric supported operators (area, lenght, etc).
void addArithmeticOperator(const std::string &op)
bool m_spatialSQLDialect
A flag that indicates if the data source supports spatial Query API.
bool m_sqlDialect
A flag that indicates if the data source supports Query API.
const std::set< std::string > & getComparsionOperators() const
std::set< std::string > m_spatialNewGeomOperators
The names of spatial supported operators that generate new geometries (centroid, buffer,...
bool supportsUpdate() const
std::set< std::string > m_comparsionOperators
The names of comparsion supported operators.
const std::set< std::string > & getSpatialNewGeomOperators() const
std::set< std::string > m_spatialTopologicOperators
The names of topological supported operators (touches, crosses, etc).
QueryCapabilities()
Constructor.
bool m_selectInto
A flag that indicates if the data source supports the SELECT INTO command.
std::set< std::string > m_arithmeticOperators
The names of arithmetic supported operators.
void addFunction(const std::string &op)
std::set< std::string > m_logicalOperators
The names of logical supported operators.
std::set< std::string > m_spatialOperators
The names of other spatial supported operators.
void addSpatialMetricOperator(const std::string &op)
bool m_select
A flag that indicates if the data source supports the SELECT command.
void addLogicalOperator(const std::string &op)
GeomType
Each enumerated type is compatible with a Well-known Binary (WKB) type code.
#define TEDATAACCESSEXPORT
You can use this macro in order to export/import classes and functions from this module.