00001 #ifndef __RIPC_SESSION_H__ 00002 #define __RIPC_SESSION_H__ 00003 00004 00005 #include "RIPCdef.h" 00006 #include "RIPCException.h" 00007 #include "RIPCLock.h" 00008 #include "RIPCEvent.h" 00009 #include "RIPCMutex.h" 00010 #include "RIPCQueue.h" 00011 #include "RIPCBarrier.h" 00012 #include "RIPCSemaphore.h" 00013 #include "RIPCSharedMemory.h" 00014 00029 class RIPC_DLL_ENTRY RIPCSession { 00030 public: 00039 virtual RIPCEvent* createEvent(char const* name, bool signaled, bool manualReset)=0; 00040 00046 virtual RIPCEvent* openEvent(char const* name)=0; 00047 00055 virtual RIPCSemaphore* createSemaphore(char const* name, int initCount)=0; 00056 00062 virtual RIPCSemaphore* openSemaphore(char const* name)=0; 00063 00072 virtual RIPCMutex* createMutex(char const* name, bool locked)=0; 00078 virtual RIPCMutex* openMutex(char const* name)=0; 00079 00086 virtual RIPCQueue* createQueue(char const* name)=0; 00092 virtual RIPCQueue* openQueue(char const* name)=0; 00093 00101 virtual RIPCSharedMemory* createSharedMemory(char const* name, RIPCObject const& objDesc)=0; 00102 00111 virtual RIPCSharedMemory* createSharedMemory(char const* name, void const* obj, size_t objSize) = 0; 00112 00119 virtual RIPCSharedMemory* openSharedMemory(char const* name)=0; 00120 00127 virtual RIPCLock* createLock(char const* name)=0; 00133 virtual RIPCLock* openLock(char const* name)=0; 00134 00142 virtual RIPCBarrier* createBarrier(char const* name, int nSessions)=0; 00148 virtual RIPCBarrier* openBarrier(char const* name)=0; 00149 00157 virtual void close()=0; 00158 00165 virtual void shutdownServer()=0; 00166 00174 virtual void showServerInfo(char* buf, size_t bufSize)=0; 00175 00182 virtual bool isLocal()=0; 00183 00190 virtual bool isOk()=0; 00191 00199 virtual void getErrorText(char* buf, size_t bufSize)=0; 00200 00201 virtual ~RIPCSession() {} 00202 }; 00203 00204 #endif