ScXMLStateMachine(3)
π ScXMLStateMachine π
okay bestie, welcome to section 3 of the manual β this is ScXMLStateMachine(3), and she's the manager for processing events and setting states in SCXML structures. no cap. π
πΈ NAME πΈ
ScXMLStateMachine β the manager that processes events and sets states in SCXML structures. she literally runs the whole vibe. π
π¦ 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)
π 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)
ScXMLObject * getContainer (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. that's the whole job description, and she eats every single time. π₯
Since
Coin 3.0
π Member Function Documentation π
SoType ScXMLStateMachine::getTypeId (void ) const [virtual]
Implements ScXMLObject.
void ScXMLStateMachine::initialize (void ) [virtual]
Fire up the engine. π₯ like, actually start the whole thing.
SbBool ScXMLStateMachine::processEventQueue (void ) [virtual]
okay so if you call this recursively? the recursive call is handled by just returning immediately β like, "not me, ask the first one" β while the first call keeps processing the event queue until it's empty. periodt.
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. she's done, she's finished, no more events bestie.
const ScXMLEvent * ScXMLStateMachine::getCurrentEvent (void ) const [virtual]
This method returns the current event during event processing, and NULL when not processing events.
ngl, event processing is in special cases done with NULL as the current event β as for instance during state machine initialization. so don't be weirded out by the NULL, it's giving intentional. π«Ά
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. foreshadowing, iykyk. β¨
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. no match = NULL, that's the rule.
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. main character energy, every single transition. π
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. lowkey just the plumbing, don't touch. π
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. so likeβ¦ you don't have to do anything, she's got it. π
π Author π
Generated automatically by Doxygen for Coin from the source code.
and that's the whole page, bestie β written up for Coin, Version 3.1.3, dated with all the ScXMLStateMachine(3) energy. slay, read responsibly, and go queue some events. πβ¨π¦
π¦ where this page comes from
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 43: Coin3-devel 3.1.3-40.fc43 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- fedora 44: Coin3-devel 3.1.3-42.fc44 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms