mbo::ICriticalSection Class Reference

Critical Section Interface. More...

#include <MboSynch.h>

Inheritance diagram for mbo::ICriticalSection:

Inheritance graph
{mbo::CCriticalSectionFake\n||+ Enter()\l+ Leave()\l+ GetLock()\l+ GetLevel()\l}{mbo::CCriticalSectionImpl\n|- m_cs\l|+ CCriticalSectionImpl()\l+ ~CCriticalSectionImpl()\l+ Enter()\l+ Leave()\l+ GetLock()\l+ GetLevel()\l}{mbo::IMutex\n||+ Enter()\l+ Try()\l+ GetLock()\l# GetHandle()\l# IncEntered()\l# DecEntered()\l}{mbo::CMutexFake\n|# m_lEntered\l|+ CMutexFake()\l+ Enter()\l+ Leave()\l+ Try()\l+ GetLock()\l+ GetLevel()\l# IncEntered()\l# DecEntered()\l}{mbo::CMutexImpl\n|# m_lEntered\l- m_hMutex\l|+ CMutexImpl()\l+ ~CMutexImpl()\l+ Enter()\l+ Leave()\l+ Try()\l+ GetLock()\l+ GetHandle()\l+ GetLevel()\l# IncEntered()\l# DecEntered()\l}{mbo::MutexList\n|- m_lEntered\l|+ MutexList()\l+ ~MutexList()\l+ Enter()\l+ Leave()\l+ Try()\l+ GetLock()\l+ GetLevel()\l# IncEntered()\l# DecEntered()\l- GetHandle()\l}
[legend]

List of all members.

Public Member Functions

virtual ~ICriticalSection ()
virtual void Enter () const =0
virtual void Leave () const =0
virtual CLock GetLock () const =0
virtual unsigned long GetLevel () const =0


Detailed Description

Critical Section Interface.

Note:
This class is distributed under the following license GNU Lesser General Public License, version 2.1.

Definition at line 334 of file MboSynch.h.


Constructor & Destructor Documentation

virtual mbo::ICriticalSection::~ICriticalSection (  )  [inline, virtual]

enforce virtual destructor

Definition at line 340 of file MboSynch.h.

00340 {}


Member Function Documentation

virtual void mbo::ICriticalSection::Enter (  )  const [pure virtual]

Enter Critical Section / Mutex

Implemented in mbo::IMutex, mbo::CCriticalSectionImpl, mbo::CCriticalSectionFake, mbo::CMutexImpl, mbo::CMutexFake, and mbo::MutexList.

virtual void mbo::ICriticalSection::Leave (  )  const [pure virtual]

Leave Critical Section / Mutex

Implemented in mbo::CCriticalSectionImpl, mbo::CCriticalSectionFake, mbo::CMutexImpl, mbo::CMutexFake, and mbo::MutexList.

virtual CLock mbo::ICriticalSection::GetLock (  )  const [pure virtual]

Returns:
Lock for Critical Section

Implemented in mbo::IMutex, mbo::CCriticalSectionImpl, mbo::CCriticalSectionFake, mbo::CMutexImpl, mbo::CMutexFake, and mbo::MutexList.

virtual unsigned long mbo::ICriticalSection::GetLevel (  )  const [pure virtual]

Returns:
Number of times CriticalSection/Mutex is entered
Note:
This is only valie when the CriticalSection/Mutex is owned by the current thread.

Implemented in mbo::CCriticalSectionImpl, mbo::CCriticalSectionFake, mbo::CMutexImpl, mbo::CMutexFake, and mbo::MutexList.


The documentation for this class was generated from the following file:
  Hosted on code.google.com  
© Marcus Börger
Generated on Fri Jan 18 21:21:12 2008 for MBO-lib by doxygen 1.5.4