F´ Flight Software - C/C++ Documentation NASA-v1.6.0
A framework for building embedded system applications to NASA flight quality standards.
Loading...
Searching...
No Matches
TcpServerSocket.hpp
Go to the documentation of this file.
1// ======================================================================
2// \title TcpServerSocket.hpp
3// \author mstarch
4// \brief hpp file for TcpServerSocket core implementation classes
5//
6// \copyright
7// Copyright 2009-2020, by the California Institute of Technology.
8// ALL RIGHTS RESERVED. United States Government Sponsorship
9// acknowledged.
10//
11// ======================================================================
12#ifndef DRV_TCPSERVER_TCPHELPER_HPP_
13#define DRV_TCPSERVER_TCPHELPER_HPP_
14
15#include <FpConfig.hpp>
16#include <Drv/Ip/IpSocket.hpp>
17#include <IpCfg.hpp>
18
19namespace Drv {
26class TcpServerSocket : public IpSocket {
27 public:
32
42
48 void shutdown();
49
50 PROTECTED:
63 I32 sendProtocol(const U8* const data, const U32 size);
70 I32 recvProtocol( U8* const data, const U32 size);
71 private:
72 NATIVE_INT_TYPE m_base_fd;
73};
74} // namespace Drv
75
76#endif /* DRV_TCPSERVER_TCPHELPER_HPP_ */
PlatformIntType NATIVE_INT_TYPE
Definition BasicTypes.h:51
uint8_t U8
8-bit unsigned integer
Definition BasicTypes.h:26
C++-compatible configuration header for fprime configuration.
Helper base-class for setting up Berkley sockets.
Definition IpSocket.hpp:45
Helper for setting up Tcp using Berkley sockets as a server.
TcpServerSocket()
Constructor for client socket tcp implementation.
void shutdown()
Shutdown client socket, and listening server socket.
I32 sendProtocol(const U8 *const data, const U32 size)
Protocol specific implementation of send. Called directly with retry from send.
SocketIpStatus startup()
Opens the server socket and listens, does not block.
SocketIpStatus openProtocol(NATIVE_INT_TYPE &fd)
Tcp specific implementation for opening a client socket connected to this server.
I32 recvProtocol(U8 *const data, const U32 size)
Protocol specific implementation of recv. Called directly with error handling from recv.
SocketIpStatus
Status enumeration for socket return values.
Definition IpSocket.hpp:23