#include <queue>
-#include <sigc++/sigc++.h>
+#include "pbd/signals.h"
-#include <midi++/types.h>
-#include <midi++/parser.h>
+#include "midi++/types.h"
+#include "midi++/parser.h"
namespace MIDI {
* This remembers various useful information about the current 'state' of a
* MIDI channel (eg current pitch bend value).
*/
-class Channel : public sigc::trackable {
+class Channel : public PBD::ScopedConnectionList {
public:
Channel (byte channel_number, Port &);
- Port &midi_port() { return _port; }
+ Port &midi_port() { return _port; }
byte channel() { return _channel_number; }
byte program() { return _program_number; }
byte bank() { return _bank_number; }
protected:
friend class Port;
- void connect_input_signals ();
- void connect_output_signals ();
+ void connect_signals ();
private:
- Port & _port;
+ Port& _port;
/* Current channel values */
byte _channel_number;
bool _mono;
size_t _notes_on;
- void reset (timestamp_t timestamp, nframes_t nframes, bool notes_off = true);
+ void reset (timestamp_t timestamp, framecnt_t nframes, bool notes_off = true);
void process_note_off (Parser &, EventTwoBytes *);
void process_note_on (Parser &, EventTwoBytes *);