<
From version < 9.1 >
edited by Alexander Schulz-Rosengarten
on 2014/08/20 13:49
To version < 2.1 >
edited by Alexander Schulz-Rosengarten
on 2014/08/20 10:43
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,6 +1,6 @@
1 1  
2 2  
3 -{{toc maxLevel="2"/}}
3 +{{toc/}}
4 4  
5 5  = Components =
6 6  
... ... @@ -8,8 +8,6 @@
8 8  
9 9  [[image:attach:components.png]]
10 10  
11 -
12 -
13 13  == SCCharts Contoroller ==
14 14  
15 15  {{noformat}}
... ... @@ -26,56 +26,12 @@
26 26  hostcode.h hostcode.c
27 27  {{/noformat}}
28 28  
29 -This component provides an interface to affect the railway and request events.
27 +This component provides an interface to affect the railway and request events. It acts as wrapper around the railway API
30 30  
31 -The interface provides shorter and simpler access to most of the railway API. To prevent conflicts with existing function names all functions in our interface are prefixed with //rail//.
32 -
33 33  Most controls and requests are forwarded to the controller maintaining the synchronous environment of the tick-function. Some controls which do not require this maintenance are directly forwarded to the railway API.
34 34  
35 -The hostcode header contains the general documentation for any hostcode call used in the SCChart.
36 -
37 37  == Controller ==
38 38  
39 39  {{noformat}}
40 40  controller.h defaults.h controller.c
41 41  {{/noformat}}
42 -
43 -The core controller component sets up a connection to the railway, maintains an environment for the synchronous tick-function and invokes the tick-function in a loop.
44 -
45 -Additionally some time tracking is performed to determine time consumption of the tick function and its environment.
46 -
47 -To increase the robustness of the system the controller checks internal permissions of the SCChart-Controller against detected trains on the railway.
48 -
49 -== State Monitor ==
50 -
51 -{{noformat}}
52 -statemonitor.h statemonitor.c
53 -{{/noformat}}
54 -
55 -The state monitor component allows a thread-safe communication between connected GUIs and the running controller. This communication is also tick-safe meaning that changes are only applied at tick-borders.
56 -
57 -In addition to that the
58 -
59 -Furthermore it allows the generation of the current state of the controller in JSON format.
60 -
61 -== GUI Server ==
62 -
63 -{{noformat}}
64 -guiserver.h guiserver.c
65 -{{/noformat}}
66 -
67 -= Interaction =
68 -
69 -== GUI ==
70 -
71 -The controller allows multiple [[doc:GUIs]] to connect and interact with the controller.
72 -
73 -== Interrupts ==
74 -
75 -=== Quit, Pause and Cleanup ===
76 -
77 -While running the console the following user inputs are provided by the controller:
78 -
79 -* **CTRL+C** (SIGINT)** **quits the controller
80 -* **CTRL+\** (SIGQUIT)** **cleans up
81 -* **CTRL+Z **(SIGSTP) pauses and continues
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -9471734
1 +9471700
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471734/C Controller
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471700/C Controller