Branch data Line data Source code
1 : : // SPDX-License-Identifier: GPL-3.0-or-later
2 : : // SPDX-FileCopyrightText: Andy Holmes <andrew.g.r.holmes@gmail.com>
3 : :
4 : : #pragma once
5 : :
6 : : #if !defined (VALENT_INSIDE) && !defined (VALENT_COMPILATION)
7 : : # error "Only <valent.h> can be included directly."
8 : : #endif
9 : :
10 : : #include <json-glib/json-glib.h>
11 : :
12 : : #include "../core/valent-resource.h"
13 : : #include "valent-channel.h"
14 : :
15 : : G_BEGIN_DECLS
16 : :
17 : : /**
18 : : * ValentDeviceState:
19 : : * @VALENT_DEVICE_STATE_NONE: Device is unpaired and disconnected
20 : : * @VALENT_DEVICE_STATE_CONNECTED: Device is connected
21 : : * @VALENT_DEVICE_STATE_PAIRED: Device is paired
22 : : * @VALENT_DEVICE_STATE_PAIR_INCOMING: Pair request received from device
23 : : * @VALENT_DEVICE_STATE_PAIR_OUTGOING: Pair request sent to device
24 : : *
25 : : * Device state flags.
26 : : *
27 : : * Since: 1.0
28 : : */
29 : : typedef enum
30 : : {
31 : : VALENT_DEVICE_STATE_NONE,
32 : : VALENT_DEVICE_STATE_CONNECTED = (1<<0),
33 : : VALENT_DEVICE_STATE_PAIRED = (1<<1),
34 : : VALENT_DEVICE_STATE_PAIR_INCOMING = (1<<2),
35 : : VALENT_DEVICE_STATE_PAIR_OUTGOING = (1<<3),
36 : : } ValentDeviceState;
37 : :
38 : :
39 : : #define VALENT_TYPE_DEVICE (valent_device_get_type())
40 : :
41 : : VALENT_AVAILABLE_IN_1_0
42 [ + + + + : 6557 : G_DECLARE_FINAL_TYPE (ValentDevice, valent_device, VALENT, DEVICE, ValentResource)
+ + + + +
+ + + + +
- - ]
43 : :
44 : : VALENT_AVAILABLE_IN_1_0
45 : : ValentDevice * valent_device_new (const char *id);
46 : : VALENT_AVAILABLE_IN_1_0
47 : : ValentChannel * valent_device_ref_channel (ValentDevice *device);
48 : : VALENT_AVAILABLE_IN_1_0
49 : : ValentContext * valent_device_get_context (ValentDevice *device);
50 : : VALENT_AVAILABLE_IN_1_0
51 : : const char * valent_device_get_icon_name (ValentDevice *device);
52 : : VALENT_AVAILABLE_IN_1_0
53 : : const char * valent_device_get_id (ValentDevice *device);
54 : : VALENT_AVAILABLE_IN_1_0
55 : : GMenuModel * valent_device_get_menu (ValentDevice *device);
56 : : VALENT_AVAILABLE_IN_1_0
57 : : const char * valent_device_get_name (ValentDevice *device);
58 : : VALENT_AVAILABLE_IN_1_0
59 : : GStrv valent_device_get_plugins (ValentDevice *device);
60 : : VALENT_AVAILABLE_IN_1_0
61 : : ValentDeviceState valent_device_get_state (ValentDevice *device);
62 : : VALENT_AVAILABLE_IN_1_0
63 : : void valent_device_send_packet (ValentDevice *device,
64 : : JsonNode *packet,
65 : : GCancellable *cancellable,
66 : : GAsyncReadyCallback callback,
67 : : gpointer user_data);
68 : : VALENT_AVAILABLE_IN_1_0
69 : : gboolean valent_device_send_packet_finish (ValentDevice *device,
70 : : GAsyncResult *result,
71 : : GError **error);
72 : : VALENT_AVAILABLE_IN_1_0
73 : : char * valent_device_generate_id (void);
74 : : VALENT_AVAILABLE_IN_1_0
75 : : gboolean valent_device_validate_id (const char *id);
76 : : VALENT_AVAILABLE_IN_1_0
77 : : gboolean valent_device_validate_name (const char *name);
78 : :
79 : : G_END_DECLS
80 : :
|