summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@lanedo.com>2012-09-04 11:47:09 +0200
committerAleksander Morgado <aleksander@lanedo.com>2012-09-06 19:53:02 +0200
commit279dcc8f09d2c63509a341d43e8aef943cbb25d5 (patch)
treef4e59ee1720d4841f882702e91ffa0575fec0b71
parent2e0b20b4be5d72fca545336b876757002c1b8c6f (diff)
wms: implement "Set Routes" request/response
-rw-r--r--data/qmi-service-wms.json36
-rw-r--r--libqmi-glib/qmi-enums-wms.h65
2 files changed, 98 insertions, 3 deletions
diff --git a/data/qmi-service-wms.json b/data/qmi-service-wms.json
index 7173995..39c2719 100644
--- a/data/qmi-service-wms.json
+++ b/data/qmi-service-wms.json
@@ -405,6 +405,40 @@
{ "name" : "Message Tag",
"format" : "guint8",
"public-format" : "QmiWmsMessageTagType" } ] },
- "prerequisites" : [ { "common-ref" : "Success" } ] } ] }
+ "prerequisites" : [ { "common-ref" : "Success" } ] } ] },
+
+ // *********************************************************************************
+ { "name" : "Set Routes",
+ "type" : "Message",
+ "service" : "WMS",
+ "id" : "0x0032",
+ "version" : "1.1",
+ "input" : [ { "name" : "Route List",
+ "id" : "0x01",
+ "mandatory" : "yes",
+ "type" : "TLV",
+ "format" : "array",
+ "array-size" : { "format" : "guint16" },
+ "array-element" : { "name" : "Element",
+ "format" : "struct",
+ "contents" : [ { "name" : "Message Type",
+ "format" : "guint8",
+ "public-format" : "QmiWmsMessageType" },
+ { "name" : "Message Class",
+ "format" : "guint8",
+ "public-format" : "QmiWmsMessageClass" },
+ { "name" : "Storage",
+ "format" : "guint8",
+ "public-format" : "QmiWmsStorageType" },
+ { "name" : "Receipt Action",
+ "format" : "guint8",
+ "public-format" : "QmiWmsReceiptAction" } ] } },
+ { "name" : "Transfer Status Report",
+ "id" : "0x10",
+ "mandatory" : "no",
+ "type" : "TLV",
+ "format" : "guint8",
+ "public-format" : "QmiWmsTransferIndication" } ],
+ "output" : [ { "common-ref" : "Operation Result" } ] }
]
diff --git a/libqmi-glib/qmi-enums-wms.h b/libqmi-glib/qmi-enums-wms.h
index b4753ca..ab2bbf2 100644
--- a/libqmi-glib/qmi-enums-wms.h
+++ b/libqmi-glib/qmi-enums-wms.h
@@ -30,12 +30,14 @@
* QmiWmsStorageType:
* @QMI_WMS_STORAGE_TYPE_UIM: Message stored in UIM.
* @QMI_WMS_STORAGE_TYPE_NV: Message stored in non-volatile memory.
+ * @QMI_WMS_STORAGE_TYPE_NONE: None.
*
* Type of messaging storage
*/
typedef enum {
- QMI_WMS_STORAGE_TYPE_UIM = 0x00,
- QMI_WMS_STORAGE_TYPE_NV = 0x01
+ QMI_WMS_STORAGE_TYPE_UIM = 0x00,
+ QMI_WMS_STORAGE_TYPE_NV = 0x01,
+ QMI_WMS_STORAGE_TYPE_NONE = 0xFF
} QmiWmsStorageType;
/**
@@ -351,4 +353,63 @@ typedef enum {
QMI_WMS_MESSAGE_PROTOCOL_WCDMA = 0x01
} QmiWmsMessageProtocol;
+/*****************************************************************************/
+/* Helper enums for the 'QMI WMS Set Routes' request/response */
+
+/**
+ * QmiWmsMessageType:
+ * @QMI_WMS_MESSAGE_TYPE_POINT_TO_POINT: Point to point message.
+ *
+ * Type of message.
+ */
+typedef enum {
+ QMI_WMS_MESSAGE_TYPE_POINT_TO_POINT = 0x00
+} QmiWmsMessageType;
+
+/**
+ * QmiWmsMessageClass:
+ * @QMI_WMS_MESSAGE_CLASS_0: Class 0.
+ * @QMI_WMS_MESSAGE_CLASS_1: Class 1.
+ * @QMI_WMS_MESSAGE_CLASS_2: Class 2.
+ * @QMI_WMS_MESSAGE_CLASS_3: Class 3.
+ * @QMI_WMS_MESSAGE_CLASS_NONE: Class none.
+ * @QMI_WMS_MESSAGE_CLASS_CDMA: Class CDMA.
+ *
+ * Message class.
+ */
+typedef enum {
+ QMI_WMS_MESSAGE_CLASS_0 = 0x00,
+ QMI_WMS_MESSAGE_CLASS_1 = 0x01,
+ QMI_WMS_MESSAGE_CLASS_2 = 0x02,
+ QMI_WMS_MESSAGE_CLASS_3 = 0x03,
+ QMI_WMS_MESSAGE_CLASS_NONE = 0x04,
+ QMI_WMS_MESSAGE_CLASS_CDMA = 0x05
+} QmiWmsMessageClass;
+
+/**
+ * QmiWmsReceiptAction:
+ * @QMI_WMS_RECEIPT_ACTION_DISCARD: Discard message.
+ * @QMI_WMS_RECEIPT_ACTION_STORE_AND_NOTIFY: Store and notify to client.
+ * @QMI_WMS_RECEIPT_ACTION_TRANSFER_ONLY: Notify to client, which should send back ACK.
+ * @QMI_WMS_RECEIPT_ACTION_TRANSFER_AND_ACK: Notify to client and send back ACK.
+ *
+ * Action to perform when a message is received.
+ */
+typedef enum {
+ QMI_WMS_RECEIPT_ACTION_DISCARD = 0x00,
+ QMI_WMS_RECEIPT_ACTION_STORE_AND_NOTIFY = 0x01,
+ QMI_WMS_RECEIPT_ACTION_TRANSFER_ONLY = 0x02,
+ QMI_WMS_RECEIPT_ACTION_TRANSFER_AND_ACK = 0x03
+} QmiWmsReceiptAction;
+
+/**
+ * QmiWmsTransferIndication:
+ * @QMI_WMS_TRANSFER_INDICATION_CLIENT: Status reports transferred to the client.
+ *
+ * Transfer indication actions.
+ */
+typedef enum {
+ QMI_WMS_TRANSFER_INDICATION_CLIENT = 0x01
+} QmiWmsTransferIndication;
+
#endif /* _LIBQMI_GLIB_QMI_ENUMS_WMS_H_ */