319 lines
14 KiB
HTML
319 lines
14 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>class SG_EXPORT osg::Group</TITLE>
|
|
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.3">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#ffffff">
|
|
|
|
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::Group</A>: public <!1><A HREF="Node.html#DOC.2.30.1">Node</A></H2>
|
|
<BLOCKQUOTE>General group node which maintains a list of children.</BLOCKQUOTE>
|
|
<HR>
|
|
|
|
<H2>Inheritance:</H2>
|
|
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=275>
|
|
<param name=classes value="CReferenced,MReferenced.html,CObject,MObject.html,CNode,MNode.html,CGroup,MGroup.html,CSwitch,MSwitch.html,CSequence,MSequence.html,CScene,MScene.html,CLOD,MLOD.html,CDCS,MDCS.html">
|
|
<param name=before value="M,M,M,M,M|_,MR_,MR_,MR_,Mr_">
|
|
<param name=after value="Md_SPSP,Md_SP,Md_,M,M,M,M,M,M">
|
|
<param name=indent value="0,1,2,3,3,3,3,3,3">
|
|
<param name=arrowdir value="down">
|
|
</APPLET>
|
|
<HR>
|
|
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<A HREF="#DOC.2.18.9"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A> <B>Group</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.10"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual <!1><A HREF="Object.html#DOC.2.36.1">Object</A>* <B>clone</B>() const
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.11"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual bool <B>isSameKindAs</B>(<!1><A HREF="Object.html#DOC.2.36.1">Object</A>* obj)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.12"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual const char* <B>className</B>() const
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.13"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>accept</B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>& nv)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.14"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual void <B>traverse</B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>& nv)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.1"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual bool <B>addChild</B>( <!1><A HREF="Node.html#DOC.2.30.1">Node</A> *child )
|
|
<DD><I>Add Node to Group.</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.2"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual bool <B>removeChild</B>( <!1><A HREF="Node.html#DOC.2.30.1">Node</A> *child )
|
|
<DD><I>Remove Node from Group.</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.3"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual bool <B>replaceChild</B>( <!1><A HREF="Node.html#DOC.2.30.1">Node</A> *origChild, <!1><A HREF="Node.html#DOC.2.30.1">Node</A>* newChild )
|
|
<DD><I>Replace specified Node with another Node.</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.4"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>int <B>getNumChildren</B>( void )
|
|
<DD><I>return the number of chilren nodes</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.5"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="Node.html#DOC.2.30.1">Node</A>* <B>getChild</B>( int i )
|
|
<DD><I>return child node at position i</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.6"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool <B>containsNode</B>( <!1><A HREF="Node.html#DOC.2.30.1">Node</A>* node )
|
|
<DD><I>return true is node is contained within Group</I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.7"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>ChildList::iterator <B>findNode</B>( <!1><A HREF="Node.html#DOC.2.30.1">Node</A>* node )
|
|
<DD><I>return the iterator postion for specified Node.</I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Public</H3><DD><DT>
|
|
<A HREF="#DOC.2.18.8"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>typedef std::vector<<!1><A HREF="ref_ptr.html">ref_ptr</A><<!1><A HREF="Node.html#DOC.2.30.1">Node</A>> > <B>ChildList</B>
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Fields</H3><DD><DT>
|
|
<A HREF="#DOC.2.18.18"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A><!1><A HREF="Group.html#DOC.2.18.8">ChildList</A> <B>_children</B>
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Methods</H3><DD><DT>
|
|
<A HREF="#DOC.2.18.15"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual <B>~Group</B>()
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.16"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual bool <B>readLocalData</B>(<!1><A HREF="Input.html">Input</A>& fr)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.17"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>virtual bool <B>writeLocalData</B>(<!1><A HREF="Output.html">Output</A>& fw)
|
|
<DD><I></I>
|
|
<DT>
|
|
<A HREF="#DOC.2.18.19"><IMG ALT="[more]" BORDER=0 SRC=icon1.gif></A>bool <B>computeBound</B>( void )
|
|
<DD><I></I>
|
|
</DL></P>
|
|
|
|
</DL>
|
|
<HR><H3>Inherited from <A HREF="Node.html">Node</A>:</H3>
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.1">Node</A>* <B>cloneNode</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual void <B>ascend</B>(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>& nv)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>setName</B>( const std::string& name )
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>setName</B>( const char* name )
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>const std::string& <B>getName</B>( void )
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>const <!1><A HREF="Node.html#DOC.2.30.12">ParentList</A>& <B>getParents</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.39">Group</A>* <B>getParent</B>(int i) const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>int <B>getNumParents</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>setUserData</B>(void* data, <!1><A HREF="MemoryAdapter.html">MemoryAdapter</A>* ma=0L)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void* <B>getUserData</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="MemoryAdapter.html">MemoryAdapter</A>* <B>getMemoryAdapter</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>setNodeMask</B>(<!1><A HREF="Node.html#DOC.2.30.34">NodeMask</A> nm)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.34">NodeMask</A> <B>getNodeMask</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>const <!1><A HREF="Node.html#DOC.2.30.21">DescriptionList</A>& <B>getDescriptions</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.21">DescriptionList</A>& <B>getDescriptions</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>const std::string& <B>getDescription</B>(int i) const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>std::string& <B>getDescription</B>(int i)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>int <B>getNumDescriptions</B>() const
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>addDescription</B>(const std::string& desc)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>const <!1><A HREF="BoundingSphere.html">BoundingSphere</A>& <B>getBound</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>dirtyBound</B>()
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Public</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>typedef std::vector<<!1><A HREF="Node.html#DOC.2.30.39">Group</A>*> <B>ParentList</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>typedef unsigned int <B>NodeMask</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>typedef std::vector<std::string> <B>DescriptionList</B>
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Fields</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="BoundingSphere.html">BoundingSphere</A> <B>_bsphere</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>bool <B>_bsphere_computed</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>std::string <B>_name</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.12">ParentList</A> <B>_parents</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void* <B>_userData</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="ref_ptr.html">ref_ptr</A><<!1><A HREF="MemoryAdapter.html">MemoryAdapter</A>> <B>_memoryAdapter</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.34">NodeMask</A> <B>_nodeMask</B>
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Node.html#DOC.2.30.21">DescriptionList</A> <B>_descriptions</B>
|
|
</DL></P>
|
|
|
|
</DL>
|
|
<HR><H3>Inherited from <A HREF="Object.html">Object</A>:</H3>
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual <!1><A HREF="Object.html#DOC.2.36.1">Object</A>* <B>readClone</B>(<!1><A HREF="Input.html">Input</A>& fr)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>virtual bool <B>write</B>(<!1><A HREF="Output.html">Output</A>& fw)
|
|
</DL></P>
|
|
|
|
</DL>
|
|
<HR><H3>Inherited from <A HREF="Referenced.html">Referenced</A>:</H3>
|
|
<DL>
|
|
<P><DL>
|
|
<DT><H3>Public Methods</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Referenced.html#DOC.2.43.4">Referenced</A>& <B>operator = </B>(<!1><A HREF="Referenced.html#DOC.2.43.4">Referenced</A>&)
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>ref</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>void <B>unref</B>()
|
|
<DT>
|
|
<IMG ALT="o" SRC=icon2.gif>int <B>referenceCount</B>()
|
|
</DL></P>
|
|
|
|
<P><DL>
|
|
<DT><H3>Protected Fields</H3><DD><DT>
|
|
<IMG ALT="o" SRC=icon2.gif>int <B>_refCount</B>
|
|
</DL></P>
|
|
|
|
</DL>
|
|
|
|
<A NAME="DOC.DOCU">
|
|
<HR>
|
|
<H2>Documentation</H2>
|
|
<BLOCKQUOTE>General group node which maintains a list of children.
|
|
Children are reference counted to allow children to be shared
|
|
with memory management handled automatically via osg::Referenced.</BLOCKQUOTE>
|
|
<DL>
|
|
|
|
<A NAME="ChildList">
|
|
<A NAME="DOC.2.18.8">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector<<!1><A HREF="ref_ptr.html">ref_ptr</A><<!1><A HREF="Node.html#DOC.2.30.1">Node</A>> > ChildList</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="Group">
|
|
<A NAME="DOC.2.18.9">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Group()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="clone">
|
|
<A NAME="DOC.2.18.10">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual <!1><A HREF="Object.html#DOC.2.36.1">Object</A>* clone() const </B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="isSameKindAs">
|
|
<A NAME="DOC.2.18.11">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool isSameKindAs(<!1><A HREF="Object.html#DOC.2.36.1">Object</A>* obj)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="className">
|
|
<A NAME="DOC.2.18.12">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const char* className() const </B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="accept">
|
|
<A NAME="DOC.2.18.13">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void accept(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>& nv)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="traverse">
|
|
<A NAME="DOC.2.18.14">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void traverse(<!1><A HREF="NodeVisitor.html">NodeVisitor</A>& nv)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="addChild">
|
|
<A NAME="DOC.2.18.1">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool addChild( <!1><A HREF="Node.html#DOC.2.30.1">Node</A> *child )</B></TT>
|
|
<DD>Add Node to Group.
|
|
If node is not NULL and is not contained in Group then increment its
|
|
reference count, add it to the child list and dirty the bounding
|
|
sphere to force it to recompute on next getBound() and return true for success.
|
|
Otherwise return false.
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="removeChild">
|
|
<A NAME="DOC.2.18.2">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool removeChild( <!1><A HREF="Node.html#DOC.2.30.1">Node</A> *child )</B></TT>
|
|
<DD>Remove Node from Group.
|
|
If Node is contained in Group then remove it from the child
|
|
list, decrement its reference count, and dirty the
|
|
bounding sphere to force it to recompute on next getBound() and
|
|
return true for success. If Node is not found then return false
|
|
and do not change the reference count of the Node.
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="replaceChild">
|
|
<A NAME="DOC.2.18.3">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool replaceChild( <!1><A HREF="Node.html#DOC.2.30.1">Node</A> *origChild, <!1><A HREF="Node.html#DOC.2.30.1">Node</A>* newChild )</B></TT>
|
|
<DD>Replace specified Node with another Node.
|
|
Decrement the reference count origNode and increments the
|
|
reference count of newNode, and dirty the bounding sphere
|
|
to force it to recompute on next getBound() and returns true.
|
|
If origNode is not found then return false and do not
|
|
add newNode. If newNode is NULL then return false and do
|
|
not remove origNode.
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getNumChildren">
|
|
<A NAME="DOC.2.18.4">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int getNumChildren( void )</B></TT>
|
|
<DD>return the number of chilren nodes
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="getChild">
|
|
<A NAME="DOC.2.18.5">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Node.html#DOC.2.30.1">Node</A>* getChild( int i )</B></TT>
|
|
<DD>return child node at position i
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="containsNode">
|
|
<A NAME="DOC.2.18.6">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool containsNode( <!1><A HREF="Node.html#DOC.2.30.1">Node</A>* node )</B></TT>
|
|
<DD>return true is node is contained within Group
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="findNode">
|
|
<A NAME="DOC.2.18.7">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>ChildList::iterator findNode( <!1><A HREF="Node.html#DOC.2.30.1">Node</A>* node )</B></TT>
|
|
<DD>return the iterator postion for specified Node.
|
|
return _chilren.end() if node is not contained in Group.
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="~Group">
|
|
<A NAME="DOC.2.18.15">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual ~Group()</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="readLocalData">
|
|
<A NAME="DOC.2.18.16">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool readLocalData(<!1><A HREF="Input.html">Input</A>& fr)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="writeLocalData">
|
|
<A NAME="DOC.2.18.17">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool writeLocalData(<!1><A HREF="Output.html">Output</A>& fw)</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="_children">
|
|
<A NAME="DOC.2.18.18">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Group.html#DOC.2.18.8">ChildList</A> _children</B></TT>
|
|
<DL><DT><DD></DL><P>
|
|
<A NAME="computeBound">
|
|
<A NAME="DOC.2.18.19">
|
|
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>bool computeBound( void )</B></TT>
|
|
<DL><DT><DD></DL><P></DL>
|
|
<HR>
|
|
<DL><DT><B>Direct child classes:
|
|
</B><DD><A HREF="Switch.html">Switch</A><BR>
|
|
<A HREF="Sequence.html">Sequence</A><BR>
|
|
<A HREF="Scene.html">Scene</A><BR>
|
|
<A HREF="LOD.html">LOD</A><BR>
|
|
<A HREF="DCS.html">DCS</A><BR>
|
|
</DL>
|
|
|
|
<DL><DT><DD></DL><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I><P><HR>
|
|
<BR>
|
|
This page was generated with the help of <A HREF="http://www.linuxsupportline.com/~doc++">DOC++</A>.
|
|
</BODY>
|