aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorGravatar brain2008-02-21 21:41:20 +0000
committerGravatar brain2008-02-21 21:41:20 +0000
commit9bc734b739043f6cccbb0b400dae1dedcd52033e (patch)
tree557b1ff5aeaa9520e5544b163beaf6c14fe2dd19 /include
parentChange of configure message to plainer english as requested by voidzero (diff)
These are just copies of the pthread engine right now, will probably make them work tomorrow night
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8988 e03df62e-2008-0410-955e-edbf42e46eb7
Diffstat (limited to 'include')
-rw-r--r--include/threadengines/threadengine_win32.h58
1 files changed, 58 insertions, 0 deletions
diff --git a/include/threadengines/threadengine_win32.h b/include/threadengines/threadengine_win32.h
index e69de29bb..c426372a9 100644
--- a/include/threadengines/threadengine_win32.h
+++ b/include/threadengines/threadengine_win32.h
@@ -0,0 +1,58 @@
+/* +------------------------------------+
+ * | Inspire Internet Relay Chat Daemon |
+ * +------------------------------------+
+ *
+ * InspIRCd: (C) 2002-2008 InspIRCd Development Team
+ * See: http://www.inspircd.org/wiki/index.php/Credits
+ *
+ * This program is free but copyrighted software; see
+ * the file COPYING for details.
+ *
+ * ---------------------------------------------------
+ */
+
+#ifndef __THREADENGINE_PTHREAD__
+#define __THREADENGINE_PTHREAD__
+
+#include <pthread.h>
+#include "inspircd_config.h"
+#include "base.h"
+#include "threadengine.h"
+
+class InspIRCd;
+
+class CoreExport Win32ThreadEngine : public ThreadEngine
+{
+ public:
+
+ Win32ThreadEngine(InspIRCd* Instance);
+
+ virtual ~Win32ThreadEngine();
+
+ bool Mutex(bool enable);
+
+ void Run();
+
+ static void* Entry(void* parameter);
+
+ void Create(Thread* thread_to_init);
+
+ void FreeThread(Thread* thread);
+
+ const std::string GetName()
+ {
+ return "windows-thread";
+ }
+};
+
+class ThreadEngineFactory : public classbase
+{
+ public:
+ ThreadEngine* Create(InspIRCd* ServerInstance)
+ {
+ return new Win32ThreadEngine(ServerInstance);
+ }
+};
+
+#endif
+