]> git.sesse.net Git - casparcg/blobdiff - core/producer/frame_producer.h
2.0.0.2:
[casparcg] / core / producer / frame_producer.h
index bdd4cc12b844e06a79c7c2dff04d8285a1a46d64..b85b516a32cc3c42eb381814fae2e9dcd06b39e4 100644 (file)
 #pragma once\r
 \r
 #include "../frame/frame_fwd.h"\r
+#include "../frame/gpu_frame.h"\r
+#include "../frame/frame_factory.h"\r
 \r
 #include <boost/noncopyable.hpp>\r
 \r
 #include <memory>\r
 \r
 namespace caspar {\r
-\r
-class Monitor;\r
-\r
+       \r
 class frame_producer : boost::noncopyable\r
 {\r
 public:\r
        virtual ~frame_producer(){}     \r
-       virtual frame_ptr get_frame() = 0;\r
+       virtual gpu_frame_ptr get_frame() = 0;\r
        virtual std::shared_ptr<frame_producer> get_following_producer() const { return nullptr; }\r
        virtual void set_leading_producer(const std::shared_ptr<frame_producer>&) {}\r
        virtual const frame_format_desc& get_frame_format_desc() const = 0;\r
+       virtual void initialize(const frame_factory_ptr& factory) = 0;\r
 };\r
 typedef std::shared_ptr<frame_producer> frame_producer_ptr;\r
 \r