modbus::request::illegal class

illegal request class

Encode, decode, and execute illegal request

Will return modbus illegal function exception

Base classes

class modbus::internal::request

Constructors, destructors, conversion operators

illegal(constants::function_code function = constants::function_code::min, std::uint16_t transaction = 0x00, std::uint8_t unit = 0x00) explicit noexcept

Public functions

auto encode() -> packet_t override
void decode(const packet_t& packet) override
auto response_size() const -> packet_t::size_type override
auto execute(table* data_table) -> internal::response::pointer override

Function documentation

modbus::request::illegal::illegal(constants::function_code function = constants::function_code::min, std::uint16_t transaction = 0x00, std::uint8_t unit = 0x00) explicit noexcept

Parameters
function modbus function
transaction transaction id
unit unit id

Illegal request constructor

packet_t modbus::request::illegal::encode() override

Returns packet format

Encode illegal request packet from given data

void modbus::request::illegal::decode(const packet_t& packet) override

Parameters
packet packet to decode
Returns packet format

Decode illegal request packet

packet_t::size_type modbus::request::illegal::response_size() const override

Returns response size

Get response size for error checking on client

internal::response::pointer modbus::request::illegal::execute(table* data_table) override

Parameters
data_table data table
Returns modbus response

Execute on data store / mapping