1#ifndef COIN_SCXMLSTATEMACHINE_H
2#define COIN_SCXMLSTATEMACHINE_H
36#include <Inventor/scxml/ScXMLEventTarget.h>
38#include <Inventor/SbName.h>
39#include <Inventor/lists/SbList.h>
47typedef void ScXMLStateMachineDeleteCB(
void * userdata,
49typedef void ScXMLStateChangeCB(
void * userdata,
51 const char * stateidentifier,
54typedef void ScXMLParallelStateChangeCB(
void * userdata,
57 const char ** stateidentifiers,
61class COIN_DLL_API ScXMLStateMachine :
public ScXMLEventTarget {
62 typedef ScXMLEventTarget inherited;
63 SCXML_OBJECT_HEADER(ScXMLStateMachine)
66 static void initClass(
void);
67 static void cleanClass(
void);
69 ScXMLStateMachine(
void);
70 virtual ~ScXMLStateMachine(
void);
72 virtual void setName(
const SbName & name);
73 const SbName & getName(
void)
const;
99 virtual void setVariable(
const char * name,
const char * value);
100 virtual const char * getVariable(
const char * name)
const;
102 static ScXMLStateMachine * getStateMachineForSessionId(
const SbName & sessionid);
104 virtual void setLogLevel(
int loglevel);
105 int getLogLevel(
void)
const;
110 SbBool isModuleEnabled(
const char * modulename)
const;
111 int getNumEnabledModules(
void)
const;
112 const char * getEnabledModuleName(
int idx)
const;
119 ScXMLStateMachine(
const ScXMLStateMachine & rhs);
120 ScXMLStateMachine & operator = (
const ScXMLStateMachine & rhs);
The SbList class is a template container class for lists.
Definition SbList.h:70
The SbName class stores strings by reference.
Definition SbName.h:40
Definition SbPimplPtr.h:55
Definition ScXMLDocument.h:47
base class for all SCXML elements.
Definition ScXMLElt.h:44
defines an interface for profile-dependent evaluators.
Definition ScXMLEvaluator.h:44
virtual SbBool processOneEvent(const ScXMLEvent *event)
Definition ScXMLEventTarget.cpp:582
Base class for events sent to SCXML state machines.
Definition ScXMLEvent.h:40
Manager for processing events and setting states in SCXML structures.
Definition ScXMLStateMachine.h:61
virtual void setSessionId(const SbName &sessionid)
Definition ScXMLStateMachine.cpp:293
const SbName & getSessionId(void) const
Definition ScXMLStateMachine.cpp:309
virtual const ScXMLElt * getActiveState(int idx) const
Definition ScXMLStateMachine.cpp:684
virtual SbBool isActive(void) const
Definition ScXMLStateMachine.cpp:642
virtual void removeStateChangeCallback(ScXMLStateChangeCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:762
virtual void initialize(void)
Definition ScXMLStateMachine.cpp:332
virtual int getNumActiveStates(void) const
Definition ScXMLStateMachine.cpp:675
virtual SbBool isFinished(void) const
Definition ScXMLStateMachine.cpp:651
virtual void addStateChangeCallback(ScXMLStateChangeCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:752
virtual void removeDeleteCallback(ScXMLStateMachineDeleteCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:707
virtual void addDeleteCallback(ScXMLStateMachineDeleteCB *callback, void *userdata)
Definition ScXMLStateMachine.cpp:697