The Pedigree Project 0.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
PosixAdvisoryLocks Class Reference
+ Collaboration diagram for PosixAdvisoryLocks:

Public Member Functions

int apply (AdvisoryOwner &owner, Grant request, bool wait, PosixAdvisoryAdmission admission, void *context)
 
int query (AdvisoryOwner &owner, Grant request, Grant &conflict, bool &found)
 
void descriptorClosed (AdvisoryOwner &owner, uintptr_t inode)
 
void ownerClosed (AdvisoryOwner &owner)
 

Private Member Functions

bool open (AdvisoryOwner &owner, Grant &request)
 

Private Attributes

Mutex m_Lock
 
ConditionVariable m_Changed
 
Grant m_First [MaximumGrants]
 
Grant m_Second [MaximumGrants]
 
Table m_Table {m_First, m_Second, MaximumGrants}
 
const Grantm_Waiters [MaximumWaiters] = {}
 

Detailed Description

Definition at line 21 of file advisory-lock-state.cc.

Member Function Documentation

◆ apply()

int PosixAdvisoryLocks::apply ( AdvisoryOwner owner,
Grant  request,
bool  wait,
PosixAdvisoryAdmission  admission,
void *  context 
)
inline

Definition at line 23 of file advisory-lock-state.cc.

◆ descriptorClosed()

void PosixAdvisoryLocks::descriptorClosed ( AdvisoryOwner owner,
uintptr_t  inode 
)
inline

Definition at line 124 of file advisory-lock-state.cc.

◆ open()

bool PosixAdvisoryLocks::open ( AdvisoryOwner owner,
Grant request 
)
inlineprivate

Definition at line 150 of file advisory-lock-state.cc.

◆ ownerClosed()

void PosixAdvisoryLocks::ownerClosed ( AdvisoryOwner owner)
inline

Definition at line 134 of file advisory-lock-state.cc.

◆ query()

int PosixAdvisoryLocks::query ( AdvisoryOwner owner,
Grant  request,
Grant conflict,
bool &  found 
)
inline

Definition at line 109 of file advisory-lock-state.cc.

Member Data Documentation

◆ m_Changed

ConditionVariable PosixAdvisoryLocks::m_Changed
private

Definition at line 164 of file advisory-lock-state.cc.

◆ m_First

Grant PosixAdvisoryLocks::m_First[MaximumGrants]
private

Definition at line 165 of file advisory-lock-state.cc.

◆ m_Lock

Mutex PosixAdvisoryLocks::m_Lock
private

Definition at line 163 of file advisory-lock-state.cc.

◆ m_Second

Grant PosixAdvisoryLocks::m_Second[MaximumGrants]
private

Definition at line 166 of file advisory-lock-state.cc.

◆ m_Table

Table PosixAdvisoryLocks::m_Table {m_First, m_Second, MaximumGrants}
private

Definition at line 167 of file advisory-lock-state.cc.

◆ m_Waiters

const Grant* PosixAdvisoryLocks::m_Waiters[MaximumWaiters] = {}
private

Definition at line 168 of file advisory-lock-state.cc.


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