CuteHMI - Modbus (CuteHMI.Modbus.4)
cutehmi::modbus::DummyClient Class Reference

Dummy client. More...

#include <cutehmi/modbus/DummyClient.hpp>

Inheritance diagram for cutehmi::modbus::DummyClient:
cutehmi::modbus::AbstractClient cutehmi::modbus::AbstractDevice QObject cutehmi::services::Serviceable CuteHMI::Modbus::DummyClient

Public Slots

void open () override
 
void close () override
 
- Public Slots inherited from cutehmi::modbus::AbstractDevice
virtual void open ()=0
 
virtual void close ()=0
 

Signals

void connectLatencyChanged ()
 
void disconnectLatencyChanged ()
 
void latencyChanged ()
 
- Signals inherited from cutehmi::modbus::AbstractClient
void pollingIntervalChanged ()
 
void pollingTaskIntervalChanged ()
 
void requestIntervalChanged ()
 
void timeoutChanged ()
 
- Signals inherited from cutehmi::modbus::AbstractDevice
void errored (cutehmi::InplaceError error)
 
void stateChanged ()
 
void readyChanged ()
 
void maxReadCoilsChanged ()
 
void maxWriteCoilsChanged ()
 
void maxReadDiscreteInputsChanged ()
 
void maxWriteDiscreteInputsChanged ()
 
void maxReadHoldingRegistersChanged ()
 
void maxWriteHoldingRegistersChanged ()
 
void maxReadInputRegistersChanged ()
 
void maxWriteInputRegistersChanged ()
 
void maxRequestsChanged ()
 
void requestCompleted (QJsonObject request, QJsonObject reply)
 

Public Member Functions

 DummyClient (QObject *parent=nullptr)
 
 ~DummyClient () override
 
int connectLatency () const
 
void setConnectLatency (int connectLatency)
 
int disconnectLatency () const
 
void setDisconnectLatency (int disconnectLatency)
 
int latency () const
 
void setLatency (int latency)
 
int timeout () const override
 
void setTimeout (int timeout) override
 
- Public Member Functions inherited from cutehmi::modbus::AbstractClient
int pollingInterval () const
 
void setPollingInterval (int interval)
 
int pollingTaskInterval () const
 
void setPollingTaskInterval (int interval)
 
int requestInterval () const
 
void setRequestInterval (int interval)
 
virtual int timeout () const =0
 
virtual void setTimeout (int timeout)=0
 
void configureStarting (QState *starting, AssignStatusFunction assignStatus) override
 
void configureStarted (QState *active, const QState *idling, const QState *yielding, AssignStatusFunction assignStatus) override
 
void configureStopping (QState *stopping, AssignStatusFunction assignStatus) override
 
void configureBroken (QState *broken, AssignStatusFunction assignStatus) override
 
void configureRepairing (QState *repairing, AssignStatusFunction assignStatus) override
 
void configureEvacuating (QState *evacuating, AssignStatusFunction assignStatus) override
 
std::unique_ptr< QAbstractTransitiontransitionToStarted () const override
 
std::unique_ptr< QAbstractTransitiontransitionToStopped () const override
 
std::unique_ptr< QAbstractTransitiontransitionToBroken () const override
 
std::unique_ptr< QAbstractTransitiontransitionToYielding () const override
 
std::unique_ptr< QAbstractTransitiontransitionToIdling () const override
 
- Public Member Functions inherited from cutehmi::modbus::AbstractDevice
State state () const
 
bool ready () const
 Get readiness status. More...
 
int maxReadCoils () const
 
void setMaxReadCoils (int maxReadCoils)
 
int maxWriteCoils () const
 
void setMaxWriteCoils (int maxWriteCoils)
 
int maxReadDiscreteInputs () const
 
void setMaxReadDiscreteInputs (int maxReadDiscreteInputs)
 
int maxWriteDiscreteInputs () const
 
void setMaxWriteDiscreteInputs (int maxWriteDiscreteInputs)
 
int maxReadHoldingRegisters () const
 
void setMaxReadHoldingRegisters (int maxReadHoldingRegisters)
 
int maxWriteHoldingRegisters () const
 
