Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

There are several extensions implemented to ease the work with a scl model. (de.cau.cs.kieler.scl.extensions)

SCL Factory Extensions

coming soon... You need several Factories to handle all aspects of Yakindu (SGraph + SText) and the extended SCChart models. The SCL Factory Extension provides you with shortcuts for all factories.

ShortcutFactory Description
SGraph()SGraphFactory::eINSTANCEFactory for yakindu statechart models 
SText()StextFactory::eINSTANCEFactory for yakindu expressions
SyncGraph()SyncgraphFactory::eINSTANCEFactory for sgraph extensions
SyncText()SynctextFactory::eINSTANCEFactory for stext extensions
SCCExp()SCChartsExpFactory::eINSTANCEFactory for SCCharts specific expression extensions
SCL()SclFactory::eINSTANCEFactory for SCL

SCL Create Extensions

coming soon...

...

coming soon...

SCL Ordering Extensions

coming soon..The Ordering Extensions provide functions, which can be used in the xtend sort context.

MethodDescription

def int compareSCLRegionStateOrder(SyncState, SyncState) 

Sorts states according to their type. Initial states come first, final states last.

SCL Statement Extensions

coming soon...

SCL Thread Extensions

coming soon...The Thread Extensions provide functions to ease the handling of SCL threads and statements in the context of SCL threads.

MethodDescription

def AbstractThread getThread(Instruction)

def AbstractThread getThread(Statement) 

Returns the SCL thread of a SCL statement or SCL instruction 

def AbstractThread getMainThread(Instruction)

def AbstractThread getMainThread(Statement) 

Returns the main thread of a SCL program 

def boolean isInSameThreadAs(Instruction, Instruction)

def boolean isInSameThreadAs(Statement, Statement)

Returns true, if both instructions/statements are in the same thread

def boolean isInMainThread(Instruction)

def boolean isInMainThread(Statement)

Returns true, if the instruction/statement runs in the main thread

def boolean isInThread(Instruction, Thread)

def boolean isInThread(Statement, Thread)

Returns true, if the instruction/statement runs in the given thread

def boolean contains(Thread, Instruction)

def boolean contains(Thread, Statements)

Returns true, if the thread contains the given instruction/statement

def dropPrevious(Thread, Statement)

def dropPrevious(List<Statement>, Statement) 

Drops all preceeding statements in a thread or a list of statements until the given statement is reached

SCL Goto Extensions

coming soon...

...