Mir
Main Page
Related Pages
Modules
Namespaces
Classes
Files
Examples
File List
File Members
src
server
frontend
protobuf_ipc_factory.h
Go to the documentation of this file.
1
/*
2
* Copyright © 2012-2014 Canonical Ltd.
3
*
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU General Public License version 3,
6
* as published by the Free Software Foundation.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU General Public License for more details.
12
*
13
* You should have received a copy of the GNU General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* Authored by: Alan Griffiths <alan@octopull.co.uk>
17
*/
18
19
#ifndef MIR_FRONTEND_PROTOBUF_IPC_FACTORY_H_
20
#define MIR_FRONTEND_PROTOBUF_IPC_FACTORY_H_
21
22
#include <sys/types.h>
23
24
#include <memory>
25
26
namespace
mir
27
{
28
namespace
frontend
29
{
30
namespace
detail
31
{
32
class
DisplayServer;
33
}
34
class
ConnectionContext;
35
class
EventSink;
36
class
ResourceCache;
37
class
SessionCredentials;
38
class
MessageSender;
39
class
EventSinkFactory;
40
41
class
ProtobufIpcFactory
42
{
43
public
:
44
virtual
std::shared_ptr<detail::DisplayServer> make_ipc_server(
45
SessionCredentials
const
&creds,
46
std::shared_ptr<EventSinkFactory>
const
& sink_factory,
47
std::shared_ptr<MessageSender>
const
& message_sender,
48
ConnectionContext
const
&connection_context) = 0;
49
50
virtual
std::shared_ptr<ResourceCache> resource_cache() = 0;
51
52
protected
:
53
ProtobufIpcFactory
() {}
54
virtual
~ProtobufIpcFactory
() {}
55
ProtobufIpcFactory
(
ProtobufIpcFactory
const
&) =
delete
;
56
ProtobufIpcFactory
& operator =(
ProtobufIpcFactory
const
&) =
delete
;
57
};
58
59
}
60
}
61
62
#endif // MIR_FRONTEND_PROTOBUF_IPC_FACTORY_H_
mir
All things Mir.
Definition:
atomic_callback.h:25
mir::frontend::SessionCredentials
Definition:
session_credentials.h:27
mir::frontend::ProtobufIpcFactory::ProtobufIpcFactory
ProtobufIpcFactory()
Definition:
protobuf_ipc_factory.h:53
mir::frontend::ConnectionContext
Definition:
connection_context.h:32
mir::frontend::ProtobufIpcFactory
Definition:
protobuf_ipc_factory.h:41
mir::frontend::ProtobufIpcFactory::~ProtobufIpcFactory
virtual ~ProtobufIpcFactory()
Definition:
protobuf_ipc_factory.h:54
Copyright © 2012-2015 Canonical Ltd.
Generated on Thu Sep 8 14:50:19 UTC 2016