|
SpatiaLite 4.3.0a
|
00001 /* 00002 gg_wfs.h -- Gaia common support for WFS 00003 00004 version 4.3, 2015 June 29 00005 00006 Author: Sandro Furieri a.furieri@lqt.it 00007 00008 ------------------------------------------------------------------------------ 00009 00010 Version: MPL 1.1/GPL 2.0/LGPL 2.1 00011 00012 The contents of this file are subject to the Mozilla Public License Version 00013 1.1 (the "License"); you may not use this file except in compliance with 00014 the License. You may obtain a copy of the License at 00015 http://www.mozilla.org/MPL/ 00016 00017 Software distributed under the License is distributed on an "AS IS" basis, 00018 WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 00019 for the specific language governing rights and limitations under the 00020 License. 00021 00022 The Original Code is the SpatiaLite library 00023 00024 The Initial Developer of the Original Code is Alessandro Furieri 00025 00026 Portions created by the Initial Developer are Copyright (C) 2008-2015 00027 the Initial Developer. All Rights Reserved. 00028 00029 Contributor(s): 00030 00031 Alternatively, the contents of this file may be used under the terms of 00032 either the GNU General Public License Version 2 or later (the "GPL"), or 00033 the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), 00034 in which case the provisions of the GPL or the LGPL are applicable instead 00035 of those above. If you wish to allow use of your version of this file only 00036 under the terms of either the GPL or the LGPL, and not to allow others to 00037 use your version of this file under the terms of the MPL, indicate your 00038 decision by deleting the provisions above and replace them with the notice 00039 and other provisions required by the GPL or the LGPL. If you do not delete 00040 the provisions above, a recipient may use your version of this file under 00041 the terms of any one of the MPL, the GPL or the LGPL. 00042 00043 */ 00044 00045 00052 #ifndef _GG_WFS_H 00053 #ifndef DOXYGEN_SHOULD_SKIP_THIS 00054 #define _GG_WFS_H 00055 #endif 00056 00057 #ifdef __cplusplus 00058 extern "C" 00059 { 00060 #endif 00061 00062 typedef struct gaia_wfs_catalog gaiaWFScatalog; 00063 typedef gaiaWFScatalog *gaiaWFScatalogPtr; 00064 00065 typedef struct gaia_wfs_item gaiaWFSitem; 00066 typedef gaiaWFSitem *gaiaWFSitemPtr; 00067 00068 typedef struct gaia_wfs_schema gaiaWFSschema; 00069 typedef gaiaWFSschema *gaiaWFSschemaPtr; 00070 00071 typedef struct gaia_wfs_column gaiaWFScolumn; 00072 typedef gaiaWFScolumn *gaiaWFScolumnPtr; 00073 00103 SPATIALITE_DECLARE int load_from_wfs (sqlite3 * sqlite, 00104 const char *path_or_url, 00105 const char *alt_describe_uri, 00106 const char *layer_name, int swap_axes, 00107 const char *table, 00108 const char *pk_column_name, 00109 int spatial_index, int *rows, 00110 char **err_msg, 00111 void (*progress_callback) (int, 00112 void *), 00113 void *callback_ptr); 00114 00148 SPATIALITE_DECLARE int load_from_wfs_paged (sqlite3 * sqlite, 00149 const char *path_or_url, 00150 const char *alt_describe_uri, 00151 const char *layer_name, 00152 int swap_axes, 00153 const char *table, 00154 const char *pk_column_name, 00155 int spatial_index, 00156 int page_size, int *rows, 00157 char **err_msg, 00158 void (*progress_callback) (int, 00159 void 00160 *), 00161 void *callback_ptr); 00162 00178 SPATIALITE_DECLARE gaiaWFScatalogPtr create_wfs_catalog (const char 00179 *path_or_url, 00180 char **err_msg); 00181 00190 SPATIALITE_DECLARE void destroy_wfs_catalog (gaiaWFScatalogPtr handle); 00191 00202 SPATIALITE_DECLARE const char *get_wfs_version (gaiaWFScatalogPtr handle); 00203 00214 SPATIALITE_DECLARE const char *get_wfs_base_request_url (gaiaWFScatalogPtr 00215 handle); 00216 00227 SPATIALITE_DECLARE const char *get_wfs_base_describe_url (gaiaWFScatalogPtr 00228 handle); 00229 00250 SPATIALITE_DECLARE char *get_wfs_request_url (gaiaWFScatalogPtr handle, 00251 const char *name, 00252 const char *version, 00253 int srid, int max_features); 00254 00271 SPATIALITE_DECLARE char *get_wfs_describe_url (gaiaWFScatalogPtr handle, 00272 const char *name, 00273 const char *version); 00274 00286 SPATIALITE_DECLARE int get_wfs_catalog_count (gaiaWFScatalogPtr handle); 00287 00303 SPATIALITE_DECLARE gaiaWFSitemPtr get_wfs_catalog_item (gaiaWFScatalogPtr 00304 handle, int index); 00305 00317 SPATIALITE_DECLARE const char *get_wfs_item_name (gaiaWFSitemPtr handle); 00318 00330 SPATIALITE_DECLARE const char *get_wfs_item_title (gaiaWFSitemPtr handle); 00331 00343 SPATIALITE_DECLARE const char *get_wfs_item_abstract (gaiaWFSitemPtr 00344 handle); 00345 00358 SPATIALITE_DECLARE int get_wfs_layer_srid_count (gaiaWFSitemPtr handle); 00359 00373 SPATIALITE_DECLARE int get_wfs_layer_srid (gaiaWFSitemPtr handle, 00374 int index); 00375 00388 SPATIALITE_DECLARE int get_wfs_keyword_count (gaiaWFSitemPtr handle); 00389 00403 SPATIALITE_DECLARE const char *get_wfs_keyword (gaiaWFSitemPtr handle, 00404 int index); 00405 00421 SPATIALITE_DECLARE gaiaWFSschemaPtr create_wfs_schema (const char 00422 *path_or_url, 00423 const char 00424 *layer_name, 00425 char **err_msg); 00426 00435 SPATIALITE_DECLARE void destroy_wfs_schema (gaiaWFSschemaPtr handle); 00436 00458 SPATIALITE_DECLARE int get_wfs_schema_geometry_info (gaiaWFSschemaPtr 00459 handle, 00460 const char **name, 00461 int *type, int *srid, 00462 int *dims, 00463 int *nullable); 00464 00477 SPATIALITE_DECLARE int get_wfs_schema_column_count (gaiaWFSschemaPtr 00478 handle); 00479 00494 SPATIALITE_DECLARE gaiaWFScolumnPtr get_wfs_schema_column (gaiaWFSschemaPtr 00495 handle, 00496 int index); 00497 00513 SPATIALITE_DECLARE int get_wfs_schema_column_info (gaiaWFScolumnPtr handle, 00514 const char **name, 00515 int *type, 00516 int *nullable); 00517 00523 SPATIALITE_DECLARE void reset_wfs_http_connection (void); 00524 00525 #ifdef __cplusplus 00526 } 00527 #endif 00528 00529 #endif /* _GG_WFS_H */
1.7.3