add Windows version of shared memory, very basic implementation (only allows one single allocation)

This commit is contained in:
erwin coumans
2015-06-04 15:37:18 -07:00
parent f74e3782aa
commit a94ac6300a
6 changed files with 165 additions and 0 deletions

View File

@@ -0,0 +1,45 @@
#ifndef WIN32_SHARED_MEMORY_H
#define WIN32_SHARED_MEMORY_H
#include "SharedMemoryInterface.h"
class Win32SharedMemory : public SharedMemoryInterface
{
struct Win32SharedMemoryInteralData* m_internalData;
public:
Win32SharedMemory();
virtual ~Win32SharedMemory();
virtual void* allocateSharedMemory(int key, int size);
virtual void releaseSharedMemory(int key, int size);
virtual bool isServer() const = 0;
};
class Win32SharedMemoryServer : public Win32SharedMemory
{
public:
Win32SharedMemoryServer();
virtual ~Win32SharedMemoryServer();
virtual bool isServer() const
{
return true;
}
};
class Win32SharedMemoryClient : public Win32SharedMemory
{
public:
Win32SharedMemoryClient();
virtual ~Win32SharedMemoryClient();
virtual bool isServer() const
{
return false;
}
};
#endif //WIN32_SHARED_MEMORY_H