The impression.simulation namespace contains interfaces for simulations.
When compared to other interactive components (like a Flash Object), simulations provide more programmatic control, better reusability, and a clearly-defined mechanism for the content creator to script simulation interactions. Simulations can be embedded within the runtime, loaded into the runtime engine from an external file, or hosted completely outside of the RTE and managed by JavaScript or another connecting technology.
The Base Class Framework includes a robust mechanism for integrating both real-time and state-based simulations into learning content. Objects implementing interfaces in this namespace can be connected to the SimulationPlayer class, which acts as a central coordinator, managing and reviewing simulation interactions, controlling simulation state, and providing shell notifications.
The RTE DevKit includes the MagicBox sample; a fully-functional, real-time simulation. The MyShell sample runtime includes complete simulation support with a basic simulation sequencer and rules engine.
Interface | Description | |
---|---|---|
IAsyncLoad | Defines asynchronous load operations for a simulation object. | |
IRulesEngine | IRulesEngine defines the minimum functionality required by the SimulationPlayer for an object that evaluates simulation interaction. | |
ISequencer | ISequencer defines the minimum functionality required by the SimulationPlayer for an object that performs sequencing. | |
ISimulation | ISimulation defines the minimum functionality required for a simulation object. | |
ISimulationEx | ISimulationEx defines additional functionality for a simulation process. | |
ISimulationProvider | Defines a mechanism for accessing an ISimulation object. | |
ISimulationUI | ISimulationUI defines the minimum functionality required for a simulation user interface. | |
ISimulationUIProvider | Defines a mechanism for accessing an ISimulationUI object. | |
ISnapshotLoader | ISnapshotLoader defines the minimum functionality required by the SimulationPlayer for an object that processes snapshots. | |
ISnapshotReader | Defines the ability to update the simulation state based on an untyped or simulation-specific snapshot data format. | |
ISnapshotStringReader | Defines the ability to update the simulation state based on a snapshot string. | |
ISnapshotStringWriter | Defines the ability to write the simulation state to a string. | |
ISnapshotWriter | Defines the ability to write the simulation state to an untyped or simulation-specific object. | |
ISnapshotXMLReader | Defines the ability to update the simulation state based on an XML snapshot. | |
ISnapshotXMLWriter | Defines the ability to write the simulation state to an XML object. |