Coin Logo http://www.sim.no/
http://www.coin3d.org/

Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
ScXMLStateMachine Class Reference

Manager for processing events and setting states in SCXML structures. More...

#include <Inventor/scxml/ScXMLStateMachine.h>

Inheritance diagram for ScXMLStateMachine:
ScXMLObject SoScXMLStateMachine

Public Member Functions

virtual SoType getTypeId (void) const
 
virtual void setName (const SbName &name)
 
const SbNamegetName (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 ScXMLEventgetCurrentEvent (void) const
 
virtual int getNumActiveStates (void) const
 
virtual const ScXMLObjectgetActiveState (int idx) const
 
virtual const ScXMLObjectgetState (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)
 
- Public Member Functions inherited from ScXMLObject
SbBool isOfType (SoType type) const
 
void setXMLAttribute (const char *attribute, const char *value)
 
const char * getXMLAttribute (const char *attribute) const
 
virtual SbBool handleXMLAttributes (void)
 
virtual void setContainer (ScXMLObject *container)
 
ScXMLObjectgetContainer (void) const
 
SbBool isContainedIn (const ScXMLObject *object) const
 

Static Public Member Functions

static SoType getClassTypeId (void)
 
static void * createInstance (void)
 
static void initClass (void)
 
- Static Public Member Functions inherited from ScXMLObject
static SoType getClassTypeId (void)
 
static void initClass (void)
 

Protected Member Functions

virtual SbBool processOneEvent (const ScXMLEvent *event)
 
virtual void setCurrentEvent (const ScXMLEvent *event)
 

Additional Inherited Members

- 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)
 

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)
protectedvirtual

Processes one event. This is an internal inner event-loop utility function.

void ScXMLStateMachine::setCurrentEvent ( const ScXMLEvent event)
protectedvirtual

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.


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

Copyright © 1998-2010 by Kongsberg Oil & Gas Technologies. All rights reserved.

Generated on Fri Sep 9 2016 for Coin by Doxygen 1.8.5.