Класс QSensorBackend
Класс QSensorBackend реализует датчик. Подробнее...
| Заголовок: | #include <QSensorBackend> |
| qmake: | QT += sensors |
| С момента: | Qt 5.1 |
| Наследует: | QObject |
Открытые функции
| void | addDataRate(qreal min, qreal max) |
| void | addOutputRange(qreal min, qreal max, qreal accuracy) |
| virtual bool | isFeatureSupported(QSensor::Feature feature) const |
| void | newReadingAvailable() |
| QSensorReading * | reading() const |
| QSensor * | sensor() const |
| void | sensorBusy() |
| void | sensorError(int error) |
| void | sensorStopped() |
| void | setDataRates(const QSensor *otherSensor) |
| void | setDescription(const QString &description) |
| T * | setReading(T *reading) |
| virtual void | start() = 0 |
| virtual void | stop() = 0 |
- 34 открытых функций, унаследованных от QObject
Дополнительные унаследованные члены
- 1 свойство, унаследованное от QObject
- 1 открытый слот, унаследованный от QObject
- 2 сигнала, унаследованные от QObject
- 1 открытая переменная, унаследованная от QObject
- 10 статических открытых членов, унаследованных от QObject
- 9 защищённых функций, унаследованных от QObject
- 2 защищённых переменных, унаследованных от QObject
Подробное описание
Класс QSensorBackend реализует датчик.
Датчики на устройстве будут представлены подклассами QSensorBackend.
Документация по членам функций
void QSensorBackend::addDataRate(qreal min, qreal max)
Добавляет скорость передачи данных (состоящую из значений min и max) для датчика.
Обратите внимание, что эту функцию следует вызывать из конструктора, чтобы информация была доступна сразу.
См. также QSensor::availableDataRates.
void QSensorBackend::addOutputRange(qreal min, qreal max, qreal accuracy)
Добавляет диапазон вывода (состоящий из значений min, max и accuracy) для датчика.
Обратите внимание, что эту функцию следует вызывать из конструктора, чтобы информация была доступна сразу.
См. также QSensor::outputRange и QSensor::outputRanges.
bool QSensorBackend::isFeatureSupported(QSensor::Feature feature) const
Проверяет, поддерживает ли этот бэкенд датчика определённую функцию.
Это бэкенд-сторона QSensor::isFeatureSupported(). Переопределите эту функцию, если бэкенд поддерживает одну из дополнительных функций датчика из QSensor::Feature.
Возвращает, поддерживается ли функция feature этим бэкендом. По умолчанию функция возвращает false.
Функция была введена в Qt 5.0.
void QSensorBackend::newReadingAvailable()
Уведомляет класс QSensor, что доступно новое значение.
QSensorReading *QSensorBackend::reading() const
Если бэкенд потерял ссылку на значение, он может вызвать этот метод для получения адреса.
Обратите внимание, что вам нужно будет выполнить приведение типов.
См. также setReading().
QSensor *QSensorBackend::sensor() const
Возвращает фронт-энд датчика, связанный с этим бэкендом.
void QSensorBackend::sensorBusy()
Уведомляет фронт-энд о том, что датчик занят. Это неявно вызывает sensorStopped() и обычно вызывается из start().
Обратите внимание, что фронт-энд должен использовать QSensor::isBusy() для проверки, занят ли датчик. Если датчик остановлен из-за ошибки, следует вызвать функцию sensorError(), чтобы уведомить класс об ошибке.
void QSensorBackend::sensorError(int error)
Уведомляет фронт-энд о возникновении ошибки датчика. Обратите внимание, что это сообщает только код ошибки. Это не останавливает датчик.
См. также sensorStopped().
void QSensorBackend::sensorStopped()
Уведомляет фронт-энд о том, что датчик остановлен. Это может произойти из-за того, что start() не удалось или по какой-то непредвиденной причине (например, неисправность оборудования).
Обратите внимание, что фронт-энд должен использовать QSensor::isActive() для проверки, остановлен ли датчик. Если датчик остановлен из-за ошибки, следует вызвать функцию sensorError(), чтобы уведомить класс об ошибке.
void QSensorBackend::setDataRates(const QSensor *otherSensor)
Устанавливает скорость передачи данных для датчика на основе otherSensor.
Это предназначено для датчиков, которые основаны на других датчиках.
Обратите внимание, что эту функцию необходимо вызывать из конструктора.
См. также QSensor::availableDataRates и addDataRate().
void QSensorBackend::setDescription(const QString &description)
Устанавливает описание description для датчика.
Обратите внимание, что эту функцию следует вызывать из конструктора, чтобы информация была доступна сразу.
T *QSensorBackend::setReading(T *reading)
Эта функция вызывается для инициализации классов reading, используемых для датчика.
Если ваш бэкенд уже выделил значение, вы должны передать адрес этого значения в функцию. В противном случае вы должны передать 0, и функция вернёт адрес значения, которое ваш бэкенд должен использовать, когда он хочет уведомить API датчика о новых значениях.
Обратите внимание, что это шаблонная функция, поэтому её следует вызывать с соответствующим типом.
Обратите внимание, что эту функцию необходимо вызвать, иначе вы не сможете отправлять значения во фронт-энд.
Если вы не хотите хранить адрес значения, вы можете использовать метод reading() для получения его позже.
См. также reading().
void QSensorBackend::start()
Начать отчёт значений.
void QSensorBackend::stop()
Остановить отчёт значений.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qsensorbackend.html