2013-11-25 11:39:38 +01:00
|
|
|
#ifndef NETWORK_DEPENDENCIES_CONNECTION_H
|
|
|
|
#define NETWORK_DEPENDENCIES_CONNECTION_H
|
|
|
|
|
2013-11-19 12:38:13 +01:00
|
|
|
//////////////////////////////////
|
|
|
|
// Created by Sam Svensson 2013 //
|
|
|
|
//////////////////////////////////
|
|
|
|
|
|
|
|
#include "IConnection.h"
|
2013-11-27 11:01:22 +01:00
|
|
|
#include "../NetworkDependencies/OysterByte.h"
|
2013-11-19 12:38:13 +01:00
|
|
|
|
2013-11-21 13:40:52 +01:00
|
|
|
namespace Oyster
|
2013-11-19 12:38:13 +01:00
|
|
|
{
|
2013-11-21 13:40:52 +01:00
|
|
|
namespace Network
|
|
|
|
{
|
|
|
|
class Connection : public IConnection
|
|
|
|
{
|
|
|
|
|
|
|
|
public:
|
2013-11-28 16:14:42 +01:00
|
|
|
Connection() { this->socket = 0; };
|
|
|
|
Connection( int socket ) { this->socket = socket; };
|
2013-11-25 11:39:38 +01:00
|
|
|
virtual ~Connection();
|
2013-11-21 13:40:52 +01:00
|
|
|
|
2013-11-29 09:18:58 +01:00
|
|
|
|
2013-11-26 13:45:03 +01:00
|
|
|
virtual int InitiateServer( unsigned short port );
|
|
|
|
virtual int InitiateClient();
|
2013-11-22 08:54:26 +01:00
|
|
|
|
2013-11-27 11:28:11 +01:00
|
|
|
virtual int Send( OysterByte& bytes );
|
2013-11-27 11:01:22 +01:00
|
|
|
virtual int Recieve( OysterByte& bytes );
|
2013-11-22 08:54:26 +01:00
|
|
|
|
2013-11-26 13:45:03 +01:00
|
|
|
virtual int Disconnect();
|
|
|
|
virtual int Connect( unsigned short port , const char serverName[] );
|
2013-11-29 09:18:58 +01:00
|
|
|
|
2013-11-21 13:40:52 +01:00
|
|
|
virtual int Listen();
|
|
|
|
|
|
|
|
private:
|
2013-11-27 11:28:11 +01:00
|
|
|
int InitiateSocket();
|
2013-11-28 16:14:42 +01:00
|
|
|
void SetBlockingMode( bool blocking );
|
2013-11-25 14:03:32 +01:00
|
|
|
|
2013-11-25 11:39:38 +01:00
|
|
|
int socket;
|
2013-11-21 13:40:52 +01:00
|
|
|
|
|
|
|
};
|
|
|
|
}
|
|
|
|
}
|
2013-11-19 12:38:13 +01:00
|
|
|
|
|
|
|
#endif
|