#ifndef _TCP_STREAM_HPP_
#define _TCP_STREAM_HPP_
#ifdef _WIN32
#ifndef _WIN32_WINNT
#define _WIN32_WINNT 0x0501
#endif
#include <Ws2tcpip.h>
#include <winsock2.h>
#else
#include <arpa/inet.h>
#include <netdb.h>
#include <netinet/tcp.h>
#include <sys/socket.h>
#include <unistd.h>
typedef int SOCKET;
#endif
#include "Stream.hpp"
#include <memory>
#include <string>
class TcpStream {
public:
TcpStream(const std::string& host, int port);
SOCKET sock;
};
std::shared_ptr<InputStream>
getInputStream(std::shared_ptr<TcpStream> tcpStream);
std::shared_ptr<OutputStream>
getOutputStream(std::shared_ptr<TcpStream> tcpStream);
#endif