Open Inventor Reference
SoBaseList Class Reference

Subclasses of the SbPList class which hold lists of pointers of a specific type. More...

#include <Inventor/SoLists.h>

Inheritance diagram for SoBaseList:
SbPList SoEngineList SoNodeList SoPathList SoChildList

Public Member Functions

 SoBaseList ()
 Constructor.
 
 SoBaseList (int size)
 Constructor that pre-allocates storage for size pointers.
 
 SoBaseList (const SoBaseList &l)
 Constructor that copies the contents of another list.
 
 ~SoBaseList ()
 Destructor.
 
void append (SoBase *ptr)
 Adds a pointer to the end of the list.
 
void insert (SoBase *ptr, int addBefore)
 Inserts given pointer in list before pointer with given index.
 
void remove (int which)
 Removes pointer with given index.
 
void truncate (int start)
 Removes all pointers after one with given index, inclusive.
 
void copy (const SoBaseList &l)
 Copies a list, keeping all reference counts correct.
 
SoBaseListoperator= (const SoBaseList &l)
 Copies a list, keeping all reference counts correct.
 
SoBaseoperator[] (int i) const
 Access an element of a list.
 
void set (int i, SoBase *ptr)
 Sets an element of a list.
 
void addReferences (bool flag)
 Indicates whether to call ref() and unref() for bases in the list when adding/removing them.
 
- Public Member Functions inherited from SbPList
 SbPList ()
 Constructor.
 
 SbPList (int initSize)
 initSize specifies an initial size for the list, which is useful as an optimization if you can estimate the length of the list before you construct it.
 
 SbPList (const SbPList &pl)
 Copy constructor.
 
 ~SbPList ()
 Destructor.
 
void append (void *ptr)
 Adds given pointer to end of list.
 
int find (const void *ptr) const
 Returns index of given pointer in list, or -1 if not found.
 
void insert (void *ptr, int addBefore)
 Inserts given pointer in list before pointer with given index.
 
void remove (int which)
 Removes pointer with given index.
 
int getLength () const
 Returns number of pointers in list.
 
void truncate (int start)
 Removes all pointers after one with given index, inclusive.
 
void copy (const SbPList &pl)
 Copy a list.
 
SbPListoperator= (const SbPList &pl)
 Assignment operator; copies list into this list.
 
void *& operator[] (int i) const
 Returns pointer with given index.
 
bool operator== (const SbPList &pl) const
 Equality and inequality operators.
 
bool operator!= (const SbPList &pl) const
 Equality and inequality operators.
 
void * get (int i) const
 Internal versions of [] that do not check for bounds:
 
void set (int i, void *j)
 

Detailed Description

Each contains: A default constructor A constructor taking an initial number of items in the list An "append" function that adds a pointer to the end of the list The index ([]) operator that returns the nth pointer in the list Maintains a list of pointers to instances of the SoBase classes.

This subclass of SbPList holds lists of pointers to instances of classes derived from SoBase (an abstract class). A flag indicates whether adding an instance pointer to the list should add a reference to the instance. If this flag is TRUE, then adding and removing pointers from the list updates reference counts in the corresponding instances.

See Also
SoBase, SoNodeList, SoPathList

Definition at line 117 of file SoLists.h.

Constructor & Destructor Documentation

◆ SoBaseList() [1/3]

SoBaseList::SoBaseList ( )

◆ SoBaseList() [2/3]

SoBaseList::SoBaseList ( int  size)

◆ SoBaseList() [3/3]

SoBaseList::SoBaseList ( const SoBaseList l)

◆ ~SoBaseList()

SoBaseList::~SoBaseList ( )
inline

Definition at line 126 of file SoLists.h.

References SbPList::truncate().

Member Function Documentation

◆ addReferences()

void SoBaseList::addReferences ( bool  flag)
inline

The default value is TRUE.

Definition at line 155 of file SoLists.h.

◆ append()

void SoBaseList::append ( SoBase ptr)

◆ copy()

void SoBaseList::copy ( const SoBaseList l)

◆ insert()

void SoBaseList::insert ( SoBase ptr,
int  addBefore 
)

◆ operator=()

SoBaseList & SoBaseList::operator= ( const SoBaseList l)
inline

Definition at line 143 of file SoLists.h.

References SbPList::copy().

◆ operator[]()

SoBase * SoBaseList::operator[] ( int  i) const
inline

Definition at line 147 of file SoLists.h.

◆ remove()

void SoBaseList::remove ( int  which)

◆ set()

void SoBaseList::set ( int  i,
SoBase ptr 
)

◆ truncate()

void SoBaseList::truncate ( int  start)

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