UCommon
Data Structures | Namespaces | Macros
access.h File Reference

Locking protocol classes for member function automatic operations. More...

#include <ucommon/platform.h>
#include <ucommon/cpr.h>
#include <ucommon/protocols.h>
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

class  ucommon::ExclusiveProtocol
 An exclusive locking protocol interface base. More...
 
class  ucommon::ExclusiveProtocol::Locking
 A kind of smart pointer object to support exclusive locking protocol. More...
 
class  ucommon::shared_access
 A kind of smart pointer object to support shared locking protocol. More...
 
class  ucommon::SharedProtocol
 An exclusive locking access interface base. More...
 
class  ucommon::SharedProtocol::Locking
 A kind of smart pointer object to support shared locking protocol. More...
 

Namespaces

 ucommon
 Common namespace for all ucommon objects.
 

Macros

#define __EXCLUSIVE(x)   exclusive_access __autolock__ = x
 
#define __SHARE(x)   shared_access __autolock__ = x
 
#define _UCOMMON_ACCESS_H_
 

Detailed Description

Locking protocol classes for member function automatic operations.

This header covers ucommon access related classes. These are used to provide automatic management of locks and synchronization objects through common virtual base classes which can be used with automatic objects. These classes are related to "protocols" and are used in conjunction with smart pointer/referencing classes. The access interface supports member functions to acquire a lock when entered and automatically release the lock when the member function returns that are used in conjunction with special referencing smart pointers.

Definition in file access.h.