diff options
author | Aleksander Morgado <aleksander@aleksander.es> | 2022-02-22 22:51:39 +0100 |
---|---|---|
committer | Aleksander Morgado <aleksander@aleksander.es> | 2022-02-26 23:10:21 +0100 |
commit | 9156c6cb901ca7973c9e54d841fb8a69d0e22d5e (patch) | |
tree | cb44c66ede37a052f54a0438c9ca684925942a74 | |
parent | fae9829477adbbce1b42c438a8c233990ee385e3 (diff) | |
download | libqmi-9156c6cb901ca7973c9e54d841fb8a69d0e22d5e.tar.gz |
qmi-codegen: skip the need of the intermediate QmiMessageResult struct
We can just have a sequence of variables in the Result TLV, no need
for a full new type.
-rw-r--r-- | build-aux/qmi-codegen/Container.py | 2 | ||||
-rw-r--r-- | build-aux/qmi-codegen/FieldResult.py | 8 | ||||
-rw-r--r-- | data/qmi-common.json | 6 | ||||
-rw-r--r-- | data/qmi-service-wds.json | 16 | ||||
-rw-r--r-- | data/qmi-service-wms.json | 36 |
5 files changed, 34 insertions, 34 deletions
diff --git a/build-aux/qmi-codegen/Container.py b/build-aux/qmi-codegen/Container.py index 6f16eda7..06cb4c71 100644 --- a/build-aux/qmi-codegen/Container.py +++ b/build-aux/qmi-codegen/Container.py @@ -99,7 +99,7 @@ class Container: # Then, really parse each field for field_dictionary in sorted_dictionary: if field_dictionary['type'] == 'TLV': - if field_dictionary['format'] == 'struct' and \ + if field_dictionary['format'] == 'sequence' and \ field_dictionary['name'] == 'Result': self.fields.append(FieldResult(self.service, self.fullname, field_dictionary, common_objects_dictionary, container_type, static)) else: diff --git a/build-aux/qmi-codegen/FieldResult.py b/build-aux/qmi-codegen/FieldResult.py index ffc967f2..176e7462 100644 --- a/build-aux/qmi-codegen/FieldResult.py +++ b/build-aux/qmi-codegen/FieldResult.py @@ -92,7 +92,7 @@ class FieldResult(Field): ' return FALSE;\n' ' }\n' '\n' - ' if (self->${variable_name}.error_status == QMI_STATUS_SUCCESS) {\n' + ' if (self->${variable_name}_error_status == QMI_STATUS_SUCCESS) {\n' ' /* Operation succeeded */\n' ' return TRUE;\n' ' }\n' @@ -100,10 +100,10 @@ class FieldResult(Field): ' /* Report a QMI protocol error */\n' ' g_set_error (error,\n' ' QMI_PROTOCOL_ERROR,\n' - ' (QmiProtocolError) self->${variable_name}.error_code,\n' + ' (QmiProtocolError) self->${variable_name}_error_code,\n' ' "QMI protocol error (%u): \'%s\'",\n' - ' self->${variable_name}.error_code,\n' - ' qmi_protocol_error_get_string ((QmiProtocolError) self->${variable_name}.error_code));\n' + ' self->${variable_name}_error_code,\n' + ' qmi_protocol_error_get_string ((QmiProtocolError) self->${variable_name}_error_code));\n' ' return FALSE;\n' '}\n') cfile.write(string.Template(template).substitute(translations)) diff --git a/data/qmi-common.json b/data/qmi-common.json index 16c97240..ce750c21 100644 --- a/data/qmi-common.json +++ b/data/qmi-common.json @@ -4,7 +4,7 @@ "fullname" : "Qmi Message Result", "id" : "0x02", "type" : "TLV", - "format" : "struct", + "format" : "sequence", "contents" : [ { "name" : "Error Status", "format" : "guint16" }, { "name" : "Error Code", @@ -12,13 +12,13 @@ { "common-ref" : "Success", "type" : "prerequisite", - "field" : "Result.Error Status", + "field" : "Result Error Status", "operation" : "==", "value" : "QMI_STATUS_SUCCESS" }, { "common-ref" : "No Success", "type" : "prerequisite", - "field" : "Result.Error Status", + "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" } diff --git a/data/qmi-service-wds.json b/data/qmi-service-wds.json index 68042d37..57b25c46 100644 --- a/data/qmi-service-wds.json +++ b/data/qmi-service-wds.json @@ -24,10 +24,10 @@ "type" : "TLV", "format" : "guint16", "public-format" : "QmiWdsDsProfileError", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_EXTENDED_INTERNAL" } ] }, @@ -837,10 +837,10 @@ "since" : "1.0", "format" : "guint16", "public-format" : "QmiWdsCallEndReason", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_CALL_FAILED" } ] }, { "name" : "Verbose Call End Reason", @@ -853,10 +853,10 @@ "public-format" : "QmiWdsVerboseCallEndReasonType" }, { "name" : "Reason", "format" : "gint16" } ], - "prerequisites": [ { "field" : "Result.Error Status", + "prerequisites": [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_CALL_FAILED" } ] } ] }, @@ -1878,10 +1878,10 @@ "since" : "1.0", "format" : "gint8", "public-format" : "QmiWdsDataBearerTechnology", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_OUT_OF_CALL" } ] } ] }, diff --git a/data/qmi-service-wms.json b/data/qmi-service-wms.json index ea23cf7c..766dd047 100644 --- a/data/qmi-service-wms.json +++ b/data/qmi-service-wms.json @@ -190,10 +190,10 @@ "since" : "1.0", "format" : "guint16", "public-format" : "QmiWmsCdmaCauseCode", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] }, { "name" : "CDMA Error Class", @@ -202,10 +202,10 @@ "since" : "1.0", "format" : "guint8", "public-format" : "QmiWmsCdmaErrorClass", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] }, { "name" : "GSM WCDMA Cause Info", @@ -219,10 +219,10 @@ { "name" : "TP Cause", "format" : "guint8", "public-format" : "QmiWmsGsmUmtsTpCause" } ], - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] }, { "name" : "Message Delivery Failure Type", @@ -231,10 +231,10 @@ "since" : "1.0", "format" : "guint8", "public-format" : "QmiWmsMessageDeliveryFailureType", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] } ] }, @@ -550,10 +550,10 @@ "since" : "1.28", "format" : "guint8", "public-format" : "QmiWmsAckFailureCause", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_ACK_NOT_SENT" } ] } ] }, @@ -595,10 +595,10 @@ "since" : "1.0", "format" : "guint16", "public-format" : "QmiWmsCdmaCauseCode", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] }, { "name" : "CDMA Error Class", @@ -607,10 +607,10 @@ "since" : "1.0", "format" : "guint8", "public-format" : "QmiWmsCdmaErrorClass", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] }, { "name" : "GSM WCDMA Cause Info", @@ -624,10 +624,10 @@ { "name" : "TP Cause", "format" : "guint8", "public-format" : "QmiWmsGsmUmtsTpCause" } ], - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] }, { "name" : "Message Delivery Failure Type", @@ -636,10 +636,10 @@ "since" : "1.0", "format" : "guint8", "public-format" : "QmiWmsMessageDeliveryFailureType", - "prerequisites" : [ { "field" : "Result.Error Status", + "prerequisites" : [ { "field" : "Result Error Status", "operation" : "!=", "value" : "QMI_STATUS_SUCCESS" }, - { "field" : "Result.Error Code", + { "field" : "Result Error Code", "operation" : "==", "value" : "QMI_PROTOCOL_ERROR_WMS_CAUSE_CODE" } ] } ] }, |