20 #ifndef MIR_GRAPHICS_MESA_SHM_BUFFER_H_ 21 #define MIR_GRAPHICS_MESA_SHM_BUFFER_H_ 44 ShmBuffer(std::unique_ptr<ShmFile> shm_file,
56 void write(
unsigned char const* data,
size_t size)
override;
57 void read(std::function<
void(
unsigned char const*)>
const& do_with_pixels)
override;
64 std::unique_ptr<ShmFile>
const shm_file;
std::shared_ptr< MirNativeBuffer > native_buffer_handle() const override
Definition: shm_buffer.cpp:157
All things Mir.
Definition: atomic_callback.h:25
Definition: texture_source.h:31
NativeBufferBase * native_buffer_base() override
Definition: shm_buffer.cpp:185
geometry::Stride stride() const override
Definition: shm_buffer.cpp:116
static bool supports(MirPixelFormat)
Definition: shm_buffer.cpp:89
void gl_bind_to_texture() override
Definition: shm_buffer.cpp:126
geometry::Size size() const override
Definition: shm_buffer.cpp:111
Definition: shm_buffer.h:38
MirPixelFormat pixel_format() const override
Definition: shm_buffer.cpp:121
Definition: buffer_basic.h:29
~ShmBuffer() noexcept
Definition: shm_buffer.cpp:107
ShmBuffer(std::unique_ptr< ShmFile > shm_file, geometry::Size const &size, MirPixelFormat const &pixel_format)
Definition: shm_buffer.cpp:95
void secure_for_render() override
Definition: shm_buffer.cpp:195
Definition: dimensions.h:36
void write(unsigned char const *data, size_t size) override
Definition: shm_buffer.cpp:173
void bind() override
Definition: shm_buffer.cpp:190
void read(std::function< void(unsigned char const *)> const &do_with_pixels) override
Definition: shm_buffer.cpp:180