Murl::Graph::IListenerTransform Interface Referenceabstract

The IListenerTransform graph node interface. More...

#include "murl_graph_i_listener_transform.h"

Inheritance diagram for Murl::Graph::IListenerTransform:

Public Member Functions

virtual INodeGetNodeInterface ()=0
 Get the mutable Graph::INode interface. More...
 
virtual const INodeGetNodeInterface () const =0
 Get the constant Graph::INode interface. More...
 
virtual ITransformGetTransformInterface ()=0
 Get the mutable Graph::ITransform interface. More...
 
virtual const ITransformGetTransformInterface () const =0
 Get the constant Graph::ITransform interface. More...
 
virtual IListenerNodeTargetGetListenerNodeTarget ()=0
 Get the mutable Graph::IListenerNodeTarget container. More...
 
virtual const IListenerNodeTargetGetListenerNodeTarget () const =0
 Get the constant Graph::IListenerNodeTarget container. More...
 
virtual IAnchorNodeTargetGetAnchorNodeTarget ()=0
 Get the mutable Graph::IAnchorNodeTarget container for the target position. More...
 
virtual const IAnchorNodeTargetGetAnchorNodeTarget () const =0
 Get the constant Graph::IAnchorNodeTarget container for the target position. More...
 
virtual Bool SetUpVector (const Vector &upVector)=0
 Set the target anchor up vector. More...
 
virtual const VectorGetUpVector () const =0
 Get the target anchor up vector. More...
 

Detailed Description

The IListenerTransform graph node interface.

A listener node defined in the scene graph only defines the general behavior of a listener in the virtual world; to be able to move and rotate the listener, it is necessary to define an IListenerTransform node that refers to a specific listener. By separating a listener from its transform, it is possible to already use a listener before its actual world position and rotation are evaluated; this way, the listener can be quickly attached to e.g. a moving object that is supposed to be also audible throught that listener, by simply defining an IListenerTransform node as a child of the respective object.

See Graph::IListener for defining a specific listener for rendering.
See Graph::IListenerState for activating a listener for rendering.

Member Function Documentation

◆ GetNodeInterface() [1/2]

virtual INode* Murl::Graph::IListenerTransform::GetNodeInterface ( )
pure virtual

Get the mutable Graph::INode interface.

This method returns a mutable pointer to the node's Graph::INode interface, to be able to query or modify common node properties such as active state, visibility or ID.

Returns
The mutable Graph::INode interface, or null if not available

◆ GetNodeInterface() [2/2]

virtual const INode* Murl::Graph::IListenerTransform::GetNodeInterface ( ) const
pure virtual

Get the constant Graph::INode interface.

This method returns a constant pointer to the node's Graph::INode interface, to be able to query common node properties such as active state, visibility or ID.

Returns
The constant Graph::INode interface, or null if not available

◆ GetTransformInterface() [1/2]

virtual ITransform* Murl::Graph::IListenerTransform::GetTransformInterface ( )
pure virtual

Get the mutable Graph::ITransform interface.

This method returns a mutable pointer to the node's Graph::ITransform interface, to be able to query or modify the node's transformation matrix and depth order.

Returns
The mutable Graph::ITransform interface, or null if not available

◆ GetTransformInterface() [2/2]

virtual const ITransform* Murl::Graph::IListenerTransform::GetTransformInterface ( ) const
pure virtual

Get the constant Graph::ITransform interface.

This method returns a constant pointer to the node's Graph::ITransform interface, to be able to query the node's transformation matrix and depth order.

Returns
The constant Graph::ITransform interface, or null if not available

◆ GetListenerNodeTarget() [1/2]

virtual IListenerNodeTarget* Murl::Graph::IListenerTransform::GetListenerNodeTarget ( )
pure virtual

Get the mutable Graph::IListenerNodeTarget container.

This method returns a mutable pointer to the node's Graph::IListenerNodeTarget container, which allows to set or query the listener this transform node refers to.

Returns
The mutable Graph::IListenerNodeTarget container, or null if not available.

◆ GetListenerNodeTarget() [2/2]

virtual const IListenerNodeTarget* Murl::Graph::IListenerTransform::GetListenerNodeTarget ( ) const
pure virtual

Get the constant Graph::IListenerNodeTarget container.

This method returns a constant pointer to the node's Graph::IListenerNodeTarget container, which allows to query the listener this transform node refers to.

Returns
The mutable Graph::IListenerNodeTarget container, or null if not available.

◆ GetAnchorNodeTarget() [1/2]

virtual IAnchorNodeTarget* Murl::Graph::IListenerTransform::GetAnchorNodeTarget ( )
pure virtual

Get the mutable Graph::IAnchorNodeTarget container for the target position.

This method returns a mutable pointer to the node's Graph::IAnchorNodeTarget container, which allows to add, remove or query the referenced Graph::IAnchor node used as a view target.

Returns
The mutable Graph::IAnchorNodeTarget container, or null if not available

◆ GetAnchorNodeTarget() [2/2]

virtual const IAnchorNodeTarget* Murl::Graph::IListenerTransform::GetAnchorNodeTarget ( ) const
pure virtual

Get the constant Graph::IAnchorNodeTarget container for the target position.

This method returns a constant pointer to the node's Graph::IAnchorNodeTarget container, which allows to query the referenced Graph::IAnchor node used as a view target.

Returns
The constant Graph::IAnchorNodeTarget container, or null if not available

◆ SetUpVector()

virtual Bool Murl::Graph::IListenerTransform::SetUpVector ( const Vector upVector)
pure virtual

Set the target anchor up vector.

The up vector is used to orient the view when a target anchor node is given.

Parameters
upVectorThe up vector.
Returns
true if successful.

◆ GetUpVector()

virtual const Vector& Murl::Graph::IListenerTransform::GetUpVector ( ) const
pure virtual

Get the target anchor up vector.

Returns
The up vector.

The documentation for this interface was generated from the following file:
  • murl_graph_i_listener_transform.h


Copyright © 2011-2024 Spraylight GmbH.