NAME
ACE_Ordered_MultiSet_Iterator - Implement a bidirectional iterator over an ordered multiset. This class template requires that operator semantics be defined for the parameterized type T, but does not impose any restriction on how that ordering operator is implemented.
SYNOPSIS
#include <ace/Containers.h>
template<class T>
class ACE_Ordered_MultiSet_Iterator
{
public:
friend class ACE_Ordered_MultiSet<T>;
ACE_Ordered_MultiSet_Iterator (ACE_Ordered_MultiSet<T> &s);
int next (T *&next_item) const;
int first (void);
int last (void);
int advance (void);
int retreat (void);
int done (void) const;
void dump (void) const;
ACE_ALLOC_HOOK_DECLARE;
private:
ACE_DNode<T> *current_;
ACE_Ordered_MultiSet<T> &set_;
};
DESCRIPTION
This implementation of an unordered set uses a fixed array. This implementation does not allow duplicates...
Initialization method.
ACE_Ordered_MultiSet_Iterator (ACE_Ordered_MultiSet<T> &s);
Iteration methods.
int next (T *&next_item) const;
Pass back the next_item that hasn't been seen in the ordered multiset. Returns 0 when all items have been seen, else 1.
int first (void);
Repositions the iterator at the first item in the ordered multiset Returns 0 if the list is empty else 1.
int last (void);
Repositions the iterator at the last item in the ordered multiset Returns 0 if the list is empty else 1.
int 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 retreat (void);
Move backward by one element in the set. Returns 0 when all the items in the set have been seen, else 1.
int done (void) const;
Returns 1 when all items have been seen, else 0.
void dump (void) const;
Dump the state of an object.
ACE_ALLOC_HOOK_DECLARE;
Declare the dynamic allocation hooks.
AUTHOR
Doug Schmidt
Initialization and termination methods.
Check boundary conditions.
Classic unordered set operations.
LIBRARY
ace