modbus::request::write_single_coil class

request write single coil class

Encode, decode, and execute write singe coil request

Structure: [ (Header...) ] [ Function (1 byte) ] [ Output Address (2 bytes) ] [ Output Value (2 bytes) ]

Base classes

class modbus::internal::request

Constructors, destructors, conversion operators

write_single_coil(const address_t& address = address_t{}, value::bits value = value::bits::on) explicit noexcept

Public functions

auto encode() -> packet_t override
void decode(const packet_t& data) override
auto execute(table* data_table) -> internal::response::pointer override
auto response_size() const -> packet_t::size_type override
auto dump(std::ostream& os) const -> std::ostream& override
auto address() const -> const address_t&
auto value() const -> value::bits

Function documentation

modbus::request::write_single_coil::write_single_coil(const address_t& address = address_t{}, value::bits value = value::bits::on) explicit noexcept

Parameters
address output address
value coil value

request::write_single_coil constructor

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

Returns packet format

Encode write single_coil packet from given data

void modbus::request::write_single_coil::decode(const packet_t& data) override

Parameters
data data to be appended
Returns packet format

Decode write single coil packet

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

Returns packet format

Encode write bits packet

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

Returns response size

Get response size for error checking on client

std::ostream& modbus::request::write_single_coil::dump(std::ostream& os) const override

Parameters
os ostream
Returns ostream

Dump to string

const address_t& modbus::request::write_single_coil::address() const

Returns address

Get address

value::bits modbus::request::write_single_coil::value() const

Returns value

Get value