]>
git.tdb.fi Git - r2c2.git/log
Mikko Rasa [Mon, 3 Jun 2013 18:31:12 +0000 (21:31 +0300)]
Improve the interface and algorithms of BlockAllocator
Mikko Rasa [Sat, 1 Jun 2013 08:02:39 +0000 (11:02 +0300)]
Simplify some interfaces by using track and block iterators
Mikko Rasa [Fri, 31 May 2013 22:06:20 +0000 (01:06 +0300)]
Split block allocation to a separate class
Mikko Rasa [Fri, 31 May 2013 21:57:21 +0000 (00:57 +0300)]
Pull the SetFlag class from mspcore
Mikko Rasa [Wed, 29 May 2013 20:33:52 +0000 (23:33 +0300)]
Don't fail when adding multiple tracks to an initially empty Route
Mikko Rasa [Wed, 29 May 2013 20:32:09 +0000 (23:32 +0300)]
Report all missing flags in bad_route
This was the intention from the beginning, but somehow else statements
slipped in.
Mikko Rasa [Wed, 29 May 2013 17:48:38 +0000 (20:48 +0300)]
New routing system for trains
The earlier code routed each train separately and tried to deal with
conflicts as they arose. The new system instead considers the entire
layout and simultaneously finds routes for all trains. It is able to
have trains wait for each other, and in the future many new tricks can
be added.
Mikko Rasa [Sat, 25 May 2013 23:13:33 +0000 (02:13 +0300)]
Plug several memory leaks
Mikko Rasa [Sat, 25 May 2013 23:12:45 +0000 (02:12 +0300)]
Add the signal to the catalogue layout
Mikko Rasa [Sat, 25 May 2013 23:11:43 +0000 (02:11 +0300)]
Register pre-existing signals in Layout3D constructor
Mikko Rasa [Sat, 25 May 2013 23:00:12 +0000 (02:00 +0300)]
Don't force signals to be positioned next to track
They can now be positioned freely and will logically attach to a nearby
track.
Mikko Rasa [Sat, 25 May 2013 22:59:11 +0000 (01:59 +0300)]
Snap to segments in both directions
Choose whichever is closer to the current rotation.
Mikko Rasa [Sat, 25 May 2013 22:54:24 +0000 (01:54 +0300)]
Refactor TrackIter::block_iter
The new implementation is slightly more efficient in certain cases and
won't choke at the end of a line.
Mikko Rasa [Thu, 23 May 2013 20:12:00 +0000 (23:12 +0300)]
Make use of the geometry part of libmspmath
Mikko Rasa [Sun, 19 May 2013 12:31:46 +0000 (15:31 +0300)]
Don't zero slope for tracks not connected on both ends
Since check_slope is now called implicitly when linking tracks together,
loading layouts with sloped tracks wasn't working properly.
Mikko Rasa [Sun, 19 May 2013 12:31:15 +0000 (15:31 +0300)]
Make use of the mspmath library
Mikko Rasa [Mon, 13 May 2013 21:05:31 +0000 (00:05 +0300)]
Remove the device firmware from here
They have been moved into the model-railway-devices repo since they are
not directly related to R²C².
Mikko Rasa [Mon, 13 May 2013 21:03:42 +0000 (00:03 +0300)]
Use Objects in Manipulator::neighbors
Mikko Rasa [Mon, 13 May 2013 20:58:10 +0000 (23:58 +0300)]
Perform check_slope automatically with certain operations
Mikko Rasa [Mon, 13 May 2013 19:54:47 +0000 (22:54 +0300)]
Add a generic link interface as well
Mikko Rasa [Sun, 12 May 2013 16:08:30 +0000 (19:08 +0300)]
Add a generic snapping interface in Object
Mikko Rasa [Mon, 6 May 2013 18:38:20 +0000 (21:38 +0300)]
Make designer work on generic objects
This introduces a lot of dynamic_casts and other ugliness, since not all
operations are generalized yet. They'll be worked out in the near future.
Mikko Rasa [Mon, 6 May 2013 17:23:15 +0000 (20:23 +0300)]
Add a common base class for tangible objects
Mikko Rasa [Mon, 6 May 2013 16:49:24 +0000 (19:49 +0300)]
Correct ordering of some functions
Mikko Rasa [Mon, 6 May 2013 15:26:24 +0000 (18:26 +0300)]
Add definitions and 3D model for the BR 420
Mikko Rasa [Sat, 27 Apr 2013 10:05:55 +0000 (13:05 +0300)]
Fix logic with signals and train direction check
The train pointer wasn't being cleared in case of wrong direction. Since
commit
4086edb it's possible to implement the logic in a more efficient
way too.
Mikko Rasa [Fri, 26 Apr 2013 18:21:58 +0000 (21:21 +0300)]
Allow rotating the body object of a vehicle
This is a quick and dirty solution to support multiple units. A better
solution is to allow rotating the vehicle instance, but that needs some
additional coding to handle correctly.
Mikko Rasa [Fri, 26 Apr 2013 18:15:35 +0000 (21:15 +0300)]
Fix linking issues with mspnet
Remote and serial use the resolve function and must link with mspnet
directly. Adding an empty destructor to server.cpp avoids generating
a default destructor for StreamServerSocket in files that #include
server.h.
Mikko Rasa [Thu, 25 Apr 2013 11:13:04 +0000 (14:13 +0300)]
One more endpoint mask cleanup
Mikko Rasa [Thu, 25 Apr 2013 11:08:39 +0000 (14:08 +0300)]
Adapt event handlers to library changes
Mikko Rasa [Thu, 25 Apr 2013 11:07:40 +0000 (14:07 +0300)]
Remove deprecated header
Mikko Rasa [Sun, 24 Feb 2013 11:53:46 +0000 (13:53 +0200)]
Get rid of the TrainAI tagging system
Instead add a function to get an AI of a specific type.
The tags were too clumsy and brittle. Most AIs don't work well with
multiple instances per train, so the type is an adequate identifier.
Mikko Rasa [Sun, 24 Feb 2013 11:47:33 +0000 (13:47 +0200)]
Remove some debug messages that managed to sneak in
Mikko Rasa [Sun, 24 Feb 2013 10:32:28 +0000 (12:32 +0200)]
Connect halt checkbox in the remote to the right function
Mikko Rasa [Sat, 23 Feb 2013 10:44:29 +0000 (12:44 +0200)]
Add utility functions to make endpoint path mask operations clearer
Mikko Rasa [Sun, 17 Feb 2013 13:25:33 +0000 (15:25 +0200)]
Only consider arrival when a route is set
Mikko Rasa [Sun, 17 Feb 2013 13:21:52 +0000 (15:21 +0200)]
Set turnout paths synchronously when allocating blocks
Mikko Rasa [Fri, 15 Feb 2013 14:15:20 +0000 (16:15 +0200)]
Separate train routing logic to a class derived from TrainAI
Mikko Rasa [Fri, 15 Feb 2013 10:18:49 +0000 (12:18 +0200)]
Remove diversion logic
It was flawed in many ways and rarely produced useful results. A better
system to replace it will be implemented in the future.
Mikko Rasa [Fri, 15 Feb 2013 08:56:56 +0000 (10:56 +0200)]
Rearrange block reservations to present consistent state in signal_reserved
Mikko Rasa [Tue, 12 Feb 2013 12:40:07 +0000 (14:40 +0200)]
Add a flag to Track to indicate that its path is changing
Mikko Rasa [Tue, 12 Feb 2013 12:33:56 +0000 (14:33 +0200)]
Improve train color selection to always choose saturated colors
Mikko Rasa [Tue, 12 Feb 2013 12:32:13 +0000 (14:32 +0200)]
Delay processing new trains until they are fully loaded
Mikko Rasa [Sun, 10 Feb 2013 09:46:25 +0000 (11:46 +0200)]
Simulate a delay for switching turnouts in the Dummy driver
Mikko Rasa [Fri, 1 Feb 2013 16:56:11 +0000 (18:56 +0200)]
Implement signals in Intellibox driver as well
Mikko Rasa [Sun, 27 Jan 2013 13:26:18 +0000 (15:26 +0200)]
Mark turnout blocks before the next sensor as current
This avoids a problem where a train leaving a station wouldn't get the
following turnouts as current if they needed switching, and consequently
could trigger an emergency for not reaching a sensor in time.
Mikko Rasa [Sun, 27 Jan 2013 13:24:55 +0000 (15:24 +0200)]
Add basic support for signals
A lot of features are still missing or could use improvement, but whatever
is there works.
Mikko Rasa [Sun, 27 Jan 2013 13:21:13 +0000 (15:21 +0200)]
Generalize turnouts to magnet accessories in the central station driver
Mikko Rasa [Sat, 26 Jan 2013 20:37:54 +0000 (22:37 +0200)]
Add functions to resolve an arbitrary point to the nearest point on a track
Mikko Rasa [Sat, 26 Jan 2013 20:35:15 +0000 (22:35 +0200)]
Add a function to get a BlockIter from a TrackIter
Mikko Rasa [Sat, 26 Jan 2013 20:30:19 +0000 (22:30 +0200)]
Set vehicle position from reference if it has no track
This only became apparent when I happened to park a train near the origin
and the program went into an infinite loop while loading the layout.
Mikko Rasa [Sat, 26 Jan 2013 20:27:57 +0000 (22:27 +0200)]
Fix the arrow while picking a position for a train
Mikko Rasa [Mon, 21 Jan 2013 19:16:00 +0000 (21:16 +0200)]
Detect curved turnouts and assign appropriate symbols to them
Mikko Rasa [Sun, 20 Jan 2013 17:58:10 +0000 (19:58 +0200)]
Update deprecated keywords in gui resources
Mikko Rasa [Sun, 20 Jan 2013 11:58:28 +0000 (13:58 +0200)]
Fix elevation mode in Manipulator
I didn't get it quite right when converting the input event handling
Mikko Rasa [Sun, 20 Jan 2013 11:57:44 +0000 (13:57 +0200)]
Convert Measure to a Renderable
Mikko Rasa [Thu, 17 Jan 2013 14:28:08 +0000 (16:28 +0200)]
Adjust datafiles to library changes
Mikko Rasa [Thu, 17 Jan 2013 14:27:03 +0000 (16:27 +0200)]
Fix an off-by-one comparison error
Mikko Rasa [Thu, 17 Jan 2013 14:26:47 +0000 (16:26 +0200)]
Miscellaneous compilation fixes
Mikko Rasa [Thu, 17 Jan 2013 14:25:20 +0000 (16:25 +0200)]
Give filename to GLtk::Resources constructor
This is required to load external files correctly.
Mikko Rasa [Thu, 17 Jan 2013 14:13:14 +0000 (16:13 +0200)]
Adapt to mspnet API changes
Mikko Rasa [Thu, 17 Jan 2013 14:12:06 +0000 (16:12 +0200)]
Rewrite input even handling
Some interactions with the GUI are a bit broken at the moment, and will be
fixed later.
Mikko Rasa [Thu, 17 Jan 2013 13:42:59 +0000 (15:42 +0200)]
Mscellaneous adaptations to mspgl API changes
Mikko Rasa [Thu, 17 Jan 2013 13:42:02 +0000 (15:42 +0200)]
Use GL::Renderer in TrackWrap
Mikko Rasa [Thu, 17 Jan 2013 12:45:52 +0000 (14:45 +0200)]
The Root widget can now set matrices itself
Mikko Rasa [Thu, 17 Jan 2013 12:34:17 +0000 (14:34 +0200)]
Match changes in GL::Pipeline API
Mikko Rasa [Thu, 17 Jan 2013 12:31:23 +0000 (14:31 +0200)]
Collection::get now returns a reference
Mikko Rasa [Thu, 17 Jan 2013 12:29:20 +0000 (14:29 +0200)]
Rename Track3D::get_matrix to create_matrix to avoid a conflict
Mikko Rasa [Thu, 17 Jan 2013 12:28:30 +0000 (14:28 +0200)]
Use the new API for defining types in a collection
Mikko Rasa [Thu, 17 Jan 2013 12:25:27 +0000 (14:25 +0200)]
BasicLoader is now called ObjectLoader
Mikko Rasa [Thu, 17 Jan 2013 12:21:27 +0000 (14:21 +0200)]
Derive application classes from RegisteredApplication
Mikko Rasa [Thu, 17 Jan 2013 12:19:14 +0000 (14:19 +0200)]
Add target type to all lexical_casts
Mikko Rasa [Thu, 17 Jan 2013 12:13:08 +0000 (14:13 +0200)]
Fix remaining exception class names
Mikko Rasa [Thu, 17 Jan 2013 11:52:48 +0000 (13:52 +0200)]
Create a dedicated exception class for vehicle attachment errors
Mikko Rasa [Thu, 17 Jan 2013 10:50:50 +0000 (12:50 +0200)]
Use IO::Serial in the Intellibox driver
This code is untested and may contain bugs.
Mikko Rasa [Thu, 17 Jan 2013 10:48:58 +0000 (12:48 +0200)]
Use a dedicated exception class for route errors
Mikko Rasa [Thu, 17 Jan 2013 10:45:45 +0000 (12:45 +0200)]
Replace various map lookups with functions from maputils.h
Mikko Rasa [Thu, 17 Jan 2013 10:38:09 +0000 (12:38 +0200)]
Update #includes that have been renamed, and remove stray ones
Mikko Rasa [Tue, 8 Jan 2013 14:24:59 +0000 (16:24 +0200)]
Update Build file
Mikko Rasa [Tue, 8 Jan 2013 12:56:06 +0000 (14:56 +0200)]
Strip Id tags and copyright notices from files
The license text is now stored in a separate file.
Mikko Rasa [Tue, 8 Jan 2013 10:15:22 +0000 (12:15 +0200)]
Convert svn:ignore to .gitignore
Mikko Rasa [Sat, 21 May 2011 20:54:48 +0000 (20:54 +0000)]
Get the initial state of s88 modules
Get all functions of locomotives
Mikko Rasa [Sat, 21 May 2011 20:49:42 +0000 (20:49 +0000)]
Use a typedef for the function map in VehicleType
Mikko Rasa [Sat, 21 May 2011 11:20:40 +0000 (11:20 +0000)]
Add a vehicle property for swapping directions
Add a BR E 03 loco from the package 37574
Add whistle function for BR E 41
Mikko Rasa [Sat, 21 May 2011 10:35:33 +0000 (10:35 +0000)]
Don't use too short speed measurements for quantizer learning
Wait for enough learning data before using it for quantization
Mikko Rasa [Sat, 21 May 2011 07:40:54 +0000 (07:40 +0000)]
Avoid deactivating while the controller still has nonzero speed
Mikko Rasa [Fri, 20 May 2011 17:17:07 +0000 (17:17 +0000)]
Silence compiler warnings
Mikko Rasa [Fri, 15 Apr 2011 20:14:31 +0000 (20:14 +0000)]
Fix some stuff in Timetable
Mikko Rasa [Mon, 11 Apr 2011 19:35:26 +0000 (19:35 +0000)]
Pass sensor events through blocks
Add a hysteresis to activation as well
Expose the transition states
Mikko Rasa [Thu, 7 Apr 2011 20:38:03 +0000 (20:38 +0000)]
Add the new 360mm C-track (24360)
Add four-axle open wagon Eaos 106 (4690)
Mikko Rasa [Thu, 7 Apr 2011 20:18:11 +0000 (20:18 +0000)]
Add View3D class to bundle Layout3D with a camera and a pipeline
Store lighting in Layout3D
Add get_bounds method to Layout3D
Use View3D in designer
Mikko Rasa [Thu, 7 Apr 2011 16:24:21 +0000 (16:24 +0000)]
Make TrackWrap take a Layout3D since it doesn't really need Designer
Mikko Rasa [Wed, 6 Apr 2011 09:17:44 +0000 (09:17 +0000)]
Overlay should be rendered with blending enabled
Mikko Rasa [Wed, 6 Apr 2011 07:51:55 +0000 (07:51 +0000)]
Remove status from Train and turn it into a TrainAI
Mikko Rasa [Wed, 6 Apr 2011 07:33:08 +0000 (07:33 +0000)]
Prevent certain network errors from crashing the program
Mikko Rasa [Tue, 5 Apr 2011 15:49:19 +0000 (15:49 +0000)]
TrainAI framework
Make AIControl an AI instead of a Controller
Remote control is a bit broken right now
Mikko Rasa [Mon, 4 Apr 2011 16:46:40 +0000 (16:46 +0000)]
Determine the border of tracktypes with custom object
Mikko Rasa [Sun, 3 Apr 2011 14:08:47 +0000 (14:08 +0000)]
Make use of GL::Renderer in Overlay3D
Mikko Rasa [Sat, 2 Apr 2011 19:48:37 +0000 (19:48 +0000)]
Display composition during extend
Mikko Rasa [Mon, 28 Mar 2011 13:18:24 +0000 (13:18 +0000)]
Move speed quantization into a separate class