IOControl/include/IO/Modbus/Request.h
Go to the documentation of this file.
1 
22 #pragma once
23 
24 #include "../Request.h"
25 #include "Device.h"
26 #include "PDU.h"
27 
28 namespace IO
29 {
30 namespace Modbus
31 {
32 class Request : public IO::Request
33 {
34 public:
36  {
37  }
38 
39  const Device& getDevice() const
40  {
41  return reinterpret_cast<const Device&>(device);
42  }
43 
44  virtual Function fillRequestData(PDU::Data& data) = 0;
45 
52  virtual ErrorCode callback(PDU& pdu) = 0;
53 };
54 
55 } // namespace Modbus
56 } // namespace IO
Protocol Data Unit.
Definition: PDU.h:47
Function
Definition: IOControl/include/IO/Modbus/Function.h:47
Definition: IOControl/include/IO/Controller.h:25
A virtual device, represents a modbus slave device.
Definition: Libraries/IOControl/include/IO/Modbus/Device.h:40
Request(Device &device)
Definition: IOControl/include/IO/Modbus/Request.h:35
Request represents a single user request/response over a bus.
Definition: IOControl/include/IO/Request.h:75
const Device & getDevice() const
Definition: IOControl/include/IO/Modbus/Request.h:39
virtual Function fillRequestData(PDU::Data &data)=0
int16_t ErrorCode
Definition: Libraries/IOControl/include/IO/Error.h:27
Definition: IOControl/include/IO/Modbus/Request.h:32
Definition: PDU.h:54
Device & device
Definition: IOControl/include/IO/Request.h:259
virtual ErrorCode callback(PDU &pdu)=0
Process a received PDU.