Const iterator for the ACE_Map_Manager. More...
#include <Map_Manager.h>

Public Member Functions | |
| ACE_Map_Const_Iterator_Base (const ACE_Map_Manager< EXT_ID, INT_ID, ACE_LOCK > &mm) | |
| int | next (ACE_Map_Entry< EXT_ID, INT_ID > *&next_entry) const | 
| int | done (void) const | 
| Returns 1 when all items have been seen, else 0.   | |
| ACE_Map_Entry< EXT_ID, INT_ID > & | operator* (void) const | 
Returns a reference to the interal element this is pointing to.   | |
| const ACE_Map_Manager< EXT_ID,  INT_ID, ACE_LOCK > &  | map (void) const | 
| bool | operator== (const ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK > &) const | 
| Check if two iterators point to the same position.   | |
| bool | operator!= (const ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK > &) const | 
Public Attributes | |
| ACE_ALLOC_HOOK_DECLARE | |
| Declare the dynamic allocation hooks.   | |
Protected Member Functions | |
| int | forward_i (void) | 
| int | reverse_i (void) | 
| void | dump_i (void) const | 
| Dump the state of an object.   | |
Protected Attributes | |
| const ACE_Map_Manager< EXT_ID,  INT_ID, ACE_LOCK > *  | map_man_ | 
| Map we are iterating over.   | |
| ACE_UINT32 | next_ | 
| Keeps track of how far we've advanced...   | |
Const iterator for the ACE_Map_Manager.
This class factors out common code from its templatized subclasses.
Definition at line 513 of file Map_Manager.h.
| ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::ACE_Map_Const_Iterator_Base | ( | const ACE_Map_Manager< EXT_ID, INT_ID, ACE_LOCK > & | mm | ) |  [inline] | 
        
Contructor. If head != 0, the iterator constructed is positioned at the head of the map, it is positioned at the end otherwise.
Definition at line 389 of file Map_Manager.inl.
| int ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::done | ( | void | ) |  const [inline] | 
        
Returns 1 when all items have been seen, else 0.
Definition at line 408 of file Map_Manager.inl.
| void ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::dump_i | ( | void | ) |  const [protected] | 
        
Dump the state of an object.
Definition at line 634 of file Map_Manager.cpp.
{
#if defined (ACE_HAS_DUMP)
  ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
  ACE_DEBUG ((LM_DEBUG,  ACE_TEXT ("next_ = %d"), this->next_));
  ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
#endif /* ACE_HAS_DUMP */
}
| int ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::forward_i | ( | void | ) |  [inline, protected] | 
        
Move forward by one element in the set. Returns 0 when there's no more item in the set after the current items, else 1.
Definition at line 414 of file Map_Manager.inl.
{
#if defined (ACE_HAS_LAZY_MAP_MANAGER)
  while (1)
    {
      // Go to the next item in the list.
      this->next_ = this->map_man_->search_structure_[this->next_].next ();
      // Stop if we reach the end.
      if (this->done ())
        break;
      // Break if we find a non-free slot.
      if (!this->map_man_->search_structure_[this->next_].free_)
        {
          break;
        }
    }
#else
  this->next_ = this->map_man_->search_structure_[this->next_].next ();
#endif /* ACE_HAS_LAZY_MAP_MANAGER */
  return this->next_ != this->map_man_->occupied_list_id ();
}
| const ACE_Map_Manager< EXT_ID, INT_ID, ACE_LOCK > & ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::map | ( | void | ) |  const [inline] | 
        
Returns reference the Map_Manager that is being iterated over.
Definition at line 477 of file Map_Manager.inl.
{
  return *this->map_man_;
}
| int ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::next | ( | ACE_Map_Entry< EXT_ID, INT_ID > *& | next_entry | ) |  const [inline] | 
        
Pass back the next <entry> that hasn't been seen in the Set. Returns 0 when all items have been seen, else 1.
Definition at line 396 of file Map_Manager.inl.
| bool ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator!= | ( | const ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK > & | rhs | ) |  const [inline] | 
        
Definition at line 490 of file Map_Manager.inl.
{
  return !this->operator== (rhs);
}
| ACE_Map_Entry< EXT_ID, INT_ID > & ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator* | ( | void | ) | const | 
Returns a reference to the interal element this is pointing to. 
Definition at line 661 of file Map_Manager.cpp.
{
  // @@ This function should be inlined.  We moved it here to avoid a
  // compiler bug in SunCC 4.2.  Once we know the correct patch to fix
  // the compiler problem, it should be moved back to .i file again.
  ACE_Map_Entry<EXT_ID, INT_ID> *retv = 0;
  int result = this->next (retv);
  ACE_ASSERT (result != 0);
  ACE_UNUSED_ARG (result);
  return *retv;
}
| bool ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator== | ( | const ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK > & | rhs | ) |  const [inline] | 
        
Check if two iterators point to the same position.
Definition at line 483 of file Map_Manager.inl.
| int ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::reverse_i | ( | void | ) |  [inline, protected] | 
        
Move backware by one element in the set. Returns 0 when there's no more item in the set before the current item, else 1.
Definition at line 445 of file Map_Manager.inl.
{
#if defined (ACE_HAS_LAZY_MAP_MANAGER)
  while (1)
    {
      // Go to the prev item in the list.
      this->next_ = this->map_man_->search_structure_[this->next_].prev ();
      // Stop if we reach the end.
      if (this->done ())
        break;
      // Break if we find a non-free slot.
      if (!this->map_man_->search_structure_[this->next_].free_)
        {
          break;
        }
    }
#else
  this->next_ = this->map_man_->search_structure_[this->next_].prev ();
#endif /* ACE_HAS_LAZY_MAP_MANAGER */
  return this->next_ != this->map_man_->occupied_list_id ();
}
| ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::ACE_ALLOC_HOOK_DECLARE | 
Declare the dynamic allocation hooks.
Reimplemented in ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >.
Definition at line 542 of file Map_Manager.h.
const ACE_Map_Manager<EXT_ID, INT_ID, ACE_LOCK>* ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::map_man_ [protected] | 
        
Map we are iterating over.
Definition at line 557 of file Map_Manager.h.
ACE_UINT32 ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::next_ [protected] | 
        
Keeps track of how far we've advanced...
Definition at line 560 of file Map_Manager.h.
 1.7.0