Coin: SoScXMLNavigationTarget Class Reference

| Coin3D is Free Software, published under the BSD 3-clause license. | https://coin3d.github.io https://www.kongsberg.com/en/kogt/

Classes | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Static Protected Member Functions | List of all members
SoScXMLNavigationTarget Class Referenceabstract
Navigation Classes

base class for navigation system SCXML event target services More...

`#include <Inventor/navigation/SoScXMLNavigationTarget.h>`

Inheritance diagram for SoScXMLNavigationTarget:

## Classes
class | Data

## Public Member Functions
virtual SoType | getTypeId (void) const =0
| Returns the type identification of an object derived from a class inheriting SoBase. This is used for runtime type checking and "downward" casting.
Public Member Functions inherited from ScXMLEventTarget
virtual void | setEventTargetType (const char *targettype)
const char * | getEventTargetType (void) const
virtual void | setEventTargetName (const char *targetname)
const char * | getEventTargetName (void) const
virtual const ScXMLEvent * | getCurrentEvent (void) const
virtual void | queueEvent (const ScXMLEvent *event)
virtual void | queueEvent (const SbName &eventid)
virtual SbBool | processEventQueue (void)
virtual SbBool | sendExternalEvent (const ScXMLSendElt *sendelt)
virtual SbBool | sendInternalEvent (const ScXMLEventElt *sendelt)
virtual void | queueInternalEvent (const ScXMLEvent *event)
virtual void | queueInternalEvent (const SbName &eventid)
Public Member Functions inherited from ScXMLObject
SbBool | isOfType (SoType type) const
| Returns `TRUE` if the type of this object is either of the same type or inherited from type.

## Static Public Member Functions
static SoType | getClassTypeId (void)
static void | initClass (void)
static void | cleanClass (void)
Static Public Member Functions inherited from ScXMLEventTarget
static SoType | getClassTypeId (void)
static void | initClass (void)
static void | cleanClass (void)
Static Public Member Functions inherited from ScXMLObject
static SoType | getClassTypeId (void)
| This static method returns the SoType object associated with objects of this class.
static void | initClass (void)
| Sets up initialization for data common to all instances of this class, like submitting necessary information to the Coin type system.
static void | cleanClass (void)
| Does the opposite of initClass, deallocates any class specific resources and resets the class to an uninitialized state with respect to the Coin type system.

## Protected Types
typedef Data * | NewDataFunc(void)

## Protected Member Functions
Data * | getSessionData (SbName sessionid, NewDataFunc *constructor)
void | freeSessionData (SbName sessionid)
Protected Member Functions inherited from ScXMLEventTarget
virtual void | setCurrentEvent (const ScXMLEvent *event)
virtual const ScXMLEvent * | getNextEvent (void)
virtual const ScXMLEvent * | getNextInternalEvent (void)
virtual const ScXMLEvent * | getNextExternalEvent (void)
virtual SbBool | processOneEvent (const ScXMLEvent *event)

## Static Protected Member Functions
static SbName | getSessionId (const ScXMLEvent *event)
static ScXMLStateMachine * | getStateMachine (const ScXMLEvent *event, SbName sessionid)
static SoScXMLStateMachine * | getSoStateMachine (const ScXMLEvent *event, SbName sessionid)
static SoCamera * | getActiveCamera (const ScXMLEvent *event, SbName sessionid)
static SbBool | getEventDouble (const ScXMLEvent *event, const char *label, double &dbl_out, SbBool required=TRUE)
static SbBool | getEventString (const ScXMLEvent *event, const char *label, SbString &str_out, SbBool required=TRUE)
static SbBool | getEventSbBool (const ScXMLEvent *event, const char *label, SbBool &bool_out, SbBool required=TRUE)
static SbBool | getEventSbVec2f (const ScXMLEvent *event, const char *label, SbVec2f &vec_out, SbBool required=TRUE)
static SbBool | getEventSbVec3f (const ScXMLEvent *event, const char *label, SbVec3f &vec_out, SbBool required=TRUE)
static SbBool | getEventSbRotation (const ScXMLEvent *event, const char *label, SbRotation &rot_out, SbBool required=TRUE)
Static Protected Member Functions inherited from ScXMLEventTarget
static void | registerEventTarget (ScXMLEventTarget *target, const char *sessionid=NULL)
static void | unregisterEventTarget (ScXMLEventTarget *target, const char *sessionid=NULL)
static ScXMLEventTarget * | getEventTarget (const char *targettype, const char *targetname, const char *sessionid=NULL)
Static Protected Member Functions inherited from ScXMLObject
static void | registerClassType (const char *xmlns, const char *classname, SoType type)
static void | registerInvokeClassType (const char *xmlns, const char *targettype, const char *source, SoType type)

## Additional Inherited Members
Protected Attributes inherited from ScXMLEventTarget
char * | targetname
char * | targettype
const ScXMLEvent * | currentevent
SbBool | isprocessingqueue

## Detailed Description

base class for navigation system SCXML event target services

This class contains some common, useful, utility functions for implementing navigation system event targets.

Since
  Coin 3.1

