summaryrefslogtreecommitdiff
path: root/libs/surfaces/osc/osc_route_observer.h
diff options
context:
space:
mode:
authorLen Ovens <len@ovenwerks.net>2016-05-31 14:09:38 -0700
committerLen Ovens <len@ovenwerks.net>2016-05-31 14:09:38 -0700
commit9ff3c55e34a9303ea1530aec7f48c27dbfc370f2 (patch)
treeee2c9af3e48c7771e71ba17b5e825ba283cb87b6 /libs/surfaces/osc/osc_route_observer.h
parentc69ef7aa3764e0c01561aed14e8af6280219e0d4 (diff)
OSC: Paths changed, feedback added, etc.
Diffstat (limited to 'libs/surfaces/osc/osc_route_observer.h')
-rw-r--r--libs/surfaces/osc/osc_route_observer.h25
1 files changed, 16 insertions, 9 deletions
diff --git a/libs/surfaces/osc/osc_route_observer.h b/libs/surfaces/osc/osc_route_observer.h
index 7153da7329..220eb176ff 100644
--- a/libs/surfaces/osc/osc_route_observer.h
+++ b/libs/surfaces/osc/osc_route_observer.h
@@ -21,6 +21,7 @@
#define __osc_oscrouteobserver_h__
#include <string>
+#include <bitset>
#include <boost/shared_ptr.hpp>
#include <sigc++/sigc++.h>
#include <lo/lo.h>
@@ -33,27 +34,33 @@ class OSCRouteObserver
{
public:
- OSCRouteObserver (boost::shared_ptr<ARDOUR::Route>, lo_address addr);
+ OSCRouteObserver (boost::shared_ptr<ARDOUR::Stripable>, lo_address addr, uint32_t sid, uint32_t gainmode, std::bitset<32> feedback);
~OSCRouteObserver ();
- boost::shared_ptr<ARDOUR::Route> route () const { return _route; }
+ boost::shared_ptr<ARDOUR::Stripable> strip () const { return _strip; }
lo_address address() const { return addr; };
+ void tick (void);
private:
- boost::shared_ptr<ARDOUR::Route> _route;
- //boost::shared_ptr<Controllable> _controllable;
+ boost::shared_ptr<ARDOUR::Stripable> _strip;
- PBD::ScopedConnection name_changed_connection;
- PBD::ScopedConnection rec_changed_connection;
- PBD::ScopedConnection mute_changed_connection;
- PBD::ScopedConnection solo_changed_connection;
- PBD::ScopedConnection gain_changed_connection;
+ PBD::ScopedConnectionList strip_connections;
lo_address addr;
std::string path;
+ uint32_t ssid;
+ uint32_t gainmode;
+ std::bitset<32> feedback;
+ float _last_meter;
+
void name_changed (const PBD::PropertyChange& what_changed);
void send_change_message (std::string path, boost::shared_ptr<PBD::Controllable> controllable);
+ void send_monitor_status (boost::shared_ptr<PBD::Controllable> controllable);
+ void send_gain_message (std::string path, boost::shared_ptr<PBD::Controllable> controllable);
+ void send_trim_message (std::string path, boost::shared_ptr<PBD::Controllable> controllable);
+ std::string set_path (std::string path);
+ void clear_strip (std::string path, float val);
};
#endif /* __osc_oscrouteobserver_h__ */