NAME¶
State Chart XML Classes -
Classes¶
class
ScXMLAbstractStateElt
abstract base class for the SCXML 'state' elements. class
ScXMLAnchorElt
implements the <anchor> SCXML element. class
ScXMLAssignElt
the <assign> SCXML element. class
ScXMLContentElt
implements the <content> SCXML element. class
ScXML
namespace for static ScXML-related functions. class
ScXMLDataElt
the <data>
SCXML element. class
ScXMLDataModelElt
implements the <datamodel> SCXML element. class
ScXMLECMAScriptEvaluator
evaluator for the ECMAScript profile. class
ScXMLElseElt
implements the <else> SCXML element. class
ScXMLElseIfElt
implements the <elseif> SCXML element. class
ScXMLElt
base class for all SCXML elements. class
ScXMLEltReader
base class for element reader objects class
ScXMLEvaluator
defines an interface for profile-dependent evaluators. class
ScXMLDataObj
base class for evaluator data objects in the SCXML data module class
ScXMLConstantDataObj
base class for immediate data values class
ScXMLReferenceDataObj
A data object representing a reference to another object in the data model.
class
ScXMLAndOpExprDataObj
Implements the logical AND operator. class
ScXMLEvent
Base class for events sent to SCXML state machines. class
ScXMLEventElt
implements the <event> SCXML element. class
ScXMLEventTarget
base class for event targets for inter-system event communication class
ScXMLExecutableElt
base class for all SCXML elements with executable content. class
ScXMLFinalElt
implements the <final> SCXML element. class
ScXMLFinalizeElt
implements the <finalize> SCXML element. class
ScXMLHistoryElt
implements the <history> SCXML element. class
ScXMLIfElt
implements the <if> SCXML element. class
ScXMLInitialElt
implements the <initial> SCXML element. class
ScXMLInvokeElt
implements the <invoke> SCXML element. class
ScXMLLogElt
implements the <log> SCXML element. class
ScXMLMinimumExprDataObj
implements the data objects for the evaluator for the minimum profile.
class
ScXMLMinimumEvaluator
implements the evaluator for the minimum profile. class
ScXMLObject
Base class for all SCXML objects. class
ScXMLParallelElt
implements the <parallel> SCXML element. class
ScXMLParamElt
implements the <param> SCXML element. class
ScXMLScriptElt
implements the <script> SCXML element. class
ScXMLScxmlElt
implements the <scxml> SCXML element. class
ScXMLSendElt
the <
send> SCXML element. class
ScXMLStateElt
implements the <state> SCXML element. class
ScXMLStateMachine
Manager for processing events and setting states in SCXML structures.
class
ScXMLTransitionElt
the <transition>
SCXML element. class
ScXMLValidateElt
implements the <validate> SCXML element. class
ScXMLXPathEvaluator
implements the XPath evaluator.
Detailed Description¶
This set of classes is a basic implementation of State Chart XML. It is not
complete, nor is it necessary conformant to those parts it implements.
Currently Coin uses SCXML for managing 3D viewer user interaction (the
non-model-interaction part) - the examiner navigation mode in layman terms.
The Draft Specification for SCXML is at
http://www.w3.org/TR/scxml/.
See also:
Navigation Classes
Since:
Coin 3.0
State Chart XML The
ScXML part of Coin is a basic, non-conformant,
partial implementation of State Chart XML, based on the W3C Working Draft 16
May 2008 of SCXML
http://www.w3.org/TR/2008/WD-scxml-20080516/. The latest
version should be at
http://www.w3.org/TR/scxml/. Read that document for a
basic understanding how SCXML documents should be constructed.
Coin uses SCXML for setting up its navigation systems, to be able to remove
hardcoded logic for user navigation and externalize it into XML files. This
makes it easy for users to customize the navigation system for their own
purposes.
Unsupported Items:
- •
- The <parallel> element is not supported as intended with parallel
states. Coin will just treat it as an ordinary <state> element for
now. Parallel states is not high up on the priority list, so expect this
to be handled after a lot of other functionality is in place.
- •
- The <datamodel>-related part of the specification is not fully
supported.
- •
- The 'target' attribute in the <transition> element can only identify
a single state currently, not multiple as you would have to when having
support for <parallel> elements (which we don't have).
- •
- The virtual state elements like <history> and <anchor> are
just implemented as dummy states for now and do not do anything in
relation to what they should actually do.
For learning more about how
ScXML is implemented and used in Coin, take a
look at $COINDIR/scxml/navigation/examiner.xml (or in the Coin source
directory, data/scxml/navigation/examiner.xml) for an example of how an SCXML
system for camera navigation looks, and look at the source files in
src/navigation/ for the C++ counterparts to the same SCXML navigation system.
Since:
Coin 3.0
Author¶
Generated automatically by Doxygen for Coin from the source code.