add an option for releasing client ids
[project/uqmi.git] / qmi-enums-private.h
1 /* -*- Mode: C; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
3  * uqmi -- tiny QMI support implementation
4  *
5  * This library is free software; you can redistribute it and/or
6  * modify it under the terms of the GNU Lesser General Public
7  * License as published by the Free Software Foundation; either
8  * version 2 of the License, or (at your option) any later version.
9  *
10  * This library is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
13  * Lesser General Public License for more details.
14  *
15  * You should have received a copy of the GNU Lesser General Public
16  * License along with this library; if not, write to the
17  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18  * Boston, MA 02110-1301 USA.
19  *
20  * Copyright (C) 2012 Google Inc.
21  */
22
23 #ifndef _LIBQMI_GLIB_QMI_ENUMS_PRIVATE_H_
24 #define _LIBQMI_GLIB_QMI_ENUMS_PRIVATE_H_
25
26 /*****************************************************************************/
27 /* QMI Control */
28
29 /**
30  * QmiCtlDataFormat:
31  * @QMI_CTL_DATA_FORMAT_QOS_FLOW_HEADER_ABSENT: QoS header absent
32  * @QMI_CTL_DATA_FORMAT_QOS_FLOW_HEADER_PRESENT: QoS header present
33  *
34  * Controls whether the network port data format includes a QoS header or not.
35  * Should normally be set to ABSENT.
36  */
37 typedef enum {
38     QMI_CTL_DATA_FORMAT_QOS_FLOW_HEADER_ABSENT  = 0,
39     QMI_CTL_DATA_FORMAT_QOS_FLOW_HEADER_PRESENT = 1,
40 } QmiCtlDataFormat;
41
42 /**
43  * QmiCtlDataLinkProtocol:
44  * @QMI_CTL_DATA_LINK_PROTOCOL_802_3: data frames formatted as 802.3 Ethernet
45  * @QMI_CTL_DATA_LINK_PROTOCOL_RAW_IP: data frames are raw IP packets
46  *
47  * Determines the network port data format.
48  */
49 typedef enum {
50     QMI_CTL_DATA_LINK_PROTOCOL_UNKNOWN = 0,
51     QMI_CTL_DATA_LINK_PROTOCOL_802_3   = 1,
52     QMI_CTL_DATA_LINK_PROTOCOL_RAW_IP  = 2,
53 } QmiCtlDataLinkProtocol;
54
55 /**
56  * QmiCtlFlag:
57  * @QMI_CTL_FLAG_NONE: None.
58  * @QMI_CTL_FLAG_RESPONSE: Message is a response.
59  * @QMI_CTL_FLAG_INDICATION: Message is an indication.
60  *
61  * QMI flags in messages of the %QMI_SERVICE_CTL service.
62  */
63 typedef enum {
64     QMI_CTL_FLAG_NONE       = 0,
65     QMI_CTL_FLAG_RESPONSE   = 1 << 0,
66     QMI_CTL_FLAG_INDICATION = 1 << 1
67 } QmiCtlFlag;
68
69 /**
70  * QmiServiceFlag:
71  * @QMI_SERVICE_FLAG_NONE: None.
72  * @QMI_SERVICE_FLAG_COMPOUND: Message is compound.
73  * @QMI_SERVICE_FLAG_RESPONSE: Message is a response.
74  * @QMI_SERVICE_FLAG_INDICATION: Message is an indication.
75  *
76  * QMI flags in messages which are not of the %QMI_SERVICE_CTL service.
77  */
78 typedef enum {
79     QMI_SERVICE_FLAG_NONE       = 0,
80     QMI_SERVICE_FLAG_COMPOUND   = 1 << 0,
81     QMI_SERVICE_FLAG_RESPONSE   = 1 << 1,
82     QMI_SERVICE_FLAG_INDICATION = 1 << 2
83 } QmiServiceFlag;
84
85 #endif /* _LIBQMI_GLIB_QMI_ENUMS_PRIVATE_H_ */