Warning, /education/marble/src/bindings/python/sip/AlternativeRoutesModel.sip is written in an unsupported language. File is not indexed.

0001 // Copyright 2011 Simon Edwards <simon@simonzone.com>
0002 
0003 //                 Generated by twine2
0004 
0005 // This program is free software; you can redistribute it and/or modify
0006 // it under the terms of the GNU Library General Public License as
0007 // published by the Free Software Foundation; either version 2, or
0008 // (at your option) any later version.
0009 
0010 // This program is distributed in the hope that it will be useful,
0011 // but WITHOUT ANY WARRANTY; without even the implied warranty of
0012 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0013 // GNU General Public License for more details
0014 
0015 // You should have received a copy of the GNU Library General Public
0016 // License along with this program; if not, write to the
0017 // Free Software Foundation, Inc.,
0018 // 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
0019 
0020 namespace Marble
0021 {
0022 class AlternativeRoutesModel : QAbstractListModel
0023 {
0024 %TypeHeaderCode
0025 #include <routing/AlternativeRoutesModel.h>
0026 %End
0027 
0028 public:
0029     enum WritePolicy
0030     {
0031         Instant,
0032         Lazy
0033     };
0034     explicit                AlternativeRoutesModel (QObject* parent /TransferThis/ = 0);
0035     ~AlternativeRoutesModel ();
0036     int                     rowCount (const QModelIndex& parent = QModelIndex()) const;
0037     QVariant                headerData (int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const;
0038     QVariant                data (const QModelIndex& index, int role = Qt::DisplayRole) const;
0039     Marble::GeoDataDocument*  route (int index);
0040     void                    newRequest (Marble::RouteRequest* request);
0041     void                    addRoute (Marble::GeoDataDocument* document, Marble::AlternativeRoutesModel::WritePolicy policy = Marble::AlternativeRoutesModel::Lazy);
0042     void                    setCurrentRoute (int index);
0043     void                    clear ();
0044     Marble::GeoDataDocument*  currentRoute ();
0045     static Marble::GeoDataLineString*  waypoints (const Marble::GeoDataDocument* document);
0046     static qreal            distance (const Marble::GeoDataCoordinates& satellite, const Marble::GeoDataCoordinates& lineA, const Marble::GeoDataCoordinates& lineB);
0047     static QVector<qreal>   deviation (const Marble::GeoDataDocument* routeA, const Marble::GeoDataDocument* routeB);
0048 signals:
0049     void                    currentRouteChanged (Marble::GeoDataDocument* newRoute);
0050     void                    currentRouteChanged (int index);
0051 };
0052 };