summaryrefslogtreecommitdiff
path: root/libs/surfaces/mackie/interface.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2008-12-12 22:55:03 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2008-12-12 22:55:03 +0000
commit51625b2474e72850d19ff521d1b9f80be8b24136 (patch)
treea26983d5e3fdd437fa227ebcb0e188bc72a20e90 /libs/surfaces/mackie/interface.cc
parentf03a87a132feb525a743de675d0439e981ab329a (diff)
"merge" (i.e. wholesale import) 2.0-ongoing Mackie code and then fix to compile in 3.0 context
git-svn-id: svn://localhost/ardour2/branches/3.0@4315 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/surfaces/mackie/interface.cc')
-rw-r--r--libs/surfaces/mackie/interface.cc21
1 files changed, 19 insertions, 2 deletions
diff --git a/libs/surfaces/mackie/interface.cc b/libs/surfaces/mackie/interface.cc
index eda485b5d6..7872d47a78 100644
--- a/libs/surfaces/mackie/interface.cc
+++ b/libs/surfaces/mackie/interface.cc
@@ -64,9 +64,22 @@ new_mackie_protocol (ControlProtocolDescriptor* descriptor, Session* s)
void
delete_mackie_protocol (ControlProtocolDescriptor* descriptor, ControlProtocol* cp)
{
- delete cp;
+ try
+ {
+ delete cp;
+ }
+ catch ( exception & e )
+ {
+ cout << "Exception caught trying to destroy MackieControlProtocol: " << e.what() << endl;
+ }
}
+/**
+ This is called on startup to check whether the lib should be loaded.
+
+ So anything that can be changed in the UI should not be used here to
+ prevent loading of the lib.
+*/
bool
probe_mackie_protocol (ControlProtocolDescriptor* descriptor)
{
@@ -79,7 +92,11 @@ static ControlProtocolDescriptor mackie_descriptor = {
ptr : 0,
module : 0,
mandatory : 0,
- supports_feedback : true,
+ // actually, the surface does support feedback, but all this
+ // flag does is show a submenu on the UI, which is useless for the mackie
+ // because feedback is always on. In any case, who'd want to use the
+ // mcu without the motorised sliders doing their thing?
+ supports_feedback : false,
probe : probe_mackie_protocol,
initialize : new_mackie_protocol,
destroy : delete_mackie_protocol