chiark / gitweb /
0b3936eb3d8ac4df6adbb20443da75b2b5b52e03
[elogind.git] / src / login / logind-button.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 #pragma once
3
4 /***
5   This file is part of systemd.
6
7   Copyright 2012 Lennart Poettering
8 ***/
9
10 typedef struct Button Button;
11
12 #include "logind.h"
13
14 struct Button {
15         Manager *manager;
16
17         sd_event_source *io_event_source;
18         sd_event_source *check_event_source;
19
20         char *name;
21         char *seat;
22         int fd;
23
24         bool lid_closed;
25         bool docked;
26 };
27
28 Button* button_new(Manager *m, const char *name);
29 void button_free(Button*b);
30 int button_open(Button *b);
31 int button_set_seat(Button *b, const char *sn);
32 int button_check_switches(Button *b);