• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdeedu API Reference
  • KDE Home
  • Contact Us
 

marble

  • sources
  • kde-4.14
  • kdeedu
  • marble
  • src
  • lib
  • marble
RunnerTask.cpp
Go to the documentation of this file.
1 //
2 // This file is part of the Marble Virtual Globe.
3 //
4 // This program is free software licensed under the GNU LGPL. You can
5 // find a copy of this license in LICENSE.txt in the top directory of
6 // the source code.
7 //
8 // Copyright 2010 Dennis Nienhüser <earthwings@gentoo.org>
9 // Copyright 2011 Thibaut Gridel <tgridel@free.fr>
10 // Copyright 2012,2013 Bernhard Beschow <bbeschow@cs.tu-berlin.de>
11 
12 #include "RunnerTask.h"
13 
14 #include "MarbleDebug.h"
15 #include "ParsingRunner.h"
16 #include "ParsingRunnerManager.h"
17 #include "SearchRunner.h"
18 #include "SearchRunnerManager.h"
19 #include "ReverseGeocodingRunner.h"
20 #include "ReverseGeocodingRunnerManager.h"
21 #include "RoutingRunner.h"
22 #include "RoutingRunnerManager.h"
23 #include "routing/RouteRequest.h"
24 
25 #include <QTimer>
26 
27 namespace Marble
28 {
29 
30 SearchTask::SearchTask( SearchRunner *runner, SearchRunnerManager *manager, const MarbleModel *model, const QString &searchTerm, const GeoDataLatLonBox &preferred ) :
31  QObject(),
32  m_runner( runner ),
33  m_searchTerm( searchTerm ),
34  m_preferredBbox( preferred )
35 {
36  connect( m_runner, SIGNAL(searchFinished(QVector<GeoDataPlacemark*>)),
37  manager, SLOT(addSearchResult(QVector<GeoDataPlacemark*>)) );
38  m_runner->setModel( model );
39 }
40 
41 void SearchTask::run()
42 {
43  m_runner->search( m_searchTerm, m_preferredBbox );
44  m_runner->deleteLater();
45 
46  emit finished( this );
47 }
48 
49 ReverseGeocodingTask::ReverseGeocodingTask( ReverseGeocodingRunner *runner, ReverseGeocodingRunnerManager *manager, const MarbleModel *model, const GeoDataCoordinates &coordinates ) :
50  QObject(),
51  m_runner( runner ),
52  m_coordinates( coordinates )
53 {
54  connect( m_runner, SIGNAL(reverseGeocodingFinished(GeoDataCoordinates,GeoDataPlacemark)),
55  manager, SLOT(addReverseGeocodingResult(GeoDataCoordinates,GeoDataPlacemark)) );
56  m_runner->setModel( model );
57 }
58 
59 void ReverseGeocodingTask::run()
60 {
61  m_runner->reverseGeocoding( m_coordinates );
62  m_runner->deleteLater();
63 
64  emit finished( this );
65 }
66 
67 RoutingTask::RoutingTask( RoutingRunner *runner, RoutingRunnerManager *manager, const MarbleModel *model, const RouteRequest* routeRequest ) :
68  QObject(),
69  m_runner( runner ),
70  m_routeRequest( routeRequest )
71 {
72  connect( m_runner, SIGNAL(routeCalculated(GeoDataDocument*)),
73  manager, SLOT(addRoutingResult(GeoDataDocument*)) );
74  m_runner->setModel( model );
75 }
76 
77 void RoutingTask::run()
78 {
79  m_runner->retrieveRoute( m_routeRequest );
80  m_runner->deleteLater();
81 
82  emit finished( this );
83 }
84 
85 ParsingTask::ParsingTask( ParsingRunner *runner, ParsingRunnerManager *manager, const QString& fileName, DocumentRole role ) :
86  QObject(),
87  m_runner( runner ),
88  m_fileName( fileName ),
89  m_role( role )
90 {
91  connect( m_runner, SIGNAL(parsingFinished(GeoDataDocument*,QString)),
92  manager, SLOT(addParsingResult(GeoDataDocument*,QString)) );
93 }
94 
95 void ParsingTask::run()
96 {
97  m_runner->parseFile( m_fileName, m_role );
98  m_runner->deleteLater();
99 
100  emit finished( this );
101 }
102 
103 }
104 
105 #include "RunnerTask.moc"
Marble::RoutingRunner::setModel
void setModel(const MarbleModel *model)
Stores a pointer to the currently used model.
Definition: RoutingRunner.cpp:26
Marble::GeoDataCoordinates
A 3d point representation.
Definition: GeoDataCoordinates.h:52
Marble::SearchRunner::setModel
void setModel(const MarbleModel *model)
Stores a pointer to the currently used model.
Definition: SearchRunner.cpp:20
RoutingRunnerManager.h
Marble::GeoDataDocument
A container for Features, Styles and in the future Schemas.
Definition: GeoDataDocument.h:65
Marble::RoutingRunnerManager
Definition: RoutingRunnerManager.h:29
Marble::SearchRunner::search
virtual void search(const QString &searchTerm, const GeoDataLatLonBox &preferred)=0
Start a placemark search.
Marble::ParsingRunnerManager
Definition: ParsingRunnerManager.h:31
RunnerTask.h
Marble::SearchRunnerManager
Definition: SearchRunnerManager.h:33
MarbleDebug.h
Marble::SearchTask::finished
void finished(SearchTask *task)
Marble::RoutingRunner::retrieveRoute
virtual void retrieveRoute(const RouteRequest *request)=0
Start a route download orw calculation.
ParsingRunnerManager.h
Marble::ReverseGeocodingRunner::setModel
void setModel(const MarbleModel *model)
Stores a pointer to the currently used model.
Definition: ReverseGeocodingRunner.cpp:20
Marble::ReverseGeocodingTask::run
void run()
Definition: RunnerTask.cpp:59
Marble::RouteRequest
Points to be included in a route.
Definition: RouteRequest.h:31
QObject
RoutingRunner.h
Marble::ReverseGeocodingRunnerManager
Definition: ReverseGeocodingRunnerManager.h:30
ReverseGeocodingRunnerManager.h
Marble::RoutingTask::RoutingTask
RoutingTask(RoutingRunner *runner, RoutingRunnerManager *manager, const MarbleModel *model, const RouteRequest *routeRequest)
Definition: RunnerTask.cpp:67
QObject::deleteLater
void deleteLater()
QString
ReverseGeocodingRunner.h
Marble::ParsingTask::run
void run()
Definition: RunnerTask.cpp:95
Marble::ParsingRunner
Definition: ParsingRunner.h:23
Marble::ReverseGeocodingRunner::reverseGeocoding
virtual void reverseGeocoding(const GeoDataCoordinates &coordinates)=0
Start a reverse geocoding request.
Marble::MarbleModel
The data model (not based on QAbstractModel) for a MarbleWidget.
Definition: MarbleModel.h:97
QVector
Marble::RoutingRunner
Definition: RoutingRunner.h:28
Marble::ParsingRunner::parseFile
virtual void parseFile(const QString &fileName, DocumentRole role)=0
Start a file parsing.
Marble::ReverseGeocodingRunner
Definition: ReverseGeocodingRunner.h:25
SearchRunnerManager.h
Marble::ParsingTask::ParsingTask
ParsingTask(ParsingRunner *runner, ParsingRunnerManager *manager, const QString &fileName, DocumentRole role)
Definition: RunnerTask.cpp:85
Marble::RoutingTask::finished
void finished(RoutingTask *task)
Marble::SearchTask::SearchTask
SearchTask(SearchRunner *runner, SearchRunnerManager *manager, const MarbleModel *model, const QString &searchTerm, const GeoDataLatLonBox &preferred)
Definition: RunnerTask.cpp:30
RouteRequest.h
Marble::ParsingTask::finished
void finished(ParsingTask *task)
Marble::RoutingTask::run
void run()
Definition: RunnerTask.cpp:77
Marble::ReverseGeocodingTask::finished
void finished(ReverseGeocodingTask *task)
QObject::connect
bool connect(const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
SearchRunner.h
Marble::GeoDataPlacemark
a class representing a point of interest on the map
Definition: GeoDataPlacemark.h:54
Marble::DocumentRole
DocumentRole
Definition: GeoDataDocument.h:39
Marble::SearchRunner
Definition: SearchRunner.h:30
Marble::ReverseGeocodingTask::ReverseGeocodingTask
ReverseGeocodingTask(ReverseGeocodingRunner *runner, ReverseGeocodingRunnerManager *manager, const MarbleModel *model, const GeoDataCoordinates &coordinates)
Definition: RunnerTask.cpp:49
Marble::SearchTask::run
void run()
Definition: RunnerTask.cpp:41
ParsingRunner.h
Marble::GeoDataLatLonBox
A class that defines a 2D bounding box for geographic data.
Definition: GeoDataLatLonBox.h:51
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:13:41 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

marble

Skip menu "marble"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdeedu API Reference

Skip menu "kdeedu API Reference"
  • Analitza
  •     lib
  • kalgebra
  • kalzium
  •   libscience
  • kanagram
  • kig
  •   lib
  • klettres
  • marble
  • parley
  • rocs
  •   App
  •   RocsCore
  •   VisualEditor
  •   stepcore

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal