# class SceneNodeCollection

SceneNodeCollection holds a number of SceneNode objects. The objects can be looked up by their names (if they have been named through SetName()).

See also: ObjectCollection

# Methods

Method Description
AddObject Adds an object to the collection. The handle refers to the object until the object is removed from the collection again.
AddObjectSorted Adds an object to the collection, as AddObject, but sorts the object into the collection based on its name.
AddSceneNode Adds an object object to the collection. The handle refers to the object until it is removed from the collection again.
FindObject Finds a named object in the collection. The first object with this name is returned. The search is case-sensitive.
FindSceneNode Finds a named object.
GetClass Get the name of the SceneNodeCollection class.
GetFirstItem Returns the start of the collection. The handle returned refers to the first object in the collection. If the handle is null, then the collection is empty.
GetItem Returns the handle of the i:th item.
GetItemAsObject Returns the object of the i:th item.
GetItemCount The number of items in the collection.
GetItemsObject The object the handle is referring to.
GetNextItem Returns the handle to the next item in the collection. Use GetFirstItem and this method to step through the collection. If the return is null, the end of the collection has been reached.
GetNextItemAsSceneNode Returns the object of the next item.
GetSceneNode The object the handle is referring to.
IsA Returns true if SceneNodeCollection is a or is a descendant of the class named as the type parameter.
IsItemInCollection Returns true if the item is in the collection.
IsNull Returns true if the SceneNodeCollection object is invalid.
IsObjectInCollection Returns true if the object is in the collection.
IsSceneNodeInCollection Returns true if the object is in the collection.
RemoveAllItems Removes all items from the collection.
RemoveItem Removes an item from the collection. The handle returned is the first item after this item that is in the collection. If the return is null, the item was the last item in the collection. Warning! The handle is invalid after the removal of the object.
RemoveObject Removes an object from the collection. Only the first occurance of the object is removed from the collection.
RemoveSceneNode Removes an object from the collection. Only the first occurrence of the object is removed.

# Static methods

Method Description
IsClassA Returns true if the class is a or is a descendant of the class named as the type parameter.
SafeCast SafeCast makes sure the input object is of a class that can be cast into spSceneNodeCollection, and if this is the case, returns the object cast into spSceneNodeCollection.

# Methods details

# AddObject

Adds an object to the collection. The handle refers to the object until the object is removed from the collection again.

# Syntax

rhandle AddObject( spObject obj );

# Parameters

Type Name Min Max Description
Object obj The object that is to be added to the collection.

# Return value

Type: rhandle

# AddObjectSorted

Adds an object to the collection, as AddObject, but sorts the object into the collection based on its name.

# Syntax

rhandle AddObjectSorted( spObject obj , bool ascending );

# Parameters

Type Name Min Max Description
Object obj The object that is to be added to the collection.
bool ascending Determines the sorting order.

# Return value

Type: rhandle

# AddSceneNode

Adds an object object to the collection. The handle refers to the object until it is removed from the collection again.

# Syntax

rhandle AddSceneNode( spSceneNode obj );

# Parameters

Type Name Min Max Description
SceneNode obj The node that is to be added to the collection.

# Return value

Type: rhandle

# FindObject

Finds a named object in the collection. The first object with this name is returned. The search is case-sensitive.

# Syntax

spObject FindObject( const char * name );

# Parameters

Type Name Min Max Description
const char * name The name of an object in the collection.

# Return value

Type: Object

# FindSceneNode

Finds a named object.

# Syntax

spSceneNode FindSceneNode( const char * name );

# Parameters

Type Name Min Max Description
const char * name The name of the searched for object.

# Return value

Type: SceneNode

# GetClass

Get the name of the SceneNodeCollection class.

# Syntax

spString GetClass();

# Parameters

GetClass takes no parameters.

# Return value

Type: spString

# GetFirstItem

Returns the start of the collection. The handle returned refers to the first object in the collection. If the handle is null, then the collection is empty.

# Syntax

rhandle GetFirstItem();

# Parameters

GetFirstItem takes no parameters.

# Return value

Type: rhandle

# GetItem

Returns the handle of the i:th item.

# Syntax

rhandle GetItem( unsigned int index );

# Parameters

Type Name Min Max Description
unsigned int index The index of an object in the collection.

# Return value

Type: rhandle

# GetItemAsObject

Returns the object of the i:th item.

# Syntax

