Changes for page Basic design

Last modified by nfl on 2025/01/30 12:05

From version 5.1
edited by nbw
on 2014/06/20 09:36
Change comment: There is no comment for this version
To version 7.1
edited by nbw
on 2014/06/22 18:50
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,5 +1,7 @@
1 += Basic design =
1 1  
2 2  
4 +
3 3  {{toc/}}
4 4  
5 5  We compose our railway controller from several train controllers, combined with controllers for mutual exclusion.
... ... @@ -14,6 +14,10 @@
14 14  
15 15  **For each controlled train** one state and the corresponding transitions are added.
16 16  
19 +A train **must** signal the wish to enter a segment by setting the variable **bool <segment>_req[trainNum] **to true.
20 +The right to enter a segement is given to the train by setting the variable **int <segment>_perm** to the train number.
21 +After leaving a segment the train **must** remove his request by setting <segment>_req[trainNum] to false again.
22 +
17 17  For a free track the *_perm variable is set to -1 and all tracks, apart from starting positions, are initialised with -1. For the starting positions the *_perm variables are set to the corresponding train number and the *_req variable for the train is set to true.
18 18  
19 19  **A train must not enter a segment or alter the settings of a segment without holding the lock for the segment. No exceptions from this rule are allowed.**
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -9471036
1 +9471042
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471036/Basic design
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/SS14Railway/pages/9471042/Basic design