Abstract group node that changes traversal from the scene graph to a list of render objects. More...
#include <Inventor/nodes/SoRenderList.h>
Public Member Functions | |
virtual SoType | getTypeId () const |
SoRenderList () | |
SoRenderList (int numChildren) | |
void | addRenderObjectType (SoType t) |
void | removeRenderObjectType (SoType t) |
int | getNumRenderObjectTypes () const |
SoType | getRenderObjectType (int i) const |
virtual void | notify (SoNotList *list) |
void | addRenderObjectName (SbName n) |
void | removeRenderObjectName (SbName n) |
int | getNumRenderObjectNames () const |
const SbName & | getRenderObjectName (int i) const |
void | removeAllRenderObjectNames () |
Static Public Member Functions | |
static SoType | getClassTypeId () |
Public Attributes | |
SoSFBool | isHead |
This abstract node keeps track of paths to the shapes beneath it. Derived classes can traverse or reorganize this list instead of traversing in scene graph order. As the scene graph changes, the SoRenderList node will update the list of paths, calling virtual functions for the derived classes to update their data structures.
NOTE: This class does not exist in Open Inventor 10.0 and later.By default, the SoRenderList node keeps track of paths to instances of SoShape, SoLOD, and some manipulators. The list of types to look for can be changed with the functions addRenderObjectType() and removeRenderObjectType(). You can also mark a specific node as a Render Object by giving its name through addRenderObjectName().
Applications should not use an instance of class SoRenderList directly; instead, instances of the derived classes, such as SoValueOrdering and SoOctreeOrdering, should be used.
Note: Do not modify an instance of this node or any of its children unless this node has a ref count greater than zero. If the node is itself the child of a grouping node then the ref count is automatically greater than zero, otherwise you must explicitly increment the ref count by calling the ref() method.
SoGetPrimitiveCountAction, SoLevelOfSimplification, SoOctreeOrdering, SoValueOrdering SoOcclusionCulling
SoRenderList::SoRenderList | ( | ) |
Default constructor.
SoRenderList::SoRenderList | ( | int | numChildren | ) |
Constructor that takes approximate number of children as a hint.
void SoRenderList::addRenderObjectName | ( | SbName | n | ) |
Adds a new name to the search list.
void SoRenderList::addRenderObjectType | ( | SoType | t | ) |
Adds a new type to the search list.
static SoType SoRenderList::getClassTypeId | ( | ) | [static] |
Returns the type identifier for this class.
Reimplemented from SoSeparator.
Reimplemented in SoOcclusionCulling, SoOctreeOrdering, and SoValueOrdering.
int SoRenderList::getNumRenderObjectNames | ( | ) | const [inline] |
Returns number of names in the search list.
int SoRenderList::getNumRenderObjectTypes | ( | ) | const [inline] |
Returns number of types in the search list.
const SbName& SoRenderList::getRenderObjectName | ( | int | i | ) | const |
Returns the i th name of the search list.
SoType SoRenderList::getRenderObjectType | ( | int | i | ) | const [inline] |
Returns the i th type of the search list.
virtual SoType SoRenderList::getTypeId | ( | ) | const [virtual] |
Returns the type identifier for this specific instance.
Reimplemented from SoSeparator.
Reimplemented in SoOcclusionCulling, SoOctreeOrdering, and SoValueOrdering.
virtual void SoRenderList::notify | ( | SoNotList * | list | ) | [virtual] |
Notifies an SoNotList nodes list.
Reimplemented from SoSeparator.
void SoRenderList::removeAllRenderObjectNames | ( | ) |
Clears all names from the search list.
void SoRenderList::removeRenderObjectName | ( | SbName | n | ) |
Removes a name from the search list.
void SoRenderList::removeRenderObjectType | ( | SoType | t | ) |
Removes a type from the search list.
Normally each culling node maintains its own render list.
However, culling nodes can be chained, meaning that a culling node (B) that is a child of another culling node (A), can use the result of the culling operation in the parent node (A) instead of maintaining its own render list. In order to enable this behavior, this field should be set to TRUE for the parent (A) and FALSE for the child (B). The default is TRUE.