ucommon::locked_release Class Reference

Auto-pointer support class for locked objects. More...

#include <thread.h>

Inheritance diagram for ucommon::locked_release:
Inheritance graph
[legend]
Collaboration diagram for ucommon::locked_release:
Collaboration graph
[legend]

Public Member Functions

 locked_release (LockedPointer &pointer)
 Construct a locked object instance base from a LockedPointer.
locked_releaseoperator= (LockedPointer &pointer)
 Assign a locked object pointer.
void release (void)
 Manually release the object reference.
 ~locked_release ()
 Auto-release pointer to locked object instance.

Protected Member Functions

 locked_release (const locked_release &object)
 Construct a locked object instance base from an existing instance.
 locked_release ()
 Create an unassigned locked object pointer base.

Protected Attributes

ObjectProtocolobject
 locked object protected by locked_release

Detailed Description

Auto-pointer support class for locked objects.

This is used as a base class for the templated locked_instance class that uses the managed LockedPointer to assign a reference to an object. When the locked instance falls out of scope, the object is derefenced. Ideally the pointer typed object should be based on the reference counted object class.

Author:
David Sugar <dyfet@gnutelephony.org>

Definition at line 1482 of file thread.h.


Constructor & Destructor Documentation

ucommon::locked_release::locked_release ( const locked_release object  )  [protected]

Construct a locked object instance base from an existing instance.

This will create a duplicate (retained) reference.

Parameters:
object to copy from.
ucommon::locked_release::locked_release ( LockedPointer pointer  ) 

Construct a locked object instance base from a LockedPointer.

References a retained instance of the underlying object from the LockedPointer.

Parameters:
pointer of locked pointer to assign from.
ucommon::locked_release::~locked_release (  ) 

Auto-release pointer to locked object instance.

This is used to release a reference when the pointer template falls out of scope.


Member Function Documentation

locked_release& ucommon::locked_release::operator= ( LockedPointer pointer  ) 

Assign a locked object pointer.

If an existing object is already assigned, the existing pointer is released.

Parameters:
pointer reference through locked object.

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

Generated on 30 Jul 2013 for UCommon by  doxygen 1.6.1