\r
#include "../frame_producer.h"\r
\r
-namespace caspar { namespace core {\r
+#include <memory>\r
\r
-class Monitor;\r
+namespace caspar { namespace core { namespace flash {\r
\r
-namespace flash {\r
-\r
-class FlashAxContainer;\r
-\r
-///=================================================================================================\r
-/// <summary> Flash Producer. </summary>\r
-///=================================================================================================\r
class flash_producer : public frame_producer\r
{\r
public:\r
+ explicit flash_producer(const std::wstring& filename);\r
+ flash_producer(flash_producer&& other);\r
\r
- flash_producer(const std::wstring& filename);\r
-\r
- virtual gpu_frame_ptr receive();\r
- virtual void initialize(const frame_processor_device_ptr& frame_processor);\r
+ virtual safe_ptr<draw_frame> receive();\r
+ virtual void initialize(const safe_ptr<frame_factory>& frame_factory);\r
virtual std::wstring print() const;\r
\r
void param(const std::wstring& param);\r
static std::wstring find_template(const std::wstring& templateName);\r
\r
private: \r
- friend class flash::FlashAxContainer;\r
-\r
struct implementation;\r
std::shared_ptr<implementation> impl_;\r
-\r
};\r
\r
-typedef std::tr1::shared_ptr<flash_producer> flash_producer_ptr;\r
-\r
-flash_producer_ptr create_flash_producer(const std::vector<std::wstring>& params);\r
-\r
}}}
\ No newline at end of file