- Aldebaran documentation |
- C++ Libraries |
- index

libqi-api 2.8.7.4

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- Class List
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
qi::IteratorTypeInterface Class Referenceabstract

`#include <typeinterface.hpp>`

## Public Member Functions
virtual AnyReference | dereference (void *storage)=0
virtual void | next (void **storage)=0
| Increment the iterator. More...
virtual bool | equals (void *s1, void *s2)=0
| Check for iterator equality. More...
TypeKind | kind () override
Public Member Functions inherited from qi::TypeInterface
virtual | ~TypeInterface ()=default
virtual const TypeInfo & | info ()=0
| Get the TypeInfo corresponding to this type. More...
virtual void * | initializeStorage (void *ptr=nullptr)=0
virtual void * | ptrFromStorage (void **)=0
virtual void * | clone (void *)=0
| Allocate a storage and copy the value given as an argument. More...
virtual void | destroy (void *)=0
| Free all resources of a storage. More...
virtual bool | less (void *a, void *b)=0
const char * | infoString ()
qi::Signature | signature (void *storage=nullptr, bool resolveDynamic=false)

## Additional Inherited Members
Static Public Member Functions inherited from qi::TypeInterface
static TypeInterface * | fromSignature (const qi::Signature &sig)

## Detailed Description

Interface for an iterator (on a list or a map)

Iterators become invalid if the parent container is destroyed and no method should be called in such a case.

Definition at line 164 of file typeinterface.hpp.

## Member Function Documentation

virtual AnyReference qi::IteratorTypeInterface::dereference | ( | void * | storage | ) |
| pure virtual

Get the value pointed by the iterator

Returned reference is expected to point to somewhere in the iterator, or the container. It remains valid as long as the iterator is neither modified by next() nor destroyed, and the parent container is not destroyed.

Implemented in qi::TypeSimpleIteratorImpl< T >.

virtual bool qi::IteratorTypeInterface::equals | ( | void * | s1,
|  | void * | s2
| ) |  |
| pure virtual

Check for iterator equality.

Implemented in qi::TypeSimpleIteratorImpl< T >.

TypeKind qi::IteratorTypeInterface::kind | ( |  | ) |
| inline override virtual

Get the kind of the data.

This is used to downcast the TypeInterface object to a specialized interface.

Reimplemented from qi::TypeInterface.

Definition at line 180 of file typeinterface.hpp.

virtual void qi::IteratorTypeInterface::next | ( | void ** | storage | ) |
| pure virtual

Increment the iterator.

Implemented in qi::TypeSimpleIteratorImpl< T >.

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

- /home/opennao/work/release-2.8/sdk/libqi/qi/type/typeinterface.hpp