File indexing completed on 2024-04-28 03:49:29
0001 // SPDX-License-Identifier: LGPL-2.1-or-later 0002 // 0003 // SPDX-FileCopyrightText: 2010 Niko Sams <niko.sams@gmail.com> 0004 // SPDX-FileCopyrightText: 2010 Dennis Nienhüser <nienhueser@kde.org> 0005 // 0006 0007 #ifndef MARBLE_ROUTINGPROFILE_H 0008 #define MARBLE_ROUTINGPROFILE_H 0009 0010 #include "marble_export.h" 0011 0012 #include <QString> 0013 #include <QHash> 0014 #include <QVariant> 0015 0016 namespace Marble 0017 { 0018 0019 class MARBLE_EXPORT RoutingProfile { 0020 Q_PROPERTY(QString name READ name WRITE setName) 0021 Q_PROPERTY(TransportType transportType READ transportType WRITE setTransportType) 0022 0023 public: 0024 enum TransportType { 0025 Motorcar, 0026 Bicycle, 0027 Pedestrian 0028 }; 0029 0030 explicit RoutingProfile( const QString &name = QString() ); 0031 0032 QString name() const; 0033 0034 void setName( const QString &name ); 0035 0036 const QHash<QString, QHash<QString, QVariant> >& pluginSettings() const; 0037 0038 QHash<QString, QHash<QString, QVariant> >& pluginSettings(); 0039 0040 void setTransportType( TransportType transportType ); 0041 0042 TransportType transportType() const; 0043 0044 bool operator==( const RoutingProfile &other ) const; 0045 0046 private: 0047 QString m_name; 0048 //icon 0049 QHash<QString, QHash<QString, QVariant> > m_pluginSettings; 0050 0051 TransportType m_transportType; 0052 }; 0053 0054 } 0055 0056 #endif