void setMaxWriteHoldingRegisters (int maxWriteHoldingRegisters)
 
int maxReadInputRegisters () const
 
void setMaxReadInputRegisters (int maxReadInputRegisters)
 
int maxWriteInputRegisters () const
 
void setMaxWriteInputRegisters (int maxWriteInputRegisters)
 
int maxRequests () const
 
void setMaxRequests (int maxRequests)
 
CoilcoilAt (quint16 address)
 
DiscreteInputdiscreteInputAt (quint16 address)
 
HoldingRegisterholdingRegisterAt (quint16 address)
 
InputRegisterinputRegisterAt (quint16 address)
 
Q_INVOKABLE void requestReadCoils (quint16 address, quint16 amount=1, QUuid *requestId=nullptr)
 Read coils request. More...
 
Q_INVOKABLE void requestWriteCoil (quint16 address, bool value, QUuid *requestId=nullptr)
 Write coils request. More...
 
Q_INVOKABLE void requestWriteMultipleCoils (quint16 address, QJsonArray values, QUuid *requestId=nullptr)
 Write multiple coils request. More...
 
Q_INVOKABLE void requestReadDiscreteInputs (quint16 address, quint16 amount=1, QUuid *requestId=nullptr)
 Read discrete inputs request. More...
 
Q_INVOKABLE void requestWriteDiscreteInput (quint16 address, bool value, QUuid *requestId=nullptr)
 Write discrete input request. More...
 
Q_INVOKABLE void requestWriteMultipleDiscreteInputs (quint16 address, QJsonArray values, QUuid *requestId=nullptr)
 Write multiple discrete inputs request. More...
 
Q_INVOKABLE void requestReadHoldingRegisters (quint16 address, quint16 amount=1, QUuid *requestId=nullptr)
 Read holding registers request. More...
 
Q_INVOKABLE void requestWriteHoldingRegister (quint16 address, quint16 value, QUuid *requestId=nullptr)
 Write holding register request. More...
 
Q_INVOKABLE void requestWriteMultipleHoldingRegisters (quint16 address, QJsonArray values, QUuid *requestId=nullptr)
 Write multiple holding registers request. More...
 
Q_INVOKABLE void requestReadInputRegisters (quint16 address, quint16 amount=1, QUuid *requestId=nullptr)
 Read input registers request. More...
 
Q_INVOKABLE void requestWriteInputRegister (quint16 address, quint16 value, QUuid *requestId=nullptr)
 Write input register request. More...
 
Q_INVOKABLE void requestWriteMultipleInputRegisters (quint16 address, QJsonArray values, QUuid *requestId=nullptr)
 Write multiple input registers request. More...
 
Q_INVOKABLE void requestDiagnostics (cutehmi::modbus::AbstractDevice::DiagnosticsSubfunction subfunction, quint16 data, QUuid *requestId=nullptr)
 Diagonistics request. More...
 
Q_INVOKABLE void requestReadExceptionStatus (QUuid *requestId=nullptr)
 Report slave id request. More...
 
Q_INVOKABLE void requestFetchCommEventCounter (QUuid *requestId=nullptr)
 Report slave id request. More...
 
Q_INVOKABLE void requestFetchCommEventLog (QUuid *requestId=nullptr)
 Report slave id request. More...
 
Q_INVOKABLE void requestReportSlaveId (QUuid *requestId=nullptr)
 Report slave id request. More...
 
Q_INVOKABLE void requestMaskWriteHoldingRegister (quint16 address, quint16 andMask, quint16 orMask, QUuid *requestId=nullptr)
 Mask write holding register request. More...
 
Q_INVOKABLE void requestReadWriteMultipleHoldingRegisters (quint16 readAddress, quint16 amount, quint16 writeAddress, QJsonArray values, QUuid *requestId=nullptr)
 Read/write multiple holding registers request. More...
 
Q_INVOKABLE void requestReadFIFOQueue (quint16 address, QUuid *requestId=nullptr)
 Read FIFO queue request. More...
 
Q_INVOKABLE QJsonObject readFileRecordSubrequest (quint16 file, quint16 address, quint16 amount)
 Generate read file record subrequest. More...
 
