Cucumber/Kernel/include/Tier1/CSemaphore.h

22 lines
361 B
C
Raw Normal View History

2011-04-04 09:58:52 +00:00
#ifndef __CSEMAPHORE_H__
#define __CSEMAPHORE_H__
#include "types.h"
2011-04-04 16:25:20 +00:00
extern "C" {
#include "Tier0/atomic_operations.h"
};
2011-04-04 09:58:52 +00:00
namespace cb {
class CSemaphore {
2011-06-27 15:59:54 +00:00
protected:
2011-04-04 16:25:20 +00:00
T_ATOMIC m_Available;
2011-04-04 09:58:52 +00:00
public:
CSemaphore(u32 Available = 1);
void Acquire(void);
void Release(void);
};
};
#endif