19 #ifndef MIRAL_INTERNAL_CLIENT_H 20 #define MIRAL_INTERNAL_CLIENT_H 28 namespace mir {
class Server;
namespace scene {
class Session; }}
44 std::function<
void(mir::client::Connection connection)> client_code,
45 std::function<
void(std::weak_ptr<mir::scene::Session>
const session)> connect_notification);
47 template <
typename ClientObject>
53 void operator()(mir::Server& server);
57 std::shared_ptr<Self> internal_client;
66 void operator()(mir::Server& server);
69 std::string
const& name,
70 std::function<
void(mir::client::Connection connection)>
const& client_code,
71 std::function<
void(std::weak_ptr<mir::scene::Session>
const session)>
const& connect_notification)
const;
73 template <
typename ClientObject>
74 void launch(std::string
const& name, ClientObject& client_object)
const 78 [&](mir::client::Connection connection) { client_object(connection); },
79 [&](std::weak_ptr<mir::scene::Session>
const session) { client_object(session); });
84 std::shared_ptr<Self>
self;
88 #endif //MIRAL_INTERNAL_CLIENT_H Definition: connection.h:26
Definition: internal_client.h:60
void launch(std::string const &name, ClientObject &client_object) const
Definition: internal_client.h:74
Wrapper for running an internal Mir client at startup.
Definition: internal_client.h:39
Mir Abstraction Layer.
Definition: active_outputs.h:27
StartupInternalClient(std::string name, ClientObject const &client_object)
Definition: internal_client.h:48