summaryrefslogtreecommitdiffstats
path: root/src/libs/client/PortModel.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/client/PortModel.h')
-rw-r--r--src/libs/client/PortModel.h6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libs/client/PortModel.h b/src/libs/client/PortModel.h
index 7743eed3..2ec6139e 100644
--- a/src/libs/client/PortModel.h
+++ b/src/libs/client/PortModel.h
@@ -20,6 +20,7 @@
#include <cstdlib>
#include <string>
#include <list>
+#include <sigc++/sigc++.h>
#include "ObjectModel.h"
#include "util/CountedPtr.h"
using std::string; using std::list;
@@ -77,7 +78,7 @@ public:
inline float user_max() const { return m_user_max; }
inline void user_max(float f) { m_user_max = f; }
inline float value() const { return m_current_val; }
- inline void value(float f) { m_current_val = f; }
+ inline void value(float f) { m_current_val = f; control_change_sig.emit(f); }
inline bool connected() { return m_connected; }
inline void connected(bool b) { m_connected = b; }
inline Type type() { return m_type; }
@@ -94,6 +95,9 @@ public:
inline bool operator==(const PortModel& pm)
{ return (m_path == pm.m_path); }
+ // Signals
+ sigc::signal<void, float> control_change_sig; ///< "Control" ports only
+
private:
// Prevent copies (undefined)
PortModel(const PortModel& copy);