/* libzz
*
* This program is distributed under the GNU General Public License, version 2.
* A copy of this license is included with this source.
*
* Copyright 2000-2006, Toni Thomsson <toni@tonjac.org>
*/
#ifndef zz_mutex_h
#define zz_mutex_h
#include <zz_export.h>
/**
Base for all mutex
@author Toni Thomsson, toni@tonjac.org
*/
class ZZ_API CzzMutex
{
public:
/** Mutex */
CzzMutex();
/** Copy construktor */
CzzMutex( const CzzMutex &right );
virtual ~CzzMutex();
/** Enter critical section, sets the lock */
virtual bool Acquire( bool block ) = 0;
/** Leave critical section, unlock */
virtual void Release() = 0;
};
#endif