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 runIoService ()
 
void runWatchdog ()
 

Private Attributes

std::array< uint8_t, MAX_UDP_PACKET_SIZEbuffer_
 
boost::asio::ip::udp::endpoint eP_
 
boost::asio::io_service ioService_
 
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 58 of file io.hpp.

Constructor & Destructor Documentation

◆ UdpClient()

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

Definition at line 61 of file io.hpp.

◆ ~UdpClient()

io::UdpClient::~UdpClient ( )
inline

Definition at line 69 of file io.hpp.

Member Function Documentation

◆ asyncReceive()

void io::UdpClient::asyncReceive ( )
inlineprivate

Definition at line 95 of file io.hpp.

◆ connect()

void io::UdpClient::connect ( )
inlineprivate

Definition at line 81 of file io.hpp.

◆ findNmeaEnd()

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

Definition at line 211 of file io.hpp.

◆ handleReceive()

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

Definition at line 105 of file io.hpp.

◆ runIoService()

void io::UdpClient::runIoService ( )
inlineprivate

Definition at line 187 of file io.hpp.

◆ runWatchdog()

void io::UdpClient::runWatchdog ( )
inlineprivate

Definition at line 193 of file io.hpp.

Member Data Documentation

◆ buffer_

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

Definition at line 233 of file io.hpp.

◆ eP_

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

Definition at line 231 of file io.hpp.

◆ ioService_

boost::asio::io_service io::UdpClient::ioService_
private

Definition at line 228 of file io.hpp.

◆ ioThread_

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

Definition at line 229 of file io.hpp.

◆ node_

ROSaicNodeBase* io::UdpClient::node_
private

Pointer to the node.

Definition at line 225 of file io.hpp.

◆ port_

int16_t io::UdpClient::port_
private

Definition at line 227 of file io.hpp.

◆ running_

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

Definition at line 226 of file io.hpp.

◆ socket_

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

Definition at line 232 of file io.hpp.

◆ telegramQueue_

TelegramQueue* io::UdpClient::telegramQueue_
private

Definition at line 234 of file io.hpp.

◆ watchdogThread_

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

Definition at line 230 of file io.hpp.


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


septentrio_gnss_driver
Author(s): Tibor Dome
autogenerated on Wed Nov 22 2023 04:04:28