moddef-cpp
Idiomatic C++ runtime for ModDef
Loading...
Searching...
No Matches
moddef::Transport Class Referenceabstract

Blocking register-level transport. More...

#include <transport.hpp>

Public Member Functions

virtual ~Transport ()=default
 
virtual Result< void > read_holding (std::uint16_t offset, std::span< std::uint16_t > out)=0
 
virtual Result< void > read_input (std::uint16_t offset, std::span< std::uint16_t > out)=0
 
virtual Result< void > read_coils (std::uint16_t offset, std::span< bool > out)=0
 
virtual Result< void > read_discrete (std::uint16_t offset, std::span< bool > out)=0
 
virtual Result< void > write_holding (std::uint16_t offset, std::span< const std::uint16_t > words)=0
 
virtual Result< void > write_coil (std::uint16_t offset, bool on)=0
 

Detailed Description

Blocking register-level transport.

Override the six methods over your Modbus stack. One in-flight request per transport is the caller's discipline — Modbus is a serial request/response channel.

Constructor & Destructor Documentation

◆ ~Transport()

virtual moddef::Transport::~Transport ( )
virtualdefault

Member Function Documentation

◆ read_holding()

virtual Result< void > moddef::Transport::read_holding ( std::uint16_t  offset,
std::span< std::uint16_t >  out 
)
pure virtual

◆ read_input()

virtual Result< void > moddef::Transport::read_input ( std::uint16_t  offset,
std::span< std::uint16_t >  out 
)
pure virtual

◆ read_coils()

virtual Result< void > moddef::Transport::read_coils ( std::uint16_t  offset,
std::span< bool >  out 
)
pure virtual

◆ read_discrete()

virtual Result< void > moddef::Transport::read_discrete ( std::uint16_t  offset,
std::span< bool >  out 
)
pure virtual

◆ write_holding()

virtual Result< void > moddef::Transport::write_holding ( std::uint16_t  offset,
std::span< const std::uint16_t >  words 
)
pure virtual

◆ write_coil()

virtual Result< void > moddef::Transport::write_coil ( std::uint16_t  offset,
bool  on 
)
pure virtual

The documentation for this class was generated from the following file: