
#pragma once

#include <Windows.h>


class Mutex
{
public:
	Mutex(void);
	~Mutex(void);

	void Enter(void);
	void Leave(void);

	class ScopedLock
	{
	public:
		explicit ScopedLock(Mutex* mutex);
		~ScopedLock(void);

	private:
		Mutex* m_mutex;
	};

private:
	CRITICAL_SECTION m_cs;
};
