summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAleksander Morgado <aleksander@aleksander.es>2022-02-22 22:51:39 +0100
committerAleksander Morgado <aleksander@aleksander.es>2022-02-26 23:10:21 +0100
commit9156c6cb901ca7973c9e54d841fb8a69d0e22d5e (patch)
treecb44c66ede37a052f54a0438c9ca684925942a74
parentfae9829477adbbce1b42c438a8c233990ee385e3 (diff)
downloadlibqmi-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.py2
-rw-r--r--build-aux/qmi-codegen/FieldResult.py8
-rw-r--r--data/qmi-common.json6
-rw-r--r--data/qmi-service-wds.json16
-rw-r--r--data/qmi-service-wms.json36
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" } ] } ] },