Mir
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
connection_configuration.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2013 Canonical Ltd.
3  *
4  * This program is free software: you can redistribute it and/or modify
5  * it under the terms of the GNU Lesser General Public License version 3 as
6  * 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 Lesser General Public License for more details.
12  *
13  * You should have received a copy of the GNU Lesser General Public License
14  * along with this program. If not, see <http://www.gnu.org/licenses/>.
15  *
16  * Authored by: Alexandros Frantzis <alexandros.frantzis@canonical.com>
17  */
18 
19 #ifndef MIR_CLIENT_CONNECTION_CONFIGURATION_H_
20 #define MIR_CLIENT_CONNECTION_CONFIGURATION_H_
21 
22 #include <memory>
23 
24 namespace mir
25 {
26 
27 namespace input
28 {
29 namespace receiver
30 {
31 class InputPlatform;
32 }
33 }
34 
35 namespace logging
36 {
37 class Logger;
38 }
39 
40 namespace client
41 {
42 
43 namespace rpc
44 {
45 class MirBasicRpcChannel;
46 }
47 
48 class SurfaceMap;
49 class Logger;
52 class LifecycleControl;
53 
55 {
56 public:
57  virtual ~ConnectionConfiguration() = default;
58 
59  virtual std::shared_ptr<SurfaceMap> the_surface_map() = 0;
60  virtual std::shared_ptr<rpc::MirBasicRpcChannel> the_rpc_channel() = 0;
61  virtual std::shared_ptr<mir::logging::Logger> the_logger() = 0;
62  virtual std::shared_ptr<ClientPlatformFactory> the_client_platform_factory() = 0;
63  virtual std::shared_ptr<input::receiver::InputPlatform> the_input_platform() = 0;
64  virtual std::shared_ptr<DisplayConfiguration> the_display_configuration() = 0;
65  virtual std::shared_ptr<LifecycleControl> the_lifecycle_control() = 0;
66 
67 protected:
68  ConnectionConfiguration() = default;
71 };
72 
73 }
74 }
75 
76 #endif /* MIR_CLIENT_CONNECTION_CONFIGURATION_H_ */

Copyright © 2012,2013 Canonical Ltd.
Generated on Tue Oct 15 00:23:28 UTC 2013