summaryrefslogtreecommitdiffstats
path: root/src/AlsaDriver.cpp
AgeCommit message (Collapse)AuthorFilesLines
2011-11-27Document public API.David Robillard1-3/+3
Remove weird canvas parent event handler stuff. Normalize selection rectangle and simplify "within" methods accordingly. Move Port::disconnect_all() to Connectable::disconnect_all(). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3649 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Remove Raul dependency.David Robillard1-2/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3633 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Log (almost) everything to the messages window instead of the console.David Robillard1-41/+47
Remove latency and load stuff in favour of plain old messages. Remove status bar. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3627 a436a847-0d15-0410-975c-d299462d15a1
2011-11-25Switch to GPLv3+.David Robillard1-7/+6
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3623 a436a847-0d15-0410-975c-d299462d15a1
2011-06-11Remove dead code.David Robillard1-4/+0
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3385 a436a847-0d15-0410-975c-d299462d15a1
2011-06-09Automatically resize modules at update time as necessary.David Robillard1-4/+0
This avoids the huge multiple resize performance problems of the past without requiring the user to manually resize modules. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3375 a436a847-0d15-0410-975c-d299462d15a1
2011-06-09Fix support for multiple instances of alsa clients with the same name (never ↵David Robillard1-132/+152
consider client name an ID). Remove Alsa specific crap from PatchagePort. Sane implementation of AlsaDriver::refresh. Fix refreshing. Remove useless Jack graph order callback. Fix double add/remove of ports to modules. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3374 a436a847-0d15-0410-975c-d299462d15a1
2011-06-07Remove use of smart pointers in FlowCanvas entirely.David Robillard1-32/+48
Since FlowCanvas's containers own their children, there is no real benefit to using smart pointers for objects, though there is overhead. There are no longer any add or remove methods for containers, simply create (new) and destroy (delete) objects and things should work as expected. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3366 a436a847-0d15-0410-975c-d299462d15a1
2011-06-06Use sane typedefs for collections.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3365 a436a847-0d15-0410-975c-d299462d15a1
2011-06-06Use a care pointer reference to containing module rather than boost::weak_ptr.David Robillard1-2/+2
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3364 a436a847-0d15-0410-975c-d299462d15a1
2011-06-03Remove use of boost::enable_shared_from_this<Canvas>.David Robillard1-4/+2
Instead, just store a pointer to the containing canvas in Items, since it should not be possible for an Item to outlive its containing Canvas anyway. Shrinks Item memory overhead a tad and gives a minor performance boost as an added bonus. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3354 a436a847-0d15-0410-975c-d299462d15a1
2011-04-16Update copyright headersDavid Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3153 a436a847-0d15-0410-975c-d299462d15a1
2011-04-16Squeeze blank lines and delete trailing whitespace.David Robillard1-21/+3
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@3152 a436a847-0d15-0410-975c-d299462d15a1
2011-01-09Code cleanups (cpplint).David Robillard1-5/+5
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2804 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Improve performance for setups with many apps or ports.David Robillard1-2/+8
(Eliminate all linear searches for items, except one case for Jack ports which is unavoidable due to the Jack API, but is memoized, so each port will only be searched for once between refreshes). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2712 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Clean up code.David Robillard1-4/+6
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2692 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Fix previous commit's failed attempt to ignore ports (sane ALSA driver).David Robillard1-44/+86
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2691 a436a847-0d15-0410-975c-d299462d15a1
2010-12-15Fix removal of ALSA duplex ports (remove both corresponding canvas ports).David Robillard1-80/+54
Use simpler (and seemingly less lockup prone) blocking ALSA sequencer event API. Only use a ringbuffer for JACK driver. Reduce memory usage. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2690 a436a847-0d15-0410-975c-d299462d15a1
2010-12-14Use Raul::log for console logging.David Robillard1-12/+13
Print error message if unsubscribed client is not found (Re: ticket #137). git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2684 a436a847-0d15-0410-975c-d299462d15a1
2010-09-04My name is David. :)David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2590 a436a847-0d15-0410-975c-d299462d15a1
2009-05-13Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@2000 a436a847-0d15-0410-975c-d299462d15a1
2009-05-13Strip trailing whitespace.David Robillard1-28/+28
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@1999 a436a847-0d15-0410-975c-d299462d15a1
2009-05-09Dramatically reduce resize overhead everywhere.David Robillard1-165/+145
Make alsa driver create individual ports and do minimal work vs naive full refresh when anything changes. Fixes ticket #355. git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@1967 a436a847-0d15-0410-975c-d299462d15a1
2008-10-18Build against local library versions no matter what.... hopefully....David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/trunk/patchage@1677 a436a847-0d15-0410-975c-d299462d15a1
2008-09-07Separate PortRef (now PortID) from PatchageEvent.David Robillard1-4/+4
git-svn-id: http://svn.drobilla.net/lad/patchage@1477 a436a847-0d15-0410-975c-d299462d15a1
2008-08-22Lash D-Bus support and projects list from LADI Patchage, with ↵David Robillard1-7/+7
improvements/cleanup/sanification/etc. Remove liblash stuff (meh, what the hell... here's to new beginnings). Enable/disable/hide/etc patchage widgets better based on available (compiled in) functionality. git-svn-id: http://svn.drobilla.net/lad/patchage@1462 a436a847-0d15-0410-975c-d299462d15a1
2008-06-10Fix handling of clients with duplex alsa ports and jack ports (force split).David Robillard1-9/+25
Fixes ticket #140. git-svn-id: http://svn.drobilla.net/lad/patchage@1267 a436a847-0d15-0410-975c-d299462d15a1
2008-06-09Fix unresized modules when first connecting to Alsa Sequencer.David Robillard1-1/+13
git-svn-id: http://svn.drobilla.net/lad/patchage@1243 a436a847-0d15-0410-975c-d299462d15a1
2008-02-23Plug several memory leaks.David Robillard1-6/+13
Reduce Patchage memory consumption (shrink (stupid) alsa thread stack size). git-svn-id: http://svn.drobilla.net/lad/patchage@1161 a436a847-0d15-0410-975c-d299462d15a1
2008-02-23Rearrange event port referencing stuff to make a bit more sense.David Robillard1-20/+5
git-svn-id: http://svn.drobilla.net/lad/patchage@1159 a436a847-0d15-0410-975c-d299462d15a1
2008-02-22Fix zoom font sizes (kinda).David Robillard1-1/+1
Fix patchage window position/size restoration idiocy (maybe). git-svn-id: http://svn.drobilla.net/lad/patchage@1155 a436a847-0d15-0410-975c-d299462d15a1
2008-02-17Remove Jack API dependence from PatchageEvent.David Robillard1-3/+27
git-svn-id: http://svn.drobilla.net/lad/patchage@1151 a436a847-0d15-0410-975c-d299462d15a1
2008-01-09Insignificant patchage refresh performance improvement.David Robillard1-1/+0
Every little bit counts, and stuff. git-svn-id: http://svn.drobilla.net/lad/patchage@1045 a436a847-0d15-0410-975c-d299462d15a1
2008-01-09More patchage refresh performance improvements.David Robillard1-8/+2
git-svn-id: http://svn.drobilla.net/lad/patchage@1044 a436a847-0d15-0410-975c-d299462d15a1
2008-01-09More patchage refresh performance improvements.David Robillard1-18/+3
git-svn-id: http://svn.drobilla.net/lad/patchage@1042 a436a847-0d15-0410-975c-d299462d15a1
2008-01-09Patchage refresh performance improvementsDavid Robillard1-10/+0
git-svn-id: http://svn.drobilla.net/lad/patchage@1041 a436a847-0d15-0410-975c-d299462d15a1
2007-12-19Follow ALSA changes, in a kludgey ridiculously slow way.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/lad/patchage@984 a436a847-0d15-0410-975c-d299462d15a1
2007-12-19Fix some ALSA clients/ports not showing up.David Robillard1-17/+12
git-svn-id: http://svn.drobilla.net/lad/patchage@983 a436a847-0d15-0410-975c-d299462d15a1
2007-07-25Avoid some canvas text measuring overhead in Patchage (module resizing).David Robillard1-14/+46
Fix duplex Alsa Sequencer ports (fix ticket 12). git-svn-id: http://svn.drobilla.net/lad/patchage@617 a436a847-0d15-0410-975c-d299462d15a1
2007-07-24Possibly fix overlapping MIDI ports (fix ticket 10).David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/lad/patchage@616 a436a847-0d15-0410-975c-d299462d15a1
2007-07-24Consistently rename all C++ files .cpp/.hpp.David Robillard1-8/+6
Fix (some) inclusion guard names to not clash with other libs. git-svn-id: http://svn.drobilla.net/lad/patchage@613 a436a847-0d15-0410-975c-d299462d15a1
2007-07-05More memory consumption reduction.David Robillard1-4/+5
git-svn-id: http://svn.drobilla.net/lad/patchage@579 a436a847-0d15-0410-975c-d299462d15a1
2007-06-08Use new Jack connection notifications instead of a full refresh (huge ↵David Robillard1-4/+0
performance improvement). git-svn-id: http://svn.drobilla.net/lad/patchage@536 a436a847-0d15-0410-975c-d299462d15a1
2007-06-08Monitor/change ALSA connections without refreshing entire canvas (much faster).David Robillard1-3/+12
Waiting on JACK to provide the notification to do the same.... git-svn-id: http://svn.drobilla.net/lad/patchage@531 a436a847-0d15-0410-975c-d299462d15a1
2007-06-06Nicer Flowcanvas naming.David Robillard1-3/+2
git-svn-id: http://svn.drobilla.net/lad/patchage@529 a436a847-0d15-0410-975c-d299462d15a1
2007-04-06Email address and FSF copyright address updates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/lad/patchage@405 a436a847-0d15-0410-975c-d299462d15a1
2007-03-12Removed name-based interface for FlowCanvas (using the view as a model = ↵David Robillard1-2/+2
evil), related performance improvements (especially for Machina). Updates for FlowCanvas API changes. Machina SMF import performance improvements (temporarily disabled node labels). git-svn-id: http://svn.drobilla.net/lad/patchage@356 a436a847-0d15-0410-975c-d299462d15a1
2007-02-08Circular nodes in FlowCanvas, related necessary redesign work and changes ↵David Robillard1-3/+3
for API update. Beginnings of a Machina GUI. git-svn-id: http://svn.drobilla.net/lad/patchage@290 a436a847-0d15-0410-975c-d299462d15a1
2007-02-07Updated FSF address, copyright dates where appropriate, etc.David Robillard1-2/+3
git-svn-id: http://svn.drobilla.net/lad/patchage@288 a436a847-0d15-0410-975c-d299462d15a1
2007-02-07Abstracted out "Connectable" concept in FlowCanvas (towards connecting ↵David Robillard1-1/+1
things other than ports). Fixes for SLV2 API changes. git-svn-id: http://svn.drobilla.net/lad/patchage@287 a436a847-0d15-0410-975c-d299462d15a1