chiark / gitweb /
add Vala vapi for gudev-1.0
[elogind.git] / extras / gudev / gudev-1.0.vapi
1 /* gudev-1.0.vapi
2  *
3  * (C) 2010 Martin Pitt <martin.pitt@ubuntu.com>
4  * Based on vapigen output, with fixes to array/list semantics and
5  * include file names.
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Lesser General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Lesser General Public License for more details.
16  */
17
18 [CCode (cprefix = "GUdev", lower_case_cprefix = "g_udev_")]
19 namespace GUdev {
20         [CCode (cheader_filename = "gudev/gudev.h")]
21         public class Client : GLib.Object {
22                 public weak GLib.Object parent;
23                 public GUdev.ClientPrivate priv;
24                 [CCode (has_construct_function = false)]
25                 public Client ([CCode (array_length = false, array_null_terminated = true)] string[]? subsystems);
26                 [CCode (cname = "g_udev_client_query_by_device_file")]
27                 public GUdev.Device query_by_device_file (string device_file);
28                 [CCode (cname = "g_udev_client_query_by_device_number")]
29                 public GUdev.Device query_by_device_number (GUdev.DeviceType type, GUdev.DeviceNumber number);
30                 [CCode (cname = "g_udev_client_query_by_subsystem")]
31                 public GLib.List<Device> query_by_subsystem (string? subsystem);
32                 [CCode (cname = "g_udev_client_query_by_subsystem_and_name")]
33                 public GUdev.Device query_by_subsystem_and_name (string subsystem, string name);
34                 [CCode (cname = "g_udev_client_query_by_sysfs_path")]
35                 public GUdev.Device query_by_sysfs_path (string sysfs_path);
36                 public signal void uevent (string action, GUdev.Device device);
37         }
38         [CCode (cheader_filename = "gudev/gudev.h")]
39         public class Device : GLib.Object {
40                 public weak GLib.Object parent;
41                 public GUdev.DevicePrivate priv;
42                 [CCode (cname = "g_udev_device_get_action")]
43                 public unowned string get_action ();
44                 [CCode (cname = "g_udev_device_get_device_file")]
45                 public unowned string get_device_file ();
46                 [CCode (cname = "g_udev_device_get_device_file_symlinks", array_length = false, array_null_terminated = true)]
47                 public unowned  string[] get_device_file_symlinks ();
48                 [CCode (cname = "g_udev_device_get_device_number")]
49                 public GUdev.DeviceNumber get_device_number ();
50                 [CCode (cname = "g_udev_device_get_device_type")]
51                 public GUdev.DeviceType get_device_type ();
52                 [CCode (cname = "g_udev_device_get_devtype")]
53                 public unowned string get_devtype ();
54                 [CCode (cname = "g_udev_device_get_driver")]
55                 public unowned string get_driver ();
56                 [CCode (cname = "g_udev_device_get_name")]
57                 public unowned string get_name ();
58                 [CCode (cname = "g_udev_device_get_number")]
59                 public unowned string get_number ();
60                 [CCode (cname = "g_udev_device_get_parent")]
61                 public GUdev.Device get_parent ();
62                 [CCode (cname = "g_udev_device_get_parent_with_subsystem")]
63                 public GUdev.Device get_parent_with_subsystem (string subsystem, string? devtype);
64                 [CCode (cname = "g_udev_device_get_property")]
65                 public unowned string get_property (string key);
66                 [CCode (cname = "g_udev_device_get_property_as_boolean")]
67                 public bool get_property_as_boolean (string key);
68                 [CCode (cname = "g_udev_device_get_property_as_double")]
69                 public double get_property_as_double (string key);
70                 [CCode (cname = "g_udev_device_get_property_as_int")]
71                 public int get_property_as_int (string key);
72                 [CCode (cname = "g_udev_device_get_property_as_strv", array_length = false, array_null_terminated = true)]
73                 public unowned string[] get_property_as_strv (string key);
74                 [CCode (cname = "g_udev_device_get_property_as_uint64")]
75                 public uint64 get_property_as_uint64 (string key);
76                 [CCode (cname = "g_udev_device_get_property_keys", array_length = false, array_null_terminated = true)]
77                 public unowned string[] get_property_keys ();
78                 [CCode (cname = "g_udev_device_get_seqnum")]
79                 public uint64 get_seqnum ();
80                 [CCode (cname = "g_udev_device_get_subsystem")]
81                 public unowned string get_subsystem ();
82                 [CCode (cname = "g_udev_device_get_sysfs_attr")]
83                 public unowned string get_sysfs_attr (string name);
84                 [CCode (cname = "g_udev_device_get_sysfs_attr_as_boolean")]
85                 public bool get_sysfs_attr_as_boolean (string name);
86                 [CCode (cname = "g_udev_device_get_sysfs_attr_as_double")]
87                 public double get_sysfs_attr_as_double (string name);
88                 [CCode (cname = "g_udev_device_get_sysfs_attr_as_int")]
89                 public int get_sysfs_attr_as_int (string name);
90                 [CCode (cname = "g_udev_device_get_sysfs_attr_as_strv", array_length = false, array_null_terminated = true)]
91                 public unowned string[] get_sysfs_attr_as_strv (string name);
92                 [CCode (cname = "g_udev_device_get_sysfs_attr_as_uint64")]
93                 public uint64 get_sysfs_attr_as_uint64 (string name);
94                 [CCode (cname = "g_udev_device_get_sysfs_path")]
95                 public unowned string get_sysfs_path ();
96                 [CCode (cname = "g_udev_device_has_property")]
97                 public bool has_property (string key);
98         }
99         [CCode (type_id = "GUDEV_TYPE_CLIENT_PRIVATE", cheader_filename = "gudev/gudev.h")]
100         public struct ClientPrivate {
101         }
102         [CCode (cheader_filename = "gudev/gudev.h")]
103         [SimpleType]
104         [IntegerType (rank = 0)]
105         public struct DeviceNumber : uint64 {
106         }
107         [CCode (type_id = "GUDEV_TYPE_DEVICE_PRIVATE", cheader_filename = "gudev/gudev.h")]
108         public struct DevicePrivate {
109         }
110         [CCode (cprefix = "G_UDEV_DEVICE_TYPE_", cheader_filename = "gudev/gudev.h")]
111         public enum DeviceType {
112                 NONE,
113                 BLOCK,
114                 CHAR
115         }
116         [CCode (cheader_filename = "gudev/gudev.h")]
117         public const int GUDEV_INSIDE_GUDEV_H;
118 }