---
name: "SoNodeList"
section: "3iv"
platform: "linux"
package: "inventor-doc"
version: "2.1.6+ds-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/SoNodeList/3iv"
---

# SoNodeList(3iv)

maintains a list of pointers to nodes

## NAME

SoNodeList — maintains a list of pointers to nodes

## INHERITS FROM

SbPList \> SoBaseList \> SoNodeList

## SYNOPSIS

**#include \<Inventor/SoLists.h\>**

Methods from class SoNodeList:

	**SoNodeList()**\
 	**SoNodeList(int size)**\
 	**SoNodeList(const SoNodeList &l)**\
 	**~SoNodeList()**\
 **void**	**append(SoNode \*node)**\
 **SoNode \***	**operator \[\](int i) const**\
 **SoNodeList &**	**operator =(const SoNodeList &l)**

Methods from class SoBaseList:

**void**	**insert(SoBase \*ptr, int addBefore)**\
 **void**	**remove(int which)**\
 **void**	**truncate(int start)**\
 **void**	**copy(const SoBaseList &l)**\
 **void**	**set(int i, SoBase \*ptr)**\
 **void**	**addReferences(SbBool flag)**

Methods from class SbPList:

**int**	**find(const void \*ptr) const**\
 **int**	**getLength() const**\
 **int**	**operator ==(const SbPList &pl) const**\
 **int**	**operator !=(const SbPList &pl) const**

## DESCRIPTION

**This subclass of SoBaseList** holds lists of pointers to **SoNode**s. It updates reference counts to nodes in the list whenever adding or removing pointers.

## METHODS

	**SoNodeList()**\
 Constructor.

	**SoNodeList(int size)**\
 Constructor that pre-allocates storage for **size** pointers.

	**SoNodeList(const SoNodeList &l)**\
 Constructor that copies the contents of another list.

	**~SoNodeList()**\
 Destructor.

**void**	**append(SoNode \*node)**\
 Adds a pointer to the end of the list.

**SoNode \***	**operator \[\](int i) const**\
 Accesses an element of a list.

**SoNodeList &**	**operator =(const SoNodeList &l)**\
 Copies a list, keeping all reference counts correct.

## SEE ALSO

**SoNode**
