19 #ifndef MIR_CLIENT_MIR_BUFFER_FACTORY_H 20 #define MIR_CLIENT_MIR_BUFFER_FACTORY_H 23 #include "mir_protobuf.pb.h" 32 class ClientBufferFactory;
39 virtual std::unique_ptr<MirBuffer>
generate_buffer(mir::protobuf::Buffer
const& buffer) = 0;
41 std::shared_ptr<ClientBufferFactory>
const& native_buffer_factory,
47 void* cb_context) = 0;
58 std::unique_ptr<MirBuffer>
generate_buffer(mir::protobuf::Buffer
const& buffer)
override;
60 std::shared_ptr<ClientBufferFactory>
const& native_buffer_factory,
66 void* cb_context)
override;
72 struct AllocationRequest
75 std::shared_ptr<ClientBufferFactory>
const& native_buffer_factory,
83 std::shared_ptr<ClientBufferFactory>
const native_buffer_factory;
91 std::vector<std::unique_ptr<AllocationRequest>> allocation_requests;
All things Mir.
Definition: atomic_callback.h:25
virtual void expect_buffer(std::shared_ptr< ClientBufferFactory > const &native_buffer_factory, MirConnection *connection, geometry::Size size, MirPixelFormat format, MirBufferUsage usage, mir_buffer_callback cb, void *cb_context)=0
Definition: buffer_factory.h:55
virtual ~AsyncBufferFactory()=default
Definition: mir_connection.h:96
Definition: buffer_factory.h:33
AsyncBufferFactory()=default
virtual void cancel_requests_with_context(void *)=0
virtual std::unique_ptr< MirBuffer > generate_buffer(mir::protobuf::Buffer const &buffer)=0
int const size
Definition: make_socket_rpc_channel.cpp:51