File indexing completed on 2024-05-12 03:51:44
0001 /* 0002 SPDX-FileCopyrightText: 2007 Nikolas Zimmermann <zimmermann@kde.org> 0003 0004 SPDX-License-Identifier: LGPL-2.0-or-later 0005 */ 0006 0007 #ifndef MARBLE_GPX_ELEMENTDICTIONARY_H 0008 #define MARBLE_GPX_ELEMENTDICTIONARY_H 0009 0010 0011 namespace Marble 0012 { 0013 0014 // Lists all known GPX 1.1 tags (https://www.topografix.com/GPX/1/1/) 0015 namespace gpx 0016 { 0017 extern const char gpxTag_nameSpace10[]; 0018 extern const char gpxTag_nameSpace11[]; 0019 0020 extern const char gpxTag_ele[]; 0021 extern const char gpxTag_extensions[]; 0022 extern const char gpxTag_gpx[]; 0023 extern const char gpxTag_lat[]; 0024 extern const char gpxTag_lon[]; 0025 extern const char gpxTag_name[]; 0026 extern const char gpxTag_time[]; 0027 extern const char gpxTag_desc[]; 0028 extern const char gpxTag_type[]; 0029 extern const char gpxTag_trk[]; 0030 extern const char gpxTag_trkpt[]; 0031 extern const char gpxTag_trkseg[]; 0032 extern const char gpxTag_wpt[]; 0033 extern const char gpxTag_rte[]; 0034 extern const char gpxTag_rtept[]; 0035 extern const char gpxTag_cmt[]; 0036 extern const char gpxTag_link[]; 0037 extern const char gpxTag_url[]; 0038 extern const char gpxTag_urlname[]; 0039 // TODO: add all remaining tags! 0040 0041 extern const char gpxTag_nameSpaceGarminTrackPointExt1[]; 0042 extern const char gpxTag_TrackPointExtension[]; 0043 extern const char gpxTag_hr[]; 0044 } 0045 0046 // Helper macros 0047 #define GPX_DEFINE_TAG_HANDLER_10(Name) GEODATA_DEFINE_TAG_HANDLER(gpx, GPX, Name, gpxTag_nameSpace10) 0048 #define GPX_DEFINE_TAG_HANDLER_11(Name) GEODATA_DEFINE_TAG_HANDLER(gpx, GPX, Name, gpxTag_nameSpace11) 0049 #define GPX_DEFINE_TAG_HANDLER_GARMIN_TRACKPOINTEXT1(Name) GEODATA_DEFINE_TAG_HANDLER(gpx, GPX, Name, gpxTag_nameSpaceGarminTrackPointExt1) 0050 0051 #define GPX_DEFINE_TAG_HANDLER(Name) \ 0052 GPX_DEFINE_TAG_HANDLER_10(Name) \ 0053 GPX_DEFINE_TAG_HANDLER_11(Name) 0054 0055 } 0056 0057 #endif