1#ifndef IV_SRC_COMMS_IP_IPCOMMUNICATIONDRIVER_HPP_
2#define IV_SRC_COMMS_IP_IPCOMMUNICATIONDRIVER_HPP_
19 const std::set<iv::types::ipAddress> &validIPs);
Definition ICommunicationDriver.hpp:13
Definition IPCommunicationDriver.hpp:14
iv::comms::eResponse receive(std::vector< std::byte > &buffer, iv::types::ipAddress *ip, iv::types::ipPort *port)
Definition IPCommunicationDriver.cpp:190
iv::model::comms::net::eIpProtocolLayer m_protocolLayer
Definition IPCommunicationDriver.hpp:46
void configure(const iv::model::comms::NetworkData &commConfig) override
Definition IPCommunicationDriver.cpp:32
iv::comms::eResponse stop() override
Definition IPCommunicationDriver.cpp:172
std::set< std::string > m_validIPs
Definition IPCommunicationDriver.hpp:37
iv::comms::eResponse end() override
Definition IPCommunicationDriver.cpp:106
iv::comms::eResponse reconnect() override
Definition IPCommunicationDriver.cpp:113
iv::types::timestamp m_lastTimePacketReceived
Definition IPCommunicationDriver.hpp:42
bool isOnline() override
Definition IPCommunicationDriver.cpp:263
IPCommunicationDriver()=delete
iv::comms::ip::ITransportProtocol * m_socketOpt
Definition IPCommunicationDriver.hpp:51
std::mutex m_driverMutex
Definition IPCommunicationDriver.hpp:49
~IPCommunicationDriver() override
Definition IPCommunicationDriver.cpp:23
iv::types::ipPort m_port
Definition IPCommunicationDriver.hpp:39
iv::types::ipAddress m_ip
Definition IPCommunicationDriver.hpp:38
IPCommunicationDriver(const iv::model::comms::net::eIpProtocolLayer &protocolLayer, const iv::comms::ip::eIpNetworkRole &networkRole, const std::set< iv::types::ipAddress > &validIPs)
iv::comms::ip::eIpNetworkRole m_networkRole
Definition IPCommunicationDriver.hpp:47
iv::comms::eResponse init() override
Definition IPCommunicationDriver.cpp:95
uint64_t m_readingRetriesWithoutData
Definition IPCommunicationDriver.hpp:44
iv::comms::eResponse start() override
Definition IPCommunicationDriver.cpp:149
iv::comms::eResponse send(const std::vector< std::byte > &data, const iv::types::ipAddress &ip, iv::types::ipPort port)
Definition IPCommunicationDriver.cpp:244
Definition ITransportProtocol.hpp:13
eIpNetworkRole
Definition enums.hpp:8
eResponse
Definition enums.hpp:285
eIpProtocolLayer
Definition IpSettings.hpp:11
uint64_t timestamp
Definition types.hpp:21
uint16_t ipPort
Definition types.hpp:41
std::string ipAddress
Definition types.hpp:40
Definition NetworkData.hpp:18