File indexing completed on 2024-07-14 10:58:39

0001 // SPDX-License-Identifier: LGPL-2.1-or-later
0002 //
0003 // SPDX-FileCopyrightText: 2011 Thibaut Gridel <tgridel@free.fr>
0004 
0005 #include "GpxParser.h"
0006 #include "GPXElementDictionary.h"
0007 #include "GeoDataDocument.h"
0008 
0009 namespace Marble {
0010 
0011 GpxParser::GpxParser()
0012     : GeoParser( 0 )
0013 {
0014 }
0015 
0016 GpxParser::~GpxParser()
0017 {
0018 }
0019 
0020 bool GpxParser::isValidRootElement()
0021 {
0022     return isValidElement(gpx::gpxTag_gpx);
0023 }
0024 
0025 bool GpxParser::isValidElement(const QString& tagName) const
0026 {
0027     if (!GeoParser::isValidElement(tagName))
0028         return false;
0029 
0030     return (   namespaceUri() == gpx::gpxTag_nameSpace10
0031             || namespaceUri() == gpx::gpxTag_nameSpace11
0032             || namespaceUri() == gpx::gpxTag_nameSpaceGarminTrackPointExt1);
0033 }
0034 
0035 GeoDocument* GpxParser::createDocument() const
0036 {
0037     return new GeoDataDocument;
0038 }
0039 
0040 }