Newer
Older
/*
*
* Created on: Mar 1, 2021
* Author: astrisw
*/
#ifndef UDP_PROTOCOL_H_
#define UDP_PROTOCOL_H_
* Implementation of a UDP socket
* @member field fd_sock: socket file descriptor
* @member field sockaddr_in: struct of the client address.
*/
int srv_sock;
int cli_sock;
std::string ip{};
int port;
struct sockaddr_in cliaddr;
struct sockaddr_in srvaddr;
void split_ip_port(const std::string& ip_port, std::string& ip, std::string& port);
UDPProtocol(std::string ip, int prt);
UDPProtocol();
~UDPProtocol();
std::string getIp(){return ip;}
int getPort(){ return port;}
void setIp(std::string ip){ this->ip = ip;}
void setPort(int port){this->port = port;}
int connectToServer() override;
int connectToClient() override;
int closeConnectionToServer() override;
int closeConnectionToClient() override;
bool isConnectedToClient() const override;
bool isConnectedToServer() const override;
int receiveFromClient(PacketLib::BasePacket &) override;
int sendToServer(PacketLib::BasePacket &) override;