|
Jeliot3ExecutionProcess
Jeliot 3 Execution ProcessMain threadsLauncher JeliotWindow Interpreter (DynamicJava) Director MCodeTheaterInterpreter Other MCodeinterpreters What happens when animation starts
<IMAGE: process diagram > <--- To be used in http://www.websequencediagrams.com/ ------> User->Jeliot Window: Clicks compile Jeliot Window->Jeliot: Executes compile() Jeliot->Launcher: Starts launcher thread note right of Launcher: sets interpreter method call and read/write pipes end note Launcher->Interpreter: interpret Java code Interpreter->Interpreter:writes MCode to pipe note right of Interpreter: nobody is reading from the pipe yet end note Jeliot-> Jeliot Window: try to enter animate Jeliot->Jeliot: rewind() Jeliot->Director: creates director Jeliot->MCodeTheaterInterpreter: new thread note right of MCodeTheaterInterpreter: also threads for other interpreters if need end note User->Jeliot Window: clicks Play Jeliot Window->Director: show me the goods Director->MCodeTheaterInterpreter: start reading from the pipe MCodeTheaterIntepreter->Director: draw boxes ----> ActorsDecentants of the Actor class are the basic components of the animation. Each Actor has its own part (e.g., ValueActor plays a value in the animation and VariableActor plays a Variable). For instnace, in order to create a new PointerActor one would refactor the ReferenceActor so that it can have different kinds of actors as its targets. Currently, ReferenceActor can only have InstanceActors as its targets where it points to. Actors can be combined to other Actors and components that implement the ActorContainer interface. //Just wondering if you have this image? <IMAGE: Actor and ActorContainer hierarchy> |