QModbusReply Class
La clase QModbusReply contiene los datos para una solicitud enviada con una clase derivada QModbusClient. Más...
| Cabecera: | #include <QModbusReply> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS SerialBus)target_link_libraries(mytarget PRIVATE Qt6::SerialBus) |
| qmake: | QT += serialbus |
| Hereda: | QObject |
Tipos Públicos
| enum | ReplyType { Raw, Common, Broadcast } |
Funciones Públicas
| 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 |
Señales
| void | errorOccurred(QModbusDevice::Error error) |
| void | finished() |
Documentación de los tipos de miembros
enum QModbusReply::ReplyType
Este enum describe el tipo de respuesta posible.
| Constante | Valor | Descripción |
|---|---|---|
QModbusReply::Raw | 0 | La respuesta se origina a partir de una solicitud Modbus sin procesar. Véase QModbusClient::sendRawRequest |
QModbusReply::Common | 1 | La respuesta se origina a partir de una solicitud común de lectura, escritura o lectura/escritura. Véase QModbusClient::sendReadRequest, QModbusClient::sendWriteRequest y QModbusClient::sendReadWriteRequest |
QModbusReply::Broadcast | 2 | La respuesta se origina a partir de una solicitud de difusión Modbus. La función serverAddress() devolverá 0 y la señal finished() se emitirá inmediatamente. |
Documentación de las funciones miembro
QModbusReply::QModbusReply(QModbusReply::ReplyType type, int serverAddress, QObject *parent = nullptr)
Construye un objeto QModbusReply con un type dado y el parent especificado.
La respuesta se enviará al cliente Modbus representado por serverAddress.
QModbusDevice::Error QModbusReply::error() const
Devuelve el estado de error de esta respuesta.
Véase también errorString() y errorOccurred().
[signal] void QModbusReply::errorOccurred(QModbusDevice::Error error)
Esta señal se emite cuando se ha detectado un error en el procesamiento de esta respuesta. Probablemente le seguirá la señal finished() .
El error se describirá mediante el código de error error. Si errorString no está vacío, contendrá una descripción textual del error. En caso de un QModbusDevice::ProtocolError se puede utilizar la función rawResult() para obtener la respuesta de excepción Modbus original para obtener el código de excepción.
Nota: No elimine este objeto de respuesta en la ranura conectada a esta señal. Utilice deleteLater() en su lugar.
Véase también error() y errorString().
QString QModbusReply::errorString() const
Devuelve la representación textual del estado de error de esta respuesta.
Si no se ha producido ningún error, devolverá una cadena vacía. Es posible que se haya producido un error que no tenga representación textual asociada, en cuyo caso también devolverá una cadena vacía.
Véase también error() y errorOccurred().
[signal] void QModbusReply::finished()
Esta señal se emite cuando la respuesta ha terminado de procesarse. La respuesta aún puede haber devuelto un error.
Una vez emitida esta señal, no habrá más actualizaciones de los datos de la respuesta.
Nota: No elimine el objeto de la ranura conectada a esta señal. Utilice deleteLater().
También puede utilizar isFinished() para comprobar si una QNetworkReply ha finalizado incluso antes de recibir la señal finished().
Véase también isFinished() y error().
[since 6.0] QList<QModbusDevice::IntermediateError> QModbusReply::intermediateErrors() const
Devuelve la lista de errores intermedios que han podido ocurrir durante el ciclo envío-recepción de una petición Modbus hasta que QModbusReply informa de que ha finalizado.
Esta función se introdujo en Qt 6.0.
bool QModbusReply::isFinished() const
Devuelve true cuando la respuesta ha finalizado o ha sido abortada.
Véase también finished() y error().
QModbusResponse QModbusReply::rawResult() const
Devuelve la respuesta sin procesar de una solicitud Modbus.
Si la solicitud no ha finalizado, la instancia QModbusResponse devuelta no es válida.
Véase también type() y result().
QModbusDataUnit QModbusReply::result() const
Devuelve el resultado preprocesado de una petición Modbus.
Para peticiones de lectura así como peticiones combinadas de lectura/escritura enviadas a través de QModbusClient::sendReadWriteRequest() contiene los valores leídos de la instancia del servidor.
Si la petición no ha finalizado, ha fallado con un error o era una petición de escritura entonces la instancia QModbusDataUnit devuelta no es válida.
Nota: Si el type() de la respuesta es QModbusReply::Broadcast, el valor devuelto siempre será inválido. Si el type() de la respuesta es QModbusReply::Raw, el valor de retorno puede ser inválido dependiendo de la implementación de QModbusClient::processPrivateResponse().
Véase también type(), rawResult(), y QModbusClient::processPrivateResponse().
int QModbusReply::serverAddress() const
Devuelve la dirección del servidor al que se dirige este objeto de respuesta.
QModbusReply::ReplyType QModbusReply::type() const
Devuelve el tipo de la respuesta.
Nota: Si el tipo de la respuesta es QModbusReply::Raw, el valor de retorno de result() siempre será inválido.
© 2026 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.