2019-02-17 12:19:28 +00:00
|
|
|
/* Copyright (c), Niclas Meyer <niclas@countingsort.com>
|
|
|
|
*
|
|
|
|
* This Source Code Form is subject to the terms of the Mozilla Public
|
|
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
|
|
|
|
* You can obtain one at https://mozilla.org/MPL/2.0/.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef KIWMI_SERVER_H
|
|
|
|
#define KIWMI_SERVER_H
|
|
|
|
|
2019-03-26 20:45:00 +00:00
|
|
|
#include <stdbool.h>
|
|
|
|
|
2019-10-16 16:59:29 +00:00
|
|
|
#include "desktop/desktop.h"
|
|
|
|
#include "input/input.h"
|
2019-03-07 18:25:38 +00:00
|
|
|
|
2019-02-17 12:19:28 +00:00
|
|
|
struct kiwmi_server {
|
|
|
|
struct wl_display *wl_display;
|
2019-04-08 16:10:37 +00:00
|
|
|
struct wl_event_loop *wl_event_loop;
|
2019-02-17 12:19:28 +00:00
|
|
|
struct wlr_backend *backend;
|
2021-12-20 19:07:56 +00:00
|
|
|
struct wlr_renderer *renderer;
|
|
|
|
struct wlr_allocator *allocator;
|
|
|
|
|
2019-02-17 12:19:28 +00:00
|
|
|
const char *socket;
|
2019-10-18 20:42:30 +00:00
|
|
|
char *config_path;
|
2019-12-30 23:33:07 +00:00
|
|
|
struct kiwmi_lua *lua;
|
2019-03-17 19:04:52 +00:00
|
|
|
struct kiwmi_desktop desktop;
|
2019-03-17 19:17:41 +00:00
|
|
|
struct kiwmi_input input;
|
2021-12-04 17:25:31 +00:00
|
|
|
|
|
|
|
struct {
|
|
|
|
struct wl_signal destroy;
|
|
|
|
} events;
|
2019-02-17 12:19:28 +00:00
|
|
|
};
|
|
|
|
|
2019-10-18 20:42:30 +00:00
|
|
|
bool server_init(struct kiwmi_server *server, char *config_path);
|
2019-02-18 11:37:23 +00:00
|
|
|
bool server_run(struct kiwmi_server *server);
|
2019-02-17 12:19:28 +00:00
|
|
|
void server_fini(struct kiwmi_server *server);
|
|
|
|
|
|
|
|
#endif /* KIWMI_SERVER_H */
|