X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fsurfaces%2Fgeneric_midi%2Finterface.cc;h=04254cb97454763045267fea7603b291b6121f36;hb=b02b6cc3cd3033c681feaa63f0d5292bce78f68d;hp=c70b5b6b6182d872e3ab59280ae68a62383e139a;hpb=2b90eeade92f750e85408f25b2d34af3e695f1cf;p=ardour.git diff --git a/libs/surfaces/generic_midi/interface.cc b/libs/surfaces/generic_midi/interface.cc index c70b5b6b61..04254cb974 100644 --- a/libs/surfaces/generic_midi/interface.cc +++ b/libs/surfaces/generic_midi/interface.cc @@ -1,21 +1,40 @@ +/* + Copyright (C) 2012 Paul Davis + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + +*/ + #include -#include +#include "control_protocol/control_protocol.h" #include "generic_midi_control_protocol.h" using namespace ARDOUR; -ControlProtocol* -new_generic_midi_protocol (ControlProtocolDescriptor* descriptor, Session* s) +static ControlProtocol* +new_generic_midi_protocol (ControlProtocolDescriptor* /*descriptor*/, Session* s) { GenericMidiControlProtocol* gmcp; - + try { gmcp = new GenericMidiControlProtocol (*s); } catch (failed_constructor& err) { return 0; } - + if (gmcp->set_active (true)) { delete gmcp; return 0; @@ -24,35 +43,34 @@ new_generic_midi_protocol (ControlProtocolDescriptor* descriptor, Session* s) return gmcp; } -void -delete_generic_midi_protocol (ControlProtocolDescriptor* descriptor, ControlProtocol* cp) +static void +delete_generic_midi_protocol (ControlProtocolDescriptor* /*descriptor*/, ControlProtocol* cp) { delete cp; } -bool -probe_generic_midi_protocol (ControlProtocolDescriptor* descriptor) +static bool +probe_generic_midi_protocol (ControlProtocolDescriptor* /*descriptor*/) { return GenericMidiControlProtocol::probe (); } +// Field names commented out by JE - 06-01-2010 static ControlProtocolDescriptor generic_midi_descriptor = { - name : "Generic MIDI", - id : "uri://ardour.org/surfaces/generic_midi:0", - ptr : 0, - module : 0, - mandatory : 0, - supports_feedback : true, - probe : probe_generic_midi_protocol, - initialize : new_generic_midi_protocol, - destroy : delete_generic_midi_protocol + /*name : */ "Generic MIDI", + /*id : */ "uri://ardour.org/surfaces/generic_midi:0", + /*ptr : */ 0, + /*module : */ 0, + /*mandatory : */ 0, + /*supports_feedback : */ true, + /*probe : */ probe_generic_midi_protocol, + /*initialize : */ new_generic_midi_protocol, + /*destroy : */ delete_generic_midi_protocol, + /*request_buffer_factory : */ 0 /* no buffer factory because this runs + * in the midiUI event loop (which has + * its own request buffer factory. + */ }; - -extern "C" { -ControlProtocolDescriptor* -protocol_descriptor () { - return &generic_midi_descriptor; -} -} +extern "C" ARDOURSURFACE_API ControlProtocolDescriptor* protocol_descriptor () { return &generic_midi_descriptor; }