## Member Function Documentation

## ◆ getTypeId()

virtual SoType SoScXMLNavigationTarget::getTypeId | ( | void |  | ) | const
| pure virtual

Returns the type identification of an object derived from a class inheriting SoBase. This is used for runtime type checking and "downward" casting.

See also
  SoBase::getTypeId() const

Implements ScXMLEventTarget.

Implemented in SoScXMLDollyTarget, SoScXMLFlightControlTarget, SoScXMLMiscTarget, SoScXMLMotionTarget, SoScXMLPanTarget, SoScXMLRotateTarget, SoScXMLSeekTarget, SoScXMLSpinTarget, and SoScXMLZoomTarget.

## ◆ getSessionData()

SoScXMLNavigationTarget::Data * SoScXMLNavigationTarget::getSessionData | ( | SbName | sessionid,
|  | NewDataFunc * | constructor )
| protected

Returns the Data* base handle for the data structure that corresponds to the given sessionid. The constructor argument is the function responsible for creating the Data-derived object if the session is new (or have been cleaned up earlier).

## ◆ freeSessionData()

void SoScXMLNavigationTarget::freeSessionData | ( | SbName | sessionid | ) |
| protected

Cleans out the data structure that is mapped to the given sessionid.

## ◆ getSessionId()

SbName SoScXMLNavigationTarget::getSessionId | ( | const ScXMLEvent * | event | ) |
| staticprotected

Returns the session id that is associated with the event. If no session id is found, SbName::empty() is returned.

## ◆ getStateMachine()

ScXMLStateMachine * SoScXMLNavigationTarget::getStateMachine | ( | const ScXMLEvent * | event,
|  | SbName | sessionid )
| staticprotected

Returns the state machine that is associated with the given sessionid, or NULL if there are no state machines registered for the session id.

## ◆ getSoStateMachine()

SoScXMLStateMachine * SoScXMLNavigationTarget::getSoStateMachine | ( | const ScXMLEvent * | event,
|  | SbName | sessionid )
| staticprotected

Returns the So- state machine that is associated with the given sessionid, or NULL if there are no state machines registered for the session id or if the state machine is not of SoScXMLStateMachine type.

## ◆ getActiveCamera()

SoCamera * SoScXMLNavigationTarget::getActiveCamera | ( | const ScXMLEvent * | event,
|  | SbName | sessionid )
| staticprotected

Returns the current active camera, or NULL if there is no active camera set. If NULL is returned, error messages have been posted.

## ◆ getEventDouble()

SbBool SoScXMLNavigationTarget::getEventDouble | ( | const ScXMLEvent * | event,
|  | const char * | label,
|  | double & | dbl_out,
|  | SbBool | required = TRUE )
| staticprotected

Returns TRUE if a double was delivered with the event under the label label, and FALSE otherwise. If required is TRUE, then errors will be given, otherwise this function will remain quiet.

## ◆ getEventString()

SbBool SoScXMLNavigationTarget::getEventString | ( | const ScXMLEvent * | event,
|  | const char * | label,
|  | SbString & | str_out,
|  | SbBool | required = TRUE )
| staticprotected

Returns TRUE if a string was delivered with the event under the label label, and FALSE otherwise. If required is TRUE, then errors will be given, otherwise this function will remain quiet.

## ◆ getEventSbBool()

SbBool SoScXMLNavigationTarget::getEventSbBool | ( | const ScXMLEvent * | event,
|  | const char * | label,
|  | SbBool & | bool_out,
|  | SbBool | required = TRUE )
| staticprotected

Returns TRUE if a boolean value was delivered with the event under the label label, and FALSE otherwise. If required is TRUE, then errors will be given, otherwise this function will remain quiet.

## ◆ getEventSbVec2f()

SbBool SoScXMLNavigationTarget::getEventSbVec2f | ( | const ScXMLEvent * | event,
|  | const char * | label,
|  | SbVec2f & | vec_out,
|  | SbBool | required = TRUE )
| staticprotected

Returns TRUE if an SbVec2f was delivered with the event under the label label, and FALSE otherwise. If required is TRUE, then errors will be given, otherwise this function will remain quiet.

## ◆ getEventSbVec3f()

SbBool SoScXMLNavigationTarget::getEventSbVec3f | ( | const ScXMLEvent * | event,
|  | const char * | label,
|  | SbVec3f & | vec_out,
|  | SbBool | required = TRUE )
| staticprotected

Returns TRUE if an SbVec3f was delivered with the event under the label label, and FALSE otherwise. If required is TRUE, then errors will be given, otherwise this function will remain quiet.

## ◆ getEventSbRotation()

SbBool SoScXMLNavigationTarget::getEventSbRotation | ( | const ScXMLEvent * | event,
|  | const char * | label,
|  | SbRotation & | rot_out,
|  | SbBool | required = TRUE )
| staticprotected

Returns TRUE if an SbRotation was delivered with the event under the label label, and FALSE otherwise. If required is TRUE, then errors will be given, otherwise this function will remain quiet.

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

- SoScXMLNavigationTarget.h
- SoScXMLNavigationTarget.cpp