|
PROFINET IO Controller Stack 1.0.0
Modern C++ implementation of a PROFINET IO Controller stack
|
#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 |
Definition at line 17 of file stubRpcTransport.h.
|
inlineoverridevirtualnoexcept |
Close the transport.
Implements profinet::rpc::IRpcTransport.
Definition at line 79 of file stubRpcTransport.h.
|
inlineoverridevirtual |
Open the transport and configure the remote endpoint.
| address | Remote IPv4 address. |
| port | Remote port. |
| isListener | ... |
Implements profinet::rpc::IRpcTransport.
Definition at line 62 of file stubRpcTransport.h.
|
inlineoverridevirtual |
Wait for an incoming byte array and capture the sender's endpoint.
| timeout | Maximum wait time. |
| remoteEndpoint | Receives the endpoint details of the sender. |
Implements profinet::rpc::IRpcTransport.
Definition at line 67 of file stubRpcTransport.h.
|
inlineoverridevirtual |
Implements profinet::rpc::IRpcTransport.
Definition at line 56 of file stubRpcTransport.h.
References sends.
|
inlineoverridevirtual |
Implements profinet::rpc::IRpcTransport.
Definition at line 21 of file stubRpcTransport.h.
References profinet::PNNRDData::actualCount, profinet::PNNRDData::argsLength, profinet::PNNRDData::argsMaximumStatus, profinet::PNIOCRBlockRes::BLOCK_TYPE, frameId, profinet::kInputFrameId, profinet::kOutputFrameId, profinet::PNIOCRBlockRes::kSize, profinet::PNRPCHeader::lengthOfBody, profinet::PNNRDData::maximumCount, profinet::PNNRDData::offset, profinet::PNRPCHeader::packetType, profinet::PNRPCHeader::Parse(), profinet::PNRPCHeader::payload, profinet::PNNRDData::payload, profinet::wire::PutU16(), profinet::wire::PutU8(), requests, profinet::PNRPCHeader::RESPONSE, profinet::PNRPCHeader::ToBytes(), profinet::PNNRDData::ToBytes(), profinet::rpc::VERSION_HIGH, and profinet::rpc::VERSION_LOW.
Here is the call graph for this function:
|
inlineoverridevirtual |
Send a byte array of data to a specific remote asio endpoint.
| data | Datagram to send. |
| targetEndpoint | Destination UDP endpoint. |
Implements profinet::rpc::IRpcTransport.
Definition at line 73 of file stubRpcTransport.h.
References sends.
| std::vector<Bytes> profinet::StubRpcTransport::requests |
Definition at line 83 of file stubRpcTransport.h.
Referenced by SendReceive().
| std::vector<Bytes> profinet::StubRpcTransport::sends |
Definition at line 84 of file stubRpcTransport.h.