PostGISCapabilities.h
Go to the documentation of this file.
1 /* !!This file will be replaced by a XML file loaded at run time!! */
2 
3 // DataType Capabilites
5 dataTypeCapabilities.setSupportAll();
6 dataTypeCapabilities.setSupportBit(false);
7 dataTypeCapabilities.setSupportChar(false);
8 dataTypeCapabilities.setSupportUChar(false);
9 dataTypeCapabilities.setSupportUInt16(false);
10 dataTypeCapabilities.setSupportUInt32(false);
11 dataTypeCapabilities.setSupportUInt64(false);
12 dataTypeCapabilities.setSupportComposite(false);
13 dataTypeCapabilities.setSupportDataset(false);
14 dataTypeCapabilities.setSupportCInt16(false);
15 dataTypeCapabilities.setSupportCInt32(false);
16 dataTypeCapabilities.setSupportCFloat(false);
17 dataTypeCapabilities.setSupportCDouble(false);
18 dataTypeCapabilities.setSupportPolymorphic(false);
19 
20 // DataSetType Capabilites
22 dataSetTypeCapabilities.setSupportAll();
23 dataSetTypeCapabilities.setSupportQuadTreeIndex(false);
24 
25 // DataSet Capabilities
27 dataSetCapabilities.setSupportAll();
28 
29 // Query Capabilities
31 queryCapabilities.setSupportAll();
32 
33 /* Logical Operators */
34 queryCapabilities.addLogicalOperator("and");
35 queryCapabilities.addLogicalOperator("or");
36 queryCapabilities.addLogicalOperator("not");
37 
38 /* Arithmetic Operators */
39 queryCapabilities.addArithmeticOperator("+");
40 queryCapabilities.addArithmeticOperator("-");
41 queryCapabilities.addArithmeticOperator("*");
42 queryCapabilities.addArithmeticOperator("/");
43 
44 /* Comparsion Operators */
45 queryCapabilities.addComparsionOperator("=");
46 queryCapabilities.addComparsionOperator("<>");
47 queryCapabilities.addComparsionOperator(">");
48 queryCapabilities.addComparsionOperator("<");
49 queryCapabilities.addComparsionOperator(">=");
50 queryCapabilities.addComparsionOperator("<=");
51 
52 /* Functions*/
53 queryCapabilities.addFunction("upper");
54 queryCapabilities.addFunction("lower");
55 queryCapabilities.addFunction("sum");
56 queryCapabilities.addFunction("avg");
57 queryCapabilities.addFunction("coalesce");
58 queryCapabilities.addFunction("count");
59 queryCapabilities.addFunction("max");
60 queryCapabilities.addFunction("min");
61 queryCapabilities.addFunction("stddev_pop");
62 queryCapabilities.addFunction("var_pop");
63 
64 /* Spatial Operators */
65 queryCapabilities.addSpatialOperator("st_boundary");
66 queryCapabilities.addSpatialOperator("st_coorddim");
67 queryCapabilities.addSpatialOperator("st_dimension");
68 queryCapabilities.addSpatialOperator("st_endpoint");
69 queryCapabilities.addSpatialOperator("st_envelope");
70 queryCapabilities.addSpatialOperator("st_exteriorring");
71 queryCapabilities.addSpatialOperator("st_geometryn");
72 queryCapabilities.addSpatialOperator("st_geometrytype");
73 queryCapabilities.addSpatialOperator("st_interiorringn");
74 queryCapabilities.addSpatialOperator("st_isclosed");
75 queryCapabilities.addSpatialOperator("st_isempty");
76 queryCapabilities.addSpatialOperator("st_isring");
77 queryCapabilities.addSpatialOperator("st_issimple");
78 queryCapabilities.addSpatialOperator("st_isvalid");
79 
80 queryCapabilities.addSpatialOperator("st_ndims");
81 queryCapabilities.addSpatialOperator("st_nrings");
82 queryCapabilities.addSpatialOperator("st_numgeometries");
83 queryCapabilities.addSpatialOperator("st_numinteriorrings");
84 queryCapabilities.addSpatialOperator("st_numpoints");
85 queryCapabilities.addSpatialOperator("st_pointn");
86 queryCapabilities.addSpatialOperator("st_srid");
87 queryCapabilities.addSpatialOperator("st_startpoint");
88 queryCapabilities.addSpatialOperator("st_x");
89 queryCapabilities.addSpatialOperator("st_y");
90 queryCapabilities.addSpatialOperator("st_z");
91 queryCapabilities.addSpatialOperator("st_m");
92 queryCapabilities.addSpatialOperator("st_transform");
93 queryCapabilities.addSpatialOperator("st_dfullywithin");
94 queryCapabilities.addSpatialOperator("st_dwithin");
95 
96 queryCapabilities.addSpatialTopologicOperator("st_contains");
97 queryCapabilities.addSpatialTopologicOperator("st_covers");
98 queryCapabilities.addSpatialTopologicOperator("st_coveredby");
99 queryCapabilities.addSpatialTopologicOperator("st_crosses");
100 queryCapabilities.addSpatialTopologicOperator("st_disjoint");
101 queryCapabilities.addSpatialTopologicOperator("st_equals");
102 queryCapabilities.addSpatialTopologicOperator("st_overlaps");
103 queryCapabilities.addSpatialTopologicOperator("st_relate");
104 queryCapabilities.addSpatialTopologicOperator("st_touches");
105 queryCapabilities.addSpatialTopologicOperator("st_intersects");
106 queryCapabilities.addSpatialTopologicOperator("st_within");
107 
108 queryCapabilities.addSpatialMetricOperator("st_area");
109 queryCapabilities.addSpatialMetricOperator("st_distance");
110 queryCapabilities.addSpatialMetricOperator("st_length");
111 queryCapabilities.addSpatialMetricOperator("st_perimeter");
112 
113 queryCapabilities.addSpatialNewGeomOperator("st_centroid");
114 queryCapabilities.addSpatialNewGeomOperator("st_difference");
115 queryCapabilities.addSpatialNewGeomOperator("st_buffer");
116 queryCapabilities.addSpatialNewGeomOperator("st_convexhull");
117 queryCapabilities.addSpatialNewGeomOperator("st_difference");
118 queryCapabilities.addSpatialNewGeomOperator("st_intersection");
119 queryCapabilities.addSpatialNewGeomOperator("st_symdifference");
120 queryCapabilities.addSpatialNewGeomOperator("st_union");
121 /* - end Spatial Operators */
122 
123 // DataSouce Capabilities
126 capabilities.setSupportAll();
127 capabilities.setDataTypeCapabilities(dataTypeCapabilities);
128 capabilities.setDataSetTypeCapabilities(dataSetTypeCapabilities);
129 capabilities.setDataSetCapabilities(dataSetCapabilities);
130 capabilities.setQueryCapabilities(queryCapabilities);
131 
132 DataSource::setCapabilities(capabilities);
A class that informs what kind of constraint and index is supported by a given data source...
void setDataSetTypeCapabilities(const DataSetTypeCapabilities &capabilities)
void addSpatialTopologicOperator(const std::string &op)
void setSupportQuadTreeIndex(const bool &support)
void addComparsionOperator(const std::string &op)
te::da::QueryCapabilities queryCapabilities
A class that represents the known capabilities of a specific data source, i.e. this class informs all...
void setAccessPolicy(const te::common::AccessPolicy &accessPolicy)
void addSpatialNewGeomOperator(const std::string &op)
A class that informs what the dataset implementation of a given data source can perform.
void setQueryCapabilities(const QueryCapabilities &capabilities)
void addLogicalOperator(const std::string &op)
void setSupportUInt16(const bool &support)
te::da::DataSetTypeCapabilities dataSetTypeCapabilities
A class that represents the supported data types of a specific data source.
void setSupportBit(const bool &support)
te::da::DataTypeCapabilities dataTypeCapabilities
void setSupportUChar(const bool &support)
A class that informs the query support of a given data source.
void setSupportComposite(const bool &support)
void addSpatialOperator(const std::string &op)
void setSupportChar(const bool &support)
te::da::DataSourceCapabilities capabilities
void setSupportPolymorphic(const bool &support)
void setSupportCFloat(const bool &support)
void setSupportCInt32(const bool &support)
te::da::DataSetCapabilities dataSetCapabilities
void setDataSetCapabilities(const DataSetCapabilities &capabilities)
void addFunction(const std::string &op)
void setSupportUInt64(const bool &support)
void addArithmeticOperator(const std::string &op)
void setDataTypeCapabilities(const DataTypeCapabilities &capabilities)
void addSpatialMetricOperator(const std::string &op)
void setSupportDataset(const bool &support)
void setSupportCDouble(const bool &support)
void setSupportUInt32(const bool &support)
void setSupportCInt16(const bool &support)