QSensorManager Class

QSensorManager クラスは、センサーバックエンドの登録と作成を行います。詳細...

ヘッダー #include <QSensorManager>
CMake: find_package(Qt6 REQUIRED COMPONENTS Sensors)
target_link_libraries(mytarget PRIVATE Qt6::Sensors)
qmake: QT += sensors

静的パブリックメンバー

QSensorBackend *createBackend(QSensor *sensor)
bool isBackendRegistered(const QByteArray &type, const QByteArray &identifier)
void registerBackend(const QByteArray &type, const QByteArray &identifier, QSensorBackendFactory *factory)
void setDefaultBackend(const QByteArray &type, const QByteArray &identifier)
void unregisterBackend(const QByteArray &type, const QByteArray &identifier)

詳細説明

センサープラグインはregisterBackend() 関数を使用してバックエンドを登録します。

QSensor::connectToBackend() が呼び出されると、createBackend() 関数が呼び出される。

メンバ関数ドキュメント

[static] QSensorBackend *QSensorManager::createBackend(QSensor *sensor)

sensor 用のバックエンドを作成します。適切なバックエンドが存在しない場合は null を返します。

[static] bool QSensorManager::isBackendRegistered(const QByteArray &type, const QByteArray &identifier)

typeidentifier で指定したバックエンドが登録されていれば true を返します。

これは、動的な登録を行うプラグインを助ける便利なメソッドです。

[static] void QSensorManager::registerBackend(const QByteArray &type, const QByteArray &identifier, QSensorBackendFactory *factory)

type にセンサーを登録する。identifier は一意でなければならない。

factory はバックエンドのインスタンスを作成するために要求される。

generic またはdummy で始まるセンサ識別子は、他のセンサが見つかった場合、デフォルトセンサを選択する際の優先順位が低くなります。

[static] void QSensorManager::setDefaultBackend(const QByteArray &type, const QByteArray &identifier)

センサーtype をバックエンドidentifier で設定または上書きする。

[static] void QSensorManager::unregisterBackend(const QByteArray &type, const QByteArray &identifier)

identifiertype のバックエンドの登録を解除する。

これはバックエンドの新しいインスタンスが作成されるのを防ぐだけであることに注意してください。バックエンドの既存のインスタンスが無効になるわけではない。バックエンドのコードは、基盤となるハードウェア自体の消滅を処理する必要があります。

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.