Joeri Exelmans
|
829cb29aa4
Action language: Added float literals, subtractions between durations and fixed bug in binary expression type check.
|
5 anni fa |
Joeri Exelmans
|
3c95a734bd
Simpler Source-Child priority implementation
|
5 anni fa |
Joeri Exelmans
|
ff638964bb
Experiment with statically generating sets of concurrent transitions.
|
5 anni fa |
Joeri Exelmans
|
d6c05d3510
Implemented additional "arena" hierarchical priority semantics + corrected existing semantics (Source-Child semantics does no longer reverse "explicit" (document) order of transitions of equal priority). Add tests for hierarchical priority semantics.
|
5 anni fa |
Joeri Exelmans
|
61b8f1b513
Higher re-use of transition candidate generation logic
|
5 anni fa |
Joeri Exelmans
|
1db62ed6f5
Event queue: use collections.Counter class
|
5 anni fa |
Joeri Exelmans
|
4deb813733
Event queue: more efficient removing of items
|
5 anni fa |
Joeri Exelmans
|
b83afd8058
Event loop: Model remains responsive if we cannot keep up with wallclock time. Model simply runs at reduced speed but will catch up when it has the chance.
|
5 anni fa |
Joeri Exelmans
|
2ff5a98dc8
Various bug fixes + improvements to digital watch model.
|
5 anni fa |
Joeri Exelmans
|
03957f99e5
More flexible and efficient output events. Proper canceling of timer events in the controller event queue instead of ignoring canceled events in the statechart (statechart should not execute a big step for a canceled event)
|
5 anni fa |
Joeri Exelmans
|
5f01be7d40
Added missing type check.
|
5 anni fa |
Joeri Exelmans
|
a5bd657f8d
Call Tk's update_idletasks when scheduling another wakeup, so the (digital watch) interface remains responsive under full load.
|
5 anni fa |
Joeri Exelmans
|
d98becde8f
More slotted classes
|
5 anni fa |
Joeri Exelmans
|
49bc688471
More slotted classes and using Python's 'with' statement for recording timings.
|
5 anni fa |
Joeri Exelmans
|
638185fbe3
Turn State and Transition classes (many attribute accesses at runtime) and Event class (frequently created at runtime) into slotted classes for performance. State and Transition are 'frozen' after tree optimization (writing an attribute would raise an error)
|
5 anni fa |
Joeri Exelmans
|
9a65f34293
Entering a history state whose parent hasn't been exited before should exit the parent's default state.
|
5 anni fa |
Joeri Exelmans
|
cc287b49ff
Add file mentioning tests yet to write.
|
5 anni fa |
Joeri Exelmans
|
26474302b9
When not debugging, use 'int' type instead of our Bitmap type (which inherits 'int'). Almost halves transition execution time!
|
5 anni fa |
Joeri Exelmans
|
def1c58b23
Remove unused code.
|
5 anni fa |
Joeri Exelmans
|
858f49384f
Partially-static computation of a transition's enter state set, saving us 0.05 ms (!) when executing a complex transition.
|
5 anni fa |
Joeri Exelmans
|
af62dc077c
Various small fixes
|
5 anni fa |
Joeri Exelmans
|
f8e9432157
Debug print sets of input, output and internal events at controller construction.
|
5 anni fa |
Joeri Exelmans
|
f7387ed7e1
Fix bug in XML parser.
|
5 anni fa |
Joeri Exelmans
|
bc74051b2f
Use "Take One" for digital watch.
|
5 anni fa |
Joeri Exelmans
|
b5d9ee35b0
Cleaning
|
5 anni fa |
Joeri Exelmans
|
47499356c2
Introduce XML rules for "single instance models" (like digital watch). Controller delta can be set in XML.
|
5 anni fa |
Joeri Exelmans
|
7e9ac8f43d
Cleaning up
|
5 anni fa |
Joeri Exelmans
|
eb867dae7f
Factor out reusable event loop integration stuff from Digital Watch example to SCCD library. Rename "Model" classes to "CD" (Class Diagram) for clarity.
|
5 anni fa |
Joeri Exelmans
|
cede8ccf90
Digital watch is working!
|
5 anni fa |
Joeri Exelmans
|
a57ca82fd6
Got digital watch pretty much working, with some bugs.
|
5 anni fa |