NVIDIA DOCA SDK Data Center on a Chip Framework Documentation
storage::tcp_socket Class Reference

#include </opt/mellanox/doca/applications/storage/storage_common/tcp_socket.hpp>

Public Types

enum class  connection_status { connected = 0 , establishing , refused , failed }
 

Public Member Functions

 ~tcp_socket ()
 
 tcp_socket ()
 
 tcp_socket (uint32_t fd)
 
 tcp_socket (tcp_socket const &)=delete
 
 tcp_socket (tcp_socket &&other) noexcept
 
tcp_socketoperator= (tcp_socket const &)=delete
 
tcp_socketoperator= (tcp_socket &&other) noexcept
 
void set_blocking (bool blocking)
 
void close (void)
 
void connect (storage::ip_address const &address)
 
void listen (uint16_t port)
 
connection_status poll_is_connected (void)
 
tcp_socket accept (void)
 
size_t write (char const *buffer, size_t byte_count)
 
size_t read (char *buffer, size_t buffer_capacity)
 
bool is_valid (void) const noexcept
 

Detailed Description

Definition at line 41 of file tcp_socket.hpp.

Member Enumeration Documentation

◆ connection_status

Enumerator
connected 
establishing 
refused 
failed 

Definition at line 46 of file tcp_socket.hpp.

Constructor & Destructor Documentation

◆ ~tcp_socket()

storage::tcp_socket::~tcp_socket ( )

Definition at line 57 of file tcp_socket.cpp.

◆ tcp_socket() [1/4]

storage::tcp_socket::tcp_socket ( )

Definition at line 66 of file tcp_socket.cpp.

◆ tcp_socket() [2/4]

storage::tcp_socket::tcp_socket ( uint32_t  fd)
explicit

Definition at line 78 of file tcp_socket.cpp.

◆ tcp_socket() [3/4]

storage::tcp_socket::tcp_socket ( tcp_socket const &  )
delete

◆ tcp_socket() [4/4]

storage::tcp_socket::tcp_socket ( tcp_socket &&  other)
noexcept

Definition at line 86 of file tcp_socket.cpp.

Member Function Documentation

◆ accept()

tcp_socket storage::tcp_socket::accept ( void  )

Definition at line 245 of file tcp_socket.cpp.

◆ close()

void storage::tcp_socket::close ( void  )

Definition at line 123 of file tcp_socket.cpp.

◆ connect()

void storage::tcp_socket::connect ( storage::ip_address const &  address)

Definition at line 138 of file tcp_socket.cpp.

◆ is_valid()

bool storage::tcp_socket::is_valid ( void  ) const
noexcept

Definition at line 336 of file tcp_socket.cpp.

◆ listen()

void storage::tcp_socket::listen ( uint16_t  port)

Definition at line 172 of file tcp_socket.cpp.

◆ operator=() [1/2]

tcp_socket & storage::tcp_socket::operator= ( tcp_socket &&  other)
noexcept

Definition at line 91 of file tcp_socket.cpp.

◆ operator=() [2/2]

tcp_socket& storage::tcp_socket::operator= ( tcp_socket const &  )
delete

◆ poll_is_connected()

tcp_socket::connection_status storage::tcp_socket::poll_is_connected ( void  )

Definition at line 195 of file tcp_socket.cpp.

◆ read()

size_t storage::tcp_socket::read ( char *  buffer,
size_t  buffer_capacity 
)

Definition at line 305 of file tcp_socket.cpp.

◆ set_blocking()

void storage::tcp_socket::set_blocking ( bool  blocking)

Definition at line 102 of file tcp_socket.cpp.

◆ write()

size_t storage::tcp_socket::write ( char const *  buffer,
size_t  byte_count 
)

Definition at line 274 of file tcp_socket.cpp.


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