Public Member Functions | Private Member Functions | Private Attributes | List of all members
io::UdpClient Class Reference

#include <io.hpp>

Public Member Functions

 UdpClient (ROSaicNodeBase *node, int16_t port, TelegramQueue *telegramQueue)
 
 ~UdpClient ()
 

Private Member Functions

void asyncReceive ()
 
void connect ()
 
size_t findNmeaEnd (size_t idx, size_t bytes_recvd)
 
void handleReceive (const boost::system::error_code &error, size_t bytes_recvd)
 
void runIoContext ()
 
void runWatchdog ()
 

Private Attributes

std::array< uint8_t, MAX_UDP_PACKET_SIZEbuffer_
 
boost::asio::ip::udp::endpoint eP_
 
boost::asio::io_context ioContext_
 
std::thread ioThread_
 
ROSaicNodeBasenode_
 Pointer to the node. More...
 
int16_t port_
 
std::atomic< bool > running_
 
std::unique_ptr< boost::asio::ip::udp::socket > socket_
 
TelegramQueuetelegramQueue_
 
std::thread watchdogThread_
 

Detailed Description

Definition at line 66 of file io.hpp.

Constructor & Destructor Documentation

◆ UdpClient()

io::UdpClient::UdpClient ( ROSaicNodeBase node,
int16_t  port,
TelegramQueue telegramQueue 
)
inline

Definition at line 69 of file io.hpp.

◆ ~UdpClient()

io::UdpClient::~UdpClient ( )
inline

Definition at line 77 of file io.hpp.

Member Function Documentation

◆ asyncReceive()

void io::UdpClient::asyncReceive ( )
inlineprivate

Definition at line 103 of file io.hpp.

◆ connect()

void io::UdpClient::connect ( )
inlineprivate

Definition at line 89 of file io.hpp.

◆ findNmeaEnd()

size_t io::UdpClient::findNmeaEnd ( size_t  idx,
size_t  bytes_recvd 
)
inlineprivate

Definition at line 219 of file io.hpp.

◆ handleReceive()

void io::UdpClient::handleReceive ( const boost::system::error_code &  error,
size_t  bytes_recvd 
)
inlineprivate

Definition at line 113 of file io.hpp.

◆ runIoContext()

void io::UdpClient::runIoContext ( )
inlineprivate

Definition at line 195 of file io.hpp.

◆ runWatchdog()

void io::UdpClient::runWatchdog ( )
inlineprivate

Definition at line 201 of file io.hpp.

Member Data Documentation

◆ buffer_

std::array<uint8_t, MAX_UDP_PACKET_SIZE> io::UdpClient::buffer_
private

Definition at line 241 of file io.hpp.

◆ eP_

boost::asio::ip::udp::endpoint io::UdpClient::eP_
private

Definition at line 239 of file io.hpp.

◆ ioContext_

boost::asio::io_context io::UdpClient::ioContext_
private

Definition at line 236 of file io.hpp.

◆ ioThread_

std::thread io::UdpClient::ioThread_
private

Definition at line 237 of file io.hpp.

◆ node_

ROSaicNodeBase* io::UdpClient::node_
private

Pointer to the node.

Definition at line 233 of file io.hpp.

◆ port_

int16_t io::UdpClient::port_
private

Definition at line 235 of file io.hpp.

◆ running_

std::atomic<bool> io::UdpClient::running_
private

Definition at line 234 of file io.hpp.

◆ socket_

std::unique_ptr<boost::asio::ip::udp::socket> io::UdpClient::socket_
private

Definition at line 240 of file io.hpp.

◆ telegramQueue_

TelegramQueue* io::UdpClient::telegramQueue_
private

Definition at line 242 of file io.hpp.

◆ watchdogThread_

std::thread io::UdpClient::watchdogThread_
private

Definition at line 238 of file io.hpp.


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


septentrio_gnss_driver
Author(s): Tibor Dome, Thomas Emter
autogenerated on Sat May 10 2025 03:03:11