QModbusReply Class

QModbusReplyクラスは、QModbusClient 派生クラスで送信されたリクエストのデータを含みます。詳細...

ヘッダー #include <QModbusReply>
CMake: find_package(Qt6 REQUIRED COMPONENTS SerialBus)
target_link_libraries(mytarget PRIVATE Qt6::SerialBus)
qmake: QT += serialbus
継承: QObject

パブリックな型

enum ReplyType { Raw, Common, Broadcast }

パブリック関数

QModbusReply(QModbusReply::ReplyType type, int serverAddress, QObject *parent = nullptr)
QModbusDevice::Error error() const
QString errorString() const
(since 6.0) QList<QModbusDevice::IntermediateError> intermediateErrors() const
bool isFinished() const
QModbusResponse rawResult() const
QModbusDataUnit result() const
int serverAddress() const
QModbusReply::ReplyType type() const

シグナル

void errorOccurred(QModbusDevice::Error error)
void finished()

詳細説明

メンバー型ドキュメント

enum QModbusReply::ReplyType

この列挙型は、可能な応答タイプを記述する。

定数説明
QModbusReply::Raw0リプライは生の Modbus リクエストに由来します。参照QModbusClient::sendRawRequest
QModbusReply::Common1リプライは一般的なリード、ライト、リード/ライト・リクエストに由来します。QModbusClient::sendReadRequest,QModbusClient::sendWriteRequest を参照。QModbusClient::sendReadWriteRequest
QModbusReply::Broadcast2リプライは Modbus ブロードキャスト・リクエストに由来します。serverAddress() は0 を返し、finished() シグナルは即座に発せられます。

メンバー関数ドキュメント

QModbusReply::QModbusReply(QModbusReply::ReplyType type, int serverAddress, QObject *parent = nullptr)

与えられたtype と指定されたparent で QModbusReply オブジェクトを構築します。

リプライはserverAddress で表される Modbus クライアントに送信されます。

QModbusDevice::Error QModbusReply::error() const

このリプライのエラー状態を返す。

errorString() およびerrorOccurred()も参照

[signal] void QModbusReply::errorOccurred(QModbusDevice::Error error)

このシグナルは、このリプライの処理でエラーが検出されたときに発せられる。おそらくfinished() シグナルが続く。

エラーはエラーコードerror で示される。errorString が空でない場合、エラーのテキスト記述が含まれる。QModbusDevice::ProtocolError の場合、rawResult() 関数を使用して元の Modbus 例外応答を取得し、例外コードを取得できます。

注意:このシグナルに接続されたスロットでこの応答オブジェクトを削除しないでください。代わりにdeleteLater() を使用してください。

error() およびerrorString()も参照してください

QString QModbusReply::errorString() const

このリプライのエラー状態のテキスト表現を返します。

エラーが発生していない場合は空文字列を返します。関連するテキスト表現がないエラーが発生した可能性もあり、その場合はこれも空文字列を返します。

error() およびerrorOccurred()も参照

[signal] void QModbusReply::finished()

このシグナルは、リプライの処理が終了したときに発せられる。リプライはまだエラーで戻ってくるかもしれない。

このシグナルが発せられた後は、リプライのデータの更新は行われません。

注意: このシグナルに接続されているスロットのオブジェクトを削除しないでください。deleteLater() を使用してください。

また、isFinished ()を使用すると、finished() シグナルを受信する前でも、QNetworkReply が終了したかどうかを確認できます。

isFinished() およびerror()も参照してください

[since 6.0] QList<QModbusDevice::IntermediateError> QModbusReply::intermediateErrors() const

Modbus リクエストの送受信サイクル中に発生した可能性のある中間エラーのリストを、QModbusReply が終了を報告するまで返します。

この関数は Qt 6.0 で導入されました。

bool QModbusReply::isFinished() const

返信が終了または中止された場合、true を返す。

finished() およびerror()も参照のこと

QModbusResponse QModbusReply::rawResult() const

Modbus リクエストの生のレスポンスを返します。

リクエストが終了していない場合、返されるQModbusResponse インスタンスは無効です。

type() およびresult()も参照して ください。

QModbusDataUnit QModbusReply::result() const

Modbus リクエストの前処理結果を返します。

QModbusClient::sendReadWriteRequest() 経由で送信された読み取り/書き込み要求と同様に、読み取り要求の場合、サーバ・インスタンスから読み取られた値が含まれます。

要求が終了していない場合、エラーで失敗した場合、または書き込み要求であった場合、返されるQModbusDataUnit インスタンスは無効です。

注意: リプライのtype()がQModbusReply::Broadcast の場合、返される値は常に無効である。リプライのtype()がQModbusReply::Raw の場合、QModbusClient::processPrivateResponse()の実装によっては、返り値が無効になる可能性がある。

type ()、rawResult ()、QModbusClient::processPrivateResponse)も参照

int QModbusReply::serverAddress() const

このリプライオブジェクトが対象とするサーバーアドレスを返します。

QModbusReply::ReplyType QModbusReply::type() const

リプライのタイプを返す。

注釈 応答の型がQModbusReply::Raw の場合、result() の返り値は常に無効である。

result() およびrawResult()も参照

© 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.