# ObjList Class Reference

An object list class. More...

`#include <yateclass.h>`

Inheritance diagram for ObjList:

List of all members.

## Public Member Functions

| ObjList ()
virtual | ~ObjList ()
virtual void * | getObject (const String &name) const
unsigned int | length () const
unsigned int | count () const
GenObject * | get () const
GenObject * | set (const GenObject *obj, bool delold=true)
ObjList * | next () const
ObjList * | last () const
ObjList * | skipNull () const
ObjList * | skipNext () const
ObjList * | operator+ (int index) const
GenObject * | operator[] (int index) const
GenObject * | operator[] (const String &str) const
ObjList * | find (const GenObject *obj) const
ObjList * | find (const String &str) const
ObjList * | insert (const GenObject *obj, bool compact=true)
ObjList * | append (const GenObject *obj, bool compact=true)
GenObject * | remove (bool delobj=true)
GenObject * | remove (GenObject *obj, bool delobj=true)
void | clear ()
bool | autoDelete ()
void | setDelete (bool autodelete)

## Detailed Description

An object list class.

A simple single-linked object list handling class

## Constructor & Destructor Documentation

ObjList | ( |  | ) |

Creates a new, empty list.

virtual ~ObjList | ( |  | ) | `[virtual]`

Destroys the list and everything in it.

## Member Function Documentation

virtual void* getObject | ( | const String & | name | ) | const`[virtual]`

Get a pointer to a derived class given that class name

Parameters:

  | name | Name of the class we are asking for

Returns:
  Pointer to the requested class or NULL if this object doesn't implement it

Reimplemented from GenObject.

unsigned int length | ( |  | ) | const

Get the number of elements in the list

Returns:
  Count of items

unsigned int count | ( |  | ) | const

Get the number of non-null objects in the list

Returns:
  Count of items

GenObject* get | ( |  | ) | const`[inline]`

Get the object associated to this list item

Returns:
  Pointer to the object or NULL

GenObject* set | ( | const GenObject * | obj,
|  | bool | delold = `true` |
| ) |  |  |

Set the object associated to this list item

Parameters:

  | obj | Pointer to the new object to set
  | delold | True to delete the old object (default)

Returns:
  Pointer to the old object if not destroyed

ObjList* next | ( |  | ) | const`[inline]`

Get the next item in the list

Returns:
  Pointer to the next item in list or NULL

ObjList* last | ( |  | ) | const

Get the last item in the list

Returns:
  Pointer to the last item in list

ObjList* skipNull | ( |  | ) | const

Skip over NULL holding items in the list

Returns:
  Pointer to the first non NULL holding item in list or NULL

ObjList* skipNext | ( |  | ) | const

Advance in the list skipping over NULL holding items

Returns:
  Pointer to the next non NULL holding item in list or NULL

ObjList* operator+ | ( | int | index | ) | const

Pointer-like indexing operator

Parameters:

  | index | Index of the list item to retrive

Returns:
  Pointer to the list item or NULL

GenObject* operator[] | ( | int | index | ) | const

Array-like indexing operator

Parameters:

  | index | Index of the object to retrive

Returns:
  Pointer to the object or NULL

GenObject* operator[] | ( | const String & | str | ) | const

Array-like indexing operator

Parameters:

  | str | String value of the object to locate

Returns:
  Pointer to the object or NULL

ObjList* find | ( | const GenObject * | obj | ) | const

Get the item in the list that holds an object

Parameters:

  | obj | Pointer to the object to search for

Returns:
  Pointer to the found item or NULL

ObjList* find | ( | const String & | str | ) | const

Get the item in the list that holds an object by String value

Parameters:

  | str | String value (toString) of the object to search for

Returns:
  Pointer to the found item or NULL

ObjList* insert | ( | const GenObject * | obj,
|  | bool | compact = `true` |
| ) |  |  |

Insert an object at this point

Parameters:

  | obj | Pointer to the object to insert
  | compact | True to replace NULL values in list if possible

Returns:
  A pointer to the inserted list item

ObjList* append | ( | const GenObject * | obj,
|  | bool | compact = `true` |
| ) |  |  |

Append an object to the end of the list

Parameters:

  | obj | Pointer to the object to append
  | compact | True to replace NULL values in list if possible

Returns:
  A pointer to the inserted list item

GenObject* remove | ( | bool | delobj = `true` | ) |

Delete this list item

Parameters:

  | delobj | True to delete the object (default)

Returns:
  Pointer to the object if not destroyed

GenObject* remove | ( | GenObject * | obj,
|  | bool | delobj = `true` |
| ) |  |  |

Delete the list item that holds a given object

Parameters:

  | obj | Object to search in the list
  | delobj | True to delete the object (default)

Returns:
  Pointer to the object if not destroyed

void clear | ( |  | ) |

Clear the list and optionally delete all contained objects

bool autoDelete | ( |  | ) | `[inline]`

Get the automatic delete flag

Returns:
  True if will delete on destruct, false otherwise

void setDelete | ( | bool | autodelete | ) | `[inline]`

Set the automatic delete flag

Parameters:

  | autodelete | True to delete on destruct, false otherwise

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

- yateclass.h