00001
00002
00003
00004
00005
00008
00009 #ifndef _ROKU_INCLUDE_CASCADE_INTERPROCESS_CASCADESEMLOCK_H
00010 #define _ROKU_INCLUDE_CASCADE_INTERPROCESS_CASCADESEMLOCK_H
00011
00012 #include <cascade/CascadeObject.h>
00013
00039 class CascadeSemLock : public CascadeObject
00040 {
00041 public:
00042 CascadeSemLock();
00046 virtual ~CascadeSemLock();
00050
00051 public:
00052 bool Open(const char * pName, bool bCreateIfNecessary);
00063
00064 bool Close();
00080 bool Lock();
00089 bool Unlock();
00098 bool IsLocked();
00105
00106 public:
00107 bool GetInstanceCount(u32 & nInstanceCountToSet);
00121
00122 private:
00123 class SemLock;
00124 SemLock * m_pSemLock;
00125 };
00126
00127 #endif // #ifndef _ROKU_INCLUDE_CASCADE_INTERPROCESS_CASCADESEMLOCK_H
00128
00130
00132
00133
00134
00135
00136
00137