]> git.ipfire.org Git - thirdparty/systemd.git/blob - src/libudev/libudev-device-internal.h
tree-wide: drop copyright headers from frequent contributors
[thirdparty/systemd.git] / src / libudev / libudev-device-internal.h
1 /* SPDX-License-Identifier: LGPL-2.1+ */
2 #pragma once
3
4
5 #include "libudev.h"
6 #include "sd-device.h"
7
8 #include "libudev-private.h"
9
10 /**
11 * udev_device:
12 *
13 * Opaque object representing one kernel sys device.
14 */
15 struct udev_device {
16 struct udev *udev;
17
18 /* real device object */
19 sd_device *device;
20
21 /* legacy */
22 int refcount;
23
24 struct udev_device *parent;
25 bool parent_set;
26
27 struct udev_list properties;
28 uint64_t properties_generation;
29 struct udev_list tags;
30 uint64_t tags_generation;
31 struct udev_list devlinks;
32 uint64_t devlinks_generation;
33 bool properties_read:1;
34 bool tags_read:1;
35 bool devlinks_read:1;
36 struct udev_list sysattrs;
37 bool sysattrs_read;
38 };
39
40 struct udev_device *udev_device_new(struct udev *udev);