PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
Loading...
Searching...
No Matches
profinet::StubRpcTransport Class Referencefinal

#include <stubRpcTransport.h>

+ Inheritance diagram for profinet::StubRpcTransport:
+ Collaboration diagram for profinet::StubRpcTransport:

Public Member Functions

Bytes SendReceive (const Bytes &request, std::chrono::milliseconds) override
 
void Send (const Bytes &data) override
 
void Open (const std::string &, std::uint16_t, bool=false) override
 Open the transport and configure the remote endpoint.
 
Bytes Receive (std::chrono::milliseconds, asio::ip::udp::endpoint &) override
 Wait for an incoming byte array and capture the sender's endpoint.
 
void SendTo (const Bytes &data, const asio::ip::udp::endpoint &) override
 Send a byte array of data to a specific remote asio endpoint.
 
void Close () noexcept override
 Close the transport.
 
- Public Member Functions inherited from profinet::rpc::IRpcTransport
virtual ~IRpcTransport ()=default
 

Public Attributes

std::vector< Bytes > requests
 
std::vector< Bytes > sends
 

Detailed Description

Definition at line 17 of file stubRpcTransport.h.

Member Function Documentation

◆ Close()

void profinet::StubRpcTransport::Close ( )
inlineoverridevirtualnoexcept

Close the transport.

Implements profinet::rpc::IRpcTransport.

Definition at line 79 of file stubRpcTransport.h.

◆ Open()

void profinet::StubRpcTransport::Open ( const std::string &  address,
std::uint16_t  port,
bool  isListener = false 
)
inlineoverridevirtual

Open the transport and configure the remote endpoint.

Parameters
addressRemote IPv4 address.
portRemote port.
isListener...

Implements profinet::rpc::IRpcTransport.

Definition at line 62 of file stubRpcTransport.h.

◆ Receive()

Bytes profinet::StubRpcTransport::Receive ( std::chrono::milliseconds  timeout,
asio::ip::udp::endpoint &  remoteEndpoint 
)
inlineoverridevirtual

Wait for an incoming byte array and capture the sender's endpoint.

Parameters
timeoutMaximum wait time.
remoteEndpointReceives the endpoint details of the sender.
Returns
Received datagram.

Implements profinet::rpc::IRpcTransport.

Definition at line 67 of file stubRpcTransport.h.

◆ Send()

void profinet::StubRpcTransport::Send ( const Bytes &  data)
inlineoverridevirtual

Implements profinet::rpc::IRpcTransport.

Definition at line 56 of file stubRpcTransport.h.

References sends.

◆ SendReceive()

◆ SendTo()

void profinet::StubRpcTransport::SendTo ( const Bytes &  data,
const asio::ip::udp::endpoint &  targetEndpoint 
)
inlineoverridevirtual

Send a byte array of data to a specific remote asio endpoint.

Parameters
dataDatagram to send.
targetEndpointDestination UDP endpoint.

Implements profinet::rpc::IRpcTransport.

Definition at line 73 of file stubRpcTransport.h.

References sends.

Member Data Documentation

◆ requests

std::vector<Bytes> profinet::StubRpcTransport::requests

Definition at line 83 of file stubRpcTransport.h.

Referenced by SendReceive().

◆ sends

std::vector<Bytes> profinet::StubRpcTransport::sends

Definition at line 84 of file stubRpcTransport.h.

Referenced by Send(), and SendTo().


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