diff options
Diffstat (limited to 'src/UDPClient/UDPClient.h')
-rw-r--r-- | src/UDPClient/UDPClient.h | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/src/UDPClient/UDPClient.h b/src/UDPClient/UDPClient.h new file mode 100644 index 0000000..f6cf0d6 --- /dev/null +++ b/src/UDPClient/UDPClient.h @@ -0,0 +1,44 @@ +/* + * http://linux.m2osw.com/c-implementation-udp-clientserver + * + * UDPSender.h + * + * Created on: 29.06.2016 + * Author: Tobias Frust + */ + +#ifndef UDPCLIENT_H_ +#define UDPCLIENT_H_ + +#include <sys/types.h> +#include <sys/socket.h> +#include <netdb.h> +#include <stdexcept> +#include <cstring> + +class udp_client_server_runtime_error : public std::runtime_error +{ +public: + udp_client_server_runtime_error(const char *w) : std::runtime_error(w) {} +}; + + +class UDPClient { +public: + UDPClient(const std::string& addr, int port); + ~UDPClient(); + + int get_socket() const; + int get_port() const; + std::string get_addr() const; + + int send(const char *msg, size_t size); + +private: + int f_socket; + int f_port; + std::string f_addr; + struct addrinfo * f_addrinfo; +}; + +#endif /* UDPCLIENT_H_ */ |