Fawkes API  Fawkes Development Version
fawkes::RWLockList Class Reference

List with a read/write lock. More...

#include <>>

Inheritance diagram for fawkes::RWLockList:

List of all members.

Public Member Functions

 RWLockList ()
 Constructor.
 RWLockList (const RWLockList< Type > &ll)
 Copy constructor.
virtual ~RWLockList ()
 Destructor.
virtual void lock_for_read ()
 Lock list for reading.
virtual void lock_for_write ()
 Lock list for writing.
virtual bool try_lock_for_read ()
 Try to lock list for reading.
virtual bool try_lock_for_write ()
 Try to lock list for writing.
virtual void unlock ()
 Unlock list.
RefPtr< ReadWriteLockrwlock () const
 Get access to the internal read/write lock.
void push_back_locked (const Type &x)
 Push element to list at back with lock protection.
void push_front_locked (const Type &x)
 Push element to list at front with lock protection.
void remove_locked (const Type &x)
 Remove element from list with lock protection.
RWLockList< Type > & operator= (const RWLockList< Type > &ll)
 Copy values from another RWLockList.
RWLockList< Type > & operator= (const std::list< Type > &l)
 Copy values from a standard list.

Detailed Description

List with a read/write lock.

This class provides a list that has an intrinsic lock. The lock can be applied with the regular locking methods.

See also:
ReadWriteLock
Author:
Tim Niemueller

Constructor & Destructor Documentation

fawkes::RWLockList::RWLockList ( )

Constructor.

Definition at line 73 of file rwlock_list.h.

fawkes::RWLockList::RWLockList ( const RWLockList< Type > &  ll)

Copy constructor.

Parameters:
llRWLockList to copy

Definition at line 82 of file rwlock_list.h.

fawkes::RWLockList::~RWLockList ( ) [virtual]

Destructor.

Definition at line 89 of file rwlock_list.h.


Member Function Documentation

void fawkes::RWLockList::lock_for_read ( ) [virtual]

Lock list for reading.

Definition at line 96 of file rwlock_list.h.

void fawkes::RWLockList::lock_for_write ( ) [virtual]

Lock list for writing.

Definition at line 105 of file rwlock_list.h.

RWLockList< Type > & fawkes::RWLockList::operator= ( const RWLockList< Type > &  ll)

Copy values from another RWLockList.

Copies the values one by one. Both instances are locked during the copying and this instance is cleared before copying.

Parameters:
lllist to copy
Returns:
reference to this instance

Definition at line 200 of file rwlock_list.h.

RWLockList< Type > & fawkes::RWLockList::operator= ( const std::list< Type > &  l)

Copy values from a standard list.

Copies the values one by one. This instance is locked during the copying and cleared.

Parameters:
llist to copy
Returns:
reference to this instance

Definition at line 224 of file rwlock_list.h.

void fawkes::RWLockList::push_back_locked ( const Type &  x)

Push element to list at back with lock protection.

Parameters:
xelement to add

Definition at line 147 of file rwlock_list.h.

void fawkes::RWLockList::push_front_locked ( const Type &  x)

Push element to list at front with lock protection.

Parameters:
xelement to add

Definition at line 160 of file rwlock_list.h.

void fawkes::RWLockList::remove_locked ( const Type &  x)

Remove element from list with lock protection.

Parameters:
xelement to remove

Definition at line 173 of file rwlock_list.h.

RefPtr< ReadWriteLock > fawkes::RWLockList::rwlock ( ) const

Get access to the internal read/write lock.

Returns:
internal rwlock

Definition at line 186 of file rwlock_list.h.

bool fawkes::RWLockList::try_lock_for_read ( ) [virtual]

Try to lock list for reading.

Returns:
true, if the lock has been aquired, false otherwise.

Definition at line 116 of file rwlock_list.h.

bool fawkes::RWLockList::try_lock_for_write ( ) [virtual]

Try to lock list for writing.

Returns:
true, if the lock has been aquired, false otherwise.

Definition at line 127 of file rwlock_list.h.

void fawkes::RWLockList::unlock ( ) [virtual]

Unlock list.

Definition at line 136 of file rwlock_list.h.


The documentation for this class was generated from the following file: