Spec-Zone.ru › Qt

Класс QNmeaSatelliteInfoSource

Класс QNmeaSatelliteInfoSource предоставляет информацию о спутниках, используя источник данных NMEA. Подробнее...

Заголовок: #include <QNmeaSatelliteInfoSource>
CMake: find_package(Qt6 COMPONENTS Positioning REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Positioning)
qmake: QT += positioning
С момента: Qt 6.2
Наследует: QGeoSatelliteInfoSource
  • Список всех членов, включая наследуемые

Типы публичного доступа

перечисление классов UpdateMode { РежимРеальногоВремени, РежимМоделирования }

Функции публичного доступа

QNmeaSatelliteInfoSource(QNmeaSatelliteInfoSource::UpdateMode mode, QObject *parent = nullptr)
виртуальный ~QNmeaSatelliteInfoSource() override
QIODevice * device() const
void setDevice(QIODevice *device)
QNmeaSatelliteInfoSource::UpdateMode updateMode() const

Переопределённые функции публичного доступа

виртуальный QVariant backendProperty(const QString &name) const override
виртуальный QGeoSatelliteInfoSource::Error error() const override
виртуальный int minimumUpdateInterval() const override
виртуальный bool setBackendProperty(const QString &name, const QVariant &value) override
виртуальный void setUpdateInterval(int msec) override

Свойства публичного доступа

виртуальный void requestUpdate(int msec = 0) override
виртуальный void startUpdates() override
виртуальный void stopUpdates() override

Статические члены публичного доступа

QString SimulationUpdateInterval

Защищённые типы

перечисление SatelliteInfoParseStatus { НеОбработан, ЧастичноОбработан, ПолностьюОбработан }

Защищённые функции

виртуальный QNmeaSatelliteInfoSource::SatelliteInfoParseStatus parseSatelliteInfoFromNmea(const char *data, int size, QList<QGeoSatelliteInfo> &infos, QGeoSatelliteInfo::SatelliteSystem &system)
виртуальный QGeoSatelliteInfo::SatelliteSystem parseSatellitesInUseFromNmea(const char *data, int size, QList<int> &pnrsInUse)

Подробное описание

NMEA — это широко используемый протокол для задания глобального положения в определённый момент времени. Класс QNmeaSatelliteInfoSource считывает данные NMEA и использует их для предоставления информации о видимых спутниках и используемых спутниках в виде списков объектов QGeoSatelliteInfo.

Экземпляр QNmeaSatelliteInfoSource работает в режиме РежимРеальногоВремени или РежимМоделирования. Эти режимы позволяют считывать данные NMEA из живого источника данных или воспроизводить их для целей моделирования из ранее записанных данных NMEA.

Источник данных NMEA задаётся с помощью setDevice().

Используйте startUpdates(), чтобы начать получать регулярные обновления информации о спутниках, и stopUpdates(), чтобы остановить эти обновления. Если вам нужны только периодические обновления, вы можете вызвать requestUpdate(), чтобы запросить одно обновление как видимых спутников, так и используемых спутников.

Информация о видимых спутниках поступает через сигнал satellitesInViewUpdated().

Информация об используемых спутниках поступает через сигнал satellitesInUseUpdated().

Документация по типам членов

перечисление QNmeaSatelliteInfoSource::SatelliteInfoParseStatus

Определяет статус разбора информации о спутниках. Информация о спутниках может быть разбита на несколько предложений, и нам нужно разобрать их все.

Константа Значение Описание
QNmeaSatelliteInfoSource::NotParsed 0 Данные не содержат информации о спутниках.
QNmeaSatelliteInfoSource::PartiallyParsed 1 Получена и обработана действительная информация о спутнике, но она не полная, поэтому нам нужно подождать следующего предложения NMEA.
QNmeaSatelliteInfoSource::FullyParsed 2 Информация о спутниках была полностью собрана и обработана.

перечисление QNmeaSatelliteInfoSource::UpdateMode

Определяет доступные режимы обновления.

Константа Значение Описание
QNmeaSatelliteInfoSource::UpdateMode::RealTimeMode 1 Информация о спутниках считывается и распространяется из источника данных по мере её появления. Используйте этот режим, если вы используете живой источник данных NMEA (например, устройство GPS).
QNmeaSatelliteInfoSource::UpdateMode::SimulationMode 2 Информация о спутниках считывается и распространяется из источника данных с заданной скоростью. Скорость определяется параметром SimulationUpdateInterval. Используйте этот режим, если источник данных содержит ранее записанные данные NMEA, и вы хотите воспроизвести данные для целей моделирования.

Документация по функциям членов

QNmeaSatelliteInfoSource::QNmeaSatelliteInfoSource(QNmeaSatelliteInfoSource::UpdateMode mode, QObject *parent = nullptr)

Конструирует экземпляр QNmeaSatelliteInfoSource с заданным parent и mode.

