Sinelabore Homepage

Update for SysML v2. This version improves code generation and adds support for more SysML v2 features. Main improvements are to improve features relevant for state machine handling.

  • State machine improvements: final states, do assign actions, accept when transitions, and nested target states (e.g. then S2.S21).
  • Reworked timer and accept handling for timed transitions and message reception in state machines.
  • accept can bind received port data to a variable (e.g. m:Message); getPayload() simplifies access to port message content.

Example

action def getMsg{
    action acceptAction accept m:Message via myReceivePort{
      assign msg:=m.theEvent;
    }
}
  • Item definitions and usages, including base types and item-based events in state machines and ports.
  • Attribute arrays and improved multiplicity handling for attributes and items.
  • for x in y iteration over part arrays in generated action code.
  • A default state machine event enum is generated automatically when no explicit @-annotated enum is defined.