aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/session/interface.h20
-rw-r--r--include/wlr/session.h12
2 files changed, 32 insertions, 0 deletions
diff --git a/include/session/interface.h b/include/session/interface.h
new file mode 100644
index 00000000..5dde89f0
--- /dev/null
+++ b/include/session/interface.h
@@ -0,0 +1,20 @@
+#ifndef WLR_SESSION_INTERFACE_H
+#define WLR_SESSION_INTERFACE_H
+
+struct wlr_session;
+
+struct session_interface {
+ struct wlr_session *(*start)(void);
+ void (*finish)(struct wlr_session *session);
+ int (*open)(struct wlr_session *restrict session,
+ const char *restrict path);
+ void (*close)(struct wlr_session *session, int fd);
+};
+
+struct wlr_session {
+ struct session_interface iface;
+};
+
+extern const struct session_interface session_logind_iface;
+
+#endif
diff --git a/include/wlr/session.h b/include/wlr/session.h
new file mode 100644
index 00000000..cf04f1da
--- /dev/null
+++ b/include/wlr/session.h
@@ -0,0 +1,12 @@
+#ifndef WLR_SESSION_H
+#define WLR_SESSION_H
+
+struct wlr_session;
+
+struct wlr_session *wlr_session_start(void);
+void wlr_session_finish(struct wlr_session *session);
+int wlr_session_open_file(struct wlr_session *restrict session,
+ const char *restrict path);
+void wlr_session_close_file(struct wlr_session *session, int fd);
+
+#endif