summaryrefslogtreecommitdiffstats
path: root/src/server/PortImpl.hpp
AgeCommit message (Collapse)AuthorFilesLines
2016-12-14Fix real-time issues with buffer allocationDavid Robillard1-9/+22
2016-12-13Remove virtual inheritance from Port hierarchyDavid Robillard1-18/+23
This was confusing stoat, and is questionable design anyway. The OutputPort functionality has been moved to PortImpl, which is a basic port with buffers suitable for use as an output, and is overridden by InputPort and DuplexPort where necessary.
2016-12-13Fix some real-time safety issuesDavid Robillard1-2/+2
2016-10-14Fix communication with connected sequence portsDavid Robillard1-3/+5
2016-09-11Remove last vestiges of multiple run contextsDavid Robillard1-17/+17
2015-10-24Zero-copy to/from driver ports where possibleDavid Robillard1-2/+11
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5778 a436a847-0d15-0410-975c-d299462d15a1
2015-10-23Reduce overheadDavid Robillard1-1/+17
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5770 a436a847-0d15-0410-975c-d299462d15a1
2015-09-29Fix more URI conversion issues.David Robillard1-1/+1
Fixes #1088. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5733 a436a847-0d15-0410-975c-d299462d15a1
2015-04-04Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5653 a436a847-0d15-0410-975c-d299462d15a1
2014-09-02Fix polyphonic subgraph outputs in a monophonic parent graph.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5464 a436a847-0d15-0410-975c-d299462d15a1
2014-08-31Use float sequences for sample-accurate control ports.David Robillard1-1/+24
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5462 a436a847-0d15-0410-975c-d299462d15a1
2014-01-12Combine port buffers and set state into a single voice object.David Robillard1-43/+49
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5309 a436a847-0d15-0410-975c-d299462d15a1
2013-06-09Inherit certain properties from ports connected to patch ports.David Robillard1-0/+10
This is a bit too hard-edged at present, but does the right thing when building a patch from scratch at least. Something needs to be done about removing the properties, but this is hard for outputs since the arcs aren't keyed that way. The main problem here is that Ardour barfs on plugins with MIDI input for audio tracks, so if you *ever* connect the control input to a MIDI anything, it will stick and not work in an Ardour audio track. Maybe it should be just implemented for inputs as a stop gap... git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5136 a436a847-0d15-0410-975c-d299462d15a1
2013-02-23Move Atom implementation out of Raul so it can depend on LV2.David Robillard1-11/+11
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5076 a436a847-0d15-0410-975c-d299462d15a1
2013-02-03Don't lose peaks for cycles where notifications are not sent.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5046 a436a847-0d15-0410-975c-d299462d15a1
2013-02-02Fix trigger and controller learn updating.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5027 a436a847-0d15-0410-975c-d299462d15a1
2013-02-02Divorce monitor rate from block size, send updates at 10Hz.David Robillard1-1/+5
Also add a simple attempt at staggering notification times to balance the buffer load and avoid massive spikes of all ports sending notifications at the same time. This should be quite a bit more sane when running at low latency. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5017 a436a847-0d15-0410-975c-d299462d15a1
2013-02-02Add option to enable/disable canvas animation (fix/avoid #879).David Robillard1-5/+13
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@5016 a436a847-0d15-0410-975c-d299462d15a1
2013-01-11Use type safe enumerations.David Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4918 a436a847-0d15-0410-975c-d299462d15a1
2012-08-19GraphObject => NodeDavid Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4722 a436a847-0d15-0410-975c-d299462d15a1
2012-08-18Node => BlockDavid Robillard1-9/+5
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4720 a436a847-0d15-0410-975c-d299462d15a1
2012-08-15Clean up includes.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4704 a436a847-0d15-0410-975c-d299462d15a1
2012-08-12Remove message context cruft.David Robillard1-5/+5
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4668 a436a847-0d15-0410-975c-d299462d15a1
2012-08-11Considerable DSP performance improvements (mixing overhead, and per-event ↵David Robillard1-6/+8
MIDI overhead with Note/Trigger nodes). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4657 a436a847-0d15-0410-975c-d299462d15a1
2012-08-11Vectorizable (by GCC with -ftree-vectorize) mixing and Buffer::set_block().David Robillard1-2/+1
Custom SSE accelerated peak detection when SSE is available at compile time. Less mixing overhead in general. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4651 a436a847-0d15-0410-975c-d299462d15a1
2012-07-31Move continuous value setting stuff from AudioBuffer to PortImpl.David Robillard1-0/+21
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4582 a436a847-0d15-0410-975c-d299462d15a1
2012-07-31Merge Ingen::Shared namespace into Ingen namespace and core libingen library.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4579 a436a847-0d15-0410-975c-d299462d15a1
2012-07-30Eliminate pure virtual base classes Patch, Node, and Port, and the virtual ↵David Robillard1-3/+3
inheritance they imposed. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4576 a436a847-0d15-0410-975c-d299462d15a1
2012-07-25Fix control bindings for logarithmic and sample rate control ports.David Robillard1-2/+10
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4551 a436a847-0d15-0410-975c-d299462d15a1
2012-05-31Implement Control/CV morph ports.David Robillard1-0/+12
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4475 a436a847-0d15-0410-975c-d299462d15a1
2012-05-22Fix crash when setting nodes polyphonic.David Robillard1-2/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4433 a436a847-0d15-0410-975c-d299462d15a1
2012-05-12More work towards checking contexts via parameter rather than thread magic.David Robillard1-3/+4
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4376 a436a847-0d15-0410-975c-d299462d15a1
2012-05-12Use compiler checkable ProcessContext parameter rather than runtime context ↵David Robillard1-2/+4
assertions. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4374 a436a847-0d15-0410-975c-d299462d15a1
2012-04-23Localise buffer reference stuff.David Robillard1-20/+21
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4252 a436a847-0d15-0410-975c-d299462d15a1
2012-04-23Maybe fix boost compilation errors.David Robillard1-21/+20
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4245 a436a847-0d15-0410-975c-d299462d15a1
2012-03-27Squeeze blank lines.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4113 a436a847-0d15-0410-975c-d299462d15a1
2012-03-27Switch to AGPL3+.David Robillard1-16/+16
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4111 a436a847-0d15-0410-975c-d299462d15a1
2012-03-23Fix compilation with latest LV2.David Robillard1-4/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4102 a436a847-0d15-0410-975c-d299462d15a1
2012-03-19Partially functioning communication between Ingen LV2 plugin and UI.David Robillard1-1/+4
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4078 a436a847-0d15-0410-975c-d299462d15a1
2011-10-03Use port type instead of buffer type where appropriate.David Robillard1-9/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3524 a436a847-0d15-0410-975c-d299462d15a1
2011-10-03Remove static PortType enumeration from public/client side interface.David Robillard1-1/+5
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3523 a436a847-0d15-0410-975c-d299462d15a1
2011-10-01Make PortImpl::get_buffers const.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3520 a436a847-0d15-0410-975c-d299462d15a1
2011-09-15Fix control bindings (MIDI learn).David Robillard1-0/+12
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3464 a436a847-0d15-0410-975c-d299462d15a1
2011-09-15TidyDavid Robillard1-14/+11
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3463 a436a847-0d15-0410-975c-d299462d15a1
2011-08-20Fix crash when sending port notifications (fix #741).David Robillard1-2/+5
Use a simpler system for port change notifications (abusing Event, which is virtual and thus can't be ringbuffered safely, was the cause of this crash). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3438 a436a847-0d15-0410-975c-d299462d15a1
2011-04-20Rename Ingen::Engine to Ingen::Server (hopefully avoid odd name clases and ↵David Robillard1-0/+174
fix #675). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3184 a436a847-0d15-0410-975c-d299462d15a1