.TH "SoChildList" 3 "Tue Jun 23 2026 23:48:38" "Version 4.0.10" "Coin" \" -*- nroff -*- .ad l .nh .SH NAME SoChildList \- The \fBSoChildList\fP class is a container for node children\&. .SH SYNOPSIS .br .PP .PP \fR#include \fP .PP Inherits \fBSoNodeList\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBSoChildList\fP (\fBSoNode\fP *const parent)" .br .ti -1c .RI "\fBSoChildList\fP (\fBSoNode\fP *const parent, const int size)" .br .ti -1c .RI "\fBSoChildList\fP (\fBSoNode\fP *const parent, const \fBSoChildList\fP &cl)" .br .ti -1c .RI "\fB~SoChildList\fP ()" .br .ti -1c .RI "void \fBappend\fP (\fBSoNode\fP *const node)" .br .ti -1c .RI "void \fBinsert\fP (\fBSoNode\fP *const ptr, const int addbefore)" .br .ti -1c .RI "void \fBremove\fP (const int index)" .br .ti -1c .RI "void \fBtruncate\fP (const int length)" .br .ti -1c .RI "void \fBcopy\fP (const \fBSoChildList\fP &cl)" .br .ti -1c .RI "void \fBset\fP (const int index, \fBSoNode\fP *const node)" .br .ti -1c .RI "void \fBtraverseInPath\fP (\fBSoAction\fP *const action, const int numindices, const int *indices)" .br .ti -1c .RI "void \fBtraverse\fP (\fBSoAction\fP *const action)" .br .ti -1c .RI "void \fBtraverse\fP (\fBSoAction\fP *const action, const int index)" .br .ti -1c .RI "void \fBtraverse\fP (\fBSoAction\fP *const action, \fBSoNode\fP *node)" .br .ti -1c .RI "void \fBtraverse\fP (\fBSoAction\fP *const action, const int first, const int last)" .br .ti -1c .RI "void \fBaddPathAuditor\fP (\fBSoPath\fP *const path)" .br .ti -1c .RI "void \fBremovePathAuditor\fP (\fBSoPath\fP *const path)" .br .in -1c Public Member Functions inherited from \fBSoNodeList\fP .in +1c .ti -1c .RI "\fBSoNodeList\fP (void)" .br .ti -1c .RI "\fBSoNodeList\fP (const int size)" .br .ti -1c .RI "\fBSoNodeList\fP (const \fBSoNodeList\fP &nl)" .br .ti -1c .RI "\fB~SoNodeList\fP ()" .br .ti -1c .RI "void \fBappend\fP (\fBSoNode\fP *const ptr)" .br .ti -1c .RI "\fBSoNode\fP * \fBoperator[]\fP (const int i) const" .br .ti -1c .RI "\fBSoNodeList\fP & \fBoperator=\fP (const \fBSoNodeList\fP &nl)" .br .in -1c Public Member Functions inherited from \fBSoBaseList\fP .in +1c .ti -1c .RI "\fBSoBaseList\fP (void)" .br .ti -1c .RI "\fBSoBaseList\fP (const int size)" .br .ti -1c .RI "\fBSoBaseList\fP (const \fBSoBaseList\fP &l)" .br .ti -1c .RI "\fB~SoBaseList\fP ()" .br .ti -1c .RI "void \fBappend\fP (\fBSoBase\fP *ptr)" .br .ti -1c .RI "void \fBinsert\fP (\fBSoBase\fP *ptr, const int addbefore)" .br .ti -1c .RI "void \fBremove\fP (const int index)" .br .ti -1c .RI "void \fBremoveItem\fP (\fBSoBase\fP *item)" .br .ti -1c .RI "void \fBtruncate\fP (const int length)" .br .ti -1c .RI "void \fBcopy\fP (const \fBSoBaseList\fP &l)" .br .ti -1c .RI "\fBSoBaseList\fP & \fBoperator=\fP (const \fBSoBaseList\fP &l)" .br .ti -1c .RI "\fBSoBase\fP * \fBoperator[]\fP (const int i) const" .br .ti -1c .RI "void \fBset\fP (const int i, \fBSoBase\fP *const ptr)" .br .ti -1c .RI "void \fBaddReferences\fP (const SbBool flag)" .br .ti -1c .RI "SbBool \fBisReferencing\fP (void) const" .br .in -1c Public Member Functions inherited from \fBSbPList\fP .in +1c .ti -1c .RI "\fBSbPList\fP (const int sizehint=DEFAULTSIZE)" .br .ti -1c .RI "\fBSbPList\fP (const \fBSbPList\fP &l)" .br .ti -1c .RI "\fB~SbPList\fP ()" .br .ti -1c .RI "void \fBcopy\fP (const \fBSbPList\fP &l)" .br .ti -1c .RI "\fBSbPList\fP & \fBoperator=\fP (const \fBSbPList\fP &l)" .br .ti -1c .RI "void \fBfit\fP (void)" .br .ti -1c .RI "void \fBappend\fP (void *item)" .br .ti -1c .RI "int \fBfind\fP (const void *item) const" .br .ti -1c .RI "void \fBinsert\fP (void *item, const int insertbefore)" .br .ti -1c .RI "void \fBremoveItem\fP (void *item)" .br .ti -1c .RI "void \fBremove\fP (const int index)" .br .ti -1c .RI "void \fBremoveFast\fP (const int index)" .br .ti -1c .RI "int \fBgetLength\fP (void) const" .br .ti -1c .RI "void \fBtruncate\fP (const int length, const int \fBfit\fP=0)" .br .ti -1c .RI "void ** \fBgetArrayPtr\fP (const int start=0) const" .br .ti -1c .RI "void *& \fBoperator[]\fP (const int index) const" .br .ti -1c .RI "int \fBoperator==\fP (const \fBSbPList\fP &l) const" .br .ti -1c .RI "int \fBoperator!=\fP (const \fBSbPList\fP &l) const" .br .ti -1c .RI "void * \fBget\fP (const int index) const" .br .ti -1c .RI "void \fBset\fP (const int index, void *item)" .br .in -1c .SS "Additional Inherited Members" Protected Member Functions inherited from \fBSbPList\fP .in +1c .ti -1c .RI "void \fBexpand\fP (const int size)" .br .ti -1c .RI "int \fBgetArraySize\fP (void) const" .br .in -1c .SH "Detailed Description" .PP The \fBSoChildList\fP class is a container for node children\&. This class does automatic notification on the parent nodes upon adding or removing children\&. .PP Methods for action traversal of the children are also provided\&. .SH "Constructor & Destructor Documentation" .PP .SS "SoChildList::SoChildList (\fBSoNode\fP *const parentptr)" Default constructor, sets parent container and initializes a minimal list\&. .SS "SoChildList::SoChildList (\fBSoNode\fP *const parentptr, const int size)" Constructor with hint about list size\&. .PP \fBSee also\fP .RS 4 \fBSoNodeList::SoNodeList(const int)\fP .RE .PP .SS "SoChildList::SoChildList (\fBSoNode\fP *const parentptr, const \fBSoChildList\fP & cl)" Copy constructor\&. .PP \fBSee also\fP .RS 4 \fBSoNodeList::SoNodeList(const SoNodeList &)\fP .RE .PP .SS "SoChildList::~SoChildList ()" Destructor\&. .SH "Member Function Documentation" .PP .SS "void SoChildList::append (\fBSoNode\fP *const node)" Append a new \fInode\fP instance as a child of our parent container\&. .PP Automatically notifies parent node and any \fBSoPath\fP instances auditing paths with nodes from this list\&. .PP Overloaded from parent to accept an \fBSoNode\fP pointer argument\&. .PP \fBSee also\fP .RS 4 \fBSbPList::insert()\fP .RE .PP .SS "void SoChildList::insert (\fBSoNode\fP *const node, const int addbefore)" Insert a new \fInode\fP instance as a child of our parent container at position \fIaddbefore\fP\&. .PP Automatically notifies parent node and any \fBSoPath\fP instances auditing paths with nodes from this list\&. .PP Overloaded from parent to accept an \fBSoNode\fP pointer argument\&. .PP \fBSee also\fP .RS 4 \fBSbPList::insert()\fP .RE .PP .SS "void SoChildList::remove (const int index)" Remove the item at \fIindex\fP, moving all subsequent items downwards one place in the list\&. .PP Automatically notifies parent node and any \fBSoPath\fP instances auditing paths with nodes from this list\&. .PP Overloaded from parent to handle notification\&. .PP \fBSee also\fP .RS 4 \fBSbPList::remove(const int index)\fP .RE .PP .SS "void SoChildList::truncate (const int length)" Shorten the list to contain \fIlength\fP elements, removing items from \fIindex\fP \fIlength\fP and onwards\&. .PP If \fIfit\fP is non-zero, will also shrink the internal size of the allocated array\&. Note that this is much less efficient than not re-fitting the array size\&. .PP Overloaded from parent to handle notification\&. .PP \fBSee also\fP .RS 4 \fBSbPList::truncate()\fP .RE .PP .SS "void SoChildList::copy (const \fBSoChildList\fP & cl)" Copy contents of \fIcl\fP into this list\&. .PP Overloaded from parent to handle notification\&. .PP \fBSee also\fP .RS 4 \fBSbPList::copy()\fP .RE .PP .SS "void SoChildList::set (const int index, \fBSoNode\fP *const node)" Index operator to set element at \fIindex\fP\&. Does \fInot\fP expand array bounds if \fIindex\fP is outside the list\&. .PP Overloaded from parent to handle notification\&. .PP \fBSee also\fP .RS 4 \fBSbPList::set()\fP .RE .PP .SS "void SoChildList::traverseInPath (\fBSoAction\fP *const action, const int numindices, const int * indices)" Optimized IN_PATH traversal method\&. .PP This method is an extension versus the Open Inventor API\&. .SS "void SoChildList::traverse (\fBSoAction\fP *const action)" Traverse all nodes in the list, invoking their methods for the given \fIaction\fP\&. .SS "void SoChildList::traverse (\fBSoAction\fP *const action, const int index)" Traverse the node at \fIindex\fP (and possibly its children, if it is a group node), applying the node's method for the given \fIaction\fP\&. .SS "void SoChildList::traverse (\fBSoAction\fP *const action, \fBSoNode\fP * node)" Traverse the \fInode\fP (and possibly its children, if it is a group node), applying the nodes method for the given \fIaction\fP\&. .SS "void SoChildList::traverse (\fBSoAction\fP *const action, const int first, const int last)" Traverse child nodes in the list from index \fIfirst\fP up to and including index \fIlast\fP, or until the \fBSoAction::hasTerminated()\fP flag of \fIaction\fP has been set\&. .SS "void SoChildList::addPathAuditor (\fBSoPath\fP *const path)" Notify \fIpath\fP whenever this list of node children changes\&. .SS "void SoChildList::removePathAuditor (\fBSoPath\fP *const path)" Remove \fIpath\fP as an auditor for our list of node children\&. .SH "Author" .PP Generated automatically by Doxygen for Coin from the source code\&.