minimal_SCCD.mvc 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. include "primitives.alh"
  2. Diagram my_SCCD {
  3. name = "SimpleSCCD"
  4. author = "Yentl"
  5. }
  6. Class main {
  7. name = "Main"
  8. default = True
  9. }
  10. CompositeState main_statechart {
  11. name = "root"
  12. isInitial = True
  13. {composite_children} BasicState init {
  14. name = "initial"
  15. isInitial = True
  16. }
  17. {composite_children} ParallelState main_parallel {
  18. name = "parallel"
  19. isInitial = False
  20. {parallel_children} CompositeState parallel_x {
  21. {composite_children} BasicState x_a {
  22. name = "xa"
  23. isInitial = True
  24. }
  25. {composite_children} BasicState x_b {
  26. name = "xb"
  27. isInitial = False
  28. }
  29. {composite_children} BasicState x_c {
  30. name = "xc"
  31. isInitial = False
  32. }
  33. }
  34. {parallel_children} CompositeState parallel_y {
  35. {composite_children} BasicState y_a {
  36. name = "ya"
  37. isInitial = True
  38. }
  39. {composite_children} BasicState y_b {
  40. name = "yb"
  41. isInitial = False
  42. }
  43. }
  44. }
  45. }
  46. transition (x_a, x_b) {
  47. name = "X"
  48. event = "X"
  49. }
  50. transition (x_b, x_c) {
  51. name = "Z"
  52. cond = $
  53. Boolean function cond(attributes : Element):
  54. log("in condition")
  55. return (1 > 0)!
  56. $
  57. }
  58. transition (y_a, y_b) {
  59. name = "Y"
  60. event = "Y"
  61. }
  62. transition (init, main_parallel) {
  63. name = "init"
  64. event = "init"
  65. }
  66. diagram_classes (my_SCCD, main) {}
  67. behaviour (main, main_statechart) {}