5 #include <boost/noncopyable.hpp>
\r
9 #include <boost/tuple/tuple.hpp>
\r
10 #include <boost/thread/future.hpp>
\r
12 namespace caspar { namespace common { namespace gl {
\r
14 class pixel_buffer_object : boost::noncopyable
\r
17 pixel_buffer_object();
\r
18 pixel_buffer_object(size_t width, size_t height);
\r
19 void create(size_t width, size_t height);
\r
20 ~pixel_buffer_object(){}
\r
28 void bind_texture();
\r
30 size_t width() const;
\r
31 size_t heigth() const;
\r
32 size_t size() const;
\r
34 bool is_reading() const;
\r
35 bool is_writing() const;
\r
38 struct implementation;
\r
39 std::shared_ptr<implementation> impl_;
\r
41 typedef std::shared_ptr<pixel_buffer_object> pixel_buffer_object_ptr;
\r