Q_INVOKABLE void requestReadFileRecord (QJsonArray subrequests, QUuid *requestId=nullptr)
 Read file record request. More...
 
Q_INVOKABLE QJsonObject writeFileRecordSubrequest (quint16 file, quint16 address, QJsonArray values)
 Generate write file record subrequest. More...
 
Q_INVOKABLE void requestWriteFileRecord (QJsonArray subrequests, QUuid *requestId=nullptr)
 Write file record request. More...
 
Q_INVOKABLE void request (cutehmi::modbus::AbstractDevice::Function function, QJsonObject payload, QUuid *requestId=nullptr)
 Modbus function request. More...
 
- Public Member Functions inherited from QObject
virtual const QMetaObjectmetaObject () const const
 
 QObject (QObject *parent)
 
virtual ~QObject ()
 
virtual bool event (QEvent *e)
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 
QString objectName () const const
 
void setObjectName (const QString &name)
 
bool isWidgetType () const const
 
bool isWindowType () const const
 
bool signalsBlocked () const const
 
bool blockSignals (bool block)
 
QThreadthread () const const
 
void moveToThread (QThread *targetThread)
 
int startTimer (int interval, Qt::TimerType timerType)
 
int startTimer (std::chrono::milliseconds time, Qt::TimerType timerType)
 
void killTimer (int id)
 
findChild (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QString &name, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegExp &regExp, Qt::FindChildOptions options) const const
 
QList< T > findChildren (const QRegularExpression &re, Qt::FindChildOptions options) const const
 
const QObjectListchildren () const const
 
void setParent (QObject *parent)
 
void installEventFilter (QObject *filterObj)
 
void removeEventFilter (QObject *obj)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *method, Qt::ConnectionType type) const const
 
bool disconnect (const char *signal, const QObject *receiver, const char *method) const const
 
bool disconnect (const QObject *receiver, const char *method) const const
 
void dumpObjectTree ()
 
void dumpObjectInfo ()
 
void dumpObjectTree () const const
 
void dumpObjectInfo () const const
 
bool setProperty (const char *name, const QVariant &value)
 
QVariant property (const char *name) const const
 
QList< QByteArraydynamicPropertyNames () const const
 
void destroyed (QObject *obj)
 
void objectNameChanged (const QString &objectName)
 
QObjectparent () const const
 
bool inherits (const char *className) const const
 
void deleteLater ()
 
 Q_DISABLE_COPY (Class)
 
 Q_DISABLE_MOVE (Class)
 
 Q_DISABLE_COPY_MOVE (Class)
 
qobject_cast (QObject *object)
 
qobject_cast (const QObject *object)
 
qFindChild (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QString &name)
 
QList< T > qFindChildren (const QObject *obj, const QRegExp &regExp)
 
 Q_CLASSINFO (Name, Value)
 
 Q_INTERFACES (...)
 
 Q_PROPERTY (...)
 
 Q_ENUMS (...)
 
 Q_FLAGS (...)
 
 Q_ENUM (...)
 
 Q_FLAG (...)
 
 Q_ENUM_NS (...)
 
 Q_FLAG_NS (...)
 
 Q_OBJECT Q_OBJECT
 
 Q_GADGET Q_GADGET
 
 Q_NAMESPACE Q_NAMESPACE
 
 Q_NAMESPACE_EXPORT (EXPORT_MACRO)
 
 Q_SIGNALS Q_SIGNALS
 
 Q_SIGNAL Q_SIGNAL
 
 Q_SLOTS Q_SLOTS
 
 Q_SLOT Q_SLOT
 
 Q_EMIT Q_EMIT
 
 Q_INVOKABLE Q_INVOKABLE
 
 Q_REVISION Q_REVISION
 
 Q_SET_OBJECT_NAME (Object)
 
 QT_NO_NARROWING_CONVERSIONS_IN_CONNECT QT_NO_NARROWING_CONVERSIONS_IN_CONNECT
 
virtual void configureStarting (QState *starting, AssignStatusFunction assignStatus)=0
 
virtual void configureStarted (QState *active, const QState *idling, const QState *yielding, AssignStatusFunction assignStatus)=0
 
virtual void configureStopping (QState *stopping, AssignStatusFunction assignStatus)=0
 
