#include <Map_Manager.h>
Inheritance diagram for ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >:

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 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... | |
This class factors out common code from its templatized subclasses.
Definition at line 511 of file Map_Manager.h.
|
||||||||||
|
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 381 of file Map_Manager.inl.
|
|
||||||||||
|
Returns 1 when all items have been seen, else 0.
Definition at line 400 of file Map_Manager.inl. Referenced by ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >::ACE_Map_Const_Iterator(), ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::forward_i(), and ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::reverse_i().
|
|
||||||||||
|
Dump the state of an object.
Definition at line 634 of file Map_Manager.cpp. References ACE_BEGIN_DUMP, ACE_DEBUG, ACE_END_DUMP, ACE_LIB_TEXT, and LM_DEBUG. Referenced by ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >::dump().
|
|
||||||||||
|
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 406 of file Map_Manager.inl. References ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::done(). Referenced by ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >::advance(), and ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >::operator++().
00407 {
00408
00409 #if defined (ACE_HAS_LAZY_MAP_MANAGER)
00410
00411 while (1)
00412 {
00413 // Go to the next item in the list.
00414 this->next_ = this->map_man_->search_structure_[this->next_].next ();
00415
00416 // Stop if we reach the end.
00417 if (this->done ())
00418 break;
00419
00420 // Break if we find a non-free slot.
00421 if (!this->map_man_->search_structure_[this->next_].free_)
00422 {
00423 break;
00424 }
00425 }
00426
00427 #else
00428
00429 this->next_ = this->map_man_->search_structure_[this->next_].next ();
00430
00431 #endif /* ACE_HAS_LAZY_MAP_MANAGER */
00432
00433 return this->next_ != this->map_man_->occupied_list_id ();
00434 }
|
|
||||||||||
|
Returns reference the Map_Manager that is being iterated over. Definition at line 469 of file Map_Manager.inl.
00470 {
00471 return *this->map_man_;
00472 }
|
|
||||||||||
|
Pass back the next that hasn't been seen in the Set. Returns 0 when all items have been seen, else 1. Definition at line 388 of file Map_Manager.inl. Referenced by ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator *().
|
|
||||||||||
|
Returns a reference to the interal element is pointing to.
Definition at line 661 of file Map_Manager.cpp. References ACE_ASSERT, and ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::next().
00662 {
00663 // @@ This function should be inlined. We moved it here to avoid a
00664 // compiler bug in SunCC 4.2. Once we know the correct patch to fix
00665 // the compiler problem, it should be moved back to .i file again.
00666 ACE_Map_Entry<EXT_ID, INT_ID> *retv = 0;
00667
00668 int result = this->next (retv);
00669 ACE_ASSERT (result != 0);
00670 ACE_UNUSED_ARG (result);
00671
00672 return *retv;
00673 }
|
|
||||||||||
|
Definition at line 482 of file Map_Manager.inl. References ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator==().
00483 {
00484 return !this->operator== (rhs);
00485 }
|
|
||||||||||
|
Check if two iterators point to the same position.
Definition at line 475 of file Map_Manager.inl. References ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::map_man_, and ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::next_. Referenced by ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator!=().
|
|
||||||||||
|
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 437 of file Map_Manager.inl. References ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::done(). Referenced by ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >::operator--().
00438 {
00439
00440 #if defined (ACE_HAS_LAZY_MAP_MANAGER)
00441
00442 while (1)
00443 {
00444 // Go to the prev item in the list.
00445 this->next_ = this->map_man_->search_structure_[this->next_].prev ();
00446
00447 // Stop if we reach the end.
00448 if (this->done ())
00449 break;
00450
00451 // Break if we find a non-free slot.
00452 if (!this->map_man_->search_structure_[this->next_].free_)
00453 {
00454 break;
00455 }
00456 }
00457
00458 #else
00459
00460 this->next_ = this->map_man_->search_structure_[this->next_].prev ();
00461
00462 #endif /* ACE_HAS_LAZY_MAP_MANAGER */
00463
00464 return this->next_ != this->map_man_->occupied_list_id ();
00465 }
|
|
|||||
|
Declare the dynamic allocation hooks.
Reimplemented in ACE_Map_Const_Iterator< EXT_ID, INT_ID, ACE_LOCK >. Definition at line 540 of file Map_Manager.h. |
|
|||||
|
Map we are iterating over.
Definition at line 555 of file Map_Manager.h. Referenced by ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator==(). |
|
|||||
|
Keeps track of how far we've advanced...
Definition at line 558 of file Map_Manager.h. Referenced by ACE_Map_Const_Iterator_Base< EXT_ID, INT_ID, ACE_LOCK >::operator==(). |
1.3.6