summaryrefslogtreecommitdiffstats
path: root/src/engine
AgeCommit message (Collapse)AuthorFilesLines
2010-02-09Fix port value broadcasting to work with all types.David Robillard2-4/+4
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2438 a436a847-0d15-0410-975c-d299462d15a1
2010-02-09Non-fatal warning when control is out of range (needs to be sorted out...).David Robillard1-1/+12
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2437 a436a847-0d15-0410-975c-d299462d15a1
2010-02-09Make control bindings actually (audibly) take effect.David Robillard2-3/+13
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2436 a436a847-0d15-0410-975c-d299462d15a1
2010-02-09Fix bugs with child blocking events.David Robillard3-9/+15
e.g. CreatePortEvent as a child of SetMetadataEvent would doubly unblock the EventSource, so future blocking events wouldn't actually block and crash bugs and/or patch corruption could result. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2435 a436a847-0d15-0410-975c-d299462d15a1
2010-02-04Fix a bunch of memory leaks.David Robillard16-29/+52
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2429 a436a847-0d15-0410-975c-d299462d15a1
2010-02-04Use std::string::empty where possible (faster, and less prone to C string ↵David Robillard7-11/+10
errors). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2420 a436a847-0d15-0410-975c-d299462d15a1
2010-02-04MIDI feedback.David Robillard8-135/+273
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2418 a436a847-0d15-0410-975c-d299462d15a1
2010-02-03Responder => Request, and handle EventSource unblocking from Request ↵David Robillard54-389/+381
(simplify Event interfaces). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2417 a436a847-0d15-0410-975c-d299462d15a1
2010-02-03Make human names work with LADSPA plugins as well (fix ticket #477).David Robillard7-78/+67
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2416 a436a847-0d15-0410-975c-d299462d15a1
2010-02-03Only bind notes to toggle controls, so it is possible to bind non-toggle ↵David Robillard2-2/+10
controls to aftertouch. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2413 a436a847-0d15-0410-975c-d299462d15a1
2010-02-03Binding of MIDI notes to toggle parameters.David Robillard3-9/+39
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2412 a436a847-0d15-0410-975c-d299462d15a1
2010-02-03Bind ports with lv2:portProperty lv2:toggled specially (on iff value >= half).David Robillard5-8/+27
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2410 a436a847-0d15-0410-975c-d299462d15a1
2010-02-03Comprehensive use of cached URIs and more advanced Value (Atom) system.David Robillard34-126/+241
Atoms (e.g. property values or port values) can now be an Atom::DICT, which maps directly to/from an RDF resource. This is now used to store control bindings as a port property, eliminating the special API. Full interned URIs used everywhere, instead of CURIEs pretending to be URIs. Avoid converting string literals to URIs all over the place. Support for binding MIDI pitch bender and MIDI channel pressure. Saving/restoring of MIDI bindings as a free side-effect of the above. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2409 a436a847-0d15-0410-975c-d299462d15a1
2010-02-02Use Glib string interning (quarks) to make Path/URI operator== very fast.David Robillard26-110/+126
This avoids a ton of string comparison overhead in Ingen when setting various properties (e.g. "ingen:value" was compared several times every time a port value was changed, now this is just a single pointer comparison and the full round trip of a value change does no string comparison at all, but is still property based and RDFey). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2408 a436a847-0d15-0410-975c-d299462d15a1
2010-02-02Remove set_port_value from CommonInterface (replaced with set_property(path, ↵David Robillard13-107/+5
"ingen:value", value)). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2404 a436a847-0d15-0410-975c-d299462d15a1
2010-02-01Fix leaks and an iterator error found by cppcheck.David Robillard2-1/+9
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2399 a436a847-0d15-0410-975c-d299462d15a1
2010-02-01Use consistent and more globally unique inclusion guards.David Robillard84-251/+251
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2398 a436a847-0d15-0410-975c-d299462d15a1
2010-01-29Improved/quicker/easier handling of control port ranges.David Robillard4-7/+18
* Add "Set minimum to current value", "Set maximum to current value", and "Reset range" to control port context menu. * Only serialise properties (e.g. lv2:minimum) if they differ from the meta object's (prototype's, e.g. plugin) value. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2395 a436a847-0d15-0410-975c-d299462d15a1
2010-01-29Remove references to deleted ports with control bindings (fix crash when ↵David Robillard4-19/+58
applying binding to deleted port). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2393 a436a847-0d15-0410-975c-d299462d15a1
2010-01-29Send binding information to client.David Robillard10-7/+165
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2392 a436a847-0d15-0410-975c-d299462d15a1
2010-01-29Magic MIDI binding via special ingen_control port.David Robillard33-112/+325
Always set lv2:minimum and lv2:maximum properties for control ports so they show up in properties dialog (and can be used for MIDI binding). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2391 a436a847-0d15-0410-975c-d299462d15a1
2010-01-28Use ingen-ui for prefix instead of ingenuity.David Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2388 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Add missing base class virtual destructor stubs.David Robillard2-2/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2366 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Remove cruft.David Robillard1-21/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2365 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Fix compilation with ancient boost intrusive_ptr (fix ticket #467).David Robillard2-2/+4
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2363 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Virtual destructor for EventSource.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2362 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Better log output.David Robillard2-6/+5
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2361 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Remove excessive debug output of compiled patch order.David Robillard1-12/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2360 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Fix HTTP and OSC (make EventSource::activate_source virtual again).David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2359 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Fix compilation with --log-debug.David Robillard4-8/+10
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2356 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Shrink ClientBroadcaster code via macro.David Robillard3-149/+47
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2354 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Make ClientBroadcaster itself a ClientInterface.David Robillard10-39/+94
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2353 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Merge QueuedEventSource and EventSource.David Robillard18-132/+69
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2352 a436a847-0d15-0410-975c-d299462d15a1
2010-01-07Tidy.David Robillard17-75/+22
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2351 a436a847-0d15-0410-975c-d299462d15a1
2010-01-06Do all logging output via Raul streams.David Robillard55-217/+209
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2349 a436a847-0d15-0410-975c-d299462d15a1
2010-01-06Fix error message.David Robillard3-2/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2346 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05JackAudio* -> Jack*David Robillard3-69/+68
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2345 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05JackAudioDriver.[ch]pp -> JackDriver.[ch]ppDavid Robillard4-3/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2344 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05Merge JackMidiDriver and JackAudioDriver.David Robillard28-829/+199
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2343 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05Remove no longer used jack_compat.hDavid Robillard2-57/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2342 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05Realtime safe buffer reference handling.David Robillard20-54/+86
Turns out that dropping a shared_ptr is not realtime safe, even if you use a realtime safe deleter. Instead, instrusive_ptr is used for buffer references, so a buffer reference may safely be dropped in the audio thread (in which case it will be recycled by the BufferFactory). Faster, cleaner, better. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2341 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05Remove unused Buffer.cpp (Buffer::create).David Robillard1-46/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2339 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05Remove unused Buffer::_local.David Robillard2-2/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2338 a436a847-0d15-0410-975c-d299462d15a1
2010-01-05Event mixing.David Robillard5-12/+99
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2337 a436a847-0d15-0410-975c-d299462d15a1
2010-01-04Remove prototypes for nonexistent EventBuffer methods.David Robillard1-3/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2336 a436a847-0d15-0410-975c-d299462d15a1
2010-01-04Remove unused EventBuffer::append method.David Robillard2-42/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2335 a436a847-0d15-0410-975c-d299462d15a1
2010-01-04Remove redundant LV2EventBuffer class and merge with EventBuffer.David Robillard11-446/+240
Refactor mixing from an in-place Buffer method (which doesn't work with EventBuffer) to a single function that takes an out of place destination and an array of sources. Fix audio buffer mixing for control<->audio. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2333 a436a847-0d15-0410-975c-d299462d15a1
2010-01-03Remove patch clear command (fix ticket #375).David Robillard14-310/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2332 a436a847-0d15-0410-975c-d299462d15a1
2009-12-31Various fixes related to port values and metadata (fix ticket #459 among ↵David Robillard3-5/+9
other things). Fix jitterey behaviour of port controls (on module) while dragging. Update value in status bar while dragging port slider (on module). Update plugin data (e.g. port control range) if the plugin is sent to the client after nodes that are instances of it (i.e. more robust plugin state tracking via merging like with objects). Correctly save and restore port values (ticket #459). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2327 a436a847-0d15-0410-975c-d299462d15a1
2009-12-30Turn off debugging.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2325 a436a847-0d15-0410-975c-d299462d15a1