859 Commits

Autor SHA1 Nachricht Datum
Reinder Feenstra
b0aa99a8de objectlist: moved property changed to virtual method
so sub classes can do something with it if required
2023-03-06 00:20:50 +01:00
Reinder Feenstra
de34b0553c trainlist: added lob and weigth columns 2023-03-06 00:17:42 +01:00
Reinder Feenstra
2eed611da9 fix: object is empty after move 2023-03-06 00:05:35 +01:00
Reinder Feenstra
27125314a1 fix: object list didn't always register property changed on load 2023-03-05 23:05:07 +01:00
Reinder Feenstra
0c4094b365 implemented add/remove vehicles to a train, see #25 2023-03-05 23:03:54 +01:00
Reinder Feenstra
471db84655 removed restriction to only create/delete trains in edit mode, see #25 2023-03-03 00:03:12 +01:00
Filippo Gentile
6fe8f7af49 Add 2 new positions to Single Slip Switch
This matches recent addition to Double Slip Switch
2023-03-02 00:21:51 +01:00
Filippo Gentile
661b25c1e8 Add 4 new positions to Double Slip Switch turnout
- This adds Left/Right to double switch
- And adds new DoubleSlipStraightA / DoubleSlipStraightB to
TurnoutPosition enum
- Implemented new state drawing in TilePainter
- Updated logic in SignalPath::findBlocks()
2023-02-26 13:08:59 +01:00
Reinder Feenstra
63a5b8c7af rename list add/remove to create/delete
add = add existing item
remove = remove item, but don't destroy it
2023-02-25 23:15:38 +01:00
Reinder Feenstra
4f5e4f2992 fix: set socket options from network thread, see #33 2023-02-21 23:46:57 +01:00
Reinder Feenstra
6e3d2e68fc added version property to Traintastic object 2023-02-19 12:23:34 +01:00
Reinder Feenstra
f7fd18ea1a Merge branch 'master' of github.com:traintastic/traintastic 2023-02-18 23:14:40 +01:00
Reinder Feenstra
5a407e5ba1 fix: socket shutdown and close wasn't called by the io context thread
see #33
2023-02-18 23:14:37 +01:00
Filippo Gentile
2d035b6bac logging: Fix MinGW broken std::put_time()
Workaround missing specifier support in MinGW 12.2.0 by using old pre-C+
+11 specifiers.
2023-02-15 21:32:10 +01:00
Reinder Feenstra
7397cb9e16 Merge branch 'master' of github.com:traintastic/traintastic 2023-02-10 20:36:50 +01:00
Reinder Feenstra
ac9505f1f7 fix: disconnect() not called by the eventloop thread, see #34 2023-02-10 20:36:47 +01:00
Reinder Feenstra
312950c28c
Merge pull request #31 from gfgit/work/object_list_removed
model: HACK to let client refresh after object is removed
2023-02-06 23:23:44 +01:00
Filippo Gentile
54c2dc7c72 model: HACK to let client refresh after object is removed
When an object is removed from a list, Clients need to clear cached
values and reload the model.
This could be more efficient but it will be adressed in a separate pull
request.
2023-02-06 23:17:12 +01:00
Reinder Feenstra
ea3fbd8022 bugfix: blocksAhead may only be decremented on block tile 2023-02-06 19:59:14 +01:00
Reinder Feenstra
91658fafbb Merge branch 'master' into 11-märklin-cs2cs3-hardware-support 2023-01-31 23:41:25 +01:00
Reinder Feenstra
5c369efec5 Merge branch 'master' into 11-märklin-cs2cs3-hardware-support 2023-01-31 23:39:24 +01:00
Reinder Feenstra
86c4685b69 ObjectProperty: added getObject() to request object without knowing the id on the client
see #22
2023-01-30 23:33:25 +01:00
Reinder Feenstra
6829973e92 marklin_can: added MFX
see #11
2023-01-29 21:43:28 +01:00
Reinder Feenstra
ef3eb82dbe marklin_can: added motorola decoder support 2023-01-29 19:30:58 +01:00
Reinder Feenstra
b0349bf7ad marklin_can: debug logging improvements 2023-01-29 15:20:27 +01:00
Reinder Feenstra
60c5930ba3 marklin_can: implemented (DCC) decoder control 2023-01-29 15:19:41 +01:00
Reinder Feenstra
de231121f0 decoder: speedStep vs. throttle function now template
so they can be used with other data types as well.
2023-01-29 14:55:05 +01:00
Reinder Feenstra
143bb49a68 renamed MarklinCSInterface to MArklinCANInterface
see #11
2023-01-29 10:17:33 +01:00
Reinder Feenstra
12a22d20ed marklin_cs: implemented TCP/UDP communication and system stop/go/halt
see #11
2023-01-28 22:48:15 +01:00
Reinder Feenstra
1d250f28f8 added object id validation, see #22
an id may only contain a-z 0-9 _ and must start with a-z
all chars must be lowercase
2023-01-25 23:25:13 +01:00
Reinder Feenstra
9ee10e8aff
Merge pull request #18 from gfgit/work/gcc_warnings
Fix gcc warnings
2023-01-22 21:56:07 +01:00
Filippo Gentile
536c82f739 server: remove unix specific signal handler header 2023-01-22 01:22:10 +01:00
Filippo Gentile
4277285591 Fix GCC warning -Werror=uninitialized
std::array has no explicit constructors but GCC 12.2.0 doesn't like it
so add brace initialization.
2023-01-22 01:19:32 +01:00
Reinder Feenstra
6ad267f333
Merge pull request #13 from gfgit/work/signal_handler
server: handle SIGINT, SIGTERM, SIGBREAK (all platforms)
2023-01-21 22:23:59 +01:00
Reinder Feenstra
d5ace6999b
some changes for code style 2023-01-21 22:22:17 +01:00
Reinder Feenstra
7ee8a6aad7
corrected spelling, some changes for code style 2023-01-21 22:20:17 +01:00
Filippo Gentile
280d3ae2c4 server: log signal handler
New static function for signal handling
2023-01-21 21:35:30 +01:00
Filippo Gentile
45fd09e071 server: removed Unix specific signal handlers
Now it uses Boost.Asio
2023-01-21 21:34:17 +01:00
Reinder Feenstra
268479f224 #11 marklin-cs: added interface class 2023-01-20 23:02:46 +01:00
Reinder Feenstra
e490c656bc bugfix: Infinite recursion in SignalPath, closes #7 2023-01-20 21:54:36 +01:00
Filippo Gentile
e2b6c149d4 server: handle SIGINT, SIGTERM, SIGBREAK
Register signal handlers to shutdown gracefully
2023-01-19 23:31:15 +01:00
Reinder Feenstra
11d407b5af bugfix: if an interface failed to go online and exception caused the event processing
closes #9
2023-01-18 19:48:53 +01:00
Reinder Feenstra
a440d3968d fix: assigning another interface to an input didn't work 2023-01-18 19:17:42 +01:00
Reinder Feenstra
61b3db241a bugfix: assert() triggered on invalid data on world close
closes #8
2023-01-17 23:43:39 +01:00
Reinder Feenstra
27e14f4bd1 eventloop: threadId writable during tests
some test require a working eventloop
2023-01-15 22:50:52 +01:00
Reinder Feenstra
1839233687
Merge pull request #5 from gfgit/work/diy_input_sim_fix
input: fix TraintasticDIY input simulation
2023-01-13 23:11:23 +01:00
Filippo Gentile
794b0a4dcc input: fix TraintasticDIY input simulation
Toggling a disabled input caused crash.
Prevent iterator derefencing when invalid.

Other interfaces, like z21, allow toggling disabled inputs so the
behaviour is still correct.
2023-01-13 23:05:18 +01:00
Reinder Feenstra
37fc7bfcdb fix: use memcpy, size is always known
(MinGW complained)
2023-01-13 00:14:08 +01:00
Reinder Feenstra
b22e011ded
fix: missing include for mingw 2023-01-11 23:55:45 +01:00
Reinder Feenstra
08e4b45268
Merge pull request #3 from gfgit/work/fix_mingw
Fix compilation on Windows with MinGW
2023-01-10 23:41:57 +01:00