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