diff options
author | Aleksander Morgado <aleksander@lanedo.com> | 2012-09-04 11:47:09 +0200 |
---|---|---|
committer | Aleksander Morgado <aleksander@lanedo.com> | 2012-09-06 19:53:02 +0200 |
commit | 279dcc8f09d2c63509a341d43e8aef943cbb25d5 (patch) | |
tree | f4e59ee1720d4841f882702e91ffa0575fec0b71 | |
parent | 2e0b20b4be5d72fca545336b876757002c1b8c6f (diff) |
wms: implement "Set Routes" request/response
-rw-r--r-- | data/qmi-service-wms.json | 36 | ||||
-rw-r--r-- | libqmi-glib/qmi-enums-wms.h | 65 |
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_ */ |