This flow renders outgoing OpenLCB messages to their TCP stream representation.
More...
#include <IfTcpImpl.hxx>
|
| typedef Base::Action | Action |
| | Allows using Action without having StateFlowBase:: prefix in front of it.
|
| |
| typedef MessageType | message_type |
| | Stores the message template type for external reference.
|
| |
| static MessageType * | cast_alloc (QMember *entry) |
| | Down casts and initializes an asynchronous allocation result to the appropriate flow's buffer type.
|
| |
| void | release () OVERRIDE |
| | Unrefs the current buffer.
|
| |
| void | return_buffer () |
| | For state flows that are operated using invoke_subflow_and_wait this is a way to hand back the buffer to the caller.
|
| |
| MessageType * | message () |
| |
| MessageType * | transfer_message () |
| | Releases ownership of the current message.
|
| |
This flow renders outgoing OpenLCB messages to their TCP stream representation.
Definition at line 281 of file IfTcpImpl.hxx.
◆ TcpSendFlow()
Constructor.
- Parameters
-
| service | the owning TCP interface. |
| gateway_node_id | our own node ID that will be put into the gateway node ID field of outgoing TCP messages. |
| send_target | where to send rendered TCP messages (this is usually either the device FD flow or a hub with the binary rendered packets). |
| skip_member | outgoing packets will get their skipMember_ set to this value. Usually the matching read flow of the interface to avoid undesired echo. |
| sequence | how to generate sequence numbers for the outgoing packets. |
Definition at line 296 of file IfTcpImpl.hxx.
◆ entry()
| Action openlcb::TcpSendFlow::entry |
( |
| ) |
|
|
inlineoverrideprivatevirtual |
◆ get_gateway_node_id()
| NodeID openlcb::TcpSendFlow::get_gateway_node_id |
( |
| ) |
|
|
inline |
- Returns
- the node ID the gateway uses to set on outgoing messages.
Definition at line 308 of file IfTcpImpl.hxx.
◆ iface()
| If * openlcb::TcpSendFlow::iface |
( |
| ) |
|
|
inlineprivate |
◆ nmsg()
- Returns
- the abstract message we are trying to send.
Definition at line 355 of file IfTcpImpl.hxx.
◆ render_src_message()
| Action openlcb::TcpSendFlow::render_src_message |
( |
| ) |
|
|
inlineprivate |
Callback state after allocation succeeded.
Renders the message to binary payload into the allocated buffer, send the message and exits the processing.
- Returns
- back to the base state.
Definition at line 338 of file IfTcpImpl.hxx.
◆ gatewayId_
| NodeID openlcb::TcpSendFlow::gatewayId_ |
|
private |
Populated into the source gateway field of the outgoing messages.
Definition at line 371 of file IfTcpImpl.hxx.
◆ sendTarget_
Where to send the rendered messages to.
Definition at line 367 of file IfTcpImpl.hxx.
◆ sequenceNumberGenerator_
Responsible for generating the sequence numbers of the outgoing messages.
Definition at line 374 of file IfTcpImpl.hxx.
◆ skipMember_
This value will be populated to the skipMember_ field.
Definition at line 369 of file IfTcpImpl.hxx.
The documentation for this class was generated from the following file: