Developer Documentation

Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
PluginFunctions::ObjectIterator Class Reference

Core Data Iterator. More...

`#include <OpenFlipper/BasePlugin/PluginFunctions.hh>`

## Public Types
typedef BaseObjectData | value_type
| type of the Objects the iterator works on
typedef BaseObjectData * | value_handle
| handle type (just an int)
typedef value_type & | reference
| reference type
typedef value_type * | pointer
| basic pointer type

## Public Member Functions
| ObjectIterator (IteratorRestriction _restriction=ALL_OBJECTS, DataType _dataType=DATA_ALL)
| Use this constructor for iterating through your data. More...
| ObjectIterator (BaseObjectData *pos, IteratorRestriction _restriction=ALL_OBJECTS, DataType _dataType=DATA_ALL)
| additional constructor starting at a given position
| operator value_handle ()
| return the current position of the iterator
bool | operator== (const ObjectIterator &_rhs) const
| compare iterators
bool | operator!= (const ObjectIterator &_rhs) const
| compare iterators
ObjectIterator & | operator= (const ObjectIterator &_rhs)
| assign iterators
pointer | operator-> ()
| dereference
ObjectIterator & | operator++ ()
| next element
ObjectIterator & | operator-- ()
| last element
BaseObjectData * | operator* ()
| dereference the iterator More...
BaseObjectData * | index ()
| return current position of the iterator

## Private Member Functions
void | proceedToNextBaseObjectData (BaseObject *&_object)

## Private Attributes
BaseObjectData * | pos_
| current position of the iterator
DataType | dataType_
| returned data types of the iterator
IteratorRestriction | restriction_
| Restriction of the iterator.

## Detailed Description

Core Data Iterator.

This is the core iterator for the whole framework. You should use this iterator to access your data.
You can choose if the iterator returns only Target, Source or all objects.
Additionally you can set the type of objects returned by the iterator. The ObjectIterator will only return real Objects. Groups are not considered to be objects

Definition at line 441 of file PluginFunctions.hh.

## Constructor & Destructor Documentation

## ◆ ObjectIterator()

PluginFunctions::ObjectIterator::ObjectIterator | ( | IteratorRestriction | _restriction = `ALL_OBJECTS`,
|  | DataType | _dataType = `DATA_ALL`
| ) |  |

Use this constructor for iterating through your data.

Parameters

  _restriction | Use this parameter to define which objects will be returned. You can select between ALL_OBJECTS , TARGET_OBJECTS , SOURCE_OBJECTS.
  _dataType | Use this parameter to select the returned object types. You can use DATA_ALL DATA_POLY_MESH DATA_TRIANGLE_MESH DATA_VOLUME

Definition at line 56 of file PluginFunctionsIterator.cc.

## Member Function Documentation

## ◆ operator*()

BaseObjectData * PluginFunctions::ObjectIterator::operator* | ( |  | ) |

dereference the iterator

This operator returns a pointer to the current object the iterator points to.

Returns
  Pointer to the current ObjectData

Definition at line 172 of file PluginFunctionsIterator.cc.

## ◆ proceedToNextBaseObjectData()

void PluginFunctions::ObjectIterator::proceedToNextBaseObjectData | ( | BaseObject *& | _object | ) |
| inline private

Takes an object and goes through the object tree to the next BaseObjectData It stops at the root node.

Definition at line 181 of file PluginFunctionsIterator.cc.

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

- OpenFlipper/BasePlugin/PluginFunctions.hh
- OpenFlipper/BasePlugin/PluginFunctionsIterator.cc