1179 Commits

Autor SHA1 Nachricht Datum
Filippo Gentile
eba845cab5 server: Z21 ClientKernel remove speed trend logic
- Reply queue superseeds it
- It never worked and it's over complicated
- Keep LocoCache, maybe can be further simplified
2024-07-06 15:12:45 +02:00
Filippo Gentile
fc2ff35856 server: Z21 reply queue, use encoded speed and steps
- To save space we use the same encoding as done
  in Z21 protocol.
- This way we also can directly compare without decoding
- Now also direction and emergency stop are checked
2024-07-06 14:27:50 +02:00
Filippo Gentile
8a8772ede0 server: Z21 add pending request tracking
This makes it possible to detect replies from
Z21 originated by our own requests and process
them differently than externally generated
messages.

This also enables resending requests which did
not receive the expected reply in timeout
2024-07-04 13:55:03 +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
Reinder Feenstra
191a3631e1
fix: LibArchive_INCLUDE_DIR -> LibArchive_INCLUDE_DIRS 2024-06-16 23:58:56 +02:00
Reinder Feenstra
a4d735a44c use find_path/find_library for lua5.3 on macOS 2024-06-16 23:45:06 +02:00
Reinder Feenstra
a78ecf3937 use find_path/find_library for libarchive on macOS 2024-06-16 23:25:13 +02:00
Reinder Feenstra
9ba8fb7a30 use FindPackage for libarchive and lua on macOS 2024-06-16 23:03:02 +02:00
Ryan Freeman
1c3bd8a50e
Update FindLua.cmake
/opt/homebrew # MacOS Apple Silicone
2024-06-16 14:22:05 +01:00
Reinder Feenstra
230fa8e513
set _LIBCPP_ENABLE_CXX17_REMOVED_UNARY_BINARY_FUNCTION for macos-13 2024-06-16 13:37:24 +02:00
Filippo Gentile
dd5da3ed8c server: Z21 fix setting power state
- Power state must be set only once per change
- If change comes from Z21 it must not be mirrored back
- Z21 Emergency Stop state has implicit Power On
- Sending PowerOn to Z21 is equivalent to Traintastic Run state
- Sending EmergencyStop state to Z21 is equivalent to PowerOn + stopped
2024-06-12 18:33:36 +02:00
Filippo Gentile
80fdb71bd7 server: Z21 fix wrong parameter in message 2024-06-12 18:31:44 +02:00
Reinder Feenstra
71453f1743
Merge pull request #113 from gfgit/work/gfgit/recognize_output_state
Recognize output state
2024-06-10 22:36:21 +02:00
Filippo Gentile
77a74e0c45 server: method.hpp move includes to method.tpp 2024-06-10 00:13:08 +02:00
Filippo Gentile
01e31200e7 server: OutputMapItemBase split implementatio 2024-06-09 23:57:20 +02:00
Filippo Gentile
bc5c226d7f server: Output: remove onValueChangedGeneric scriptable attribute
- Lua scripts can use subclasses onValueChanged event
  since Lua has weak typing
2024-06-08 17:21:48 +02:00
Reinder Feenstra
7f7ea39105 train: added on_block_assigned and on_block_removed events. 2024-06-07 22:39:25 +02:00
Reinder Feenstra
73151f8082 train: added on_block_reserved event. 2024-06-07 18:21:08 +02:00
Filippo Gentile
921cbb2d51 server: OutputMapItem prioritize actions full matches
- Action matches with "None" are now matched only if
  no full match is found
2024-06-06 00:21:15 +02:00
Reinder Feenstra
282a7651b7 train: fix: block enter events wasn't fired if train entered a reserved block 2024-06-05 23:58:50 +02:00
Filippo Gentile
d50c01df9f server: OutputMapOutputAction add const getters
- Remove some unused includes
2024-06-05 23:26:12 +02:00
Filippo Gentile
10b1993c2e server: TurnoutSingleSlipRailTile fix extra comma 2024-06-05 23:13:26 +02:00
Filippo Gentile
29068af90f server: OutputMapOutputAction add const 2024-06-05 23:05:14 +02:00
Filippo Gentile
81c068699f server: OutputMap use new onValueChangedGeneric Event 2024-06-05 23:05:14 +02:00
Filippo Gentile
407c00d96b server: Output add onValueChangedGeneric Event
- This event makes it easier to support subclasses
2024-06-05 23:05:14 +02:00
Filippo Gentile
05ac9db504 server: SignalRailTile reevaluate aspect on external change
Re-evaluate signal aspect to protect from accidental changes
made by the user from the command station or handset device.
2024-06-05 23:05:14 +02:00
Filippo Gentile
e5c88f6aa0 server: OutputMapSingleOutputAction, OutputMapPairOutputAction match
None

None means "any state is ok" so it should always match whatever
current output state is.
2024-06-05 23:05:14 +02:00
Filippo Gentile
c580f224bf server: SignalRailTile fix infinite recursion on output state change 2024-06-05 23:05:14 +02:00
Filippo Gentile
bdd4816d7a server: sync DecouplerRailTile and SignalRailTile with external state 2024-06-05 23:05:14 +02:00
Filippo Gentile
eb18c16b86 server: TurnoutRailTile update from Output state
Also adapt all subclasses
2024-06-05 23:05:14 +02:00
Filippo Gentile
37b485c7c4 server: OutputMap refresh matching action on Output state change 2024-06-05 23:05:07 +02:00
Filippo Gentile
b8a653e7af server: OutputMapItem support parsing current output state
Parse current output state as received from command station
and use it to match an output action
2024-06-05 22:39:48 +02:00