20 #ifndef MIR_GRAPHICS_MESA_GBM_BUFFER_H_ 21 #define MIR_GRAPHICS_MESA_GBM_BUFFER_H_ 37 class BufferTextureBinder;
56 GBMBuffer(std::shared_ptr<gbm_bo>
const& handle,
58 std::unique_ptr<common::BufferTextureBinder> texture_binder);
70 virtual std::shared_ptr<MirNativeBuffer> native_buffer_handle()
const override;
72 virtual void gl_bind_to_texture()
override;
73 virtual void bind()
override;
74 virtual void secure_for_render()
override;
76 void write(
unsigned char const* pixels,
size_t size)
override;
77 void read(std::function<
void(
unsigned char const*)>
const& do_with_pixels)
override;
82 std::shared_ptr<gbm_bo>
const gbm_handle;
84 std::unique_ptr<common::BufferTextureBinder>
const texture_binder;
93 #endif // MIR_GRAPHICS_MESA_GBM_BUFFER_H_
All things Mir.
Definition: atomic_callback.h:25
Definition: gbm_buffer.h:52
Definition: texture_source.h:31
struct gbm_bo * bo
Definition: gbm_buffer.h:45
uint32_t mir_format_to_gbm_format(MirPixelFormat format)
MirPixelFormat gbm_format_to_mir_format(uint32_t format)
Definition: gbm_buffer.h:50
Definition: mir_native_buffer.h:30
Definition: gbm_buffer.h:43
Definition: buffer_basic.h:29
Definition: dimensions.h:36
int const size
Definition: make_socket_rpc_channel.cpp:51