Program Listing for File ContextLock.h#
↰ Return to documentation for file (src/ContextLock.h)
#pragma once
namespace Coral
{
template <class T> class ContextLock
{
public:
ContextLock()
{
static_cast<T *>(this)->lock();
}
~ContextLock()
{
static_cast<T *>(this)->unlock();
}
};
class NoopLock : public ContextLock<NoopLock>
{
public:
inline void lock(void)
{
;
}
inline void unlock(void)
{
;
}
};
} // namespace Coral