#include <Map_Manager.h>
Inheritance diagram for ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >:
Public Member Functions | |
ACE_Map_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_Iterator< EXT_ID, INT_ID, ACE_LOCK > & | operator++ (void) |
Prefix advance. | |
ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > | operator++ (int) |
Postfix advance. | |
ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > & | operator-- (void) |
Prefix reverse. | |
ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > | operator-- (int) |
Postfix reverse. | |
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 <mutex> method.
Definition at line 575 of file Map_Manager.h.
ACE_INLINE ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::ACE_Map_Iterator | ( | ACE_Map_Manager< EXT_ID, INT_ID, ACE_LOCK > & | mm, | |
int | pass_end = 0 | |||
) |
Definition at line 496 of file Map_Manager.inl.
References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::map_man_, and ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::next_.
00498 : ACE_Map_Iterator_Base<EXT_ID, INT_ID, ACE_LOCK> (mm) 00499 { 00500 if (!pass_end) 00501 { 00502 00503 #if defined (ACE_HAS_LAZY_MAP_MANAGER) 00504 00505 // Start here. 00506 this->next_ = this->map_man_->occupied_list_.next (); 00507 00508 while (1) 00509 { 00510 // Stop if we reach the end. 00511 if (this->done ()) 00512 break; 00513 00514 // Break if we find a non-free slot. 00515 if (!this->map_man_->search_structure_[this->next_].free_) 00516 { 00517 break; 00518 } 00519 00520 // Go to the next item in the list. 00521 this->next_ = this->map_man_->search_structure_[this->next_].next (); 00522 } 00523 00524 #else 00525 00526 this->next_ = this->map_man_->occupied_list_.next (); 00527 00528 #endif /* ACE_HAS_LAZY_MAP_MANAGER */ 00529 00530 } 00531 }
ACE_INLINE int ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::advance | ( | void | ) |
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 534 of file Map_Manager.inl.
References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::forward_i().
Referenced by ACE_Based_Pointer_Repository::find(), and ACE_Based_Pointer_Repository::unbind().
00535 { 00536 return this->forward_i (); 00537 }
void ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::dump | ( | void | ) | const |
Dump the state of an object.
Definition at line 676 of file Map_Manager.cpp.
References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::dump_i().
00677 { 00678 #if defined (ACE_HAS_DUMP) 00679 this->dump_i (); 00680 #endif /* ACE_HAS_DUMP */ 00681 }
ACE_INLINE ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::operator++ | ( | int | ) |
Postfix advance.
Definition at line 549 of file Map_Manager.inl.
00550 { 00551 ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this); 00552 ++*this; 00553 return retv; 00554 }
ACE_INLINE ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > & ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::operator++ | ( | void | ) |
Prefix advance.
Definition at line 541 of file Map_Manager.inl.
References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::forward_i().
00542 { 00543 this->forward_i (); 00544 return *this; 00545 }
ACE_INLINE ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::operator-- | ( | int | ) |
Postfix reverse.
Definition at line 566 of file Map_Manager.inl.
00567 { 00568 ACE_Map_Iterator<EXT_ID, INT_ID, ACE_LOCK> retv (*this); 00569 --*this; 00570 return retv; 00571 }
ACE_INLINE ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK > & ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::operator-- | ( | void | ) |
Prefix reverse.
Definition at line 558 of file Map_Manager.inl.
References ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::reverse_i().
00559 { 00560 this->reverse_i (); 00561 return *this; 00562 }
ACE_Map_Iterator< EXT_ID, INT_ID, ACE_LOCK >::ACE_ALLOC_HOOK_DECLARE |
Declare the dynamic allocation hooks.
Reimplemented from ACE_Map_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >.
Definition at line 606 of file Map_Manager.h.