56 lines
1.0 KiB
C
56 lines
1.0 KiB
C
|
#ifndef NETWORK_API_NETWORK_SERVER_H
|
||
|
#define NETWORK_API_NETWORK_SERVER_H
|
||
|
|
||
|
/////////////////////////////////////
|
||
|
// Created by Pontus Fransson 2013 //
|
||
|
/////////////////////////////////////
|
||
|
|
||
|
#ifdef CUSTOM_NET_PROTOCOL_EXPORT
|
||
|
#define NET_PROTOCOL_EXPORT __declspec(dllexport)
|
||
|
#else
|
||
|
#define NET_PROTOCOL_EXPORT __declspec(dllimport)
|
||
|
#endif
|
||
|
|
||
|
#pragma comment(lib, "ws2_32.lib")
|
||
|
|
||
|
//#include "NetworkClient.h"
|
||
|
|
||
|
namespace Oyster
|
||
|
{
|
||
|
namespace Network
|
||
|
{
|
||
|
namespace Server
|
||
|
{
|
||
|
extern "C"
|
||
|
{
|
||
|
class NET_PROTOCOL_EXPORT NetworkServer
|
||
|
{
|
||
|
public:
|
||
|
class NetworkClient;
|
||
|
struct INIT_DESC
|
||
|
{
|
||
|
unsigned short port; //Port the server should be accepting clients on.
|
||
|
void (*proc)(NetworkClient*);
|
||
|
};
|
||
|
|
||
|
NetworkServer();
|
||
|
virtual ~NetworkServer();
|
||
|
|
||
|
virtual bool Init(INIT_DESC& initDesc);
|
||
|
virtual bool Start();
|
||
|
virtual bool Stop();
|
||
|
virtual bool Shutdown();
|
||
|
|
||
|
virtual bool IsStarted() const;
|
||
|
|
||
|
private:
|
||
|
struct PrivateData;
|
||
|
PrivateData* privateData;
|
||
|
|
||
|
};
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
#endif
|