QGeoAreaMonitorInfo Class

The QGeoAreaMonitorInfo class describes the parameters of an area or region to be monitored for proximity. More...

Header: #include <QGeoAreaMonitorInfo>
qmake: QT += positioning
Since: Qt 5.2

This class was introduced in Qt 5.2.

Public Functions

QGeoAreaMonitorInfo(const QGeoAreaMonitorInfo &other)
QGeoAreaMonitorInfo(const QString &name = QString())
QGeoAreaMonitorInfo &operator=(const QGeoAreaMonitorInfo &other)
QGeoShape area() const
QDateTime expiration() const
QString identifier() const
bool isPersistent() const
bool isValid() const
QString name() const
QVariantMap notificationParameters() const
void setArea(const QGeoShape &newShape)
void setExpiration(const QDateTime &expiry)
void setName(const QString &name)
void setNotificationParameters(const QVariantMap &parameters)
void setPersistent(bool isPersistent)
bool operator!=(const QGeoAreaMonitorInfo &other) const
bool operator==(const QGeoAreaMonitorInfo &other) const
QDataStream &operator<<(QDataStream &stream, const QGeoAreaMonitorInfo &monitor)
QDataStream &operator>>(QDataStream &stream, QGeoAreaMonitorInfo &monitor)

Detailed Description

The purpose of area monitoring is to inform a user when he/she comes close to an area of interest. In general such an area is described by a QGeoCircle. The circle's center represents the place of interest and the area around it identifies the geographical region within which notifications are sent.

A QGeoAreaMonitorInfo object is valid if it has a non-empty name and a valid area(). Such objects must be registered with a QGeoAreaMonitorSource to start and stop the monitoring process. Note that extensive monitoring can be very resource consuming because the positioning engine must remain active and has to match the current position with each QGeoAreaMonitorInfo instance.

To further reduce the burden on the system there are optional attributes which can set. Each monitored area can have an expiry date which automatically removes the to-be-monitored area from the monitoring source once the expiry date has been reached. Another option is to adjust the persistence of a monitored area. A QGeoAreaMonitorInfo that isPersistent() will remain active beyond the current applications lifetime. If an area is entered while the monitoring application is not running the application will be started. Note that this feature is not available on all platforms. Its availability can be checked via QGeoAreaMonitorSource::supportedAreaMonitorFeatures().

See also QGeoAreaMonitorSource.

Member Function Documentation

QGeoAreaMonitorInfo::QGeoAreaMonitorInfo(const QGeoAreaMonitorInfo &other)

Constructs a QGeoAreaMonitorInfo object as a copy of other.

QGeoAreaMonitorInfo::QGeoAreaMonitorInfo(const QString &name = QString())

Constructs a QGeoAreaMonitorInfo object with the specified name.

See also name().

QGeoAreaMonitorInfo &QGeoAreaMonitorInfo::operator=(const QGeoAreaMonitorInfo &other)

Assigns other to this QGeoAreaMonitorInfo object and returns a reference to this QGeoAreaMonitorInfo object.



QGeoShape QGeoAreaMonitorInfo::area() const

Returns the boundaries of the to-be-monitored area. This area must not be empty.

See also setArea().

QDateTime QGeoAreaMonitorInfo::expiration() const

Returns the expiry date.

After an active QGeoAreaMonitorInfo has expired the region is no longer monitored and the QGeoAreaMonitorInfo object is removed from the list of active monitors.

If the expiry QDateTime is invalid the QGeoAreaMonitorInfo object is treated as not having an expiry date. This implies an indefinite monitoring period if the object is persistent or until the current application closes if the object is non-persistent.

See also setExpiration() and QGeoAreaMonitorSource::activeMonitors().

QString QGeoAreaMonitorInfo::identifier() const

Returns the identifier of the QGeoAreaMonitorInfo object. The identifier is automatically generated upon construction of a new QGeoAreaMonitorInfo object.

bool QGeoAreaMonitorInfo::isPersistent() const

Returns true if the QGeoAreaMonitorInfo is persistent. The default value for this property is false.

A non-persistent QGeoAreaMonitorInfo will be removed by the system once the application owning the monitor object stops. Persistent objects remain active and can be retrieved once the application restarts.

If the system triggers an event associated to a persistent QGeoAreaMonitorInfo the relevant application will be re-started and the appropriate signal emitted.

See also setPersistent().

bool QGeoAreaMonitorInfo::isValid() const

Returns true, if the monitor is valid. A valid QGeoAreaMonitorInfo has a non-empty name() and the monitored area is not empty(). Otherwise this function returns false.

QString QGeoAreaMonitorInfo::name() const

Returns the name of the QGeoAreaMonitorInfo object. The name should be used to for user-visibility purposes.

See also setName().

QVariantMap QGeoAreaMonitorInfo::notificationParameters() const

Returns the set of platform specific paraemters used by this QGeoAreaMonitorInfo.

See also setNotificationParameters().

void QGeoAreaMonitorInfo::setArea(const QGeoShape &newShape)

Sets the to-be-monitored area to newShape.

See also area().

void QGeoAreaMonitorInfo::setExpiration(const QDateTime &expiry)

Sets the expiry date and time to expiry.

See also expiration().

void QGeoAreaMonitorInfo::setName(const QString &name)

Sets the user visibile name.

See also name().

void QGeoAreaMonitorInfo::setNotificationParameters(const QVariantMap &parameters)

Sets the set of platform specific parameters used by QGeoAreaMonitorInfo.

See also notificationParameters().

void QGeoAreaMonitorInfo::setPersistent(bool isPersistent)

Sets the QGeoAreaMonitorInfo objects persistence to isPersistent.

Note that setting this flag does not imply that QGeoAreaMonitorInfoSource supports persistent monitoring. QGeoAreaMonitorSource::supportedAreaMonitorFeatures() can be used to check for this feature's availability.

See also isPersistent().

bool QGeoAreaMonitorInfo::operator!=(const QGeoAreaMonitorInfo &other) const

Returns true if any of this object's values are not the same as those of other.

bool QGeoAreaMonitorInfo::operator==(const QGeoAreaMonitorInfo &other) const

Returns true if all of this object's values are the same as those of other.

Related Non-Members

QDataStream &operator<<(QDataStream &stream, const QGeoAreaMonitorInfo &monitor)

Writes the given monitor to the specified stream.

See also Serializing Qt Data Types.

QDataStream &operator>>(QDataStream &stream, QGeoAreaMonitorInfo &monitor)

Reads a area monitoring data from the specified stream into the given monitor.

See also Serializing Qt Data Types.