NAME
ACE_TPQ_Iterator - Iterates through ACE_Token_Proxy_Queues.
SYNOPSIS
#include <ace/Local_Tokens.h>
class ACE_TPQ_Iterator
{
public:
ACE_TPQ_Iterator (ACE_Token_Proxy_Queue &q);
~ACE_TPQ_Iterator (void);
int next (ACE_TPQ_Entry *&next_item);
int done (void) const;
void advance (void);
void dump (void) const;
private:
ACE_TPQ_Entry *current_;
};
DESCRIPTION
This file contains definitions for the following classes:
public:
7. ACE_Token_Proxy
8. ACE_Null_Token : public ACE_Token_Proxy
9. ACE_Local_Mutex : public ACE_Token_Proxy
*. ACE_Local_RLock : public ACE_Local_Mutex
&. ACE_Local_WLock : public ACE_Local_Mutex private:
1. ACE_TOKEN_CONST
3. ACE_TPQ_Entry
b. ACE_TSS_TPQ_Entry
c. ACE_TPQ_Iterator
4. ACE_Token_Proxy_Queue
5. ACE_Tokens
6. ACE_Mutex_Token : public ACE_Tokens
12. ACE_RW_Token : public ACE_Tokens
a. ACE_Token_Name
Note that the locking classes defined in this file are *not*
intended to be used as general-purpose synchronization
mechanisms, such as mutexes or semaphores. Instead, you should
use the ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex,
ACE_Thread_Semaphore, etc., that are defined in
$ACE_ROOT/ace/Synch.h and $ACE_ROOT/ace/Synch_T.h or the
ACE_Token that's defined in $ACE_ROOT/ace/Token.h.
PUBLIC MEMBERS
ACE_TPQ_Iterator (ACE_Token_Proxy_Queue &q);
Construction.
~ACE_TPQ_Iterator (void);
Destructor.
int next (ACE_TPQ_Entry *&next_item);
Pass back the next_item.
int done (void) const;
Returns 1 when all items have been seen, else 0.
void advance (void);
Move forward by one element in the queue.
void dump (void) const;
Dump the state of an object.
PRIVATE MEMBERS
ACE_TPQ_Entry *current_;
AUTHOR
Karl-Heinz Dorn [email protected], Douglas C. Schmidt [email protected], and Tim Harrison [email protected]
LIBRARY
ace