ACE  6.0.6
Public Types | Public Member Functions | Public Attributes | Private Attributes
ACE_Malloc_FIFO_Iterator_T Class Reference

FIFO iterator for names stored in Malloc'd memory. More...

#include <Malloc_T.h>

Collaboration diagram for ACE_Malloc_FIFO_Iterator_T:
Collaboration graph
[legend]

List of all members.

Public Types

typedef ACE_CB::ACE_Name_Node NAME_NODE
typedef ACE_CB::ACE_Malloc_Header MALLOC_HEADER

Public Member Functions

 ACE_Malloc_FIFO_Iterator_T (ACE_Malloc_T< ACE_MEM_POOL_2, ACE_LOCK, ACE_CB > &malloc, const char *name=0)
 ~ACE_Malloc_FIFO_Iterator_T (void)
 Destructor.
int done (void) const
 Returns 1 when all items have been seen, else 0.
int next (void *&next_entry)
int next (void *&next_entry, const char *&name)
int advance (void)
int start (void)
void dump (void) const
 Dump the state of an object.

Public Attributes

 ACE_ALLOC_HOOK_DECLARE
 Declare the dynamic allocation hooks.

Private Attributes

ACE_Malloc_T< ACE_MEM_POOL_2,
ACE_LOCK, ACE_CB > & 
malloc_
 Malloc we are iterating over.
NAME_NODEcurr_
 Keeps track of how far we've advanced...
ACE_Read_Guard< ACE_LOCK > guard_
 Lock Malloc for the lifetime of the iterator.
const char * name_
 Name that we are searching for.

Detailed Description

FIFO iterator for names stored in Malloc'd memory.

This class can be configured flexibly with different types of ACE_LOCK strategies that support the ACE_Thread_Mutex and ACE_Process_Mutex constructor API.

Does not support deletions while iteration is occurring.


Member Typedef Documentation

typedef ACE_CB::ACE_Malloc_Header ACE_Malloc_FIFO_Iterator_T::MALLOC_HEADER
typedef ACE_CB::ACE_Name_Node ACE_Malloc_FIFO_Iterator_T::NAME_NODE

Constructor & Destructor Documentation

ACE_Malloc_FIFO_Iterator_T::ACE_Malloc_FIFO_Iterator_T ( ACE_Malloc_T< ACE_MEM_POOL_2, ACE_LOCK, ACE_CB > &  malloc,
const char *  name = 0 
)

If name = 0 it will iterate through everything else only through those entries whose name match.

ACE_Malloc_FIFO_Iterator_T::~ACE_Malloc_FIFO_Iterator_T ( void  )

Destructor.


Member Function Documentation

int ACE_Malloc_FIFO_Iterator_T::advance ( void  )

Move forward by one element in the set. Returns 0 when all the items in the set have been seen, else 1.

int ACE_Malloc_FIFO_Iterator_T::done ( void  ) const

Returns 1 when all items have been seen, else 0.

void ACE_Malloc_FIFO_Iterator_T::dump ( void  ) const

Dump the state of an object.

int ACE_Malloc_FIFO_Iterator_T::next ( void *&  next_entry)

Pass back the next entry in the set that hasn't yet been visited. Returns 0 when all items have been seen, else 1.

int ACE_Malloc_FIFO_Iterator_T::next ( void *&  next_entry,
const char *&  name 
)

Pass back the next entry (and the name associated with it) in the set that hasn't yet been visited. Returns 0 when all items have been seen, else 1.

int ACE_Malloc_FIFO_Iterator_T::start ( void  )

Go to the starting element that was inserted first. Returns 0 when there is no item in the set, else 1.


Member Data Documentation

Declare the dynamic allocation hooks.

Keeps track of how far we've advanced...

Lock Malloc for the lifetime of the iterator.

ACE_Malloc_T<ACE_MEM_POOL_2, ACE_LOCK, ACE_CB>& ACE_Malloc_FIFO_Iterator_T::malloc_ [private]

Malloc we are iterating over.

const char* ACE_Malloc_FIFO_Iterator_T::name_ [private]

Name that we are searching for.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines