19 #ifndef MIR_FRONTEND_BUFFER_STREAM_H_
20 #define MIR_FRONTEND_BUFFER_STREAM_H_
32 struct BufferProperties;
36 class SurfaceObserver;
49 virtual void add_observer(std::shared_ptr<scene::SurfaceObserver>
const& observer) = 0;
50 virtual void remove_observer(std::weak_ptr<scene::SurfaceObserver>
const& observer) = 0;
All things Mir.
Definition: atomic_callback.h:25
virtual void add_observer(std::shared_ptr< scene::SurfaceObserver > const &observer)=0
virtual void remove_observer(std::weak_ptr< scene::SurfaceObserver > const &observer)=0
BufferStream & operator=(BufferStream const &)=delete
virtual void set_scale(float scale)=0
virtual graphics::BufferID allocate_buffer(graphics::BufferProperties const &)=0
virtual ~BufferStream()=default
virtual void swap_buffers(graphics::Buffer *old_buffer, std::function< void(graphics::Buffer *new_buffer)> complete)=0
virtual void with_most_recent_buffer_do(std::function< void(graphics::Buffer &)> const &exec)=0
virtual MirPixelFormat pixel_format() const =0
virtual void with_buffer(graphics::BufferID id, std::function< void(graphics::Buffer &)> const &fn)=0
virtual void remove_buffer(graphics::BufferID)=0
virtual void allow_framedropping(bool)=0
Definition: buffer_stream.h:42
Buffer creation properties.
Definition: buffer_properties.h:48