vpr::NullMutex Class Reference

Null mutex wrapper. More...

#include <vpr/Sync/NullMutex.h>

List of all members.

Public Member Functions

 NullMutex ()
 ~NullMutex ()
vpr::ReturnStatus acquire () const
 Locks the mutex.
vpr::ReturnStatus acquireRead () const
 Acquires a read mutex.
vpr::ReturnStatus acquireWrite () const
 Acquires a write mutex.
vpr::ReturnStatus tryAcquire () const
 Tries to acquire the lock.
vpr::ReturnStatus tryacquire_read () const
 Tries to acquire a read mutex.
vpr::ReturnStatus tryacquire_write () const
 Tries to acquire a write mutex.
vpr::ReturnStatus release () const
 Releases the mutex.
int test ()
 Tests the current lock status.
void dump (FILE *dest=stderr, const char *message="\n------ Mutex Dump -----\n") const
 Dumps the mutex debug stuff and current state.

Protected Member Functions

void operator= (const NullMutex &)
 NullMutex (const NullMutex &)


Detailed Description

Null mutex wrapper.

Used to pass a do nothing mutex as a template type.

Date:
January 21, 1997

Definition at line 59 of file NullMutex.h.


Constructor & Destructor Documentation

vpr::NullMutex::NullMutex (  )  [inline]

Definition at line 62 of file NullMutex.h.

00063    {;}

vpr::NullMutex::~NullMutex (  )  [inline]

Definition at line 65 of file NullMutex.h.

00066    {;}

vpr::NullMutex::NullMutex ( const NullMutex  )  [inline, protected]

Definition at line 146 of file NullMutex.h.

00146 {}


Member Function Documentation

vpr::ReturnStatus vpr::NullMutex::acquire (  )  const [inline]

Locks the mutex.

Returns:
1 is returned if the mutex is acquired.

-1 is returned if an error occurs.

Definition at line 74 of file NullMutex.h.

00075    {
00076       return vpr::ReturnStatus();
00077    }

vpr::ReturnStatus vpr::NullMutex::acquireRead (  )  const [inline]

Acquires a read mutex.

Definition at line 80 of file NullMutex.h.

00081    {
00082       return this->acquire();     // No special "read" semaphore -- For now
00083    }

vpr::ReturnStatus vpr::NullMutex::acquireWrite (  )  const [inline]

Acquires a write mutex.

Definition at line 86 of file NullMutex.h.

00087    {
00088       return this->acquire();     // No special "write" semaphore -- For now
00089    }

vpr::ReturnStatus vpr::NullMutex::tryAcquire (  )  const [inline]

Tries to acquire the lock.

Returns immediately even if we don't acquire the lock.

Returns:
1 is returned if the mutex is acquired.

0 is returned if the mutex is not acquired.

Definition at line 98 of file NullMutex.h.

00099    {
00100       return vpr::ReturnStatus();
00101    }

vpr::ReturnStatus vpr::NullMutex::tryacquire_read (  )  const [inline]

Tries to acquire a read mutex.

Definition at line 104 of file NullMutex.h.

00105    {
00106       return this->tryAcquire();
00107    }

vpr::ReturnStatus vpr::NullMutex::tryacquire_write (  )  const [inline]

Tries to acquire a write mutex.

Definition at line 110 of file NullMutex.h.

00111    {
00112       return this->tryAcquire();
00113    }

vpr::ReturnStatus vpr::NullMutex::release (  )  const [inline]

Releases the mutex.

Returns:
0 is returned on success; -1 is returned otherwise.

Definition at line 120 of file NullMutex.h.

00121    {
00122       return vpr::ReturnStatus();
00123    }

int vpr::NullMutex::test (  )  [inline]

Tests the current lock status.

Returns:
0 is returned if the mutex is not locked.

1 is returend if the mutex is locked.

Definition at line 131 of file NullMutex.h.

00132    {
00133       return 0;     // Just return 0 since it is a null lock
00134    }

void vpr::NullMutex::dump ( FILE *  dest = stderr,
const char *  message = "\n------ Mutex Dump -----\n" 
) const [inline]

Dumps the mutex debug stuff and current state.

Definition at line 137 of file NullMutex.h.

00139    {
00140       fprintf(dest, "%sNULL Mutex", message);
00141    }

void vpr::NullMutex::operator= ( const NullMutex  )  [inline, protected]

Definition at line 145 of file NullMutex.h.

00145 {}


The documentation for this class was generated from the following file:
Generated on Thu Jan 4 10:55:52 2007 for VR Juggler Portable Runtime by  doxygen 1.5.1