Filippo Gentile
2f1bfe49cc
server: TrainVehicleList strich checks on add/remove
2024-08-16 16:37:38 +02:00
Reinder Feenstra
2e429d2e65
fix: addToWorld was called instead of destroyed
...
thanks @gfgit for spotting it!
2024-08-01 23:14:04 +02:00
Filippo Gentile
e66f1083df
server: BlockRailTile move path release to TrainTracking
...
- This effectively reverts commit 0b22d1f7
- Logic from commit 0b22d1f7 is now in TrainTracking
- This fixes case when short train releases "enter"
block before occupying "exit" block.
2024-07-29 20:26:33 +02:00
Filippo Gentile
7510a10ef4
BlockPath: implement delayed release
...
This simulates train still occupying turnouts while it has
already left the entrance ("from") block.
Useful when turnouts do not have dedicate occupancy detectors.
- New World property
- English and Italian translations
2024-07-29 20:26:33 +02:00
Filippo Gentile
4c6f80afa7
server: World add new settings for external output change
...
- Refactored code in TurnoutRailTile and SignalRailTile
- Use early return pattern
- Added Enlish and Italian translations
- New Category::trains
2024-07-29 20:26:33 +02:00
Filippo Gentile
343a14ceb1
server: Add better log messages to Signal and Turnouts
...
- New messages when position/aspect is externally changed
- New messages when position/aspect is corrected
- New messages when train is stopped
- Separate messages for Signals and Turnouts
- Avoid stopping twice the same Train
- Italian and English translations
2024-07-29 20:26:33 +02:00
Filippo Gentile
76c5451275
server: Add log warning when output is externally changed while locked
2024-07-29 20:26:33 +02:00
Filippo Gentile
7590a82d39
server: SignalRailTile stop trains when retry is exceded
...
- When locked and retry count is reached, stop trains in path
- Evaluate only if a path is reserved
2024-07-29 20:26:33 +02:00
Filippo Gentile
a2687177a4
server: TurnoutRailTile implement retry count
...
- If position is externally changed while a path is reserve
Turnout will try to reset it's position to reserved one
If it fails and reaches maximum retry count it will stop trains in
path.
2024-07-29 20:26:33 +02:00
Filippo Gentile
7bcffe3319
server: SignalRailTile implement basic retry count
2024-07-29 20:26:33 +02:00
Filippo Gentile
96124b4419
server: BlockRailTile release path when train leaves
2024-07-29 20:26:33 +02:00
Filippo Gentile
7f8d16de0c
server: BlockPath prevent release while train is inside it
2024-07-29 20:26:33 +02:00
Filippo Gentile
06a2d46ccc
server: BlockPath remove block reservation on release
...
TODO: this is HACKY and bypasses some logic
2024-07-29 20:26:33 +02:00
Filippo Gentile
bda6f4b495
server: NXManager allow releasing a reserved path
2024-07-29 20:26:33 +02:00
Filippo Gentile
40722ef433
server: BlockRailTile always updateTrainMethodEnabled when adding train
2024-07-29 20:26:33 +02:00
Filippo Gentile
aa35bacfac
server: DirectionControlRailTile prevent double reservation
...
- Allow setting to "Both" while reserved
2024-07-29 20:26:33 +02:00
Filippo Gentile
17a0a05fd8
server: DirectionControlRailTile lock while in reserved path
2024-07-29 20:26:33 +02:00
Filippo Gentile
c1480f15cb
server: CrossRailTile clear state on path release
2024-07-29 20:26:33 +02:00
Filippo Gentile
dd55749777
server: TurnoutRailTile lock position if reserved
...
Also react to external output changes and revert to reserved position if sneeded.
2024-07-29 20:26:33 +02:00
Filippo Gentile
b63d071ddf
server: SignalRailTile fix external aspect change evaluation
2024-07-29 20:26:30 +02:00
Reinder Feenstra
f79f016a89
test: added: Direction path reservation using NX and change direction state
2024-07-29 20:22:54 +02:00
Reinder Feenstra
4f338f8e10
fix: use _stricmp on Windows, strcasecmp is POSIX
2024-07-16 08:34:10 +02:00
Reinder Feenstra
8e655f7c2e
worldlist now sorted case insensetive
2024-07-15 23:53:04 +02:00
Reinder Feenstra
fdda0888d3
Upgrade to Lua 5.4
2024-07-12 00:23:12 +02:00
Reinder Feenstra
e545408c1e
fix: objects kept each other alive
2024-07-10 00:33:17 +02:00
Reinder Feenstra
80b08cb02a
outputmap: added parent property for client, so it can access the object the outputmap belongs to.
2024-07-08 23:11:09 +02:00
Reinder Feenstra
4d76dc8891
Converted Tile::tileId() to a property, so it can be used by the client.
2024-07-08 23:09:15 +02:00
Reinder Feenstra
e6cc388aa9
fix: SIG SEGV when ECoS failed to connect
...
see #150
2024-07-08 22:58:19 +02:00
Reinder Feenstra
e6a215825b
output map: moved use to signal output map
...
(other output maps always use all values)
2024-07-07 00:15:10 +02:00
Reinder Feenstra
4e11e789aa
fix: dual_motor translation
2024-07-07 00:12:39 +02:00
Reinder Feenstra
aa8228dd6b
Added "dual motor/coil" option to single/double slip turnout, this controls the available turnout positions.
...
see #112
2024-07-05 23:51:01 +02:00
Reinder Feenstra
f4c9e722c9
No more git lfs, git lfs is metered
2024-07-03 23:01:45 +02:00
Reinder Feenstra
9a9614edc0
fix error: captured structured bindings are a C++20 extension
2024-07-03 21:21:32 +02:00
Reinder Feenstra
93c7204d9c
Renumbered error codes, E3003 and E3004 conflict with PR #115
2024-07-03 19:50:34 +02:00
Reinder Feenstra
343cc1c978
fix error: declaration shadows a structured binding [clang-diagnostic-shadow]
2024-07-03 08:13:01 +02:00
Reinder Feenstra
10c7d732d1
Added train param to block.removeTrain and error reporting.
...
Client will now show an error in case the train can't be removed.
Added support for removing a specific train if multiple trains are in the block.
see #70
2024-07-02 23:42:22 +02:00
Reinder Feenstra
1dd2f375c3
xpressnet: use async tcp connect the prevent "hanging", see #150
2024-06-27 23:53:51 +02:00
Reinder Feenstra
7e8d82673a
fix: added missing destructor in header
2024-06-27 23:51:46 +02:00
Reinder Feenstra
0bc31a7129
traintasticdiy: use async tcp connect the prevent "hanging", see #150
2024-06-27 22:24:03 +02:00
Reinder Feenstra
a9ae2497bf
block: deactivate train if it is removed from the last block
2024-06-27 21:41:35 +02:00
Reinder Feenstra
0adf0584dd
marklincan: use async tcp connect the prevent "hanging", see #150
2024-06-25 22:46:54 +02:00
Reinder Feenstra
ea027d8d3f
fix: endless started loop, see #150
2024-06-25 22:31:01 +02:00
Reinder Feenstra
f47499d5c5
ecos: use async tcp connect the prevent "hanging", see #150
2024-06-24 22:51:55 +02:00
Reinder Feenstra
4eb0e97513
dcc-ex: use async tcp connect the prevent "hanging", see #150
2024-06-24 22:49:30 +02:00
Reinder Feenstra
bd09107180
loconet: use async tcp connect the prevent "hanging", see #150
2024-06-23 23:07:37 +02:00
Reinder Feenstra
161a0e9521
fix: implemented deleteLater for protocol kernels, to make sure all EventLoop work posted by the kernel thread is processed before the kernel is deleted.
2024-06-22 09:05:20 +02:00
Ryan Freeman
b73cf4782a
Fixed new line character skipping \n\r handles in both directions as well \r\n as well as just \n or \r
2024-06-21 16:11:21 +01:00
Reinder Feenstra
3b54dc17bf
Merge remote-tracking branch 'origin/master' into ci-macos-14
2024-06-19 21:17:13 +02:00
Reinder Feenstra
6db8c82d81
fix: loconet lbserver write "failed succesfully", see #141
2024-06-18 22:44:19 +02:00
Reinder Feenstra
1fd6e616e9
Merge pull request #131 from gfgit/work/gfgit/fix_z21_power_state
...
Fix z21 power state
2024-06-17 22:39:04 +02:00