Thomas Harte
|
a301964bd0
|
Ensures all audio queues are fully merged before machine destruction.
Thereby avoids a race condition.
|
2018-03-22 21:59:19 -04:00 |
|
Thomas Harte
|
da3d65c18f
|
Devolves time to cycle conversion to machines.
Thereby avoids a whole bunch of complicated machinations that would otherwise have been required of the multimachine.
|
2018-03-21 22:18:13 -04:00 |
|
Thomas Harte
|
83f73c3f02
|
Installs additional safeguards against unsafe deconstruction.
|
2018-02-28 22:15:22 -05:00 |
|
Thomas Harte
|
ac80d10cd8
|
Separates the component parts of running an audio stream: task deferral, filtering and generation.
Walking towards improving opportunities for composition.
|
2017-12-17 21:26:06 -05:00 |
|
Thomas Harte
|
eb6b612052
|
Adds DeferringAsyncTaskQueue as a base concurrency primitive.
|
2017-12-15 22:14:09 -05:00 |
|
Thomas Harte
|
adb3811847
|
Ensures deterministic initial state for the atomic flag.
|
2017-11-13 22:51:42 -05:00 |
|
Thomas Harte
|
c45d4831ec
|
Introduces an SConstruct file and corrects those errors and warnings that arise in Ubuntu.
|
2017-11-08 22:36:41 -05:00 |
|
Thomas Harte
|
d37ec9e5b0
|
Attempts to ensure good behaviour if dealt an adjustable clock, and const s where possible.
|
2017-10-05 18:23:56 -04:00 |
|
Thomas Harte
|
ec202ed8be
|
Merge branch 'master' into C++BestEffortUpdater
|
2017-10-05 18:17:35 -04:00 |
|
Thomas Harte
|
f40e1fd840
|
Commutes the best-effort updater into C++11.
|
2017-10-05 18:09:58 -04:00 |
|
Thomas Harte
|
ea64125124
|
Added an explicit nilling, to help with debugging.
|
2017-08-13 22:15:25 -04:00 |
|
Thomas Harte
|
825b38850e
|
Removes non-idiomatic line break.
|
2017-07-22 17:30:58 -04:00 |
|
Thomas Harte
|
eb8a2de5d6
|
Settled definitively on flush as more communicative than synchronise (and slightly more locale neutral); culled some more duplication from the Z80.
|
2017-05-15 07:38:59 -04:00 |
|
Thomas Harte
|
e01f3f06c8
|
Completed curly bracket movement.
|
2017-03-26 14:34:47 -04:00 |
|
Thomas Harte
|
583db88299
|
Added a dispatch queue-powered Apple implementation of the async task queue, removed any mention of skip_samples in the AY since it isn't implemented.
|
2016-10-22 21:58:45 -04:00 |
|
Thomas Harte
|
4258401384
|
Implemented flush , added a call to it from the filter speaker's destructor, to ensure no race conditions on accessing the various bits of instance state there and below.
|
2016-10-19 21:15:04 -04:00 |
|
Thomas Harte
|
b7609d2bb4
|
Fixed a potential race condition and simplified generally.
|
2016-10-18 19:32:38 -04:00 |
|
Thomas Harte
|
4829b896f7
|
Documented the async task queue.
|
2016-10-07 17:18:46 -04:00 |
|
Thomas Harte
|
002e923cf1
|
Added shutdown logic.
|
2016-10-07 17:08:29 -04:00 |
|
Thomas Harte
|
e53455a936
|
Not having read the C++ synchronisation primitives before, this async task queue is probably incorrect. But nevertheless, let's have a quick go at employing it — in a hideously thread unsafe fashion — for audio generation. What can possibly go wrong?
|
2016-10-07 16:56:34 -04:00 |
|