Changes for page Textual SCCharts Language SCT
Last modified by Richard Kreissig on 2023/09/14 11:05
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -65,10 +65,6 @@ 65 65 66 66 = Detailed Syntax of SCCharts Language Elements = 67 67 68 - 69 - 70 -{{toc/}} 71 - 72 72 == SCCharts, Initial States, States, Transitions == 73 73 74 74 {{column width="50%"}} ... ... @@ -90,338 +90,8 @@ 90 90 91 91 92 92 93 -== Variable == 94 - 95 -{{column width="50%"}} 96 -{{code linenumbers="true"}} 97 -scchart Variable { 98 - int var1; 99 - bool var2; 100 - int var3 = 3; 101 - bool var4 = false; 102 - input int var5; 103 - output float var6; 104 - input output bool var7; 105 - initial state A 106 - --> B; 107 - state B; 108 -} 109 -{{/code}} 110 -{{/column}} 111 - 112 -{{column width="50%"}} 113 - [[image:attach:02variable.png]] 114 -{{/column}} 115 - 116 -== Transition: Trigger & Effect == 117 - 118 -{{column width="50%"}} 119 -{{code linenumbers="true"}} 120 -scchart TriggerEffect { 121 - input int var1; 122 - output bool var2; 123 - initial state A 124 - --> B with var1 == 3 / var2 = true; 125 - state B; 126 -} 127 -{{/code}} 128 -{{/column}} 129 - 130 -{{column width="50%"}} 131 - [[image:attach:03triggereffect.png]] 132 -{{/column}} 133 - 134 -== Super State == 135 - 136 -{{column width="50%"}} 137 -{{code linenumbers="true"}} 138 -scchart SuperState { 139 - initial state A 140 - --> B; 141 - state B { 142 - initial state B1 143 - --> B2; 144 - state B2; 145 - }; 146 -} 147 -{{/code}} 148 -{{/column}} 149 - 150 -{{column width="50%"}} 151 - [[image:attach:04superstate.png]] 152 -{{/column}} 153 - 154 -== Super State: Final States & Termination Transition == 155 - 156 -{{column width="50%"}} 157 -{{code linenumbers="true"}} 158 -scchart FinalStateTermination { 159 - initial state A 160 - --> B; 161 - state B { 162 - initial state B1 163 - --> B2; 164 - final state B2; 165 - } 166 - >-> C; 167 - state C; 168 -} 169 -{{/code}} 170 -{{/column}} 171 - 172 -{{column width="50%"}} 173 - [[image:attach:05finalstatetermination.png]] 174 -{{/column}} 175 - 176 -== Super State: Weak Abort Transition == 177 - 178 -{{column width="50%"}} 179 -{{code linenumbers="true"}} 180 -scchart WeakAbort { 181 - input bool W; 182 - initial state A 183 - --> B; 184 - state B { 185 - initial state B1 186 - --> B2; 187 - state B2; 188 - } 189 - --> C with W; 190 - state C; 191 -} 192 -{{/code}} 193 -{{/column}} 194 - 195 -{{column width="50%"}} 196 - [[image:attach:06weakabort.png]] 197 -{{/column}} 198 - 199 -== Super State: Strong Abort Transition == 200 - 201 -{{column width="50%"}} 202 -{{code linenumbers="true"}} 203 -scchart StrongAbort { 204 - input bool S; 205 - initial state A 206 - --> B; 207 - state B { 208 - initial state B1 209 - --> B2; 210 - state B2; 211 - } 212 - o-> C with S; 213 - 214 - state C; 215 -} 216 -{{/code}} 217 -{{/column}} 218 - 219 -{{column width="50%"}} 220 - [[image:attach:07strongabort.png]] 221 -{{/column}} 222 - 223 -== Concurrent Regions (inside a Super State) == 224 - 225 -{{column width="50%"}} 226 -{{code linenumbers="true"}} 227 -scchart Regions { 228 - input bool S; 229 - initial state A 230 - --> B; 231 - state B { 232 - region Region1 : 233 - initial state B1 234 - --> B2; 235 - state B2; region Region2 : 236 - initial state B3; 237 - }; 238 -} 239 -{{/code}} 240 -{{/column}} 241 - 242 -{{column width="50%"}} 243 - [[image:attach:08regions.png]] 244 -{{/column}} 245 - 246 -== Entry Action, During Action, Exit Action == 247 - 248 -{{column width="50%"}} 249 -{{code linenumbers="true"}} 250 -scchart Actions { 251 - input bool var1; 252 - output bool var2; 253 - initial state A 254 - --> B; 255 - state B { 256 - entry var1 / var2 = true; 257 - during var1 / var2 = true; 258 - immediate during var1 / var2 = true; 259 - exit var1 / var2 = true; 260 - initial state B1 261 - --> B2; 262 - state B2; 263 - }; 264 -} 265 -{{/code}} 266 -{{/column}} 267 - 268 -{{column width="50%"}} 269 - [[image:attach:09actions.png]] 270 -{{/column}} 271 - 272 -== Shallow History Transition == 273 - 274 -{{column width="50%"}} 275 -{{code linenumbers="true"}} 276 -scchart HistoryShallow { 277 - input bool var1; 278 - output bool var2; 279 - initial state A 280 - --> B shallow history with var1; 281 - state B { 282 - initial state B1 283 - --> B2; 284 - state B2; 285 - } 286 - --> A with var1; 287 -} 288 -{{/code}} 289 -{{/column}} 290 - 291 -{{column width="50%"}} 292 - [[image:attach:10historyshallow.png]] 293 -{{/column}} 294 - 295 -== Deep History Transition == 296 - 297 -{{column width="50%"}} 298 -{{code linenumbers="true"}} 299 -scchart HistoryDeep { 300 - input bool var1; 301 - output bool var2; 302 - initial state A 303 - --> B history with var1; 304 - state B { 305 - initial state B1 306 - --> B2; 307 - state B2; 308 - } 309 - --> A with var1; 310 -} 311 -{{/code}} 312 -{{/column}} 313 - 314 -{{column width="50%"}} 315 - [[image:attach:11historydeep.png]] 316 -{{/column}} 317 - 318 -== Deferred Transition == 319 - 320 -{{column width="50%"}} 321 -{{code linenumbers="true"}} 322 -scchart Deferred { 323 - input bool var1; 324 - output bool var2; 325 - initial state A 326 - --> B deferred with var1; 327 - state B { 328 - entry var1 / var2 = true; 329 - } 330 - --> A with var1; 331 -} 332 -{{/code}} 333 -{{/column}} 334 - 335 -{{column width="50%"}} 336 - [[image:attach:12deferred.png]] 337 -{{/column}} 338 - 339 -== Transition with Count Delay == 340 - 341 -{{column width="50%"}} 342 -{{code linenumbers="true"}} 343 -scchart CountDelay { 344 - input bool var1; 345 - output bool var2; 346 - initial state A 347 - --> B with 4 var1; 348 - state B 349 - --> A with var1; 350 -} 351 -{{/code}} 352 -{{/column}} 353 - 354 -{{column width="50%"}} 355 - [[image:attach:13countdelay.png]] 356 -{{/column}} 357 - 358 -== Array == 359 - 360 -{{column width="50%"}} 361 -{{code linenumbers="true"}} 362 -scchart Array { 363 - int myArray[10][2]; 364 - initial state init 365 - --> done with myArray[1][0] == 1 / myArray[2][1] = 2; 366 - final state done; 367 -} 368 -{{/code}} 369 -{{/column}} 370 - 371 -{{column width="50%"}} 372 - [[image:attach:14array.png]] 373 -{{/column}} 374 - 375 -== Signal == 376 - 377 -{{column width="50%"}} 378 -{{code linenumbers="true"}} 379 -scchart Signal { 380 - input signal i; 381 - output signal o 382 - initial state init 383 - --> done with i / o; 384 - final state done; 385 -} 386 -{{/code}} 387 -{{/column}} 388 - 389 -{{column width="50%"}} 390 - [[image:attach:15signal.png]] 391 -{{/column}} 392 - 393 393 394 394 395 395 396 396 397 397 398 - 399 - 400 - 401 - 402 - 403 - 404 - 405 - 406 - 407 - 408 - 409 - 410 - 411 - 412 - 413 - 414 - 415 - 416 - 417 - 418 - 419 - 420 - 421 - 422 - 423 - 424 - 425 - 426 - 427 -
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -947138 81 +9471385 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/947138 8/Textual SCCharts Description Language (SCT)1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/9471385/Textual SCCharts Description Language (SCT)