26 : ByteStreamDriverModelComponentBase(compName),
30 ByteStreamDriverModelComponentBase::init(instance);
35 const U32 send_timeout_seconds,
36 const U32 send_timeout_microseconds) {
37 return m_socket.
configureSend(hostname, port, send_timeout_seconds, send_timeout_microseconds);
55 return allocate_out(0, 1024);
59 Drv::RecvStatus recvStatus = (status ==
SOCK_SUCCESS) ? RecvStatus::RECV_OK : RecvStatus::RECV_ERROR;
60 this->recv_out(0, buffer, recvStatus);
64 if (isConnected_ready_OutputPort(0)) {
76 deallocate_out(0, fwBuffer);
78 return SendStatus::SEND_RETRY;
80 return SendStatus::SEND_ERROR;
82 return SendStatus::SEND_OK;
87 return PollStatus::POLL_ERROR;
PlatformIntType NATIVE_INT_TYPE
C++-compatible configuration header for fprime configuration.
Helper base-class for setting up Berkley sockets.
SocketIpStatus send(const U8 *const data, const U32 size)
send data out the IP socket from the given buffer
supports a task to read a given socket adaptation
SocketIpStatus configureRecv(const char *hostname, const U16 port)
Configures the Udp receive settings but does not open the connection.
void sendBuffer(Fw::Buffer buffer, SocketIpStatus status)
sends a buffer to be filled with data
Fw::Buffer getBuffer()
returns a buffer to fill with data
IpSocket & getSocketHandler()
returns a reference to the socket handler
void connected()
called when the IPv4 system has been connected
Drv::PollStatus poll_handler(const NATIVE_INT_TYPE portNum, Fw::Buffer &fwBuffer)
not supported
~UdpComponentImpl()
Destroy the component.
UdpComponentImpl(const char *const compName)
construct the TcpClient component.
void init(const NATIVE_INT_TYPE instance=0)
Initialize this component.
SocketIpStatus configureSend(const char *hostname, const U16 port, const U32 send_timeout_seconds=SOCKET_SEND_TIMEOUT_SECONDS, const U32 send_timeout_microseconds=SOCKET_SEND_TIMEOUT_MICROSECONDS)
Configures the Udp send settings but does not open the connection.
SocketIpStatus configureRecv(const char *hostname, const U16 port)
configure the udp socket for incoming transmissions
SocketIpStatus configureSend(const char *hostname, const U16 port, const U32 send_timeout_seconds, const U32 send_timeout_microseconds)
configure the udp socket for outgoing transmissions
SocketIpStatus
Status enumeration for socket return values.
@ SOCK_SUCCESS
Socket operation successful.
@ SOCK_DISCONNECTED
Failed to read socket with disconnect.
@ SOCK_INTERRUPTED_TRY_AGAIN
Interrupted status for retries.