diff --git a/libs/ardour/ardour/midi_scene_change.h b/libs/ardour/ardour/midi_scene_change.h index 1a27446367..f0b516cacf 100644 --- a/libs/ardour/ardour/midi_scene_change.h +++ b/libs/ardour/ardour/midi_scene_change.h @@ -51,6 +51,8 @@ class MIDISceneChange : public SceneChange XMLNode& get_state(); int set_state (const XMLNode&, int version); + bool operator==(const MIDISceneChange& other) const; + private: int _bank; int _program; diff --git a/libs/ardour/midi_scene_change.cc b/libs/ardour/midi_scene_change.cc index dae8acfc21..edcc8a658d 100644 --- a/libs/ardour/midi_scene_change.cc +++ b/libs/ardour/midi_scene_change.cc @@ -140,3 +140,11 @@ MIDISceneChange::set_state (const XMLNode& node, int /* version-ignored */) return 0; } + +bool +MIDISceneChange::operator==(const MIDISceneChange& other) const +{ + return _program == other._program && + _bank == other._bank && + _channel == other._channel; +}