20 #ifndef MIR_FRONTEND_PROTOBUF_MESSAGE_PROCESSOR_H_
21 #define MIR_FRONTEND_PROTOBUF_MESSAGE_PROCESSOR_H_
25 #include "mir_protobuf.pb.h"
33 class MessageProcessorReport;
38 class ProtobufMessageSender;
41 public std::enable_shared_from_this<ProtobufMessageProcessor>
45 std::shared_ptr<ProtobufMessageSender>
const& sender,
46 std::shared_ptr<DisplayServer>
const& display_server,
47 std::shared_ptr<MessageProcessorReport>
const& report);
53 void send_response(::google::protobuf::uint32
id, ::google::protobuf::Message* response);
54 void send_response(::google::protobuf::uint32
id, protobuf::Buffer* response);
55 void send_response(::google::protobuf::uint32
id, protobuf::Connection* response);
56 void send_response(::google::protobuf::uint32
id, protobuf::Surface* response);
57 void send_response(::google::protobuf::uint32
id, std::shared_ptr<protobuf::Buffer> response);
58 void send_response(::google::protobuf::uint32
id, mir::protobuf::Screencast* response);
59 void send_response(::google::protobuf::uint32
id, mir::protobuf::SocketFD* response);
60 void send_response(::google::protobuf::uint32
id, std::shared_ptr<protobuf::PlatformOperationMessage> response);
63 bool dispatch(
Invocation const& invocation, std::vector<mir::Fd>
const& side_channel_fds)
override;
65 std::shared_ptr<ProtobufMessageSender>
const sender;
66 std::shared_ptr<DisplayServer>
const display_server;
67 std::shared_ptr<MessageProcessorReport>
const report;
All things Mir.
Definition: buffer_stream.h:37
Definition: message_processor.h:39
Definition: protobuf_message_processor.h:40
Definition: message_processor.h:52
void send_response(::google::protobuf::uint32 id,::google::protobuf::Message *response)
ProtobufMessageProcessor(std::shared_ptr< ProtobufMessageSender > const &sender, std::shared_ptr< DisplayServer > const &display_server, std::shared_ptr< MessageProcessorReport > const &report)
~ProtobufMessageProcessor() noexcept
Definition: protobuf_message_processor.h:49
void client_pid(int pid) override