Mon, 14 Oct 2019 14:17:37 +0100 |
Chris Cannam |
Implement missing TabularModel editing methods. Also made these pure in TabularModel, since almost all subclasses want them and (clearly) forgetting to implement them is a problem!
|
Tue, 01 Oct 2019 11:22:48 +0100 |
Chris Cannam |
Some work on making Model classes thread-safe in typical use - and documenting this. Some of the implementations are simpler now that EventSeries is thread-safe
|
Fri, 05 Jul 2019 15:28:07 +0100 |
Chris Cannam |
Further review of ById: make IDs only available when adding a model to the ById store, not by querying the item directly. This means any id encountered in the wild must have been added to the store at some point (even if later released), which simplifies reasoning about lifecycles
by-id
|
Fri, 28 Jun 2019 17:36:30 +0100 |
Chris Cannam |
Rejig ById so as to put everything in a single pool, so that at the core you can go from numeric id (untyped) to anything the object can be dynamic_cast to. Useful for building other abstractions like PlayParameter-type registrations that don't know about e.g. Models. Probably some more tweaking needed. Also add tests
by-id
|
Thu, 27 Jun 2019 13:08:10 +0100 |
Chris Cannam |
Work on commands, and some other model updates
by-id
|
Wed, 19 Jun 2019 13:32:52 +0100 |
Chris Cannam |
Re-implement extendEndFrame behaviour, used by Tony application
|
Thu, 25 Apr 2019 11:30:38 +0100 |
Chris Cannam |
Fix some compiler warnings
single-point
|
Wed, 03 Apr 2019 16:04:03 +0100 |
Chris Cannam |
m_haveExtents should be true when extents are set explicitly, otherwise they'll get overridden when a point is added
single-point
|
Thu, 28 Mar 2019 16:03:36 +0000 |
Chris Cannam |
Re-add the toDelimitedDataString stuff
single-point
|
Thu, 28 Mar 2019 11:55:02 +0000 |
Chris Cannam |
Make XmlExportables store their export IDs and always obtain a new one, avoiding reuse when an object is allocated at the same heap location as a previous one. This makes the ID system stable enough to be used in the export tests.
single-point
|
Wed, 27 Mar 2019 13:15:16 +0000 |
Chris Cannam |
Rework isReady()/getCompletion() on models. Previously the new overhauled models were implementing getCompletion() but inheriting a version of isReady() (from the Model base) that didn't call it, referring only to isOK(). So they were reporting completion as soon as they had begun. Instead hoist getCompletion() to abstract base and call it from Model::isReady().
single-point
|
Thu, 21 Mar 2019 11:35:30 +0000 |
Chris Cannam |
Work on start/end frame stuff to match API description
single-point
|
Wed, 20 Mar 2019 15:45:52 +0000 |
Chris Cannam |
Forward the matching-event functions
single-point
|
Wed, 20 Mar 2019 14:58:56 +0000 |
Chris Cannam |
Test & fixes for getEventsStartingAt
single-point
|
Wed, 20 Mar 2019 11:14:36 +0000 |
Chris Cannam |
Fixes: completion should default to 100 (it never gets set if we aren't a transform target); events added to time-value model should be denied durations; forward the overspill and matching search functions
single-point
|
Mon, 18 Mar 2019 14:17:20 +0000 |
Chris Cannam |
Introduce deferred notifier, + start converting sparse time-value model (perhaps we should rename it too)
single-point
|