*/\r
#pragma once\r
\r
-#include <core/consumer/frame_consumer.h>\r
+#include <common/memory/safe_ptr.h>\r
\r
#include <core/video_format.h>\r
\r
+#include <boost/property_tree/ptree.hpp>\r
+\r
#include <string>\r
#include <vector>\r
\r
-namespace caspar { \r
+namespace caspar {\r
\r
-class decklink_consumer : public core::frame_consumer\r
-{\r
-public:\r
- explicit decklink_consumer(size_t device_index, bool embed_audio = false, bool internal_key = false);\r
- decklink_consumer(decklink_consumer&& other);\r
- \r
- virtual void initialize(const core::video_format_desc& format_desc, const printer& parent_printer);\r
- virtual void send(const safe_ptr<const core::read_frame>&);\r
- virtual size_t buffer_depth() const;\r
- virtual std::wstring print() const;\r
+namespace core {\r
+ struct frame_consumer;\r
+}\r
\r
-private:\r
- struct implementation;\r
- std::tr1::shared_ptr<implementation> impl_;\r
-};\r
+namespace decklink {\r
\r
-safe_ptr<core::frame_consumer> create_decklink_consumer(const std::vector<std::wstring>& params);\r
+safe_ptr<core::frame_consumer> create_consumer(const std::vector<std::wstring>& params);\r
+safe_ptr<core::frame_consumer> create_consumer(const boost::property_tree::ptree& ptree);\r
\r
-}
\ No newline at end of file
+}}
\ No newline at end of file