spObject GetItemAsObject( unsigned int index );

# Parameters

Type Name Min Max Description
unsigned int index The index of an object in the collection.

# Return value

Type: Object

# GetItemCount

The number of items in the collection.

# Syntax

unsigned int GetItemCount();

# Parameters

GetItemCount takes no parameters.

# Return value

Type: unsigned int

# GetItemsObject

The object the handle is referring to.

# Syntax

spObject GetItemsObject( rhandle objhandle );

# Parameters

Type Name Min Max Description
rhandle objhandle The handle of an object in the collection.

# Return value

Type: Object

# GetNextItem

Returns the handle to the next item in the collection. Use GetFirstItem and this method to step through the collection. If the return is null, the end of the collection has been reached.

# Syntax

rhandle GetNextItem( rhandle objhandle );

# Parameters

Type Name Min Max Description
rhandle objhandle The handle of an object i.

# Return value

Type: rhandle

# GetNextItemAsSceneNode

Returns the object of the next item.

# Syntax

spSceneNode GetNextItemAsSceneNode( rhandle *phandle_rhandleInputDataPtr );

# Parameters

Type Name Min Max Description
RhandleData phandle The handle of a node in the collection.

# Return value

Type: SceneNode

# GetSceneNode

The object the handle is referring to.

# Syntax

spSceneNode GetSceneNode( rhandle objhandle );

# Parameters

Type Name Min Max Description
rhandle objhandle The handle of the node.

# Return value

Type: SceneNode

# IsA

Returns true if SceneNodeCollection is a or is a descendant of the class named as the type parameter.

# Syntax

bool IsA( const char * type );

# Parameters

Type Name Min Max Description
const char * type Name of the class to check if SceneNodeCollection is, or is a descendant of.

# Return value

Type: bool

# IsItemInCollection

Returns true if the item is in the collection.

# Syntax

bool IsItemInCollection( rhandle objhandle );

# Parameters

Type Name Min Max Description
rhandle objhandle The handle of an object to be checked for.

# Return value

Type: bool

# IsNull

Returns true if the SceneNodeCollection object is invalid.

# Syntax

bool IsNull();

# Parameters

IsNull takes no parameters.

# Return value

Type: bool

# IsObjectInCollection

Returns true if the object is in the collection.

# Syntax

bool IsObjectInCollection( spObject pobj );

# Parameters

Type Name Min Max Description
Object pobj The object to be checked for.

# Return value

Type: bool

# IsSceneNodeInCollection

Returns true if the object is in the collection.

# Syntax

bool IsSceneNodeInCollection( spSceneNode pobj );

# Parameters

Type Name Min Max Description
SceneNode pobj Is an arbitrary node.

# Return value

Type: bool

# RemoveAllItems

Removes all items from the collection.

# Syntax

void RemoveAllItems();

# Parameters

RemoveAllItems takes no parameters.

# RemoveItem

Removes an item from the collection. The handle returned is the first item after this item that is in the collection. If the return is null, the item was the last item in the collection. Warning! The handle is invalid after the removal of the object.

# Syntax

rhandle RemoveItem( rhandle objhandle );

# Parameters

Type Name Min Max Description
rhandle objhandle The handle of the object that is to be removed.

# Return value

Type: rhandle

# RemoveObject

Removes an object from the collection. Only the first occurance of the object is removed from the collection.

# Syntax

void RemoveObject( spObject pobj );

# Parameters

Type Name Min Max Description
Object pobj The object that is to be removed.

# RemoveSceneNode

Removes an object from the collection. Only the first occurrence of the object is removed.

# Syntax

void RemoveSceneNode( spSceneNode pobj );

# Parameters

Type Name Min Max Description
SceneNode pobj The node to be be removed.

# Static methods details

# IsClassA

Returns true if the class is a or is a descendant of the class named as the type parameter.

# Syntax

static bool IsClassA( const char * type );

# Parameters

Type Name Min Max Description
const char * type Name of the class to check if the class is, or is a descendant of.

# Return value

Type: bool

# SafeCast

SafeCast makes sure the input object is of a class that can be cast into spSceneNodeCollection, and if this is the case, returns the object cast into spSceneNodeCollection.

# Syntax

static spSceneNodeCollection SafeCast( spObject object );

# Parameters

Type Name Min Max Description
Object object Object to cast.

# Return value

Type: SceneNodeCollection