MeVisLab Toolbox Reference
SoInteractionProviderNode Class Reference

SoInteractionProviderNode is the base class for all interaction nodes in OpenInventor. More...

#include <SoInteractionProviderNode.h>

Inheritance diagram for SoInteractionProviderNode:
SoInteractionOwner SoInteractionProvider SoInteractionNode SoView2DExtension SoCSO3DVis SoCSODrawOnSurface SoMouseGrabber SoPicking SoView2DBorder SoView2DCSOExtensibleEditor SoView2DCallback SoView2DCine SoView2DCurrentState SoView2DDeformationGridView SoView2DEnlargeOnClick SoView2DExtensionSampler SoView2DExtensionSeparator SoView2DGrid SoView2DInteractionExtension SoView2DLegend SoView2DMagnifyController SoView2DRuler SoView2DShaderDevicePosition SoView2DShaderOverlay SoView2DTouchControl SoView2DTransRot SoView2DVectorFieldView SoView2DVoxelView

Public Member Functions

 SoInteractionProviderNode ()
 Default constructor.
 
 ~SoInteractionProviderNode () override
 Destructor.
 
std::string getID () const override
 Returns the id string for identifying the provider (and its actions) - this is usually the name of the scene node.
 
Memory management by reference counting.
void objRef () override
 Memory management by reference counting; must be implemented in derived classes.
 
void objUnref () override
 
- Public Member Functions inherited from SoInteractionOwner
 SoInteractionOwner ()
 Default constructor.
 
 ~SoInteractionOwner () override
 The destructor will destroy all interactions created with this object as owner.
 
std::list< SoInteraction * > getInteractions (SoState *state) override
 Returns the list of all interactions of this provider.
 
void pointerPosition (SoState *state, const SoPointerPosition &pos) override
 Same as below, with additional SoState argument. Be defaults simply calls the below version.
 
void pointerLeftWindow (SoState *state) override
 Same as below, with additional SoState argument. Be defaults simply calls the below version.
 
void addListener (SoInteractionOwnerListenerInterface *listener)
 Add a listener object that is notified of changes in the interaction list.
 
void removeListener (SoInteractionOwnerListenerInterface *listener)
 Remove a listener object that was notified of changes in the interaction list.
 
- Public Member Functions inherited from SoInteractionProvider
 SoInteractionProvider ()
 Default constructor.
 
virtual ~SoInteractionProvider ()
 
template<class T >
std::list< T * > getInteractionsOfType (SoState *state)
 Returns list of interactions of a specific type:
 
virtual std::list< SoCommandAction * > getCommandActions (SoState *state)
 
virtual std::list< SoPointingAction * > getPointingActions (SoState *state)
 
virtual std::list< SoOffsetAction * > getOffsetActions (SoState *state)
 

Static Public Member Functions

static void initClass ()
 Initializes this class.
 
- Static Public Member Functions inherited from SoInteractionProvider
static void registerInteractionProviderNode (SoType type, GetProviderFunc func)
 Register a function to obtain a SoInteractionProvider from a SoNode.
 
static SoInteractionProvidergetInteractionProvider (SoNode *node)
 Get a SoInteractionProvider from a SoNode if registered, else NULL.
 

Public Attributes

SoSFString instanceName
 Defines interface field to store the instance name.
 
SoSFString interactionProviderID
 This field overrides the instanceName as providerID if specified.
 

Additional Inherited Members

- Public Types inherited from SoInteractionProvider
typedef SoInteractionProvider *(* GetProviderFunc) (SoNode *)
 
- Protected Member Functions inherited from SoInteractionOwner
virtual void pointerPosition (const SoPointerPosition &)
 Override this if you always need to be informed of the current mouse cursor position.
 
virtual void pointerLeftWindow ()
 This is called when the mouse cursor leaves the window.
 
bool hasInteractions () const
 Returns whether there are any actions defined by this owner.
 
template<class T >
bool hasInteractionsOfType () const
 Same as above, but asking for a specific type of interaction.
 
void addPointingAction (SoPointingAction *)
 
void addCommandAction (SoCommandAction *)
 
void addOffsetAction (SoOffsetAction *)
 

Detailed Description

SoInteractionProviderNode is the base class for all interaction nodes in OpenInventor.

SoInteractionProviderNode is the base class for (almost) all interaction nodes in OpenInventor.

Definition at line 34 of file SoInteractionProviderNode.h.

Constructor & Destructor Documentation

◆ SoInteractionProviderNode()

SoInteractionProviderNode::SoInteractionProviderNode ( )

Default constructor.

Adds an instanceName field, which is used for getting the provider ID. If this is not what you want, you should override getID() to retrieve the provider ID from another source.

◆ ~SoInteractionProviderNode()

SoInteractionProviderNode::~SoInteractionProviderNode ( )
override

Destructor.

Member Function Documentation

◆ getID()

std::string SoInteractionProviderNode::getID ( ) const
overridevirtual

Returns the id string for identifying the provider (and its actions) - this is usually the name of the scene node.

Reimplemented from SoInteractionOwner.

◆ initClass()

static void SoInteractionProviderNode::initClass ( )
static

Initializes this class.

◆ objRef()

void SoInteractionProviderNode::objRef ( )
overridevirtual

Memory management by reference counting; must be implemented in derived classes.

(Name changed from Inventor methods to avoid confusion, though ref and unref will normally be called for SoInteractionOwners based on OpenInventor.)

Implements SoInteractionOwner.

◆ objUnref()

void SoInteractionProviderNode::objUnref ( )
overridevirtual

Implements SoInteractionOwner.

Member Data Documentation

◆ instanceName

SoSFString SoInteractionProviderNode::instanceName

Defines interface field to store the instance name.

Definition at line 62 of file SoInteractionProviderNode.h.

◆ interactionProviderID

SoSFString SoInteractionProviderNode::interactionProviderID

This field overrides the instanceName as providerID if specified.

Definition at line 65 of file SoInteractionProviderNode.h.


The documentation for this class was generated from the following file: