foobar2000 SDK  2015-08-03
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
pfc::readWriteLockBase

#include <synchro_nix.h>

+ Inheritance diagram for pfc::readWriteLockBase:

Public Member Functions

void create (const pthread_rwlockattr_t *attr)
 
void create (const readWriteLockAttr &)
 
void destroy ()
 
void enterRead ()
 
void enterWrite ()
 
void leaveRead ()
 
void leaveWrite ()
 

Protected Member Functions

 readWriteLockBase ()
 
 ~readWriteLockBase ()
 

Private Member Functions

 readWriteLockBase (const readWriteLockBase &)
 
void operator= (const readWriteLockBase &)
 

Private Attributes

pthread_rwlock_t obj
 

Detailed Description

Definition at line 89 of file synchro_nix.h.

Constructor & Destructor Documentation

pfc::readWriteLockBase::readWriteLockBase ( )
inlineprotected

Definition at line 100 of file synchro_nix.h.

100 {}
pfc::readWriteLockBase::~readWriteLockBase ( )
inlineprotected

Definition at line 101 of file synchro_nix.h.

101 {}
pfc::readWriteLockBase::readWriteLockBase ( const readWriteLockBase )
private

Member Function Documentation

void pfc::readWriteLockBase::create ( const pthread_rwlockattr_t *  attr)

Definition at line 22 of file synchro_nix.cpp.

22  {
23  if (pthread_rwlock_init( &obj, attr) != 0) {
24  throw exception_bug_check();
25  }
26  }
pthread_rwlock_t obj
Definition: synchro_nix.h:103
void pfc::readWriteLockBase::create ( const readWriteLockAttr a)

Definition at line 27 of file synchro_nix.cpp.

27  {
28  create(&a.attr);
29  }
void create(const pthread_rwlockattr_t *attr)
Definition: synchro_nix.cpp:22
void pfc::readWriteLockBase::destroy ( )
inline

Definition at line 93 of file synchro_nix.h.

93 {pthread_rwlock_destroy( & obj ); }
pthread_rwlock_t obj
Definition: synchro_nix.h:103
void pfc::readWriteLockBase::enterRead ( )
inline

Definition at line 95 of file synchro_nix.h.

95 {pthread_rwlock_rdlock( &obj ); }
pthread_rwlock_t obj
Definition: synchro_nix.h:103
void pfc::readWriteLockBase::enterWrite ( )
inline

Definition at line 96 of file synchro_nix.h.

96 {pthread_rwlock_wrlock( &obj ); }
pthread_rwlock_t obj
Definition: synchro_nix.h:103
void pfc::readWriteLockBase::leaveRead ( )
inline

Definition at line 97 of file synchro_nix.h.

97 {pthread_rwlock_unlock( &obj ); }
pthread_rwlock_t obj
Definition: synchro_nix.h:103
void pfc::readWriteLockBase::leaveWrite ( )
inline

Definition at line 98 of file synchro_nix.h.

98 {pthread_rwlock_unlock( &obj ); }
pthread_rwlock_t obj
Definition: synchro_nix.h:103
void pfc::readWriteLockBase::operator= ( const readWriteLockBase )
private

Field Documentation

pthread_rwlock_t pfc::readWriteLockBase::obj
private

Definition at line 103 of file synchro_nix.h.


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