virtual void configureBroken (QState *broken, AssignStatusFunction assignStatus)=0
 
virtual void configureRepairing (QState *repairing, AssignStatusFunction assignStatus)=0
 
virtual void configureEvacuating (QState *evacuating, AssignStatusFunction assignStatus)=0
 
virtual std::unique_ptr< QAbstractTransitiontransitionToStarted () const=0
 
virtual std::unique_ptr< QAbstractTransitiontransitionToStopped () const=0
 
virtual std::unique_ptr< QAbstractTransitiontransitionToBroken () const=0
 
virtual std::unique_ptr< QAbstractTransitiontransitionToYielding () const=0
 
virtual std::unique_ptr< QAbstractTransitiontransitionToIdling () const=0
 

Static Public Attributes

static constexpr int INITIAL_OPEN_LATENCY = internal::DummyClientConfig::INITIAL_OPEN_LATENCY
 
static constexpr int INITIAL_CLOSE_LATENCY = internal::DummyClientConfig::INITIAL_CLOSE_LATENCY
 
static constexpr int INITIAL_LATENCY = internal::DummyClientConfig::INITIAL_LATENCY
 
- Static Public Attributes inherited from cutehmi::modbus::AbstractClient
static constexpr int INITIAL_POLLING_INTERVAL = 250
 
static constexpr int INITIAL_POLLING_TASK_INTERVAL = 10
 
static constexpr int INITIAL_REQUEST_INTERVAL = 5
 
- Static Public Attributes inherited from cutehmi::modbus::AbstractDevice
static constexpr quint16 MIN_ADDRESS = 0
 
static constexpr quint16 MAX_ADDRESS = 65535
 
static constexpr int INITIAL_MAX_READ_COILS = 16
 
static constexpr int INITIAL_MAX_WRITE_COILS = 16
 
static constexpr int INITIAL_MAX_READ_DISCRETE_INPUTS = 16
 
static constexpr int INITIAL_MAX_WRITE_DISCRETE_INPUTS = 16
 
static constexpr int INITIAL_MAX_READ_HOLDING_REGISTERS = 16
 
static constexpr int INITIAL_MAX_WRITE_HOLDING_REGISTERS = 16
 
static constexpr int INITIAL_MAX_READ_INPUT_REGISTERS = 16
 
static constexpr int INITIAL_MAX_WRITE_INPUT_REGISTERS = 16
 
static constexpr int INITIAL_MAX_REQUESTS = 1000
 
static constexpr State INITIAL_STATE = CLOSED
 
static constexpr bool INITIAL_READY = false
 
static constexpr int MAX_READ_TCP_COILS = 1976
 Maximal amount of coils that can be read at once through TCP. More...
 
static constexpr int MAX_READ_RTU_COILS = 2008
 Maximal amount of coils that can be read at once through RTU. More...
 
static constexpr int MAX_WRITE_TCP_COILS = 1944
 Maximal amount of coils that can be written at once through TCP. More...
 
static constexpr int MAX_WRITE_RTU_COILS = 1976
 Maximal amount of coils that can be written at once through RTU. More...
 
static constexpr int MAX_READ_TCP_DISCRETE_INPUTS = 1976
 Maximal amount of discrete inputs that can be read at once through TCP. More...
 
static constexpr int MAX_READ_RTU_DISCRETE_INPUTS = 2008
 Maximal amount of discrete inputs that can be read at once through RTU. More...
 
static constexpr int MAX_READ_TCP_HOLDING_REGISTERS = 123
 Maximal amount of holding registers that can be read at once through TCP. More...
 
static constexpr int MAX_READ_RTU_HOLDING_REGISTERS = 125
 Maximal amount of holding registers that can be read at once through RTU. More...
 
static constexpr int MAX_WRITE_TCP_HOLDING_REGISTERS = 123
 Maximal amount of holding registers that can be written at once through TCP. More...
 
static constexpr int MAX_WRITE_RTU_HOLDING_REGISTERS = 125
 Maximal amount of holding registers that can be written at once through RTU. More...
 
static constexpr int MAX_READ_TCP_INPUT_REGISTERS = 123
 Maximal amount of input registers that can be read at once through TCP. More...
 
