#include <Hash_Map_Manager_T.h>
Inheritance diagram for ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >:

| Public Member Functions | |
| ACE_Hash_Map_Iterator_Base_Ex (ACE_Hash_Map_Manager_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK > &mm, bool head) | |
| Contructor. | |
| ACE_Hash_Map_Iterator_Base_Ex (ACE_Hash_Map_Manager_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK > &mm, ACE_Hash_Map_Entry< EXT_ID, INT_ID > *entry, size_t index) | |
| Contructor. | |
| int | next (ACE_Hash_Map_Entry< EXT_ID, INT_ID > *&next_entry) const | 
| int | done (void) const | 
| Returns 1 when all items have been seen, else 0. | |
| ACE_Hash_Map_Entry< EXT_ID, INT_ID > & | operator * (void) const | 
| Returns a reference to the interal element thisis pointing to. | |
| ACE_Hash_Map_Entry< EXT_ID, INT_ID > * | operator-> (void) const | 
| Returns a pointer to the interal element thisis pointing to. | |
| ACE_Hash_Map_Manager_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK > & | map (void) | 
| bool | operator== (const ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK > &) const | 
| Check if two iterators point to the same position. | |
| bool | operator!= (const ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, 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 | |
| ACE_Hash_Map_Manager_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK > * | map_man_ | 
| Map we are iterating over. | |
| ssize_t | index_ | 
| Keeps track of how far we've advanced in the table. | |
| ACE_Hash_Map_Entry< EXT_ID, INT_ID > * | next_ | 
This class factors out common code from its templatized subclasses.
Definition at line 579 of file Hash_Map_Manager_T.h.
| 
 | ||||||||||||||||
| Contructor. 
If head !=  Definition at line 491 of file Hash_Map_Manager_T.inl. References ssize_t. 
 00498 : map_man_ (&mm), 00499 index_ (head ? -1 : (ssize_t) mm.total_size_), 00500 next_ (0) 00501 { 00502 if (mm.table_ != 0) 00503 this->next_ = &mm.table_[head ? 0 : mm.total_size_ - 1]; 00504 } | 
| 
 | ||||||||||||||||||||
| Contructor. This constructor positions the iterator to the given entry. Definition at line 516 of file Hash_Map_Manager_T.inl. 
 | 
| 
 | ||||||||||
| Returns 1 when all items have been seen, else 0. 
 Definition at line 549 of file Hash_Map_Manager_T.inl. References ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::map_man_. 
 | 
| 
 | ||||||||||
| Dump the state of an object. 
 Definition at line 385 of file Hash_Map_Manager_T.cpp. References ACE_BEGIN_DUMP, ACE_DEBUG, ACE_END_DUMP, ACE_TEXT, ACE_TRACE, and LM_DEBUG. Referenced by ACE_Hash_Map_Reverse_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::dump(), and ACE_Hash_Map_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::dump(). 
 00386 {
00387   ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::dump_i");
00388 
00389   ACE_DEBUG ((LM_DEBUG, ACE_BEGIN_DUMP, this));
00390   ACE_DEBUG ((LM_DEBUG,  ACE_TEXT ("index_ = %d "), this->index_));
00391   ACE_DEBUG ((LM_DEBUG,  ACE_TEXT ("next_ = %x"), this->next_));
00392   ACE_DEBUG ((LM_DEBUG, ACE_END_DUMP));
00393 }
 | 
| 
 | ||||||||||
| 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 396 of file Hash_Map_Manager_T.cpp. References ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::map_man_. Referenced by ACE_Hash_Map_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::ACE_Hash_Map_Iterator_Ex(), ACE_Hash_Map_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::advance(), ACE_Hash_Map_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator++(), and ACE_Hash_Map_Reverse_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator--(). 
 00397 {
00398   ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::forward_i");
00399 
00400   if (this->map_man_->table_ == 0)
00401     return -1;
00402   // Handle initial case specially.
00403   else if (this->index_ == -1)
00404     {
00405       this->index_++;
00406       return this->forward_i ();
00407     }
00408   else if (this->index_ >= static_cast<ssize_t> (this->map_man_->total_size_))
00409     return 0;
00410 
00411   this->next_ = this->next_->next_;
00412   if (this->next_ == &this->map_man_->table_[this->index_])
00413     {
00414       while (++this->index_ < static_cast<ssize_t> (this->map_man_->total_size_))
00415         {
00416           this->next_ = this->map_man_->table_[this->index_].next_;
00417           if (this->next_ != &this->map_man_->table_[this->index_])
00418             break;
00419         }
00420     }
00421 
00422   return this->index_ < static_cast<ssize_t> (this->map_man_->total_size_);
00423 }
 | 
| 
 | ||||||||||
| Returns reference the Hash_Map_Manager_Ex that is being iterated over. Definition at line 592 of file Hash_Map_Manager_T.inl. References ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::map_man_. 
 | 
| 
 | ||||||||||
| 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 532 of file Hash_Map_Manager_T.inl. References ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::map_man_. Referenced by ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator *(), and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator->(). 
 00533 {
00534   ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::next");
00535 
00536   if (this->map_man_->table_ != 0
00537       && this->index_ < static_cast<ssize_t> (this->map_man_->total_size_)
00538       && this->index_ >= 0
00539       && this->next_ != &this->map_man_->table_[this->index_])
00540     {
00541       entry = this->next_;
00542       return 1;
00543     }
00544   else
00545     return 0;
00546 }
 | 
| 
 | ||||||||||
| 
Returns a reference to the interal element  
 Definition at line 560 of file Hash_Map_Manager_T.inl. References ACE_ASSERT, ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::next(). 
 00561 {
00562   ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator*");
00563   ACE_Hash_Map_Entry<EXT_ID, INT_ID> *retv = 0;
00564 
00565   int result = this->next (retv);
00566 
00567   ACE_UNUSED_ARG (result);
00568   ACE_ASSERT (result != 0);
00569 
00570   return *retv;
00571 }
 | 
| 
 | ||||||||||
| 
 | ||||||||||
| 
Returns a pointer to the interal element  
 Definition at line 575 of file Hash_Map_Manager_T.inl. References ACE_ASSERT, ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::next(). 
 00576 {
00577   ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::operator->");
00578   ACE_Hash_Map_Entry<EXT_ID, INT_ID> *retv = 0;
00579 
00580   int result = this->next (retv);
00581 
00582   ACE_UNUSED_ARG (result);
00583   ACE_ASSERT (result != 0);
00584 
00585   return retv;
00586 }
 | 
| 
 | ||||||||||
| Check if two iterators point to the same position. 
 Definition at line 599 of file Hash_Map_Manager_T.inl. References ACE_TRACE, ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::index_, ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::map_man_, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::next_. 
 | 
| 
 | ||||||||||
| Move backward 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 426 of file Hash_Map_Manager_T.cpp. References ACE_TRACE, and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::map_man_. Referenced by ACE_Hash_Map_Reverse_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::ACE_Hash_Map_Reverse_Iterator_Ex(), ACE_Hash_Map_Reverse_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::advance(), ACE_Hash_Map_Reverse_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator++(), and ACE_Hash_Map_Iterator_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator--(). 
 00427 {
00428   ACE_TRACE ("ACE_Hash_Map_Iterator_Base_Ex<EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK>::reverse_i");
00429 
00430   if (this->map_man_->table_ == 0)
00431     return -1;
00432   else if (this->index_ == static_cast<ssize_t> (this->map_man_->total_size_))
00433     {
00434       this->index_--;
00435       return this->reverse_i ();
00436     }
00437   else if (this->index_ < 0)
00438     return 0;
00439 
00440   this->next_ = this->next_->prev_;
00441   if (this->next_ == &this->map_man_->table_[this->index_])
00442     {
00443       while (--this->index_ >= 0)
00444         {
00445           this->next_ = this->map_man_->table_[this->index_].prev_;
00446           if (this->next_ != &this->map_man_->table_[this->index_])
00447             break;
00448         }
00449     }
00450 
00451   return this->index_ >= 0;
00452 }
 | 
| 
 | |||||
| 
 | |||||
| Keeps track of how far we've advanced in the table. 
 Definition at line 652 of file Hash_Map_Manager_T.h. Referenced by ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator!=(), and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator==(). | 
| 
 | |||||
| 
 | |||||
| Keeps track of how far we've advanced in a linked list in each table slot. Definition at line 656 of file Hash_Map_Manager_T.h. Referenced by ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator!=(), and ACE_Hash_Map_Iterator_Base_Ex< EXT_ID, INT_ID, HASH_KEY, COMPARE_KEYS, ACE_LOCK >::operator==(). | 
 1.3.6
 
1.3.6