ScXMLStateMachine(3)

NAME
ScXMLStateMachine - Manager for processing events and setting states in SCXML structures.

SYNOPSIS

#include <Inventor/scxml/ScXMLStateMachine.h>

Inherits ScXMLObject.

Inherited by SoScXMLStateMachine.

  Public Member Functions
virtual SoType getTypeId (void) const
virtual void setName (const SbName &name)
const SbName & getName (void) const
virtual void setDescription (ScXMLDocument *document)
const ScXMLDocument * getDescription (void) const
virtual void initialize (void)
virtual void queueEvent (const ScXMLEvent *event, SbBool dealloc=FALSE)
virtual void queueEvent (const SbName &eventid)
virtual SbBool processEventQueue (void)
virtual SbBool isActive (void) const
virtual SbBool isFinished (void) const
virtual const ScXMLEvent * getCurrentEvent (void) const
virtual int getNumActiveStates (void) const
virtual const ScXMLObject * getActiveState (int idx) const
virtual const ScXMLObject * getState (const char *identifier) const
virtual void addDeleteCallback (ScXMLStateMachineDeleteCB *callback, void *userdata)
virtual void removeDeleteCallback (ScXMLStateMachineDeleteCB *callback, void *userdata)
virtual void addStateChangeCallback (ScXMLStateChangeCB *callback, void *userdata)
virtual void removeStateChangeCallback (ScXMLStateChangeCB *callback, void *userdata)

  Static Public Member Functions
static SoType getClassTypeId (void)
static void * createInstance (void)
static void initClass (void)

  Protected Member Functions
virtual SbBool processOneEvent (const ScXMLEvent *event)
virtual void setCurrentEvent (const ScXMLEvent *event)

  Additional Inherited Members

Detailed Description

Manager for processing events and setting states in SCXML structures.

Since:
    Coin 3.0

Member Function Documentation

  void ScXMLStateMachine::initialize (void) [virtual]
Fire up the engine.

  SbBool ScXMLStateMachine::processEventQueue (void) [virtual]
Recursive calling of this function will be handled by letting the recursive call return immediately, while the first call will continue processing the event queue until it is empty.

  SbBool ScXMLStateMachine::isActive (void) const [virtual]
Returns whether the state machine is active or not.

  SbBool ScXMLStateMachine::isFinished (void) const [virtual]
Returns whether the state machine has run to completion or not.

  const ScXMLEvent * ScXMLStateMachine::getCurrentEvent (void) const [virtual]
This method returns the current event during event processing, and NULL when not processing events.

Event processing is in special cases done with NULL as the current event, as for instance during state machine initialization.

  int ScXMLStateMachine::getNumActiveStates (void) const [virtual]
Returns the number of active states in the state machine. This number should currently be 1, but in the future, when <parallel> is implemented, it can be more.

  const ScXMLObject * ScXMLStateMachine::getActiveState (int idx) const [virtual]
Returns the Nth active state.

  const ScXMLObject * ScXMLStateMachine::getState (const char * identifier) const [virtual]
Returns the state machine state object with the given identifier, or NULL if no object is found that has the given identifier.

  void ScXMLStateMachine::addDeleteCallback (ScXMLStateMachineDeleteCB * cb, void * userdata) [virtual]
Registers a callback to be called when the state machine object is being deleted.

  void ScXMLStateMachine::removeDeleteCallback (ScXMLStateMachineDeleteCB * cb, void * userdata) [virtual]
Unregisters a callback to be called when the state machine object is being deleted.

  void ScXMLStateMachine::addStateChangeCallback (ScXMLStateChangeCB * callback, void * userdata) [virtual]
Registers a callback to be called when the state machine exits or enters a state.

  void ScXMLStateMachine::removeStateChangeCallback (ScXMLStateChangeCB * callback, void * userdata) [virtual]
Unregisters a callback to be called when the state machine exits or enters a state.

  SbBool ScXMLStateMachine::processOneEvent (const ScXMLEvent * event) [protected], [virtual]
Processes one event. This is an internal inner event-loop utility function.

  void ScXMLStateMachine::setCurrentEvent (const ScXMLEvent * event) [protected], [virtual]
Sets a pointer for the event that is 'current' during event processing. This is an internal method, and updating the current event is handled automatically.

Author

Generated automatically by Doxygen for Coin from the source code.