static constexpr int MAX_READ_RTU_INPUT_REGISTERS = 125
 Maximal amount of input registers that can be read at once through RTU. More...
 

Properties

int connectLatency
 
int disconnectLatency
 
int latency
 
- Properties inherited from cutehmi::modbus::AbstractClient
int pollingInterval
 Time interval between complete polling sequences [ms]. More...
 
int pollingTaskInterval
 Time interval between individual polling tasks [ms]. More...
 
int requestInterval
 Time interval between any individual requests [ms]. More...
 
int timeout
 Modbus response timeout [ms]. More...
 
- Properties inherited from cutehmi::modbus::AbstractDevice
State state
 
bool ready
 
int maxReadCoils
 
int maxWriteCoils
 
int maxReadDiscreteInputs
 
int maxWriteDiscreteInputs
 
int maxReadHoldingRegisters
 
int maxWriteHoldingRegisters
 
int maxReadInputRegisters
 
int maxWriteInputRegisters
 
int maxRequests
 
- Properties inherited from QObject
 objectName
 

Additional Inherited Members

- Public Types inherited from cutehmi::modbus::AbstractDevice
enum  State { OPENING , OPENED , CLOSING , CLOSED }
 
enum  Function {
  FUNCTION_INVALID = QModbusPdu::Invalid , FUNCTION_READ_COILS = QModbusPdu::ReadCoils , FUNCTION_READ_DISCRETE_INPUTS = QModbusPdu::ReadDiscreteInputs , FUNCTION_READ_HOLDING_REGISTERS = QModbusPdu::ReadHoldingRegisters ,
  FUNCTION_READ_INPUT_REGISTERS = QModbusPdu::ReadInputRegisters , FUNCTION_WRITE_COIL = QModbusPdu::WriteSingleCoil , FUNCTION_WRITE_HOLDING_REGISTER = QModbusPdu::WriteSingleRegister , FUNCTION_READ_EXCEPTION_STATUS = QModbusPdu::ReadExceptionStatus ,
  FUNCTION_DIAGNOSTICS = QModbusPdu::Diagnostics , FUNCTION_FETCH_COMM_EVENT_COUNTER = QModbusPdu::GetCommEventCounter , FUNCTION_FETCH_COMM_EVENT_LOG = QModbusPdu::GetCommEventLog , FUNCTION_WRITE_MULTIPLE_COILS = QModbusPdu::WriteMultipleCoils ,
  FUNCTION_WRITE_MULTIPLE_HOLDING_REGISTERS = QModbusPdu::WriteMultipleRegisters , FUNCTION_REPORT_SLAVE_ID = QModbusPdu::ReportServerId , FUNCTION_READ_FILE_RECORD = QModbusPdu::ReadFileRecord , FUNCTION_WRITE_FILE_RECORD = QModbusPdu::WriteFileRecord ,
  FUNCTION_MASK_WRITE_HOLDING_REGISTER = QModbusPdu::MaskWriteRegister , FUNCTION_READ_WRITE_MULTIPLE_HOLDING_REGISTERS = QModbusPdu::ReadWriteMultipleRegisters , FUNCTION_READ_FIFO_QUEUE = QModbusPdu::ReadFifoQueue , FUNCTION_UNDEFINED = QModbusPdu::UndefinedFunctionCode ,
  FUNCTION_WRITE_DISCRETE_INPUT , FUNCTION_WRITE_MULTIPLE_DISCRETE_INPUTS , FUNCTION_WRITE_INPUT_REGISTER , FUNCTION_WRITE_MULTIPLE_INPUT_REGISTERS ,
  FUNCTION_RAW
}
 
