summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/instrument_info.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-06-11 22:59:35 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-06-11 22:59:35 +0000
commitd97312d438a813985916dd35f613510e9448441f (patch)
tree5be2844fc16359c2eb550b72c9f84737c534d614 /libs/ardour/ardour/instrument_info.h
parentc81691741118ab34c5f6f458c2d84f431e481ada (diff)
lots more work trying to create a common structure for accessing plugin and MIDNAME patch/preset/program names. still not done
git-svn-id: svn://localhost/ardour2/branches/3.0@12665 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/instrument_info.h')
-rw-r--r--libs/ardour/ardour/instrument_info.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/libs/ardour/ardour/instrument_info.h b/libs/ardour/ardour/instrument_info.h
index d4c9bf4f46..f83b2c0632 100644
--- a/libs/ardour/ardour/instrument_info.h
+++ b/libs/ardour/ardour/instrument_info.h
@@ -24,6 +24,8 @@
#include "pbd/signals.h"
+#include "midi++/midnam_patch.h"
+
#include <boost/weak_ptr.hpp>
namespace ARDOUR {
@@ -41,13 +43,22 @@ class InstrumentInfo {
std::string get_patch_name (uint16_t bank, uint8_t program, uint8_t channel) const;
std::string get_instrument_name () const;
+ boost::shared_ptr<MIDI::Name::ChannelNameSet> get_patches (uint8_t channel);
+
PBD::Signal0<void> Changed;
+ static const MIDI::Name::PatchBank::PatchNameList& general_midi_patches();
+
private:
std::string external_instrument_model;
std::string external_instrument_mode;
boost::weak_ptr<ARDOUR::Processor> internal_instrument;
+
+ boost::shared_ptr<MIDI::Name::ChannelNameSet> plugin_programs_to_channel_name_set (boost::shared_ptr<Processor> p);
+ std::string get_plugin_patch_name (boost::shared_ptr<ARDOUR::Processor>, uint16_t bank, uint8_t program, uint8_t channel) const;
+
+ static MIDI::Name::PatchBank::PatchNameList _gm_patches;
};
} /* namespace ARDOUR */