// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _TCollection_BasicMapIterator_HeaderFile #define _TCollection_BasicMapIterator_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_Macro_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Standard_Address_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif class TCollection_BasicMap; //! This class provides basic services for the
//! iterators on Maps. The iterators are inherited
//! from this one.
//!
//! The iterator contains an array of pointers
//! (buckets). Each bucket is a pointer on a node. A
//! node contains a pointer on the next node.
//!
//! This class provides also basic services for the
//! implementation of Maps.
//! A map iterator provides a step by step exploration of all
//! entries of a map. After initialization of a concrete derived
//! iterator, use in a loop:
//! - the function More to know if there is a current entry for
//! the iterator in the map,
//! - then the functions which read data on an entry of the
//! map (these functions are provided by each type of map),
//! - then the function Next to set the iterator to the next entry of the map.
//! Warning
//! - A map is a non-ordered data structure. The order in
//! which entries of a map are explored by the iterator
//! depends on its contents, and change when the map is edited.
//! - It is not recommended to modify the contents of a map
//! during iteration: the result is unpredictable.
class TCollection_BasicMapIterator { public: void* operator new(size_t,void* anAddress) { return anAddress; } void* operator new(size_t size) { return Standard::Allocate(size); } void operator delete(void *anAddress) { if (anAddress) Standard::Free((Standard_Address&)anAddress); } //! Resets the iterator to the first node.
Standard_EXPORT void Reset() ; //! Returns true if there is a current entry for this iterator in the map.
//! Use the function Next to set this iterator to the position of
//! the next entry, if it exists.
Standard_Boolean More() const; //! Sets this iterator to the position of the next entry of the map.
//! Nothing is changed if there is no more entry to explore in
//! the map: this iterator is always positioned on the last entry
//! of the map but the function More returns false.
Standard_EXPORT void Next() ; protected: //! Creates an empty iterator.
Standard_EXPORT TCollection_BasicMapIterator(); //! Initialize on the first node in the buckets.
Standard_EXPORT TCollection_BasicMapIterator(const TCollection_BasicMap& M); //! Initialize on the first node in the buckets.
Standard_EXPORT void Initialize(const TCollection_BasicMap& M) ; Standard_Address myNode; private: Standard_Integer myNbBuckets; Standard_Address myBuckets; Standard_Integer myBucket; }; #include // other Inline functions and methods (like "C++: function call" methods) #endif