This is Unofficial EPICS BASE Doxygen Site
epics::pvAccess::ScopedLock Class Reference

#include "pvAccess.h"

Public Member Functions

 ScopedLock (Lockable::shared_pointer const &li)
 
 ~ScopedLock ()
 
void lock ()
 
void unlock ()
 
bool ownsLock () const
 

Detailed Description

Scope lock.

Definition at line 104 of file pvAccess.h.

Constructor & Destructor Documentation

epics::pvAccess::ScopedLock::ScopedLock ( Lockable::shared_pointer const &  li)
inlineexplicit

Definition at line 108 of file pvAccess.h.

109  : lockable(li), locked(true) {
110  lockable->lock();
111  }
epics::pvAccess::ScopedLock::~ScopedLock ( )
inline

Definition at line 113 of file pvAccess.h.

113  {
114  unlock();
115  }

Member Function Documentation

void epics::pvAccess::ScopedLock::lock ( )
inline

Definition at line 117 of file pvAccess.h.

117  {
118  if(!locked) {
119  lockable->lock();
120  locked = true;
121  }
122  }
bool epics::pvAccess::ScopedLock::ownsLock ( ) const
inline

Definition at line 131 of file pvAccess.h.

131  {
132  return locked;
133  }
void epics::pvAccess::ScopedLock::unlock ( )
inline

Definition at line 124 of file pvAccess.h.

124  {
125  if(locked) {
126  lockable->unlock();
127  locked=false;
128  }
129  }

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