QGIS API Documentation  2.5.0-Master
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Signals | Public Member Functions | Static Public Member Functions | List of all members
QgsOSMDownload Class Reference

OSMDownload is a utility class for downloading OpenStreetMap via Overpass API. More...

#include <qgsosmdownload.h>

Inheritance diagram for QgsOSMDownload:
Inheritance graph
[legend]

Signals

void finished ()
 emitted when the network reply has finished (with success or with an error) More...
 
void downloadProgress (qint64, qint64)
 normally the total length is not known (until we reach end) More...
 

Public Member Functions

 QgsOSMDownload ()
 
 ~QgsOSMDownload ()
 
void setServiceUrl (const QString &serviceUrl)
 
QString serviceUrl () const
 
void setQuery (const QString &query)
 
QString query () const
 
void setOutputFileName (const QString &outputFileName)
 
QString outputFileName () const
 
bool hasError () const
 
QString errorString () const
 
bool start ()
 Starts network request for data. More...
 
bool abort ()
 Aborts current pending request. More...
 
bool isFinished () const
 Returns true if the request has already finished. More...
 

Static Public Member Functions

static QString defaultServiceUrl ()
 Return URL of the service that is used by default. More...
 
static QString queryFromRect (const QgsRectangle &rect)
 Create query (in Overpass Query Language) that fetches everything in given rectangle. More...
 

Detailed Description

OSMDownload is a utility class for downloading OpenStreetMap via Overpass API.

To use this class, it is necessary to set query, output file name and start the request. The interface is asynchronous, the caller has to wait for finished() signal that is emitted whe the request has finished (successfully or with an error).

To check whether the the request has been successful, check hasError() and use errorString() to retreive error message. An error may happen either directly in start() method or during the network communication.

By default OSMDownload uses remote service at location returned by defaultServiceUrl() method.

Constructor & Destructor Documentation

QgsOSMDownload::QgsOSMDownload ( )
QgsOSMDownload::~QgsOSMDownload ( )

Member Function Documentation

bool QgsOSMDownload::abort ( )

Aborts current pending request.

Returns
true if there is a pending request and has been aborted, false otherwise
QString QgsOSMDownload::defaultServiceUrl ( )
static

Return URL of the service that is used by default.

void QgsOSMDownload::downloadProgress ( qint64  ,
qint64   
)
signal

normally the total length is not known (until we reach end)

QString QgsOSMDownload::errorString ( ) const
inline
void QgsOSMDownload::finished ( )
signal

emitted when the network reply has finished (with success or with an error)

bool QgsOSMDownload::hasError ( ) const
inline
bool QgsOSMDownload::isFinished ( ) const

Returns true if the request has already finished.

QString QgsOSMDownload::outputFileName ( ) const
inline
QString QgsOSMDownload::query ( ) const
inline
QString QgsOSMDownload::queryFromRect ( const QgsRectangle rect)
static

Create query (in Overpass Query Language) that fetches everything in given rectangle.

QString QgsOSMDownload::serviceUrl ( ) const
inline
void QgsOSMDownload::setOutputFileName ( const QString &  outputFileName)
inline
void QgsOSMDownload::setQuery ( const QString &  query)
inline
void QgsOSMDownload::setServiceUrl ( const QString &  serviceUrl)
inline
bool QgsOSMDownload::start ( )

Starts network request for data.

The prerequisite is that the query string and output file name have been set.

Only one request may be pending at one point - if you need more requests at once, use several instances.

Returns
true if the network request has been issued, false otherwise (and sets error string)

The documentation for this class was generated from the following files: