another TLSF vs realloc-pool shootout
[ardour.git] / libs / ardour / ardour / speaker.h
index 8bf155693601e9ca24f2a76cef61a6ac4098ee7e..c643eb5d02db0594e5bf7e3046473baed09605b4 100644 (file)
 #define __libardour_speaker_h__
 
 #include "pbd/cartesian.h"
+#include "pbd/signals.h"
 
-namespace ARDOUR { 
+#include "ardour/libardour_visibility.h"
 
-class Speaker {
+namespace ARDOUR {
+
+class LIBARDOUR_API Speaker {
 public:
        Speaker (int, const PBD::AngularVector& position);
-        
+       Speaker (const Speaker &);
+       Speaker& operator= (const Speaker &);
+
        void move (const PBD::AngularVector& new_position);
 
        const PBD::CartesianVector& coords() const { return _coords; }
@@ -34,6 +39,9 @@ public:
 
        int id;
 
+       /** emitted when this speaker's position has changed */
+       PBD::Signal0<void> PositionChanged;
+
 private:
        PBD::CartesianVector _coords;
        PBD::AngularVector   _angles;