store headers only once, refs #7

This commit is contained in:
Marc Wäckerlin
2010-10-29 10:54:12 +00:00
parent a0cd614bf3
commit 6846ed0daf
1026 changed files with 12807 additions and 99284 deletions

View File

@@ -0,0 +1,43 @@
//////////////////////////////////////////////////////////////////////////
// Name: actISynchronize.h
// Product: cv act library
// Purpose: Implemented by types supporting multithreading synchronization.
//
// Copyright: (c) 2010 cv cryptovision GmbH
// all rights reserved
// Licence: The conditions for the use of this software are regulated
// in the cv act library licence agreement.
//
// Autor: Markus Tesche
// Date: 07/27/2010
//////////////////////////////////////////////////////////////////////////
#ifndef ACT_ISynchronize_h
#define ACT_ISynchronize_h
namespace act
{
class Handle;
//
// ISynchronize
class ISynchronize
{
protected:
virtual ~ISynchronize() { }
public:
virtual void Lock() = 0;
virtual void Unlock() = 0;
virtual long LockCount() const = 0;
virtual const Handle& syncHandle() const = 0;
};
inline void Lock(ISynchronize& object) { object.Lock(); }
inline void Unlock(ISynchronize& object) { object.Unlock(); }
inline long LockCount(const ISynchronize& object) { return object.LockCount(); }
} // namespace act
#endif // ACT_ISynchronize_h