Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members

# TAO_ESF_Busy_Lock_Adapter Class Template Reference

Adapt classes that implement the "busy lock" protocol, to conform to the ACE Lock interface. More...

`#include <ESF_Busy_Lock.h>`

Inheritance diagram for TAO_ESF_Busy_Lock_Adapter:

[legend]
Collaboration diagram for TAO_ESF_Busy_Lock_Adapter:

[legend]
List of all members.

## Public Methods
| TAO_ESF_Busy_Lock_Adapter (Adaptee *adaptee)
| Constructor. More...
int | remove (void)
int | acquire (void)
int | tryacquire (void)
int | release (void)
int | acquire_read (void)
int | acquire_write (void)
int | tryacquire_read (void)
int | tryacquire_write (void)
## Private Attributes
Adaptee * | adaptee_

## Detailed Description

### template<class Adaptee>
class TAO_ESF_Busy_Lock_Adapter< Adaptee >

Adapt classes that implement the "busy lock" protocol, to conform to the ACE Lock interface.

The ACE Lock interface allows us to use any mutex-like object with the ACE synchronization components (such as guards, Lock_Adapter, etc.). One of the synchronization protocols used in the event services uses the following protocol:

- To acquire the lock the
  Parameters:

    busy | method of the object is invoked.

- To release the lock the
  idle
  method of the object is invoked.
- Any changes performed while the lock is held are delayed until all the locks are released, i.e. the last call to
  idle
  executes the changes.

  ## Constructor & Destructor Documentation

  template<class T>
  ACE_INLINE TAO_ESF_Busy_Lock_Adapter< T >::TAO_ESF_Busy_Lock_Adapter | ( | T * | adaptee | ) |

  | Constructor.

  ## Member Function Documentation

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::acquire | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::acquire_read | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::acquire_write | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::release | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::remove | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::tryacquire | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::tryacquire_read | ( | void |  | ) |

  template<class T>
  int TAO_ESF_Busy_Lock_Adapter< T >::tryacquire_write | ( | void |  | ) |

  ## Member Data Documentation

  template<class Adaptee>
  Adaptee* TAO_ESF_Busy_Lock_Adapter::adaptee_`[private]`

  The documentation for this class was generated from the following files:
  - ESF_Busy_Lock.h
  - ESF_Busy_Lock.cpp
  - ESF_Busy_Lock.i