#ifndef _RESOURCES_LOCK_HPP_
#define _RESOURCES_LOCK_HPP_

#include <memory>

/**
 * Resource Lock interface class
 *
 * Used for multithreading purpouses
 */
class ResourceLock
{
	public:
		ResourceLock();
		~ResourceLock();

		void lock();
		void unlock();

	private:
		class ResourceLock_Impl;
		std::unique_ptr<ResourceLock_Impl> impl;

};

#endif // _RESOURCES_LOCK_HPP_
