Atlas_Objects_BaseObjectData_iterator (3) - Linux Manuals
Atlas_Objects_BaseObjectData_iterator: The iterator first iterates over the contents of m_obj->m_attributes, holding an iterator to the attributes map in m_I.
NAME
Atlas::Objects::BaseObjectData::iterator - The iterator first iterates over the contents of m_obj->m_attributes, holding an iterator to the attributes map in m_I.
SYNOPSIS
#include <BaseObject.h>
Classes
Public Types
typedef std::pair< std::string, PsuedoElement > value_type
Public Member Functions
iterator (const iterator &I)
iterator (BaseObjectData &obj, int current_class)
iterator & operator= (const iterator &I)
iterator & operator++ ()
iterator operator++ (int)
bool operator== (const iterator &I) const
bool operator!= (const iterator &I) const
const value_type & operator* () const
const value_type * operator-> () const
Friends
class BaseObjectData
class const_iterator
class PsuedoElement
Detailed Description
The iterator first iterates over the contents of m_obj->m_attributes, holding an iterator to the attributes map in m_I.
When m_I reaches the end, it iterates through the named attributes in each of the classes, starting with the terminal child and working its way up to the ultimate parent, BaseObjectData. It stores the class number in m_current_class and the name of the current attribute in m_val.first. Since BaseObjectData has no named attributes, an iterator with m_current_class == BASE_OBJECT_NO is considered to be the end of the map. The iterator constructor has an argument which lets you begin() at the first named attribute in some class, and only iterate through that class and its parents. The same iterator, treated as an end(), lets you iterate through all attributes which are either named in derived classes or in m_attributes.
Author
Generated automatically by Doxygen for Atlas-C++ from the source code.