summaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-10-02Defer graph compilation in atomic bundlesDavid Robillard35-81/+225
This avoids situations like compiling a graph hundreds of times when it is loaded because it has hundreds of nodes and each event triggers a re-compile. This speeds things up dramatically, but exacerbates the theoretical problem of there not being enough time in a cycle to execute a bundle. As far as I can tell, the execute phase of events is very fast, so hundreds or thousands can easily run in a tiny fraction of the process cycle, but this still needs resolution to be truly hard real-time. What probably needs to happen is that all context and state used to process is moved to CompiledGraph and nodes do not access their own fields at all, but have some references into the CompiledGraph. This way, a compiled graph is separate from its "source code", and an old one could continue to be run while a new one is beng applied across several cycles.
2016-10-02Use more efficient std::lock_guard where possibleDavid Robillard6-6/+6
2016-10-02Show audio and load information in status lineDavid Robillard12-55/+312
2016-10-02Add parallel graph executionDavid Robillard16-158/+457
2016-10-02Add parallelism-aware graph traversalDavid Robillard18-119/+430
2016-10-02Replace Delay internal with simpler BlockDelayDavid Robillard13-246/+170
2016-10-01Fix OSX buildDavid Robillard5-6/+16
2016-10-01Fix plugin versioningDavid Robillard1-1/+1
2016-10-01Fix flushing many message window lines at onceDavid Robillard1-15/+17
2016-10-01Save global options to options.ttlDavid Robillard2-10/+15
2016-09-29Atomic bundle executionDavid Robillard9-13/+95
2016-09-20Use C++11 thread_localDavid Robillard2-5/+4
2016-09-18Fix undo of large pastesDavid Robillard1-0/+4
2016-09-18Fix undo of deletions with both blocks and arcsDavid Robillard1-3/+3
Also probably other cases of dependent events that must be executed in the correct order for undo to make sense.
2016-09-18Fix undo after redoDavid Robillard2-4/+6
2016-09-18Clean up codeDavid Robillard9-25/+34
2016-09-18Add fancy communication loggingDavid Robillard14-129/+175
2016-09-18Factor out text writing from socket writingDavid Robillard3-79/+115
2016-09-13Fix misleading commentDavid Robillard1-1/+5
2016-09-11Remove last vestiges of multiple run contextsDavid Robillard77-383/+315
2016-09-11Clarify connect and disconnect logicDavid Robillard2-3/+5
2016-09-11Fix buffer copying for various typesDavid Robillard3-10/+13
2016-09-11Use URIDs for prototypesDavid Robillard3-10/+6
2016-08-17Rename main graph and control/notify portsDavid Robillard11-58/+58
2016-08-02Make graph control ports support patch:MessageDavid Robillard1-0/+1
2016-08-02Fix bundle delimiters in atom protocolDavid Robillard1-0/+2
2016-08-01Add missing includesDavid Robillard3-0/+3
2016-08-01Check for libdlDavid Robillard1-2/+6
2016-08-01Fix compilation on OSXDavid Robillard2-2/+7
2016-08-01Show colorized log output in messages windowDavid Robillard5-20/+122
2016-08-01Implement LV2 log extension as hostDavid Robillard5-34/+132
Only print color logs if output is a terminal.
2016-07-31Support thread-safe state restorationDavid Robillard8-26/+80
2016-07-31Reduce duplicated codeDavid Robillard3-22/+5
2016-07-30Add undo supportDavid Robillard44-77/+1033
2016-07-30Fix stall by making PreProcessor tick periodicallyDavid Robillard1-1/+5
I am not sure exactly what scenarios cause this to happen, every event should post to the semaphore, but having the PreProcessor thread tick idly doesn't hurt anything and resolves the issue.
2016-07-30Fix mismatched include guardDavid Robillard1-3/+3
2016-07-30Use consistent prefix orderDavid Robillard2-4/+4
2016-07-29Use more Turtley debug dump outputDavid Robillard2-12/+12
2016-07-29Use more terse patch:Put for canvas positionsDavid Robillard5-47/+15
Fix the semantics of PUT events for existing objects to match the documentation.
2016-07-29Save bundled graphs to graph.ttl by defaultDavid Robillard2-14/+8
This avoids a lot of hassle with filename construction and renaming, while ensuring that the internal structure of any graph bundle is the same.
2016-07-29Remove Forge dependency from AtomReaderDavid Robillard4-19/+7
2016-07-27Add unit tests for CopyDavid Robillard1-1/+1
2016-07-25Support test coverage with LLVMDavid Robillard2-4/+3
2016-03-14Add key binding for moving to parent graphDavid Robillard3-3/+31
2016-03-14Fix context menu position when using keyboardDavid Robillard2-17/+31
2016-03-14Update external graph ports when name is changedDavid Robillard1-4/+4
More generally, track property changes for all ports, not just controllable ports.
2016-03-14Enable graph port menu items in external viewDavid Robillard2-7/+8
2016-03-14Load default plugin stateDavid Robillard4-0/+24
Based on a patch from Hanspeter Portner.
2016-03-14Remove arcs in client store on object deletionDavid Robillard1-16/+18
Fix #1120.
2016-03-14Add missing client store debug dumpsDavid Robillard1-0/+13