enum  DiagnosticsSubfunction : quint16 {
  DIAGNOSTICS_RETURN_QUERY_DATA = 0x00 , DIAGNOSTICS_RESTART_COMM_OPTION = 0x01 , DIAGNOSTICS_RETURN_DIAGNOSTICS_REGISTER = 0x02 , DIAGNOSTICS_CHANGE_ASCII_INPUT_DELIMITER = 0x03 ,
  DIAGNOSTICS_FORCE_LISTEN_ONLY_MODE = 0x04 , DIAGNOSTICS_CLEAR_COUNTERS_AND_DIAGNOSTICS_REGISTER = 0x0A , DIAGNOSTICS_RETURN_BUS_MESSAGE_COUNT = 0x0B , DIAGNOSTICS_RETURN_BUS_COMM_ERROR_COUNT = 0x0C ,
  DIAGNOSTICS_RETURN_BUS_EXCEPTION_ERROR_COUNT = 0x0D , DIAGNOSTICS_RETURN_SLAVE_MESSAGE_COUNT = 0x0E , DIAGNOSTICS_RETURN_SLAVE_NO_RESPONSE_COUNT = 0x0F , DIAGNOSTICS_RETURN_SLAVE_NAK_COUNT = 0x10 ,
  DIAGNOSTICS_RETURN_SLAVE_BUSY_COUNT = 0x11 , DIAGNOSTICS_RETURN_BUS_CHARACTER_OVERRUN_COUNT = 0x12 , DIAGNOSTICS_RETURN_IOP_OVERRUN_COUNT = 0x13 , DIAGNOSTICS_CLEAR_OVERRUN_COUNTER_AND_FLAG = 0x14 ,
  DIAGNOSTICS_GET_CLEAR_MODBUS_PLUS_STATISTICS = 0x15
}
 
- Public Types inherited from cutehmi::services::Serviceable
typedef std::function< void(QState &state, const QString &status)> AssignStatusFunction
 
- Static Public Member Functions inherited from QObject
QString tr (const char *sourceText, const char *disambiguation, int n)
 
QString trUtf8 (const char *sourceText, const char *disambiguation, int n)
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method, Qt::ConnectionType type)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, Functor functor)
 
QMetaObject::Connection connect (const QObject *sender, PointerToMemberFunction signal, const QObject *context, Functor functor, Qt::ConnectionType type)
 
bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *method)
 
bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method)
 
bool disconnect (const QMetaObject::Connection &connection)
 
bool disconnect (const QObject *sender, PointerToMemberFunction signal, const QObject *receiver, PointerToMemberFunction method)
 
- Public Attributes inherited from QObject
typedef QObjectList
 
- Protected Types inherited from cutehmi::modbus::AbstractDevice
typedef internal::RegisterTraits< internal::Coil >::Container CoilDataContainer
 
typedef internal::RegisterTraits< internal::DiscreteInput >::Container DiscreteInputDataContainer
 
typedef internal::RegisterTraits< internal::HoldingRegister >::Container HoldingRegisterDataContainer
 
typedef internal::RegisterTraits< internal::InputRegister >::Container InputRegisterDataContainer
 
- Protected Slots inherited from cutehmi::modbus::AbstractClient
virtual void onStateChanged ()
 
void poll ()
 
void pollingTask ()
 
- Protected Slots inherited from cutehmi::modbus::AbstractDevice
virtual void handleReply (QUuid requestId, QJsonObject reply)
 Reply handler. More...
 
void setState (cutehmi::modbus::AbstractDevice::State state)
 
void setReady (bool ready)
 
void handleError (cutehmi::InplaceError error)
 
- Protected Member Functions inherited from cutehmi::modbus::AbstractClient
 AbstractClient (QObject *parent=nullptr)
 
void handleRequest (const QJsonObject &request) override
 Handle request. More...
 
void handleReply (QUuid requestId, QJsonObject reply) override
 Reply handler. More...
 
Q_SIGNAL void requestAccepted (QJsonObject request)
 
Q_SIGNAL void pollingRequested ()
 
Q_SIGNAL void pollingFinished ()
 
Q_SIGNAL void pollingTaskRequested ()
 
Q_SIGNAL void pollingTaskFinished ()
 
- Protected Member Functions inherited from cutehmi::modbus::AbstractDevice
 AbstractDevice (QObject *parent=nullptr)
 
 ~AbstractDevice () override
 Destructor. More...
 
virtual void handleRequest (const QJsonObject &request)=0
 Handle request. More...
 
const CoilDataContainercoilData () const
 
CoilDataContainercoilData ()
 
const DiscreteInputDataContainerdiscreteInputData () const
 
DiscreteInputDataContainerdiscreteInputData ()
 
