24 InsufficientPositionInfo = 1,
25 UnknownSourceError = 2,
30 enum AreaMonitorFeature {
31 PersistentAreaMonitorFeature = 0x00000001,
32 AnyAreaMonitorFeature = 0xffffffff
34 Q_DECLARE_FLAGS(AreaMonitorFeatures, AreaMonitorFeature)
36 explicit QGeoAreaMonitorSource(QObject *parent);
37 virtual ~QGeoAreaMonitorSource();
39 static QGeoAreaMonitorSource *createDefaultSource(QObject *parent);
40 static QGeoAreaMonitorSource *createSource(
const QString& sourceName, QObject *parent);
41 static QStringList availableSources();
43 virtual void setPositionInfoSource(QGeoPositionInfoSource *source);
44 virtual QGeoPositionInfoSource* positionInfoSource()
const;
46 QString sourceName()
const;
48 virtual Error error()
const = 0;
49 virtual AreaMonitorFeatures supportedAreaMonitorFeatures()
const = 0;
51 virtual bool startMonitoring(
const QGeoAreaMonitorInfo &monitor) = 0;
52 virtual bool stopMonitoring(
const QGeoAreaMonitorInfo &monitor) = 0;
53 virtual bool requestUpdate(
const QGeoAreaMonitorInfo &monitor,
const char *signal) = 0;
55 virtual QList<QGeoAreaMonitorInfo> activeMonitors()
const = 0;
56 virtual QList<QGeoAreaMonitorInfo> activeMonitors(
const QGeoShape &lookupArea)
const = 0;
58 virtual bool setBackendProperty(
const QString &name,
const QVariant &value);
59 virtual QVariant backendProperty(
const QString &name)
const;
62 void areaEntered(
const QGeoAreaMonitorInfo &monitor,
const QGeoPositionInfo &update);
63 void areaExited(
const QGeoAreaMonitorInfo &monitor,
const QGeoPositionInfo &update);
64 void monitorExpired(
const QGeoAreaMonitorInfo &monitor);
65 void errorOccurred(QGeoAreaMonitorSource::Error error);
68 Q_DISABLE_COPY(QGeoAreaMonitorSource)
69 Q_DECLARE_PRIVATE(QGeoAreaMonitorSource)