19 #ifndef MIRAL_INTERNAL_CLIENT_H 20 #define MIRAL_INTERNAL_CLIENT_H 28 namespace mir {
class Server;
namespace scene {
class Session; }}
47 std::function<
void(std::weak_ptr<mir::scene::Session>
const session)> connect_notification);
49 template <
typename ClientObject>
54 std::function<
void(struct ::wl_display* display)> client_code,
55 std::function<
void(std::weak_ptr<mir::scene::Session>
const session)> connect_notification);
57 template <
typename ClientObject>
63 void operator()(mir::Server& server);
67 std::shared_ptr<Self> internal_client;
76 void operator()(mir::Server& server);
79 std::string
const&
name,
81 std::function<
void(std::weak_ptr<mir::scene::Session>
const session)>
const& connect_notification)
const;
83 template <
typename ClientObject>
84 void launch(std::string
const& name, ClientObject& client_object)
const 89 [&](std::weak_ptr<mir::scene::Session>
const session) { client_object(session); });
93 std::function<
void(struct ::wl_display* display)>
const& wayland_fd,
94 std::function<
void(std::weak_ptr<mir::scene::Session>
const session)>
const& connect_notification)
const;
96 template <
typename ClientObject>
97 void launch(ClientObject& client_object)
const 100 [&](struct ::wl_display* display) { client_object(display); },
101 [&](std::weak_ptr<mir::scene::Session>
const session) { client_object(session); });
106 std::shared_ptr<Self>
self;
110 #endif //MIRAL_INTERNAL_CLIENT_H Definition: splash_session.h:24
void launch(ClientObject &client_object) const
Definition: internal_client.h:97
StartupInternalClient(ClientObject const &client_object)
Definition: internal_client.h:58
Definition: internal_client.h:70
Handle class for MirConnection - provides automatic reference counting.
Definition: connection.h:34
void launch(std::string const &name, ClientObject &client_object) const
Definition: internal_client.h:84
char const * name
Definition: client_types.h:177
Wrapper for running an internal Mir client at startup.
Definition: internal_client.h:41
Mir Abstraction Layer.
Definition: floating_window_manager.h:29
StartupInternalClient(std::string name, ClientObject const &client_object)
Definition: internal_client.h:50