| Home | Download | Screen shots | Discussion | Documentation |
|---|
The node at the top of the stack is considered the active node. Binding a node makes it the active node, moving it to the top of the stack if it already exists in the stack. Unbinding a node removes it from the stack, regardless of its position in the stack. See 4.6.10 of the VRML97 specification for further details of the semantics.
Public Member Functions | |
| bool | bind (BindableNode &node, double timestamp) throw ( std::bad_alloc ) |
| Bind a node. | |
| bool | unbind (BindableNode &node, double timestamp) throw ( std::bad_alloc ) |
| Unbind a node. | |
Private Types | |
| typedef std::stack< BindableNode * >::container_type | container_type |
| The container type. | |
std::stack< BindableNode * >::container_type openvrml::node_impl_util::bound_node_stack< BindableNode >::container_type [private] |
The container type.
For internal use only.
| bool openvrml::node_impl_util::bound_node_stack< BindableNode >::bind | ( | BindableNode & | n, | |
| double | timestamp | |||
| ) | throw ( std::bad_alloc ) [inline] |
| bool openvrml::node_impl_util::bound_node_stack< BindableNode >::unbind | ( | BindableNode & | n, | |
| double | timestamp | |||
| ) | throw ( std::bad_alloc ) [inline] |
Unbind a node.
Call n.bind(false). Remove n from the top of the stack. The next node on the stack becomes the active node. Call top()->bind(true).
&n is not on the stack.| [in,out] | n | the node to unbind. |
| [in] | timestamp | the current time. |
| std::bad_alloc | if memory allocation fails. |