Files
source/Multiplayer/raknet/RakThread.h
Wanne e383a4080c Updated RaknetLib.lib to version 3.4
Added all raknet headers for full raknet support
Added Testclass "TestCB.cpp" which is a test implementation for raknet plugin "File List Transfer". We will use this plugin for file transfer in multiplayer

git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@2638 3b4a5df2-a311-0410-b5c6-a8a6f20db521
2009-03-28 15:30:07 +00:00

41 lines
1.2 KiB
C++

#ifndef __RAK_THREAD_H
#define __RAK_THREAD_H
#if defined(_WIN32_WCE)
#include <windows.h>
#endif
namespace RakNet
{
/// To define a thread, use RAK_THREAD_DECLARATION(functionName);
#if defined(_WIN32_WCE)
#define RAK_THREAD_DECLARATION(functionName) DWORD WINAPI functionName(LPVOID arguments)
#elif defined(_WIN32)
#define RAK_THREAD_DECLARATION(functionName) unsigned __stdcall functionName( void* arguments )
#else
#define RAK_THREAD_DECLARATION(functionName) void* functionName( void* arguments )
#endif
class RakThread
{
public:
/// Create a thread, simplified to be cross platform without all the extra junk
/// To then start that thread, call RakCreateThread(functionName, arguments);
/// \param[in] start_address Function you want to call
/// \param[in] arglist Arguments to pass to the function
/// \return 0=success. >0 = error code
#if defined(_WIN32_WCE)
static int Create( LPTHREAD_START_ROUTINE start_address, void *arglist);
#elif defined(_WIN32)
static int Create( unsigned __stdcall start_address( void* ), void *arglist);
#else
static int Create( void* start_address( void* ), void *arglist);
#endif
};
}
#endif