Mir
mir_server_hooks.h
Go to the documentation of this file.
1 /*
2  * Copyright © 2016 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 MIROIL_MIRSERVERHOOKS_H
20 #define MIROIL_MIRSERVERHOOKS_H
23 #include <mir/graphics/cursor_image.h>
24 #include <functional>
25 #include <memory>
26 
27 namespace mir { class Server; }
28 namespace mir { namespace scene { class PromptSessionManager; }}
29 namespace mir { namespace graphics { class Display; }}
30 namespace mir { namespace shell { class DisplayConfigurationController; } }
31 
32 namespace miroil
33 {
34 using CreateNamedCursor = std::function<std::shared_ptr< mir::graphics::CursorImage>(std::string const& name)>;
35 
37 {
38 public:
40 
41  void operator()(mir::Server& server);
42 
44  auto the_prompt_session_manager() const -> std::shared_ptr<mir::scene::PromptSessionManager>;
45  auto the_mir_display() const -> std::shared_ptr<mir::graphics::Display>;
46  auto the_display_configuration_controller() const -> std::shared_ptr<mir::shell::DisplayConfigurationController>;
48  void create_input_device_observer(std::shared_ptr<InputDeviceObserver> & observer);
49  void create_prompt_session_listener(std::shared_ptr<PromptSessionListener> listener);
50 
51 private:
52  struct Self;
53  std::shared_ptr<Self> self;
54 };
55 }
56 
57 #endif //MIROIL_MIRSERVERHOOKS_H
Definition: input_device_observer.h:27
Definition: mir_server_hooks.h:37
auto the_display_configuration_controller() const -> std::shared_ptr< mir::shell::DisplayConfigurationController >
auto the_mir_display() const -> std::shared_ptr< mir::graphics::Display >
void operator()(mir::Server &server)
auto the_prompt_session_listener() const -> PromptSessionListener *
auto the_prompt_session_manager() const -> std::shared_ptr< mir::scene::PromptSessionManager >
void create_named_cursor(CreateNamedCursor func)
void create_input_device_observer(std::shared_ptr< InputDeviceObserver > &observer)
void create_prompt_session_listener(std::shared_ptr< PromptSessionListener > listener)
Definition: prompt_session_listener.h:27
Definition: prompt_session_manager.h:29
Definition: splash_session.h:24
Definition: compositor.h:21
std::function< std::shared_ptr< mir::graphics::CursorImage >(std::string const &name)> CreateNamedCursor
Definition: mir_server_hooks.h:34

Copyright © 2012-2022 Canonical Ltd.
Generated on Thu Feb 24 23:57:55 UTC 2022
This documentation is licensed under the GPL version 2 or 3.