Запрос обновленияvoid QNmeaSatelliteInfoSource::requestUpdate(int msec = 0)

Переопределяет: QGeoSatelliteInfoSource::requestUpdate(int timeout).

Начать обновленияvoid QNmeaSatelliteInfoSource::startUpdates()

Переопределяет: QGeoSatelliteInfoSource::startUpdates().

Остановить обновленияvoid QNmeaSatelliteInfoSource::stopUpdates()

Переопределяет: QGeoSatelliteInfoSource::stopUpdates().

Деструктор~QNmeaSatelliteInfoSource()

Удаляет источник информации о спутниках.

[override virtual] QVariant QNmeaSatelliteInfoSource::backendProperty(const QString &name) const

Реализует: QGeoSatelliteInfoSource::backendProperty(const QString &name) const.

См. также setBackendProperty().

QIODevice *QNmeaSatelliteInfoSource::device() const

Возвращает источник данных NMEA.

См. также setDevice().

[override virtual] QGeoSatelliteInfoSource::Error QNmeaSatelliteInfoSource::error() const

Реализует: QGeoSatelliteInfoSource::error() const.

[override virtual] int QNmeaSatelliteInfoSource::minimumUpdateInterval() const

Реализует функцию доступа к свойству: QGeoSatelliteInfoSource::minimumUpdateInterval.

[virtual protected] QNmeaSatelliteInfoSource::SatelliteInfoParseStatus QNmeaSatelliteInfoSource::parseSatelliteInfoFromNmea(const char *data, int size, QList<QGeoSatelliteInfo> &infos, QGeoSatelliteInfo::SatelliteSystem &system)

Парсит строку предложения NMEA, чтобы извлечь информацию о спутниках в поле зрения.

По умолчанию реализация парсит стандартные предложения NMEA $GPGSV. Этот метод следует переопределять в подклассе, когда возникает необходимость обработки нестандартных предложений NMEA.

Парсер считывает size байтов из data и использует эту информацию для заполнения списка infos.

Возвращает SatelliteInfoParseStatus с результатом парсинга. Модифицирует список infos в случае, если возвращается PartiallyParsed или FullyParsed. Также устанавливает system в правильный тип системы спутников. Это необходимо для определения типа системы в случае отсутствия спутников в поле зрения.

[virtual protected] QGeoSatelliteInfo::SatelliteSystem QNmeaSatelliteInfoSource::parseSatellitesInUseFromNmea(const char *data, int size, QList<int> &pnrsInUse)

Парсит строку предложения NMEA, чтобы извлечь идентификаторы используемых спутников.

По умолчанию реализация парсит стандартные предложения NMEA $GPGSA. Этот метод следует переопределять в подклассе, когда возникает необходимость обработки нестандартных предложений NMEA.

Парсер считывает size байтов из data и использует эту информацию для заполнения списка pnrsInUse.

Возвращает тип системы, если предложение было успешно распарсено, в противном случае возвращает QGeoSatelliteInfo::Undefined и не должно модифицировать pnrsInUse.

[override virtual] bool QNmeaSatelliteInfoSource::setBackendProperty(const QString &name, const QVariant &value)

Реализует: QGeoSatelliteInfoSource::setBackendProperty(const QString &name, const QVariant &value).

См. также backendProperty().

void QNmeaSatelliteInfoSource::setDevice(QIODevice *device)

Устанавливает источник данных NMEA в device. Если устройство не открыто, оно будет открыто в режиме QIODevice::ReadOnly.

Источник устройства может быть установлен только один раз и должен быть установлен перед вызовом startUpdates() или requestUpdate().

Примечание: device должен излучать QIODevice::readyRead() для уведомления источника, когда данные доступны для чтения. QNmeaSatelliteInfoSource не предполагает владения устройством и, следовательно, не освобождает его при уничтожении.

См. также device().

[override virtual] void QNmeaSatelliteInfoSource::setUpdateInterval(int msec)

Реализует функцию доступа к свойству: QGeoSatelliteInfoSource::updateInterval.

QNmeaSatelliteInfoSource::UpdateMode QNmeaSatelliteInfoSource::updateMode() const

Возвращает режим обновления.

Документация по переменным-членам

QString QNmeaSatelliteInfoSource::SimulationUpdateInterval

Эта переменная хранит имя свойства бэкенда для частоты чтения данных в режиме SimulationMode. Значение этого свойства — целое число, представляющее количество миллисекунд между последующими чтениями. Используйте этот параметр в методах setBackendProperty() и backendProperty().

Примечание: Это свойство отличается от интервала, который можно установить с помощью setUpdateInterval(). Значение, установленное с помощью setUpdateInterval(), обозначает интервал для уведомления пользователя, в то время как этот параметр определяет внутреннюю частоту чтения данных из источника файла. Это означает, что можно иметь несколько (или ни одного) чтений в течение периода updateInterval().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.2/qnmeasatelliteinfosource.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API