File indexing completed on 2025-07-06 03:34:24

0001 /*
0002     SPDX-FileCopyrightText: 2007 Nikolas Zimmermann <zimmermann@kde.org>
0003     SPDX-License-Identifier: LGPL-2.0-or-later
0004 */
0005 
0006 #ifndef MARBLE_KML_KMLELEMENTDICTIONARY_H
0007 #define MARBLE_KML_KMLELEMENTDICTIONARY_H
0008 
0009 #include "geodata_export.h"
0010 
0011 namespace Marble
0012 {
0013 
0014 // Lists all known KML 2.1 tags (https://developers.google.com/kml/documentation/kmlreferencel)
0015 namespace kml
0016 {
0017     GEODATA_EXPORT extern const char kmlTag_nameSpace20[];
0018     GEODATA_EXPORT extern const char kmlTag_nameSpace21[];
0019     GEODATA_EXPORT extern const char kmlTag_nameSpace22[];
0020     GEODATA_EXPORT extern const char kmlTag_nameSpaceOgc22[];
0021     GEODATA_EXPORT extern const char kmlTag_nameSpaceGx22[];
0022     GEODATA_EXPORT extern const char kmlTag_nameSpaceMx[];
0023 
0024     GEODATA_EXPORT extern const char kmlTag_address[];
0025     GEODATA_EXPORT extern const char kmlTag_AddressDetails[];
0026     GEODATA_EXPORT extern const char kmlTag_Alias[];
0027     GEODATA_EXPORT extern const char kmlTag_altitude[];
0028     GEODATA_EXPORT extern const char kmlTag_altitudeMode[];
0029     GEODATA_EXPORT extern const char kmlTag_BalloonStyle[];
0030     GEODATA_EXPORT extern const char kmlTag_begin[];
0031     GEODATA_EXPORT extern const char kmlTag_bgColor[];
0032     GEODATA_EXPORT extern const char kmlTag_bottomFov[];
0033     GEODATA_EXPORT extern const char kmlTag_Camera[];
0034     GEODATA_EXPORT extern const char kmlTag_Change[];
0035     GEODATA_EXPORT extern const char kmlTag_code[];
0036     GEODATA_EXPORT extern const char kmlTag_color[];
0037     GEODATA_EXPORT extern const char kmlTag_colorMode[];
0038     GEODATA_EXPORT extern const char kmlTag_ColorStyle[];
0039     GEODATA_EXPORT extern const char kmlTag_Container[];
0040     GEODATA_EXPORT extern const char kmlTag_cookie[];
0041     GEODATA_EXPORT extern const char kmlTag_coordinates[];
0042     GEODATA_EXPORT extern const char kmlTag_Create[];
0043     GEODATA_EXPORT extern const char kmlTag_Data[];
0044     GEODATA_EXPORT extern const char kmlTag_Delete[];
0045     GEODATA_EXPORT extern const char kmlTag_description[];
0046     GEODATA_EXPORT extern const char kmlTag_displayMode[];
0047     GEODATA_EXPORT extern const char kmlTag_displayName[];
0048     GEODATA_EXPORT extern const char kmlTag_Document[];
0049     GEODATA_EXPORT extern const char kmlTag_drawOrder[];
0050     GEODATA_EXPORT extern const char kmlTag_duration[];
0051     GEODATA_EXPORT extern const char kmlTag_east[];
0052     GEODATA_EXPORT extern const char kmlTag_end[];
0053     GEODATA_EXPORT extern const char kmlTag_expires[];
0054     GEODATA_EXPORT extern const char kmlTag_ExtendedData[];
0055     GEODATA_EXPORT extern const char kmlTag_extrude[];
0056     GEODATA_EXPORT extern const char kmlTag_Feature[];
0057     GEODATA_EXPORT extern const char kmlTag_fill[];
0058     GEODATA_EXPORT extern const char kmlTag_flyToMode[];
0059     GEODATA_EXPORT extern const char kmlTag_flyToView[];
0060     GEODATA_EXPORT extern const char kmlTag_Folder[];
0061     GEODATA_EXPORT extern const char kmlTag_geomColor[];
0062     GEODATA_EXPORT extern const char kmlTag_Geometry[];
0063     GEODATA_EXPORT extern const char kmlTag_GeometryCollection[];
0064     GEODATA_EXPORT extern const char kmlTag_geomScale[];
0065     GEODATA_EXPORT extern const char kmlTag_gridOrigin[];
0066     GEODATA_EXPORT extern const char kmlTag_GroundOverlay[];
0067     GEODATA_EXPORT extern const char kmlTag_h[];
0068     GEODATA_EXPORT extern const char kmlTag_heading[];
0069     GEODATA_EXPORT extern const char kmlTag_height[];
0070     GEODATA_EXPORT extern const char kmlTag_href[];
0071     GEODATA_EXPORT extern const char kmlTag_hotSpot[];
0072     GEODATA_EXPORT extern const char kmlTag_httpQuery[];
0073     GEODATA_EXPORT extern const char kmlTag_Icon[];
0074     GEODATA_EXPORT extern const char kmlTag_IconStyle[];
0075     GEODATA_EXPORT extern const char kmlTag_ImagePyramid[];
0076     GEODATA_EXPORT extern const char kmlTag_innerBoundaryIs[];
0077     GEODATA_EXPORT extern const char kmlTag_ItemIcon[];
0078     GEODATA_EXPORT extern const char kmlTag_key[];
0079     GEODATA_EXPORT extern const char kmlTag_kml[];
0080     GEODATA_EXPORT extern const char kmlTag_labelColor[];
0081     GEODATA_EXPORT extern const char kmlTag_LabelStyle[];
0082     GEODATA_EXPORT extern const char kmlTag_latitude[];
0083     GEODATA_EXPORT extern const char kmlTag_LatLonAltBox[];
0084     GEODATA_EXPORT extern const char kmlTag_LatLonBox[];
0085     GEODATA_EXPORT extern const char kmlTag_LatLonQuad[];
0086     GEODATA_EXPORT extern const char kmlTag_leftFov[];
0087     GEODATA_EXPORT extern const char kmlTag_LinearRing[];
0088     GEODATA_EXPORT extern const char kmlTag_LineString[];
0089     GEODATA_EXPORT extern const char kmlTag_LineStyle[];
0090     GEODATA_EXPORT extern const char kmlTag_Link[];
0091     GEODATA_EXPORT extern const char kmlTag_linkDescription[];
0092     GEODATA_EXPORT extern const char kmlTag_linkName[];
0093     GEODATA_EXPORT extern const char kmlTag_linkSnippet[];
0094     GEODATA_EXPORT extern const char kmlTag_listItemType[];
0095     GEODATA_EXPORT extern const char kmlTag_ListStyle[];
0096     GEODATA_EXPORT extern const char kmlTag_Location[];
0097     GEODATA_EXPORT extern const char kmlTag_Lod[];
0098     GEODATA_EXPORT extern const char kmlTag_longitude[];
0099     GEODATA_EXPORT extern const char kmlTag_LookAt[];
0100     GEODATA_EXPORT extern const char kmlTag_maxAltitude[];
0101     GEODATA_EXPORT extern const char kmlTag_maxFadeExtent[];
0102     GEODATA_EXPORT extern const char kmlTag_maxHeight[];
0103     GEODATA_EXPORT extern const char kmlTag_maxLodPixels[];
0104     GEODATA_EXPORT extern const char kmlTag_maxSessionLength[];
0105     GEODATA_EXPORT extern const char kmlTag_maxWidth[];
0106     GEODATA_EXPORT extern const char kmlTag_message[];
0107     GEODATA_EXPORT extern const char kmlTag_Metadata[];
0108     GEODATA_EXPORT extern const char kmlTag_minAltitude[];
0109     GEODATA_EXPORT extern const char kmlTag_minFadeExtent[];
0110     GEODATA_EXPORT extern const char kmlTag_minLodPixels[];
0111     GEODATA_EXPORT extern const char kmlTag_minRefreshPeriod[];
0112     GEODATA_EXPORT extern const char kmlTag_Model[];
0113     GEODATA_EXPORT extern const char kmlTag_MultiGeometry[];
0114     GEODATA_EXPORT extern const char kmlTag_name[];
0115     GEODATA_EXPORT extern const char kmlTag_near[];
0116     GEODATA_EXPORT extern const char kmlTag_NetworkLink[];
0117     GEODATA_EXPORT extern const char kmlTag_NetworkLinkControl[];
0118     GEODATA_EXPORT extern const char kmlTag_north[];
0119     GEODATA_EXPORT extern const char kmlTag_Object[];
0120     GEODATA_EXPORT extern const char kmlTag_ObjArrayField[];
0121     GEODATA_EXPORT extern const char kmlTag_ObjField[];
0122     GEODATA_EXPORT extern const char kmlTag_open[];
0123     GEODATA_EXPORT extern const char kmlTag_Orientation[];
0124     GEODATA_EXPORT extern const char kmlTag_OsmPlacemarkData[];
0125     GEODATA_EXPORT extern const char kmlTag_member[];
0126     GEODATA_EXPORT extern const char kmlTag_nd[];
0127     GEODATA_EXPORT extern const char kmlTag_tag[];
0128     GEODATA_EXPORT extern const char kmlTag_outerBoundaryIs[];
0129     GEODATA_EXPORT extern const char kmlTag_outline[];
0130     GEODATA_EXPORT extern const char kmlTag_Overlay[];
0131     GEODATA_EXPORT extern const char kmlTag_overlayXY[];
0132     GEODATA_EXPORT extern const char kmlTag_Pair[];
0133     GEODATA_EXPORT extern const char kmlTag_phoneNumber[];
0134     GEODATA_EXPORT extern const char kmlTag_PhotoOverlay[];
0135     GEODATA_EXPORT extern const char kmlTag_Placemark[];
0136     GEODATA_EXPORT extern const char kmlTag_Point[];
0137     GEODATA_EXPORT extern const char kmlTag_Polygon[];
0138     GEODATA_EXPORT extern const char kmlTag_PolyStyle[];
0139     GEODATA_EXPORT extern const char kmlTag_range[];
0140     GEODATA_EXPORT extern const char kmlTag_refreshInterval[];
0141     GEODATA_EXPORT extern const char kmlTag_refreshMode[];
0142     GEODATA_EXPORT extern const char kmlTag_refreshVisibility[];
0143     GEODATA_EXPORT extern const char kmlTag_Region[];
0144     GEODATA_EXPORT extern const char kmlTag_request[];
0145     GEODATA_EXPORT extern const char kmlTag_ResourceMap[];
0146     GEODATA_EXPORT extern const char kmlTag_Response[];
0147     GEODATA_EXPORT extern const char kmlTag_rightFov[];
0148     GEODATA_EXPORT extern const char kmlTag_roll[];
0149     GEODATA_EXPORT extern const char kmlTag_rotation[];
0150     GEODATA_EXPORT extern const char kmlTag_rotationXY[];
0151     GEODATA_EXPORT extern const char kmlTag_Scale[];
0152     GEODATA_EXPORT extern const char kmlTag_scale[];
0153     GEODATA_EXPORT extern const char kmlTag_Schema[];
0154     GEODATA_EXPORT extern const char kmlTag_SchemaData[];
0155     GEODATA_EXPORT extern const char kmlTag_SchemaField[];
0156     GEODATA_EXPORT extern const char kmlTag_ScreenOverlay[];
0157     GEODATA_EXPORT extern const char kmlTag_screenXY[];
0158     GEODATA_EXPORT extern const char kmlTag_shape[];
0159     GEODATA_EXPORT extern const char kmlTag_SimpleArrayData[];
0160     GEODATA_EXPORT extern const char kmlTag_SimpleArrayField[];
0161     GEODATA_EXPORT extern const char kmlTag_SimpleField[];
0162     GEODATA_EXPORT extern const char kmlTag_SimpleData[];
0163     GEODATA_EXPORT extern const char kmlTag_size[];
0164     GEODATA_EXPORT extern const char kmlTag_Snippet[];
0165     GEODATA_EXPORT extern const char kmlTag_south[];
0166     GEODATA_EXPORT extern const char kmlTag_sourceHref[];
0167     GEODATA_EXPORT extern const char kmlTag_state[];
0168     GEODATA_EXPORT extern const char kmlTag_Status[];
0169     GEODATA_EXPORT extern const char kmlTag_Style[];
0170     GEODATA_EXPORT extern const char kmlTag_StyleMap[];
0171     GEODATA_EXPORT extern const char kmlTag_StyleSelector[];
0172     GEODATA_EXPORT extern const char kmlTag_styleUrl[];
0173     GEODATA_EXPORT extern const char kmlTag_targetHref[];
0174     GEODATA_EXPORT extern const char kmlTag_tessellate[];
0175     GEODATA_EXPORT extern const char kmlTag_text[];
0176     GEODATA_EXPORT extern const char kmlTag_textColor[];
0177     GEODATA_EXPORT extern const char kmlTag_tileSize[];
0178     GEODATA_EXPORT extern const char kmlTag_tilt[];
0179     GEODATA_EXPORT extern const char kmlTag_TimeSpan[];
0180     GEODATA_EXPORT extern const char kmlTag_TimeStamp[];
0181     GEODATA_EXPORT extern const char kmlTag_topFov[];
0182     GEODATA_EXPORT extern const char kmlTag_Update[];
0183     GEODATA_EXPORT extern const char kmlTag_Url[];
0184     GEODATA_EXPORT extern const char kmlTag_value[];
0185     GEODATA_EXPORT extern const char kmlTag_viewBoundScale[];
0186     GEODATA_EXPORT extern const char kmlTag_viewFormat[];
0187     GEODATA_EXPORT extern const char kmlTag_viewRefreshMode[];
0188     GEODATA_EXPORT extern const char kmlTag_viewRefreshTime[];
0189     GEODATA_EXPORT extern const char kmlTag_ViewVolume[];
0190     GEODATA_EXPORT extern const char kmlTag_visibility[];
0191     GEODATA_EXPORT extern const char kmlTag_w[];
0192     GEODATA_EXPORT extern const char kmlTag_west[];
0193     GEODATA_EXPORT extern const char kmlTag_when[];
0194     GEODATA_EXPORT extern const char kmlTag_width[];
0195     GEODATA_EXPORT extern const char kmlTag_x[];
0196     GEODATA_EXPORT extern const char kmlTag_y[];
0197     GEODATA_EXPORT extern const char kmlTag_z[];
0198 
0199 
0200     // Google KML Extension Namespace (https://developers.google.com/kml/documentation/kmlreference#kml-extension-namespace-and-the-gx-prefix)
0201     GEODATA_EXPORT extern const char kmlTag_AnimatedUpdate[];
0202     GEODATA_EXPORT extern const char kmlTag_FlyTo[];
0203     GEODATA_EXPORT extern const char kmlTag_MultiTrack[];
0204     GEODATA_EXPORT extern const char kmlTag_Track[];
0205     GEODATA_EXPORT extern const char kmlTag_coord[];
0206     GEODATA_EXPORT extern const char kmlTag_delayedStart[];
0207     GEODATA_EXPORT extern const char kmlTag_SoundCue[];
0208     GEODATA_EXPORT extern const char kmlTag_Tour[];
0209     GEODATA_EXPORT extern const char kmlTag_TourControl[];
0210     GEODATA_EXPORT extern const char kmlTag_Wait[];
0211     GEODATA_EXPORT extern const char kmlTag_Playlist[];
0212     GEODATA_EXPORT extern const char kmlTag_playMode[];
0213     GEODATA_EXPORT extern const char kmlTag_balloonVisibility[];
0214 #ifdef KML_LAZY_IMP
0215 // preliminary implementation for the extra defined Tags
0216     GEODATA_EXPORT extern const char kmlTag_MarblePlacemark[];
0217     GEODATA_EXPORT extern const char kmlTag_area[];
0218     GEODATA_EXPORT extern const char kmlTag_pop[];
0219     GEODATA_EXPORT extern const char kmlTag_role[];
0220     GEODATA_EXPORT extern const char kmlTag_CountryNameCode[];
0221     GEODATA_EXPORT extern const char kmlTag_countrycode[];
0222 #endif // KML_LAZY_IMP
0223 }
0224 
0225 // Helper macros
0226 #define KML_DEFINE_TAG_HANDLER_20(Name) GEODATA_DEFINE_TAG_HANDLER(kml, Kml, Name, kmlTag_nameSpace20)
0227 #define KML_DEFINE_TAG_HANDLER_21(Name) GEODATA_DEFINE_TAG_HANDLER(kml, Kml, Name, kmlTag_nameSpace21)
0228 #define KML_DEFINE_TAG_HANDLER_22(Name) GEODATA_DEFINE_TAG_HANDLER(kml, Kml, Name, kmlTag_nameSpace22)
0229 #define KML_DEFINE_TAG_HANDLER_OGC22(Name) GEODATA_DEFINE_TAG_HANDLER(kml, Kml, Name, kmlTag_nameSpaceOgc22)
0230 #define KML_DEFINE_TAG_HANDLER_GX22(Name) GEODATA_DEFINE_TAG_HANDLER(kml, Kml, Name, kmlTag_nameSpaceGx22)
0231 #define KML_DEFINE_TAG_HANDLER_MX(Name) GEODATA_DEFINE_TAG_HANDLER(kml, Kml, Name, kmlTag_nameSpaceMx)
0232 
0233 #define KML_DEFINE_TAG_HANDLER(Name) \
0234     KML_DEFINE_TAG_HANDLER_20(Name) \
0235     KML_DEFINE_TAG_HANDLER_21(Name) \
0236     KML_DEFINE_TAG_HANDLER_22(Name) \
0237     KML_DEFINE_TAG_HANDLER_OGC22(Name)
0238 
0239 }
0240 
0241 #endif