const HoldingRegisterDataContainerholdingRegisterData () const
 
HoldingRegisterDataContainerholdingRegisterData ()
 
const InputRegisterDataContainerinputRegisterData () const
 
InputRegisterDataContainerinputRegisterData ()
 
QJsonObject pendingRequest (QUuid requestId) const
 
QJsonObject takePendingRequest (QUuid requestId)
 
Q_SIGNAL void broke ()
 
Q_SIGNAL void stopped ()
 
Q_SIGNAL void started ()
 
- Protected Member Functions inherited from QObject
QObjectsender () const const
 
int senderSignalIndex () const const
 
int receivers (const char *signal) const const
 
bool isSignalConnected (const QMetaMethod &signal) const const
 
virtual void timerEvent (QTimerEvent *event)
 
virtual void childEvent (QChildEvent *event)
 
virtual void customEvent (QEvent *event)
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
- Protected Member Functions inherited from cutehmi::services::Serviceable
 Serviceable ()=default
 
virtual ~Serviceable ()=default
 
 Serviceable (const Serviceable &other)=default
 
Serviceableoperator= (const Serviceable &other)=default
 

Detailed Description

Dummy client.

Dummy client provides implementation of fake Modbus master (client) that connects to imaginary Modbus slave (server). Contrary to real client it can be forced to write to memory regions specified by Modbus protocol as read-only (discrete inputs and input registers). This class is useful when prototyping and testing behavior of client application as it can also emulate latency and it does not require running Modbus slave (server) to work with.

Constructor & Destructor Documentation

◆ DummyClient()

cutehmi::modbus::DummyClient::DummyClient ( QObject parent = nullptr)

◆ ~DummyClient()

cutehmi::modbus::DummyClient::~DummyClient ( )
override

Member Function Documentation

◆ close

void cutehmi::modbus::DummyClient::close ( )
overrideslot

◆ connectLatency()

int cutehmi::modbus::DummyClient::connectLatency ( ) const

◆ connectLatencyChanged

void cutehmi::modbus::DummyClient::connectLatencyChanged ( )
signal

◆ disconnectLatency()

int cutehmi::modbus::DummyClient::disconnectLatency ( ) const

◆ disconnectLatencyChanged

void cutehmi::modbus::DummyClient::disconnectLatencyChanged ( )
signal

◆ latency()

int cutehmi::modbus::DummyClient::latency ( ) const

◆ latencyChanged

void cutehmi::modbus::DummyClient::latencyChanged ( )
signal

◆ open

void cutehmi::modbus::DummyClient::open ( )
overrideslot

◆ setConnectLatency()

void cutehmi::modbus::DummyClient::setConnectLatency ( int  connectLatency)

◆ setDisconnectLatency()

void cutehmi::modbus::DummyClient::setDisconnectLatency ( int  disconnectLatency)

◆ setLatency()

void cutehmi::modbus::DummyClient::setLatency ( int  latency)

◆ setTimeout()

void cutehmi::modbus::DummyClient::setTimeout ( int  timeout)
overridevirtual

◆ timeout()

int cutehmi::modbus::DummyClient::timeout ( ) const
overridevirtual

Member Data Documentation

◆ INITIAL_CLOSE_LATENCY

constexpr int cutehmi::modbus::DummyClient::INITIAL_CLOSE_LATENCY = internal::DummyClientConfig::INITIAL_CLOSE_LATENCY
staticconstexpr

◆ INITIAL_LATENCY

constexpr int cutehmi::modbus::DummyClient::INITIAL_LATENCY = internal::DummyClientConfig::INITIAL_LATENCY
staticconstexpr

◆ INITIAL_OPEN_LATENCY

constexpr int cutehmi::modbus::DummyClient::INITIAL_OPEN_LATENCY = internal::DummyClientConfig::INITIAL_OPEN_LATENCY
staticconstexpr

Property Documentation

◆ connectLatency

int cutehmi::modbus::DummyClient::connectLatency
readwrite

◆ disconnectLatency

int cutehmi::modbus::DummyClient::disconnectLatency
readwrite

◆ latency

int cutehmi::modbus::DummyClient::latency
readwrite