1 /******************************************************************************
2  *
3  * Project:  KML Translator
4  * Purpose:  Implements OGRLIBKMLDriver
5  * Author:   Brian Case, rush at winkey dot org
6  *
7  ******************************************************************************
8  * Copyright (c) 2010, Brian Case
9  *
10  * Permission is hereby granted, free of charge, to any person obtaining a
11  * copy of this software and associated documentation files (the "Software"),
12  * to deal in the Software without restriction, including without limitation
13  * the rights to use, copy, modify, merge, publish, distribute, sublicense,
14  * and/or sell copies of the Software, and to permit persons to whom the
15  * Software is furnished to do so, subject to the following conditions:
16  *
17  * The above copyright notice and this permission notice shall be included
18  * in all copies or substantial portions of the Software.
19  *
20  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
21  * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22  * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
23  * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24  * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
25  * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
26  * DEALINGS IN THE SOFTWARE.
27  *****************************************************************************/
28 
29 #include <kml/dom.h>
30 
31 using kmldom::KmlFactory;
32 using kmldom::FeaturePtr;
33 using kmldom::PlacemarkPtr;
34 
35 #include "ogr_libkml.h"
36 
37 
38 /******************************************************************************
39  function to output a ogr feature to a kml placemark
40 ******************************************************************************/
41 
42 FeaturePtr feat2kml (
43     OGRLIBKMLDataSource *poOgrDS,
44     OGRLayer * poKOgrLayer,
45     OGRFeature * poOgrFeat,
46     KmlFactory * poKmlFactory,
47     int bUseSimpleField );
48 
49 /******************************************************************************
50  function to read a kml placemark into a ogr feature
51 ******************************************************************************/
52 
53 OGRFeature *kml2feat (
54     PlacemarkPtr poKmlPlacemark,
55     OGRLIBKMLDataSource * poOgrDS,
56     OGRLayer * poOgrLayer,
57     OGRFeatureDefn * poOgrFeatDefn,
58     OGRSpatialReference *poOgrSRS);
59 
60 OGRFeature *kmlgroundoverlay2feat (
61     GroundOverlayPtr poKmlOverlay,
62     OGRLIBKMLDataSource * poOgrDS,
63     OGRLayer * poOgrLayer,
64     OGRFeatureDefn * poOgrFeatDefn,
65     OGRSpatialReference *poOgrSRS);
66