1#ifndef COIN_SCXMLSTATEMACHINE_H
2#define COIN_SCXMLSTATEMACHINE_H
27#include <Inventor/scxml/ScXMLObject.h>
29#include <Inventor/SbName.h>
30#include <Inventor/tools/SbPimplPtr.h>
36typedef void ScXMLStateMachineDeleteCB(
void * userdata,
38typedef void ScXMLStateChangeCB(
void * userdata,
40 const char * stateidentifier,
44class COIN_DLL_API ScXMLStateMachine :
public ScXMLObject {
45 typedef ScXMLObject inherited;
46 SCXML_OBJECT_HEADER(ScXMLStateMachine)
49 static void initClass(
void);
51 ScXMLStateMachine(
void);
52 virtual ~ScXMLStateMachine(
void);
54 virtual void setName(
const SbName & name);
55 const SbName & getName(
void)
const;
57 virtual void setDescription(ScXMLDocument * document);
58 const ScXMLDocument * getDescription(
void)
const;
62 virtual void queueEvent(
const ScXMLEvent * event, SbBool dealloc = FALSE);
63 virtual void queueEvent(
const SbName & eventid);
74 virtual const ScXMLObject *
getState(
const char * identifier)
const;
91 ScXMLStateMachine(
const ScXMLStateMachine & rhs);
92 ScXMLStateMachine & operator = (
const ScXMLStateMachine & rhs);
95 SbPimplPtr<PImpl> pimpl;
The SbName class stores strings by reference.
Definition SbName.h:31
Base class for events sent to SCXML state machines.
Definition ScXMLEvent.h:29
Manager for processing events and setting states in SCXML structures.
Definition ScXMLStateMachine.h:44
virtual const ScXMLEvent * getCurrentEvent(void) const
Definition ScXMLStateMachine.cpp:623
virtual const ScXMLObject * getActiveState(int idx) const
Definition ScXMLStateMachine.cpp:645
virtual const ScXMLObject * getState(const char *identifier) const
Definition ScXMLStateMachine.cpp:656
virtual void setCurrentEvent(const ScXMLEvent *event)
Definition ScXMLStateMachine.cpp:610
virtual SbBool processOneEvent(const ScXMLEvent *event)
Definition ScXMLStateMachine.cpp:306
virtual SbBool isActive(void) const
Definition ScXMLStateMachine.cpp:588
virtual void removeStateChangeCallback(ScXMLStateChangeCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:733
virtual void initialize(void)
Definition ScXMLStateMachine.cpp:203
virtual SbBool processEventQueue(void)
Definition ScXMLStateMachine.cpp:265
virtual int getNumActiveStates(void) const
Definition ScXMLStateMachine.cpp:636
virtual SbBool isFinished(void) const
Definition ScXMLStateMachine.cpp:597
virtual void addStateChangeCallback(ScXMLStateChangeCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:723
virtual void removeDeleteCallback(ScXMLStateMachineDeleteCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:678
virtual void addDeleteCallback(ScXMLStateMachineDeleteCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:668