QModbusDeviceIdentification Class
QModbusDeviceIdentificationは、Modbusサーバの物理的および機能的な記述を表すコンテナ・クラスです。詳細...
Header: | #include <QModbusDeviceIdentification> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS SerialBus) target_link_libraries(mytarget PRIVATE Qt6::SerialBus) |
qmake: | QT += serialbus |
パブリック・タイプ
enum | ConformityLevel { BasicConformityLevel, RegularConformityLevel, ExtendedConformityLevel, BasicIndividualConformityLevel, RegularIndividualConformityLevel, ExtendedIndividualConformityLevel } |
enum | ObjectId { VendorNameObjectId, ProductCodeObjectId, MajorMinorRevisionObjectId, VendorUrlObjectId, ProductNameObjectId, …, UndefinedObjectId } |
enum | ReadDeviceIdCode { BasicReadDeviceIdCode, RegularReadDeviceIdCode, ExtendedReadDeviceIdCode, IndividualReadDeviceIdCode } |
パブリック関数
QModbusDeviceIdentification() | |
QModbusDeviceIdentification::ConformityLevel | conformityLevel() const |
bool | contains(uint objectId) const |
bool | insert(uint objectId, const QByteArray &value) |
bool | isValid() const |
QList<int> | objectIds() const |
void | remove(uint objectId) |
void | setConformityLevel(QModbusDeviceIdentification::ConformityLevel level) |
QByteArray | value(uint objectId) const |
静的パブリック・メンバー
QModbusDeviceIdentification | fromByteArray(const QByteArray &ba) |
詳細説明
デバイス識別インターフェイスは、アドレス指定可能なデータ要素の集合からなるアドレス空間としてモデル化される。データ要素はオブジェクトと呼ばれ、ObjectId がそれらを識別します。
メンバ型 ドキュメンテーション
enum QModbusDeviceIdentification::ConformityLevel
デバイスの識別適合レベルとサポートされるアクセスのタイプを定義します。
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::BasicConformityLevel | 0x01 | 基本識別(ストリーム・アクセス)。 |
QModbusDeviceIdentification::RegularConformityLevel | 0x02 | 通常の識別(ストリーム・アクセス)。 |
QModbusDeviceIdentification::ExtendedConformityLevel | 0x03 | 拡張識別(ストリームアクセス)。 |
QModbusDeviceIdentification::BasicIndividualConformityLevel | 0x81 | 基本識別(ストリームアクセスと個別アクセス)。 |
QModbusDeviceIdentification::RegularIndividualConformityLevel | 0x82 | 通常識別(ストリーム・アクセスおよび個人アクセス)。 |
QModbusDeviceIdentification::ExtendedIndividualConformityLevel | 0x83 | 拡張識別(ストリームアクセスと個別アクセス)。 |
ReadDeviceIdCodeも参照のこと 。
enum QModbusDeviceIdentification::ObjectId
この列挙型は、使用可能なサーバーオブジェクトを記述する。このインターフェースは、3つのカテゴリーのオブジェクトで構成される:
基本デバイス識別。このカテゴリのオブジェクトはすべて必須である。
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::VendorNameObjectId | 0x00 | デバイスのベンダー名。 |
QModbusDeviceIdentification::ProductCodeObjectId | 0x01 | デバイスの製品コード。 |
QModbusDeviceIdentification::MajorMinorRevisionObjectId | 0x02 | 製品バージョン番号。 |
通常のデバイス識別。このカテゴリのオブジェクトはすべて標準定義で、オプションです。
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::VendorUrlObjectId | 0x03 | デバイスのベンダー URL。 |
QModbusDeviceIdentification::ProductNameObjectId | 0x04 | デバイスの製品名。 |
QModbusDeviceIdentification::ModelNameObjectId | 0x05 | デバイスのモデル名。 |
QModbusDeviceIdentification::UserApplicationNameObjectId | 0x06 | デバイスのユーザー・アプリケーション名。 |
予約範囲 (ReservedObjectId >= ObjectId < ProductDependentObjectId)。使用しないでください。
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::ReservedObjectId | 0x07 | 予約オブジェクト ID の最初の値。 |
拡張デバイス識別。これらのデータはすべてデバイスに依存し、オプションです。
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::ProductDependentObjectId | 0x80 | 製品依存識別子の最初に取り得る値。 |
QModbusDeviceIdentification::UndefinedObjectId | 0x100 | 使用しないでください。 |
enum QModbusDeviceIdentification::ReadDeviceIdCode
読み取り識別要求のアクセスタイプを定義します。
ストリーム・アクセス:
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::BasicReadDeviceIdCode | 0x01 | 基本デバイス識別の取得要求。 |
QModbusDeviceIdentification::RegularReadDeviceIdCode | 0x02 | 通常デバイス識別の取得要求。 |
QModbusDeviceIdentification::ExtendedReadDeviceIdCode | 0x03 | 拡張デバイス識別の取得要求。 |
個別アクセス:
定数 | 値 | 説明 |
---|---|---|
QModbusDeviceIdentification::IndividualReadDeviceIdCode | 0x04 | 特定の識別オブジェクトの取得要求。 |
メンバー関数説明
[constexpr noexcept]
QModbusDeviceIdentification::QModbusDeviceIdentification()
無効な QModbusDeviceIdentification オブジェクトを構築します。
QModbusDeviceIdentification::ConformityLevel QModbusDeviceIdentification::conformityLevel() const
デバイスの識別適合レベルとサポートされているアクセスのタイプを返します。
setConformityLevel()も参照してください 。
bool QModbusDeviceIdentification::contains(uint objectId) const
指定されたobjectId の項目がある場合はtrue
を返し、そうでない場合はfalse
を返す。
ObjectId も参照 。
[static]
QModbusDeviceIdentification QModbusDeviceIdentification::fromByteArray(const QByteArray &ba)
バイト配列ba をQModbusDeviceIdentification オブジェクトに変換する。
注意: :バイト配列の処理中に何らかのエラーが発生した場合、返されるオブジェクトは空であったり、無効であったりする可能性があります。
isValid()も参照 。
bool QModbusDeviceIdentification::insert(uint objectId, const QByteArray &value)
objectId と値value を持つ新しい項目を挿入します。すでにobjectId を持つ項目がある場合、その項目の値はvalue に置き換えられます。
value のサイズが 245 バイト未満で、objectId のサイズがQModbusDeviceIdentification::UndefinedObjectId よりも小さい場合、true
を返します。
ObjectIdも参照 。
bool QModbusDeviceIdentification::isValid() const
機器識別オブジェクトが有効であればtrue
を返し、そうでなければfalse
を返す。
ProductNameObjectId 、ProductCodeObjectId 、MajorMinorRevisionObjectId が空でない値に設定されている場合、デバイス識別オブジェクトは有効であるとみなされる。このオブジェクトは、有効なオブジェクト ID と関連データを含むことができます。
注意: デフォルトで構築された機器識別オブジェクトは無効です。
QList<int> QModbusDeviceIdentification::objectIds() const
QModbusDeviceIdentification
オブジェクト内のすべてのオブジェクト ID を昇順に含むリストを返します。
ObjectIdも参照してください 。
void QModbusDeviceIdentification::remove(uint objectId)
指定されたobjectId の項目を削除します。
ObjectIdも参照して ください。
void QModbusDeviceIdentification::setConformityLevel(QModbusDeviceIdentification::ConformityLevel level)
デバイスの識別適合レベルとサポートされているアクセスのタイプをlevel に設定します。
conformityLevel() も参照 。
QByteArray QModbusDeviceIdentification::value(uint objectId) const
objectId に関連付けられた値を返します。objectId に対応する項目がない場合、関数はデフォルトで構成された値を返します。
ObjectIdも参照して ください。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。