foobar2000 SDK  2015-01-14
Public Member Functions | Private Member Functions | Private Attributes
pfc::readWriteLock

#include <synchro_nix.h>

+ Inheritance diagram for pfc::readWriteLock:

Public Member Functions

 readWriteLock ()
 
 readWriteLock ()
 
 readWriteLock ()
 
 ~readWriteLock ()
 
void enterRead ()
 
void enterRead ()
 
void enterWrite ()
 
void enterWrite ()
 
void leaveRead ()
 
void leaveRead ()
 
void leaveWrite ()
 
void leaveWrite ()
 
- Public Member Functions inherited from pfc::readWriteLockBase
void create (const pthread_rwlockattr_t *attr)
 
void create (const readWriteLockAttr &)
 
void destroy ()
 
void enterRead ()
 
void enterWrite ()
 
void leaveRead ()
 
void leaveWrite ()
 

Private Member Functions

 readWriteLock (const readWriteLock &)
 
 readWriteLock (const readWriteLock &)
 
void operator= (const readWriteLock &)
 
void operator= (const readWriteLock &)
 

Private Attributes

critical_section m_obj
 
SRWLOCK theLock
 

Additional Inherited Members

- Protected Member Functions inherited from pfc::readWriteLockBase
 readWriteLockBase ()
 
 ~readWriteLockBase ()
 

Detailed Description

Definition at line 109 of file synchro_nix.h.

Constructor & Destructor Documentation

pfc::readWriteLock::readWriteLock ( )
inline

Definition at line 111 of file synchro_nix.h.

111 {create(NULL);}
void create(const pthread_rwlockattr_t *attr)
Definition: synchro_nix.cpp:20
pfc::readWriteLock::~readWriteLock ( )
inline

Definition at line 112 of file synchro_nix.h.

112 {destroy();}
pfc::readWriteLock::readWriteLock ( )
inline

Definition at line 56 of file synchro_win.h.

56 {}
pfc::readWriteLock::readWriteLock ( const readWriteLock )
private
pfc::readWriteLock::readWriteLock ( )
inline

Definition at line 79 of file synchro_win.h.

79  : theLock() {
80  }
pfc::readWriteLock::readWriteLock ( const readWriteLock )
private

Member Function Documentation

void pfc::readWriteLock::enterRead ( )
inline

Definition at line 57 of file synchro_win.h.

57  {
58  m_obj.enter();
59  }
critical_section m_obj
Definition: synchro_win.h:70
void pfc::readWriteLock::enterRead ( )
inline

Definition at line 82 of file synchro_win.h.

82  {
83  AcquireSRWLockShared( & theLock );
84  }
void pfc::readWriteLock::enterWrite ( )
inline

Definition at line 60 of file synchro_win.h.

60  {
61  m_obj.enter();
62  }
critical_section m_obj
Definition: synchro_win.h:70
void pfc::readWriteLock::enterWrite ( )
inline

Definition at line 85 of file synchro_win.h.

85  {
86  AcquireSRWLockExclusive( & theLock );
87  }
void pfc::readWriteLock::leaveRead ( )
inline

Definition at line 63 of file synchro_win.h.

63  {
64  m_obj.leave();
65  }
critical_section m_obj
Definition: synchro_win.h:70
void pfc::readWriteLock::leaveRead ( )
inline

Definition at line 88 of file synchro_win.h.

88  {
89  ReleaseSRWLockShared( & theLock );
90  }
void pfc::readWriteLock::leaveWrite ( )
inline

Definition at line 66 of file synchro_win.h.

66  {
67  m_obj.leave();
68  }
critical_section m_obj
Definition: synchro_win.h:70
void pfc::readWriteLock::leaveWrite ( )
inline

Definition at line 91 of file synchro_win.h.

91  {
92  ReleaseSRWLockExclusive( &theLock );
93  }
void pfc::readWriteLock::operator= ( const readWriteLock )
private
void pfc::readWriteLock::operator= ( const readWriteLock )
private

Field Documentation

critical_section pfc::readWriteLock::m_obj
private

Definition at line 70 of file synchro_win.h.

SRWLOCK pfc::readWriteLock::theLock
private

Definition at line 99 of file synchro_win.h.


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