# ACE_Token_Proxy_Queue Class Reference

Token waiter list. More...

`#include <Local_Tokens.h>`

Collaboration diagram for ACE_Token_Proxy_Queue:

[legend]
List of all members.

## Public Member Functions

| ACE_Token_Proxy_Queue (void)
| Constructor.
| ~ACE_Token_Proxy_Queue (void)
| Destructor.
void | enqueue (ACE_TPQ_Entry *new_entry, int position)
const ACE_TPQ_Entry * | head (void)
| Top of the queue.
void | dequeue (void)
| Remove the top waiter.
void | remove (const ACE_TPQ_Entry *remove_me)
| Remove the waiter whose proxy ref matches remove_me.
int | size (void)
| The number of waiters.
void | dump (void) const
| Dump the state of the class.

## Protected Attributes

ACE_TPQ_Entry * | head_
| Head.
ACE_TPQ_Entry * | tail_
| Tail.
int | size_
| Size.

## Friends

class | ACE_TPQ_Iterator

## Detailed Description

Token waiter list.

Not a public interface. This queue holds all the token proxies waiting for ownership of a token. Along with the proxy reference, it also stores the nesting level, client id, and a magic cookie from the proxy. This queue stores the ACE_TPQ_Entries by pointer values. It DOES NOT make copies. Thus, the user is responsible to ensure that the TPQ's stick around. This is motivated by the need to reduce dynamic memory allocation.

## Constructor & Destructor Documentation

ACE_Token_Proxy_Queue::ACE_Token_Proxy_Queue | ( | void |  | ) |

| Constructor.

ACE_Token_Proxy_Queue::~ACE_Token_Proxy_Queue | ( | void |  | ) |

| Destructor.

## Member Function Documentation

void ACE_Token_Proxy_Queue::dequeue | ( | void |  | ) |

| Remove the top waiter.

void ACE_Token_Proxy_Queue::dump | ( | void |  | ) | const

| Dump the state of the class.

void ACE_Token_Proxy_Queue::enqueue | ( | ACE_TPQ_Entry * | new_entry,
|  | int | position
| ) |

| Enqueue a proxy, nesting level, client_id, and a magic cookie at the given position in the list. If the position is -1, we enqueue at the end of the list (I think).

const ACE_TPQ_Entry* ACE_Token_Proxy_Queue::head | ( | void |  | ) |

| Top of the queue.

void ACE_Token_Proxy_Queue::remove | ( | const ACE_TPQ_Entry * | remove_me | ) |

| Remove the waiter whose proxy ref matches remove_me.

int ACE_Token_Proxy_Queue::size | ( | void |  | ) |

| The number of waiters.

## Friends And Related Function Documentation

friend class ACE_TPQ_Iterator`[friend]`

## Member Data Documentation

ACE_TPQ_Entry* ACE_Token_Proxy_Queue::head_`[protected]`

| Head.

int ACE_Token_Proxy_Queue::size_`[protected]`

| Size.

ACE_TPQ_Entry* ACE_Token_Proxy_Queue::tail_`[protected]`

| Tail.

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

- Local_Tokens.h
- Local_Tokens.cpp