#include <Map_Manager.h>
Inheritance diagram for ACE_Map_Reverse_Iterator< EXT_ID, INT_ID, ACE_LOCK >:
Public Member Functions | |
ACE_Map_Reverse_Iterator (ACE_Map_Manager< EXT_ID, INT_ID, ACE_LOCK > &mm, int pass_end=0) | |
int | advance (void) |
void | dump (void) const |
Dump the state of an object. | |
ACE_Map_Reverse_Iterator< EXT_ID, INT_ID, ACE_LOCK > & | operator++ (void) |
Prefix reverse. | |
ACE_Map_Reverse_Iterator< EXT_ID, INT_ID, ACE_LOCK > | operator++ (int) |
Postfix reverse. | |
ACE_Map_Reverse_Iterator< EXT_ID, INT_ID, ACE_LOCK > & | operator-- (void) |
Prefix advance. | |
ACE_Map_Reverse_Iterator< EXT_ID, INT_ID, ACE_LOCK > | operator-- (int) |
Postfix advance. | |
Public Attributes | |
ACE_ALLOC_HOOK_DECLARE | |
Declare the dynamic allocation hooks. |
This class does not perform any internal locking of the ACE_Map_Manager it is iterating upon since locking is inherently inefficient and/or error-prone within an STL-style iterator. If you require locking, you can explicitly use an ACE_Guard or ACE_Read_Guard on the ACE_Map_Manager's internal lock, which is accessible via its method.
Definition at line 669 of file Map_Manager.h.
|
Definition at line 652 of file Map_Manager.inl. References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::done().
00654 : ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> (mm) 00655 { 00656 if (!pass_end) 00657 { 00658 00659 #if defined (ACE_HAS_LAZY_MAP_MANAGER) 00660 00661 // Start here. 00662 this->next_ = this->map_man_->occupied_list_.prev (); 00663 00664 while (1) 00665 { 00666 // Stop if we reach the end. 00667 if (this->done ()) 00668 break; 00669 00670 // Break if we find a non-free slot. 00671 if (!this->map_man_->search_structure_[this->next_].free_) 00672 { 00673 break; 00674 } 00675 00676 // Go to the prev item in the list. 00677 this->next_ = this->map_man_->search_structure_[this->next_].prev (); 00678 } 00679 00680 #else 00681 00682 this->next_ = this->map_man_->occupied_list_.prev (); 00683 00684 #endif /* ACE_HAS_LAZY_MAP_MANAGER */ 00685 00686 } 00687 } |
|
Move forward by one element in the set. Returns 0 when all the items in the set have been seen, else 1. Definition at line 690 of file Map_Manager.inl. References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::reverse_i().
00691 { 00692 return this->reverse_i (); 00693 } |
|
Dump the state of an object.
Definition at line 692 of file Map_Manager.cpp. References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::dump_i().
00693 { 00694 #if defined (ACE_HAS_DUMP) 00695 this->dump_i (); 00696 #endif /* ACE_HAS_DUMP */ 00697 } |
|
Postfix reverse.
Definition at line 705 of file Map_Manager.inl.
00706 { 00707 ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this); 00708 ++*this; 00709 return retv; 00710 } |
|
Prefix reverse.
Definition at line 697 of file Map_Manager.inl. References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::reverse_i().
00698 { 00699 this->reverse_i (); 00700 return *this; 00701 } |
|
Postfix advance.
Definition at line 722 of file Map_Manager.inl.
00723 { 00724 ACE_Map_Reverse_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this); 00725 --*this; 00726 return retv; 00727 } |
|
Prefix advance.
Definition at line 714 of file Map_Manager.inl. References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::forward_i().
00715 { 00716 this->forward_i (); 00717 return *this; 00718 } |
|
Declare the dynamic allocation hooks.
Reimplemented from ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >. Definition at line 700 of file Map_Manager.h. |