File indexing completed on 2024-05-12 03:51:44
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2011 Niko Sams <niko.sams@gmail.com> 0004 // 0005 0006 #include "GPXTrackPointExtensionTagHandler.h" 0007 0008 #include "MarbleDebug.h" 0009 0010 #include "GPXElementDictionary.h" 0011 #include "GeoParser.h" 0012 #include "GeoDataPoint.h" 0013 #include "GeoDataTrack.h" 0014 #include "GeoDataExtendedData.h" 0015 0016 namespace Marble 0017 { 0018 namespace gpx 0019 { 0020 GPX_DEFINE_TAG_HANDLER_GARMIN_TRACKPOINTEXT1(TrackPointExtension) 0021 0022 GeoNode* GPXTrackPointExtensionTagHandler::parse( GeoParser& parser ) const 0023 { 0024 Q_ASSERT(parser.isStartElement() && parser.isValidElement(QLatin1String(gpxTag_TrackPointExtension))); 0025 0026 GeoStackItem parentItem = parser.parentElement(); 0027 0028 if ( parentItem.is<GeoDataTrack>() ) 0029 { 0030 GeoDataTrack* track = parentItem.nodeAs<GeoDataTrack>(); 0031 return track; 0032 } 0033 0034 return nullptr; 0035 } 0036 0037 } // namespace gpx 0038 0039 } // namespace Marble