diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2009-12-17 18:24:23 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2009-12-17 18:24:23 +0000 |
commit | f6fdd8dcbf41f864e9f0cc32dabe81fe3533ddfe (patch) | |
tree | 5214c580b9e6c17a499fa587660dbf949e892bf2 /libs/surfaces/generic_midi | |
parent | da762129f19c28aff64f833b6ec09fba946faef6 (diff) |
switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/surfaces/generic_midi')
-rw-r--r-- | libs/surfaces/generic_midi/generic_midi_control_protocol.cc | 4 | ||||
-rw-r--r-- | libs/surfaces/generic_midi/midicontrollable.cc | 20 | ||||
-rw-r--r-- | libs/surfaces/generic_midi/midicontrollable.h | 6 |
3 files changed, 15 insertions, 15 deletions
diff --git a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc index 097dbc3aec..a20835dc05 100644 --- a/libs/surfaces/generic_midi/generic_midi_control_protocol.cc +++ b/libs/surfaces/generic_midi/generic_midi_control_protocol.cc @@ -175,11 +175,13 @@ GenericMidiControlProtocol::start_learning (Controllable* c) { Glib::Mutex::Lock lm (pending_lock); - std::pair<MIDIControllable *, sigc::connection> element; +#if 0 // BOOST SIGNALS + std::pair<MIDIControllable *, boost::signals2::scoped_connection> element; element.first = mc; element.second = c->LearningFinished.connect (bind (mem_fun (*this, &GenericMidiControlProtocol::learning_stopped), mc)); pending_controllables.push_back (element); +#endif } mc->learn_about_external_control (); diff --git a/libs/surfaces/generic_midi/midicontrollable.cc b/libs/surfaces/generic_midi/midicontrollable.cc index 124ef95615..533bb6db21 100644 --- a/libs/surfaces/generic_midi/midicontrollable.cc +++ b/libs/surfaces/generic_midi/midicontrollable.cc @@ -27,7 +27,6 @@ #include "midicontrollable.h" -using namespace sigc; using namespace std; using namespace MIDI; using namespace PBD; @@ -110,7 +109,7 @@ void MIDIControllable::learn_about_external_control () { drop_external_control (); - midi_learn_connection = _port.input()->any.connect (mem_fun (*this, &MIDIControllable::midi_receiver)); + midi_learn_connection = _port.input()->any.connect (boost::bind (&MIDIControllable::midi_receiver, this, _1, _2, _3)); } void @@ -302,7 +301,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional) switch (ev) { case MIDI::off: midi_sense_connection[0] = p.channel_note_off[chn_i].connect - (mem_fun (*this, &MIDIControllable::midi_sense_note_off)); + (boost::bind (&MIDIControllable::midi_sense_note_off, this, _1, _2)); /* if this is a bistate, connect to noteOn as well, and we'll toggle back and forth between the two. @@ -310,7 +309,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional) if (bistate) { midi_sense_connection[1] = p.channel_note_on[chn_i].connect - (mem_fun (*this, &MIDIControllable::midi_sense_note_on)); + (boost::bind (&MIDIControllable::midi_sense_note_on, this, _1, _2)); connections = 2; } else { connections = 1; @@ -320,20 +319,20 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional) case MIDI::on: midi_sense_connection[0] = p.channel_note_on[chn_i].connect - (mem_fun (*this, &MIDIControllable::midi_sense_note_on)); + (boost::bind (&MIDIControllable::midi_sense_note_on, this, _1, _2)); if (bistate) { midi_sense_connection[1] = p.channel_note_off[chn_i].connect - (mem_fun (*this, &MIDIControllable::midi_sense_note_off)); + (boost::bind (&MIDIControllable::midi_sense_note_off, this, _1, _2)); connections = 2; } else { connections = 1; } _control_description = "MIDI control: NoteOn"; break; - + case MIDI::controller: midi_sense_connection[0] = p.channel_controller[chn_i].connect - (mem_fun (*this, &MIDIControllable::midi_sense_controller)); + (boost::bind (&MIDIControllable::midi_sense_controller, this, _1, _2)); connections = 1; snprintf (buf, sizeof (buf), "MIDI control: Controller %d", control_additional); _control_description = buf; @@ -342,8 +341,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional) case MIDI::program: if (!bistate) { midi_sense_connection[0] = p.channel_program_change[chn_i].connect - (mem_fun (*this, - &MIDIControllable::midi_sense_program_change)); + (boost::bind (&MIDIControllable::midi_sense_program_change, this, _1, _2)); connections = 1; _control_description = "MIDI control: ProgramChange"; } @@ -352,7 +350,7 @@ MIDIControllable::bind_midi (channel_t chn, eventType ev, MIDI::byte additional) case MIDI::pitchbend: if (!bistate) { midi_sense_connection[0] = p.channel_pitchbend[chn_i].connect - (mem_fun (*this, &MIDIControllable::midi_sense_pitchbend)); + (boost::bind (&MIDIControllable::midi_sense_pitchbend, this, _1, _2)); connections = 1; _control_description = "MIDI control: Pitchbend"; } diff --git a/libs/surfaces/generic_midi/midicontrollable.h b/libs/surfaces/generic_midi/midicontrollable.h index a9a40944d8..cc85cc42c1 100644 --- a/libs/surfaces/generic_midi/midicontrollable.h +++ b/libs/surfaces/generic_midi/midicontrollable.h @@ -22,7 +22,7 @@ #include <string> -#include <sigc++/sigc++.h> +#include <boost/signals2.hpp> #include "midi++/types.h" #include "pbd/controllable.h" @@ -82,8 +82,8 @@ class MIDIControllable : public PBD::Stateful MIDI::byte last_value; bool bistate; int midi_msg_id; /* controller ID or note number */ - sigc::connection midi_sense_connection[2]; - sigc::connection midi_learn_connection; + boost::signals2::connection midi_sense_connection[2]; + boost::signals2::connection midi_learn_connection; size_t connections; MIDI::eventType control_type; MIDI::byte control_additional; |