3 #include "frame_format.h"
\r
14 gpu_frame(size_t width, size_t height);
\r
16 virtual void write_lock();
\r
17 virtual bool write_unlock();
\r
18 virtual void read_lock(GLenum mode);
\r
19 virtual bool read_unlock();
\r
20 virtual void draw();
\r
22 virtual unsigned char* data();
\r
23 virtual size_t size() const;
\r
24 virtual size_t width() const;
\r
25 virtual size_t height() const;
\r
27 virtual void reset();
\r
29 virtual const std::vector<short>& audio_data() const;
\r
30 virtual std::vector<short>& audio_data();
\r
32 virtual float alpha() const;
\r
33 virtual void alpha(float value);
\r
35 virtual float x() const;
\r
36 virtual float y() const;
\r
37 virtual void translate(float x, float y);
\r
39 virtual void mode(video_mode mode);
\r
40 virtual video_mode mode() const;
\r
42 static std::shared_ptr<gpu_frame> null()
\r
44 static auto my_null_frame = std::make_shared<gpu_frame>(0,0);
\r
45 return my_null_frame;
\r
49 struct implementation;
\r
50 std::shared_ptr<implementation> impl_;
\r
52 typedef std::shared_ptr<gpu_frame> gpu_frame_ptr;
\r