Joeri Exelmans
|
829cb29aa4
Action language: Added float literals, subtractions between durations and fixed bug in binary expression type check.
|
5 years ago |
Joeri Exelmans
|
3c95a734bd
Simpler Source-Child priority implementation
|
5 years ago |
Joeri Exelmans
|
ff638964bb
Experiment with statically generating sets of concurrent transitions.
|
5 years ago |
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 years ago |
Joeri Exelmans
|
61b8f1b513
Higher re-use of transition candidate generation logic
|
5 years ago |
Joeri Exelmans
|
1db62ed6f5
Event queue: use collections.Counter class
|
5 years ago |
Joeri Exelmans
|
4deb813733
Event queue: more efficient removing of items
|
5 years ago |
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 years ago |
Joeri Exelmans
|
2ff5a98dc8
Various bug fixes + improvements to digital watch model.
|
5 years ago |
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 years ago |
Joeri Exelmans
|
5f01be7d40
Added missing type check.
|
5 years ago |
Joeri Exelmans
|
a5bd657f8d
Call Tk's update_idletasks when scheduling another wakeup, so the (digital watch) interface remains responsive under full load.
|
5 years ago |
Joeri Exelmans
|
d98becde8f
More slotted classes
|
5 years ago |
Joeri Exelmans
|
49bc688471
More slotted classes and using Python's 'with' statement for recording timings.
|
5 years ago |
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 years ago |
Joeri Exelmans
|
9a65f34293
Entering a history state whose parent hasn't been exited before should exit the parent's default state.
|
5 years ago |
Joeri Exelmans
|
cc287b49ff
Add file mentioning tests yet to write.
|
5 years ago |
Joeri Exelmans
|
26474302b9
When not debugging, use 'int' type instead of our Bitmap type (which inherits 'int'). Almost halves transition execution time!
|
5 years ago |
Joeri Exelmans
|
def1c58b23
Remove unused code.
|
5 years ago |
Joeri Exelmans
|
858f49384f
Partially-static computation of a transition's enter state set, saving us 0.05 ms (!) when executing a complex transition.
|
5 years ago |
Joeri Exelmans
|
af62dc077c
Various small fixes
|
5 years ago |
Joeri Exelmans
|
f8e9432157
Debug print sets of input, output and internal events at controller construction.
|
5 years ago |
Joeri Exelmans
|
f7387ed7e1
Fix bug in XML parser.
|
5 years ago |
Joeri Exelmans
|
bc74051b2f
Use "Take One" for digital watch.
|
5 years ago |
Joeri Exelmans
|
b5d9ee35b0
Cleaning
|
5 years ago |
Joeri Exelmans
|
47499356c2
Introduce XML rules for "single instance models" (like digital watch). Controller delta can be set in XML.
|
5 years ago |
Joeri Exelmans
|
7e9ac8f43d
Cleaning up
|
5 years ago |
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 years ago |
Joeri Exelmans
|
cede8ccf90
Digital watch is working!
|
5 years ago |
Joeri Exelmans
|
a57ca82fd6
Got digital watch pretty much working, with some bugs.
|
5 years ago |