7 #include "gpu_frame.h"
\r
9 namespace caspar { namespace core {
\r
11 class gpu_composite_frame : public gpu_frame
\r
14 gpu_composite_frame();
\r
16 void add(const gpu_frame_ptr& frame);
\r
18 static gpu_frame_ptr interlace(const gpu_frame_ptr& frame1,
\r
19 const gpu_frame_ptr& frame2, video_mode mode);
\r
22 virtual unsigned char* data(size_t index);
\r
23 virtual void begin_write();
\r
24 virtual void end_write();
\r
25 virtual void begin_read();
\r
26 virtual void end_read();
\r
27 virtual void draw(const gpu_frame_transform_ptr& transform);
\r
29 struct implementation;
\r
30 std::shared_ptr<implementation> impl_;
\r
32 typedef std::shared_ptr<gpu_composite_frame> gpu_composite_frame_ptr;
\r