Orxonox: orxonox::MetaObjectList Class Reference

# orxonox::MetaObjectList Class Reference

The MetaObjectList contains ObjectListBaseElements and their ObjectListBases. More...

`#include <src/core/MetaObjectList.h>`

List of all members.

## Public Member Functions

void | add (ObjectListBase *list, ObjectListBaseElement *element)
| Adds an ObjectList and an element of that list to the MetaObjectList.
| MetaObjectList ()
| Constructor: Sets first_ to zero.
| ~MetaObjectList ()
| Destructor: Removes all elements from the list, causing them to remove the stored ObjectListElement from the ObjectList.

## Public Attributes

MetaObjectListElement * | first_
| The first element in the list.

## Detailed Description

The MetaObjectList contains ObjectListBaseElements and their ObjectListBases.

The MetaObjectList is a single-linked list, containing all list-elements and their lists wherein the object that owns the MetaObjectList is registered. This allows much faster deletion of objects because no iteration is needed.

## Constructor & Destructor Documentation

orxonox::MetaObjectList::MetaObjectList | ( |  | ) |

Constructor: Sets first_ to zero.

References first_.

orxonox::MetaObjectList::~MetaObjectList | ( |  | ) |

Destructor: Removes all elements from the list, causing them to remove the stored ObjectListElement from the ObjectList.

References first_, and orxonox::MetaObjectListElement::next_.

## Member Function Documentation

void orxonox::MetaObjectList::add | ( | ObjectListBase * | list,
|  | ObjectListBaseElement * | element |
| ) |  |  |

Adds an ObjectList and an element of that list to the MetaObjectList.

Parameters:

  | list | The ObjectList wherein the element is
  | element | The element wherein the object is

References first_, and orxonox::MetaObjectListElement::next_.

## Member Data Documentation

MetaObjectListElement* orxonox::MetaObjectList::first_

The first element in the list.

Referenced by add(), MetaObjectList(), and ~MetaObjectList().

The documentation for this class was generated from the following files:

- src/core/MetaObjectList.h
- src/core/MetaObjectList.cc