19 #ifndef MIR_CLIENT_BUFFER_VAULT_H_ 20 #define MIR_CLIENT_BUFFER_VAULT_H_ 32 namespace protobuf {
class Buffer; }
40 virtual void free_buffer(
int buffer_id) = 0;
41 virtual void submit_buffer(
int buffer_id,
ClientBuffer&) = 0;
53 std::shared_ptr<ClientBuffer>
buffer;
61 std::shared_ptr<ClientBufferFactory>
const&,
62 std::shared_ptr<ServerBufferRequests>
const&,
64 unsigned int initial_nbuffers);
68 void deposit(std::shared_ptr<ClientBuffer>
const& buffer);
69 void wire_transfer_inbound(protobuf::Buffer
const&);
70 void wire_transfer_outbound(std::shared_ptr<ClientBuffer>
const& buffer);
73 void set_scale(
float scale);
76 std::shared_ptr<ClientBufferFactory>
const factory;
77 std::shared_ptr<ServerBufferRequests>
const server_requests;
84 std::shared_ptr<ClientBuffer> buffer;
89 std::map<int, BufferEntry> buffers;
90 std::deque<NoTLSPromise<BufferInfo>> promises;
All things Mir.
Definition: atomic_callback.h:25
A factory for creating client-side representations of graphics buffers.
Definition: client_buffer_factory.h:38
Definition: buffer_vault.h:51
Definition: buffer_vault.h:57
int id
Definition: buffer_vault.h:54
Owner
Definition: buffer_vault.cpp:32
std::shared_ptr< ClientBuffer > buffer
Definition: buffer_vault.h:53
Definition: buffer_vault.h:36
Definition: no_tls_future-inl.h:101
Definition: client_buffer.h:55
int const size
Definition: make_socket_rpc_channel.cpp:51