summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/midi_patch_manager.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-12-17 18:24:23 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-12-17 18:24:23 +0000
commitf6fdd8dcbf41f864e9f0cc32dabe81fe3533ddfe (patch)
tree5214c580b9e6c17a499fa587660dbf949e892bf2 /libs/ardour/ardour/midi_patch_manager.h
parentda762129f19c28aff64f833b6ec09fba946faef6 (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/ardour/ardour/midi_patch_manager.h')
-rw-r--r--libs/ardour/ardour/midi_patch_manager.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/libs/ardour/ardour/midi_patch_manager.h b/libs/ardour/ardour/midi_patch_manager.h
index a48c9ddfe7..8c4ff43d5c 100644
--- a/libs/ardour/ardour/midi_patch_manager.h
+++ b/libs/ardour/ardour/midi_patch_manager.h
@@ -22,6 +22,8 @@
#define MIDI_PATCH_MANAGER_H_
#include "midi++/midnam_patch.h"
+#include "pbd/scoped_connections.h"
+#include "ardour/session_handle.h"
namespace ARDOUR {
class Session;
@@ -33,7 +35,7 @@ namespace MIDI
namespace Name
{
-class MidiPatchManager
+class MidiPatchManager : public PBD::ScopedConnectionList, public ARDOUR::SessionHandlePtr
{
/// Singleton
private:
@@ -55,7 +57,7 @@ public:
return *_manager;
}
- void set_session (ARDOUR::Session&);
+ void set_session (ARDOUR::Session*);
boost::shared_ptr<MIDINameDocument> document_by_model(std::string model_name)
{ return _documents[model_name]; }
@@ -76,7 +78,6 @@ public:
}
}
-
boost::shared_ptr<Patch> find_patch(
std::string model,
std::string custom_device_mode,
@@ -133,10 +134,9 @@ public:
const MasterDeviceNames::Models& all_models() const { return _all_models; }
private:
- void drop_session();
+ void session_going_away();
void refresh();
- ARDOUR::Session* _session;
MidiNameDocuments _documents;
MIDINameDocument::MasterDeviceNamesList _master_devices_by_model;
MasterDeviceNames::Models _all_models;
@@ -145,4 +145,5 @@ private:
} // namespace Name
} // namespace MIDI
+
#endif /* MIDI_PATCH_MANAGER_H_ */