\r
#include <common/spl/memory.h>\r
\r
+#include <core/monitor/monitor.h>\r
+\r
#include <boost/noncopyable.hpp>\r
\r
#include <vector>\r
class video_channel;\r
}\r
\r
-class server sealed : boost::noncopyable\r
+class server sealed : public monitor::observable\r
+ , boost::noncopyable\r
{\r
public:\r
server();\r
- const std::vector<spl::shared_ptr<core::video_channel>> get_channels() const;\r
+ const std::vector<spl::shared_ptr<core::video_channel>> channels() const;\r
+\r
+ // monitor::observable\r
+\r
+ virtual void subscribe(const monitor::observable::observer_ptr& o) override;\r
+ virtual void unsubscribe(const monitor::observable::observer_ptr& o) override;\r
private:\r
struct impl;\r
spl::shared_ptr<impl> impl_;\r