Permalink
Browse files

information about any Locomotive's function

  • Loading branch information...
cbries committed Sep 12, 2017
1 parent c349eab commit b75e8658e1aeac70217c89d672ef695dde95d8f5
View
@@ -1,3 +1,8 @@
2017 September xyz
------------------
Release Candidate 5 (RC5)
- information about any Locomotive's function
2017 September 10th
-------------------
Release Candidate 4 (RC4)
View
@@ -5,18 +5,12 @@
##########################################################################################
[A] implement synchronous communication approach for get/set-dlgs between RailwayEssential and CommandStation
[A] assign locomotives to different type groups, e.g. cargo (Güterzug), intercity (Fernverkehr), local (Nahverkehr)
[A] query speed step and provide stepping in locomotive control
[A] query information about any Locomotive's function
[A] assign locomotives to different type groups, e.g. cargo (Güterzug), intercity (Fernverkehr), local (Nahverkehr)
[A] assign trains to specific routes to allow shuttle mode
[B] implement synchronous communication approach for get/set-dlgs between RailwayEssential and CommandStation
[B] handle S88 event as state-machine, that unexpected triggers do not start/stop trains when route is still busy
[B] allow individual actions on events, e.g. buttons should start something
[C] "Fast Edit"-Tabelle für alle Objekte, TrackInformationen, etc. um schnell einen Plan editieren zu können
@@ -6,41 +6,41 @@ public class FunctionDescriptions
{
public static Dictionary<int, string> Functions = new Dictionary<int, string>
{
{0002, "function"},
{0003, "light"},
{0004, "light_0"},
{0005, "light_1"},
{0007, "sound"},
{0008, "music"},
{0009, "announce"},
{0010, "routing_speed"},
{0002, "Function"},
{0003, "Light"},
{0004, "Light_0"},
{0005, "Light_1"},
{0007, "Sound"},
{0008, "Music"},
{0009, "Announce"},
{0010, "Routing Speed"},
{0011, "abv"},
{0032, "coupler"},
{0033, "steam"},
{0034, "panto"},
{0035, "highbeam"},
{0036, "bell"},
{0037, "horn"},
{0038, "whistle"},
{0039, "door_sound"},
{0040, "fan"},
{0042, "shovel_work_sound"},
{0044, "shift"},
{0260, "interior_lighting"},
{0261, "plate_light"},
{0263, "brakesound"},
{0299, "crane_raise_lower"},
{0555, "hook_up_down"},
{0773, "wheel_light"},
{0811, "turn"},
{1031, "steam-blow"},
{1033, "radio_sound"},
{1287, "coupler_sound"},
{1543, "track_sound"},
{1607, "notch_up"},
{1608, "notch_down"},
{2055 , "thunderer_whistle"},
{3847, " buffer_sound"}
{0032, "Coupler"},
{0033, "Steam"},
{0034, "Panto"},
{0035, "Highbeam"},
{0036, "Bell"},
{0037, "Horn"},
{0038, "Whistle"},
{0039, "Door Sound"},
{0040, "Fan"},
{0042, "Shovel Work Sound"},
{0044, "Shift"},
{0260, "Interior Lighting"},
{0261, "Plate Light"},
{0263, "Brakesound"},
{0299, "Crane Raise Lower"},
{0555, "Hook Up Down"},
{0773, "Wheel Light"},
{0811, "Turn"},
{1031, "Steam Blow"},
{1033, "Radio Sound"},
{1287, "Coupler Sound"},
{1543, "Track Sound"},
{1607, "Notch up"},
{1608, "Notch down"},
{2055, "Thunderer Whistle"},
{3847, "Buffer Sound"}
};
}
}
@@ -462,10 +462,10 @@ public void Start()
Func<Locomotive, bool> startFncs = delegate(Locomotive locObj)
{
var startFnc = weaveItem.StartFncTypes;
foreach (var i in startFnc)
var startFncGroup = weaveItem.StartFncGroupTypes;
foreach (var i in startFncGroup)
{
var fncName = Enum.GetNames(typeof(FncTypes))[(int)i];
var fncName = Enum.GetNames(typeof(FncGroupTypes))[(int)i];
Model?.LogAutoplay($"{Prefix} {locObj.Name} switch on {fncName}\n");
Trace.WriteLine($"{Prefix} {locObj.Name} switch on {fncName}");
locObj.ToggleFunctionType((int)i, true);
@@ -477,10 +477,10 @@ public void Start()
Func<Locomotive, bool> stopFncs = delegate(Locomotive locObj)
{
var stopFnc = weaveItem.StopFncTypes;
foreach (var i in stopFnc)
var stopFncGroup = weaveItem.StopFncGroupTypes;
foreach (var i in stopFncGroup)
{
var fncName = Enum.GetNames(typeof(FncTypes))[(int)i];
var fncName = Enum.GetNames(typeof(FncGroupTypes))[(int)i];
Model?.LogAutoplay($"{Prefix} {locObj.Name} switch off {fncName}\n");
Trace.WriteLine($"{Prefix} {locObj.Name} switch off {fncName}");
locObj.ToggleFunctionType((int)i, false);
@@ -596,8 +596,8 @@ internal void ApplyAssignment()
if (tv != null)
{
item.StartFncTypes = tv.StartFncs;
item.StopFncTypes = tv.StopFncs;
item.StartFncGroupTypes = tv.StartFncGroups;
item.StopFncGroupTypes = tv.StopFncs;
item.FncToggle = tv.ToggleFncs;
}
}
@@ -737,20 +737,20 @@ private void JsCallbackOnCellSelected(object sender, int x, int y)
if (toggleState != null)
toggleState.IsChecked = weaveItem.FncToggle;
var startFncTypes = weaveItem.StartFncTypes;
foreach (var i in startFncTypes)
var startFncGroupTypes = weaveItem.StartFncGroupTypes;
foreach (var i in startFncGroupTypes)
{
var ii = (int)i;
var chk = tv.GetChk($"ChkFncStart{ii}");
var chk = tv.GetChk($"ChkFncGroupStart{ii}");
if (chk != null)
chk.IsChecked = true;
}
var stopFncTypes = weaveItem.StopFncTypes;
foreach (var i in stopFncTypes)
var stopFncGroupTypes = weaveItem.StopFncGroupTypes;
foreach (var i in stopFncGroupTypes)
{
var ii = (int)i;
var chk = tv.GetChk($"ChkFncStop{ii}");
var chk = tv.GetChk($"ChkFncGroupStop{ii}");
if (chk != null)
chk.IsChecked = true;
}

Large diffs are not rendered by default.

Oops, something went wrong.
@@ -768,7 +768,8 @@
"description": "",
"options": {
"blockGroupIdentifier": "7",
"events": "{\r\n \"sensor0\": \"0,10\",\r\n \"sensor1\": \"1,10\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}"
"events": "{\r\n \"sensor0\": \"0,10\",\r\n \"sensor1\": \"1,10\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}",
"blockCurrentLocomotive": "1004"
}
},
{
@@ -781,7 +782,7 @@
"options": {
"blockGroupIdentifier": "7",
"events": "{\r\n \"sensor0\": \"0,11\",\r\n \"sensor1\": \"1,11\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}",
"blockCurrentLocomotive": "1004"
"blockCurrentLocomotive": "1008"
}
},
{
@@ -818,8 +819,7 @@
"description": "",
"options": {
"blockGroupIdentifier": "7",
"events": "{\r\n \"sensor0\": \"1,14\",\r\n \"sensor1\": \"0,14\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}",
"blockCurrentLocomotive": "1009"
"events": "{\r\n \"sensor0\": \"1,14\",\r\n \"sensor1\": \"0,14\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}"
}
},
{
@@ -1137,7 +1137,7 @@
"options": {
"blockGroupIdentifier": "7",
"events": "{\r\n \"sensor0\": \"0,9\",\r\n \"sensor1\": \"1,9\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}",
"blockCurrentLocomotive": "1008"
"blockCurrentLocomotive": "1000"
}
},
{
@@ -1150,7 +1150,7 @@
"options": {
"blockGroupIdentifier": "7",
"events": "{\r\n \"sensor0\": \"1,16\",\r\n \"sensor1\": \"0,16\",\r\n \"sensor2\": \"--\",\r\n \"event0\": \"enter\",\r\n \"event1\": \"in\",\r\n \"event2\": \"--\"\r\n}",
"blockCurrentLocomotive": "1000"
"blockCurrentLocomotive": "1009"
}
},
{
Oops, something went wrong.

0 comments on commit b75e865

Please sign in to comment.