ACE  6.3.3
Public Member Functions | Protected Attributes | Friends | List of all members
ACE_Token_Proxy_Queue Class Reference

Token waiter list. More...

#include <Local_Tokens.h>

Collaboration diagram for ACE_Token_Proxy_Queue:
Collaboration graph
[legend]

Public Member Functions

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

Protected Attributes

ACE_TPQ_Entryhead_
 Head. More...
 
ACE_TPQ_Entrytail_
 Tail. More...
 
int size_
 Size. More...
 

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  )
inline

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  )
inline

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  )
inline

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: