aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore3
-rw-r--r--build-aux/qmi-codegen/Client.py84
-rw-r--r--build-aux/qmi-codegen/Container.py47
-rw-r--r--build-aux/qmi-codegen/Field.py29
-rw-r--r--build-aux/qmi-codegen/FieldResult.py21
-rw-r--r--build-aux/qmi-codegen/Message.py59
-rw-r--r--build-aux/qmi-codegen/MessageList.py22
-rw-r--r--build-aux/qmi-codegen/TypeFactory.py26
-rw-r--r--build-aux/qmi-codegen/Variable.py12
-rw-r--r--build-aux/qmi-codegen/VariableArray.py22
-rw-r--r--build-aux/qmi-codegen/VariableInteger.py15
-rw-r--r--build-aux/qmi-codegen/VariableSequence.py9
-rw-r--r--build-aux/qmi-codegen/VariableString.py23
-rw-r--r--build-aux/qmi-codegen/VariableStruct.py36
-rwxr-xr-xbuild-aux/qmi-codegen/qmi-codegen6
-rw-r--r--docs/reference/libqmi-glib/Makefile.am65
-rw-r--r--docs/reference/libqmi-glib/libqmi-glib-common.sections691
-rw-r--r--docs/reference/libqmi-glib/libqmi-glib-docs.xml142
-rw-r--r--libqmi-glib/generated/Makefile.am22
19 files changed, 1282 insertions, 52 deletions
diff --git a/.gitignore b/.gitignore
index 3a05cbc..a285a9f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -42,6 +42,7 @@ libqmi-glib/generated/.libs
libqmi-glib/generated/.deps
libqmi-glib/generated/*.c
libqmi-glib/generated/*.h
+libqmi-glib/generated/*.sections
libqmi-glib/test/.libs
libqmi-glib/test/.deps
@@ -68,8 +69,10 @@ docs/reference/libqmi-glib/libqmi-glib.interfaces
docs/reference/libqmi-glib/libqmi-glib.prerequisites
docs/reference/libqmi-glib/libqmi-glib.signals
docs/reference/libqmi-glib/libqmi-glib.types
+docs/reference/libqmi-glib/*.mstamp
docs/reference/libqmi-glib/*.stamp
docs/reference/libqmi-glib/*.txt
+docs/reference/libqmi-glib/*.bak
docs/reference/libqmi-glib/html
docs/reference/libqmi-glib/tmpl
docs/reference/libqmi-glib/xml
diff --git a/build-aux/qmi-codegen/Client.py b/build-aux/qmi-codegen/Client.py
index 9bab465..f2f92ee 100644
--- a/build-aux/qmi-codegen/Client.py
+++ b/build-aux/qmi-codegen/Client.py
@@ -34,11 +34,14 @@ class Client:
"""
def __init__(self, objects_dictionary):
self.name = None
+ self.service = None
# Loop items in the list, looking for the special 'Client' type
for object_dictionary in objects_dictionary:
if object_dictionary['type'] == 'Client':
self.name = object_dictionary['name']
+ elif object_dictionary['type'] == 'Service':
+ self.service = object_dictionary['name']
# We NEED the Client field
if self.name is None:
@@ -59,7 +62,9 @@ class Client:
translations = { 'underscore' : utils.build_underscore_name(self.name),
'no_prefix_underscore_upper' : string.upper(utils.build_underscore_name(self.name[4:])),
- 'camelcase' : utils.build_camelcase_name (self.name) }
+ 'camelcase' : utils.build_camelcase_name(self.name),
+ 'hyphened' : utils.build_dashed_name(self.name),
+ 'service' : string.upper(self.service) }
# Emit class header
template = (
@@ -73,12 +78,20 @@ class Client:
'typedef struct _${camelcase} ${camelcase};\n'
'typedef struct _${camelcase}Class ${camelcase}Class;\n'
'\n'
+ '/**\n'
+ ' * ${camelcase}:\n'
+ ' *\n'
+ ' * The #${camelcase} structure contains private data and should only be accessed\n'
+ ' * using the provided API.\n'
+ ' */\n'
'struct _${camelcase} {\n'
+ ' /*< private >*/\n'
' QmiClient parent;\n'
' gpointer priv_unused;\n'
'};\n'
'\n'
'struct _${camelcase}Class {\n'
+ ' /*< private >*/\n'
' QmiClientClass parent;\n'
'};\n'
'\n'
@@ -89,6 +102,14 @@ class Client:
# Emit class source
template = (
'\n'
+ '/**\n'
+ ' * SECTION: ${hyphened}\n'
+ ' * @title: ${camelcase}\n'
+ ' * @short_description: #QmiClient for the ${service} service.\n'
+ ' *\n'
+ ' * #QmiClient which handles operations in the ${service} service.\n'
+ ' */\n'
+ '\n'
'G_DEFINE_TYPE (${camelcase}, ${underscore}, QMI_TYPE_CLIENT);\n')
if has_indications:
@@ -177,11 +198,14 @@ class Client:
if message.type == 'Indication':
translations['signal_name'] = utils.build_dashed_name(message.name)
translations['signal_id'] = utils.build_underscore_uppercase_name(message.name)
+ translations['message_name'] = message.name
inner_template = ''
if message.output is not None and message.output.fields is not None:
# At least one field in the indication
translations['output_camelcase'] = utils.build_camelcase_name(message.output.fullname)
translations['bundle_type'] = 'QMI_TYPE_' + utils.remove_prefix(utils.build_underscore_uppercase_name(message.output.fullname), 'QMI_')
+ translations['service'] = string.upper(self.service)
+ translations['message_name_dashed'] = string.replace(message.name, ' ', '-')
inner_template += (
'\n'
' /**\n'
@@ -189,7 +213,7 @@ class Client:
' * @object: A #${camelcase}.\n'
' * @output: A #${output_camelcase}.\n'
' *\n'
- ' * The ::${signal_name} signal gets emitted when a \'${message_name}\' indication is received.\n'
+ ' * The ::${signal_name} signal gets emitted when a \'<link linkend=\"libqmi-glib-${service}-${message_name_dashed}.top_of_page\">${message_name}</link>\' indication is received.\n'
' */\n'
' signals[SIGNAL_${signal_id}] =\n'
' g_signal_new ("${signal_name}",\n'
@@ -242,6 +266,7 @@ class Client:
if message.type == 'Indication':
continue
+ translations['message_name'] = message.name
translations['message_underscore'] = utils.build_underscore_name(message.name)
translations['message_fullname_underscore'] = utils.build_underscore_name(message.fullname)
translations['input_camelcase'] = utils.build_camelcase_name(message.input.fullname)
@@ -252,9 +277,11 @@ class Client:
if message.input.fields is None:
input_arg_template = 'gpointer unused'
translations['input_var'] = 'NULL'
+ translations['input_doc'] = 'unused: %NULL. This message doesn\'t have any input bundle.'
else:
input_arg_template = '${input_camelcase} *input'
translations['input_var'] = 'input'
+ translations['input_doc'] = 'input: a #' + translations['input_camelcase'] + '.'
template = (
'\n'
'void ${underscore}_${message_underscore} (\n'
@@ -272,6 +299,16 @@ class Client:
template = (
'\n'
+ '/**\n'
+ ' * ${underscore}_${message_underscore}_finish:\n'
+ ' * @self: a #${camelcase}.\n'
+ ' * @res: the #GAsyncResult obtained from the #GAsyncReadyCallback passed to ${underscore}_${message_underscore}().\n'
+ ' * @error: Return location for error or %%NULL.\n'
+ ' *\n'
+ ' * Finishes an async operation started with ${underscore}_${message_underscore}().\n'
+ ' *\n'
+ ' * Returns: a #${output_camelcase}, or %%NULL if @error is set. The returned value should be freed with ${output_underscore}_unref().\n'
+ ' */\n'
'${output_camelcase} *\n'
'${underscore}_${message_underscore}_finish (\n'
' ${camelcase} *self,\n'
@@ -315,6 +352,21 @@ class Client:
' qmi_message_unref (reply);\n'
'}\n'
'\n'
+ '/**\n'
+ ' * ${underscore}_${message_underscore}:\n'
+ ' * @self: a #${camelcase}.\n'
+ ' * @${input_doc}\n'
+ ' * @timeout: maximum time to wait for the method to complete, in seconds.\n'
+ ' * @cancellable: a #GCancellable or %%NULL.\n'
+ ' * @callback: a #GAsyncReadyCallback to call when the request is satisfied.\n'
+ ' * @user_data: user data to pass to @callback.\n'
+ ' *\n'
+ ' * Asynchronously sends a ${message_name} request to the device.\n'
+ ' *\n'
+ ' * When the operation is finished, @callback will be invoked in the thread-default main loop of the thread you are calling this method from.\n'
+ ' *\n'
+ ' * You can then call ${underscore}_${message_underscore}_finish() to get the result of the operation.\n'
+ ' */\n'
'void\n'
'${underscore}_${message_underscore} (\n'
' ${camelcase} *self,\n'
@@ -367,3 +419,31 @@ class Client:
utils.add_separator(cfile, 'CLIENT', self.name);
self.__emit_class(hfile, cfile, message_list)
self.__emit_methods(hfile, cfile, message_list)
+
+
+ """
+ Emit the sections
+ """
+ def emit_sections(self, sfile):
+ translations = { 'underscore' : utils.build_underscore_name(self.name),
+ 'no_prefix_underscore_upper' : string.upper(utils.build_underscore_name(self.name[4:])),
+ 'camelcase' : utils.build_camelcase_name (self.name),
+ 'hyphened' : utils.build_dashed_name (self.name) }
+
+ template = (
+ '<SECTION>\n'
+ '<FILE>${hyphened}</FILE>\n'
+ '<TITLE>${camelcase}</TITLE>\n'
+ '${camelcase}\n'
+ '<SUBSECTION Standard>\n'
+ '${camelcase}Class\n'
+ 'QMI_TYPE_${no_prefix_underscore_upper}\n'
+ 'QMI_${no_prefix_underscore_upper}\n'
+ 'QMI_${no_prefix_underscore_upper}_CLASS\n'
+ 'QMI_IS_${no_prefix_underscore_upper}\n'
+ 'QMI_IS_${no_prefix_underscore_upper}_CLASS\n'
+ 'QMI_${no_prefix_underscore_upper}_GET_CLASS\n'
+ '${underscore}_get_type\n'
+ '</SECTION>\n'
+ '\n')
+ sfile.write(string.Template(template).substitute(translations))
diff --git a/build-aux/qmi-codegen/Container.py b/build-aux/qmi-codegen/Container.py
index 8342beb..f15e6b1 100644
--- a/build-aux/qmi-codegen/Container.py
+++ b/build-aux/qmi-codegen/Container.py
@@ -117,9 +117,15 @@ class Container:
# Emit types header
template = (
'\n'
+ '/**\n'
+ ' * ${camelcase}:\n'
+ ' *\n'
+ ' * The #${camelcase} structure contains private data and should only be accessed\n'
+ ' * using the provided API.\n'
+ ' */\n'
+ 'typedef struct _${camelcase} ${camelcase};\n'
'GType ${underscore}_get_type (void) G_GNUC_CONST;\n'
- '#define ${type_macro} (${underscore}_get_type ())\n'
- 'typedef struct _${camelcase} ${camelcase};\n')
+ '#define ${type_macro} (${underscore}_get_type ())\n')
hfile.write(string.Template(template).substitute(translations))
# Emit types source
@@ -281,3 +287,40 @@ class Container:
# Emit the container core
self.__emit_core(hfile, cfile, translations)
+
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ if self.fields is None:
+ return
+
+ translations = { 'name' : self.name,
+ 'camelcase' : utils.build_camelcase_name (self.fullname),
+ 'underscore' : utils.build_underscore_name (self.fullname),
+ 'type_macro' : 'QMI_TYPE_' + utils.remove_prefix(utils.build_underscore_uppercase_name(self.fullname), 'QMI_') }
+
+ # Standard
+ template = (
+ '${underscore}_get_type\n'
+ '${type_macro}\n')
+ sections['standard'] += string.Template(template).substitute(translations)
+
+ # Public types
+ template = (
+ '${camelcase}\n')
+ sections['public-types'] += string.Template(template).substitute(translations)
+
+ # Public methods
+ template = '<SUBSECTION ${camelcase}Methods>\n'
+ if self.readonly == False:
+ template += (
+ '${underscore}_new\n')
+ template += (
+ '${underscore}_ref\n'
+ '${underscore}_unref\n')
+ sections['public-methods'] += string.Template(template).substitute(translations)
+
+ for field in self.fields:
+ field.add_sections(sections)
diff --git a/build-aux/qmi-codegen/Field.py b/build-aux/qmi-codegen/Field.py
index 19657ff..1faff41 100644
--- a/build-aux/qmi-codegen/Field.py
+++ b/build-aux/qmi-codegen/Field.py
@@ -123,11 +123,11 @@ class Field:
' * ${prefix_underscore}_get_${underscore}:\n'
' * @self: a #${prefix_camelcase}.\n'
'${variable_getter_doc}'
- ' * @error: a #GError.\n'
+ ' * @error: Return location for error or %NULL.\n'
' *\n'
' * Get the \'${name}\' field from @self.\n'
' *\n'
- ' * Returns: #TRUE if the field is found, #FALSE otherwise.\n'
+ ' * Returns: %TRUE if the field is found, %FALSE otherwise.\n'
' */\n'
'gboolean\n'
'${prefix_underscore}_get_${underscore} (\n'
@@ -186,11 +186,11 @@ class Field:
' * ${prefix_underscore}_set_${underscore}:\n'
' * @self: a #${prefix_camelcase}.\n'
'${variable_setter_doc}'
- ' * @error: a #GError.\n'
+ ' * @error: Return location for error or %NULL.\n'
' *\n'
' * Set the \'${name}\' field in the message.\n'
' *\n'
- ' * Returns: #TRUE if @value was successfully set, #FALSE otherwise.\n'
+ ' * Returns: %TRUE if @value was successfully set, %FALSE otherwise.\n'
' */\n'
'gboolean\n'
'${prefix_underscore}_set_${underscore} (\n'
@@ -357,3 +357,24 @@ class Field:
' return NULL;\n'
'}\n')
f.write(string.Template(template).substitute(translations))
+
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ translations = { 'underscore' : utils.build_underscore_name(self.name),
+ 'prefix_camelcase' : utils.build_camelcase_name(self.prefix),
+ 'prefix_underscore' : utils.build_underscore_name(self.prefix) }
+
+ if TypeFactory.is_section_emitted(self.fullname) is False:
+ TypeFactory.set_section_emitted(self.fullname)
+ self.variable.add_sections(sections)
+
+ # Public methods
+ template = (
+ '${prefix_underscore}_get_${underscore}\n')
+ if self.container_type == 'Input':
+ template += (
+ '${prefix_underscore}_set_${underscore}\n')
+ sections['public-methods'] += string.Template(template).substitute(translations)
diff --git a/build-aux/qmi-codegen/FieldResult.py b/build-aux/qmi-codegen/FieldResult.py
index fb8d521..c249492 100644
--- a/build-aux/qmi-codegen/FieldResult.py
+++ b/build-aux/qmi-codegen/FieldResult.py
@@ -64,11 +64,11 @@ class FieldResult(Field):
'/**\n'
' * ${prefix_underscore}_get_result:\n'
' * @self: a ${prefix_camelcase}.\n'
- ' * @error: a #GError.\n'
+ ' * @error: Return location for error or %NULL.\n'
' *\n'
' * Get the result of the QMI operation.\n'
' *\n'
- ' * Returns: #TRUE if the QMI operation succeeded, #FALSE if @error is set.\n'
+ ' * Returns: %TRUE if the QMI operation succeeded, %FALSE if @error is set.\n'
' */\n'
'gboolean\n'
'${prefix_underscore}_get_result (\n'
@@ -159,3 +159,20 @@ class FieldResult(Field):
' return NULL;\n'
'}\n')
f.write(string.Template(template).substitute(translations))
+
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ translations = { 'underscore' : utils.build_underscore_name(self.name),
+ 'prefix_camelcase' : utils.build_camelcase_name(self.prefix),
+ 'prefix_underscore' : utils.build_underscore_name(self.prefix) }
+
+ # Public methods
+ template = (
+ '${prefix_underscore}_get_${underscore}\n')
+ if self.container_type == 'Input':
+ template += (
+ '${prefix_underscore}_set_${underscore}\n')
+ sections['public-methods'] += string.Template(template).substitute(translations)
diff --git a/build-aux/qmi-codegen/Message.py b/build-aux/qmi-codegen/Message.py
index 08d0b36..25e6adb 100644
--- a/build-aux/qmi-codegen/Message.py
+++ b/build-aux/qmi-codegen/Message.py
@@ -206,7 +206,7 @@ class Message:
'/**\n'
' * ${underscore}_${type}_parse:\n'
' * @message: a #QmiMessage ${type}.\n'
- ' * @error: a #GError.\n'
+ ' * @error: Return location for error or %%NULL.\n'
' *\n'
' * Parse the \'${name}\' ${type}.\n'
' *\n'
@@ -424,3 +424,60 @@ class Message:
hfile.write('\n/* --- Printable -- */\n');
cfile.write('\n/* --- Printable -- */\n');
self.__emit_get_printable(hfile, cfile)
+
+ """
+ Emit the sections
+ """
+ def emit_sections(self, sfile):
+
+ translations = { 'hyphened' : utils.build_dashed_name (self.fullname),
+ 'fullname_underscore' : utils.build_underscore_name(self.fullname),
+ 'camelcase' : utils.build_camelcase_name (self.fullname),
+ 'service' : utils.build_underscore_name (self.service),
+ 'name_underscore' : utils.build_underscore_name (self.name),
+ 'fullname' : self.service + ' ' + self.name,
+ 'type' : 'response' if self.type == 'Message' else 'indication' }
+
+ sections = { 'public-types' : '',
+ 'public-methods' : '',
+ 'standard' : '',
+ 'private' : '' }
+
+ if self.input:
+ self.input.add_sections (sections)
+ self.output.add_sections (sections)
+
+ if self.type == 'Message':
+ template = (
+ '<SUBSECTION ${camelcase}ClientMethods>\n'
+ 'qmi_client_${service}_${name_underscore}\n'
+ 'qmi_client_${service}_${name_underscore}_finish\n')
+ sections['public-methods'] += string.Template(template).substitute(translations)
+
+ translations['public_types'] = sections['public-types']
+ translations['public_methods'] = sections['public-methods']
+ translations['standard'] = sections['standard']
+ translations['private'] = sections['private']
+
+ template = (
+ '<SECTION>\n'
+ '<FILE>${hyphened}</FILE>\n'
+ '<TITLE>${fullname}</TITLE>\n'
+ '${public_types}'
+ '${public_methods}'
+ '<SUBSECTION Private>\n'
+ '${private}')
+
+ if self.input:
+ template += '${fullname_underscore}_request_create\n'
+
+ if self.output.fields is not None:
+ template += (
+ '${fullname_underscore}_${type}_parse\n')
+
+ template += (
+ '<SUBSECTION Standard>\n'
+ '${standard}'
+ '</SECTION>\n'
+ '\n')
+ sfile.write(string.Template(template).substitute(translations))
diff --git a/build-aux/qmi-codegen/MessageList.py b/build-aux/qmi-codegen/MessageList.py
index 9cd057c..7d3802d 100644
--- a/build-aux/qmi-codegen/MessageList.py
+++ b/build-aux/qmi-codegen/MessageList.py
@@ -229,3 +229,25 @@ class MessageList:
utils.add_separator(cfile, 'Service-specific printable', self.service);
self.__emit_get_printable(hfile, cfile)
self.__emit_get_version_introduced(hfile, cfile)
+
+ """
+ Emit the sections
+ """
+ def emit_sections(self, sfile):
+ # Emit all message sections
+ for message in self.list:
+ message.emit_sections(sfile)
+
+ translations = { 'hyphened' : utils.build_dashed_name (self.service + 'Private'),
+ 'service' : utils.build_underscore_name (self.service) }
+
+ # Emit dummy section for service-specific private methods
+ template = (
+ '<SECTION>\n'
+ '<FILE>${hyphened}</FILE>\n'
+ '<SUBSECTION Private>\n'
+ 'qmi_message_${service}_get_printable\n'
+ 'qmi_message_${service}_get_version_introduced\n'
+ '</SECTION>\n'
+ '\n')
+ sfile.write(string.Template(template).substitute(translations))
diff --git a/build-aux/qmi-codegen/TypeFactory.py b/build-aux/qmi-codegen/TypeFactory.py
index 302b666..da1a185 100644
--- a/build-aux/qmi-codegen/TypeFactory.py
+++ b/build-aux/qmi-codegen/TypeFactory.py
@@ -71,3 +71,29 @@ def set_get_printable_emitted(type_name):
else:
emitted_get_printable.append(type_name)
return True
+
+
+"""
+List to keep track of sections already emitted to the source/header files.
+"""
+emitted_sections = []
+
+"""
+Checks whether a given section has already been emitted.
+"""
+def is_section_emitted(section_name):
+ for i in emitted_sections:
+ if i == section_name:
+ return True
+ else:
+ return False
+
+"""
+Sets the given section as already emitted.
+"""
+def set_section_emitted(section_name):
+ if is_section_emitted(section_name):
+ return False
+ else:
+ emitted_sections.append(section_name)
+ return True
diff --git a/build-aux/qmi-codegen/Variable.py b/build-aux/qmi-codegen/Variable.py
index 8232e48..6eb65d6 100644
--- a/build-aux/qmi-codegen/Variable.py
+++ b/build-aux/qmi-codegen/Variable.py
@@ -125,7 +125,19 @@ class Variable:
return ''
"""
+ Documentation for the struct field
+ """
+ def build_struct_field_documentation(self, line_prefix, variable_name):
+ return ''
+
+ """
Emits the code to dispose the variable.
"""
def build_dispose(self, line_prefix, variable_name):
return ''
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ pass
diff --git a/build-aux/qmi-codegen/VariableArray.py b/build-aux/qmi-codegen/VariableArray.py
index f5bc65f..d582a6a 100644
--- a/build-aux/qmi-codegen/VariableArray.py
+++ b/build-aux/qmi-codegen/VariableArray.py
@@ -318,7 +318,7 @@ class VariableArray(Variable):
'name' : variable_name }
template = (
- '${lp}@${name}: a placeholder for the output #GArray of #${public_array_element_format} elements, or #NULL if not required. Do not free it, it is owned by @self.\n')
+ '${lp}@${name}: a placeholder for the output #GArray of #${public_array_element_format} elements, or %NULL if not required. Do not free it, it is owned by @self.\n')
return string.Template(template).substitute(translations)
@@ -382,6 +382,19 @@ class VariableArray(Variable):
"""
+ Documentation for the struct field
+ """
+ def build_struct_field_documentation(self, line_prefix, variable_name):
+ translations = { 'lp' : line_prefix,
+ 'public_array_element_format' : self.array_element.public_format,
+ 'name' : variable_name }
+
+ template = (
+ '${lp}@${name}: a #GArray of #${public_array_element_format} elements.\n')
+ return string.Template(template).substitute(translations)
+
+
+ """
Dispose the array just with an unref
"""
def build_dispose(self, line_prefix, variable_name):
@@ -392,3 +405,10 @@ class VariableArray(Variable):
'${lp}if (${variable_name})\n'
'${lp} g_array_unref (${variable_name});\n')
return string.Template(template).substitute(translations)
+
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ self.array_element.add_sections(sections)
diff --git a/build-aux/qmi-codegen/VariableInteger.py b/build-aux/qmi-codegen/VariableInteger.py
index 96642da..0bb2a2c 100644
--- a/build-aux/qmi-codegen/VariableInteger.py
+++ b/build-aux/qmi-codegen/VariableInteger.py
@@ -233,7 +233,7 @@ class VariableInteger(Variable):
'name' : variable_name }
template = (
- '${lp}@${name}: a placeholder for the output #${public_format}, or #NULL if not required.\n')
+ '${lp}@${name}: a placeholder for the output #${public_format}, or %NULL if not required.\n')
return string.Template(template).substitute(translations)
"""
@@ -298,3 +298,16 @@ class VariableInteger(Variable):
template = (
'${lp}${to} = ${cast_ini}${from}${cast_end};\n')
return string.Template(template).substitute(translations)
+
+
+ """
+ Documentation for the struct field
+ """
+ def build_struct_field_documentation(self, line_prefix, variable_name):
+ translations = { 'lp' : line_prefix,
+ 'public_format' : self.public_format,
+ 'name' : variable_name }
+
+ template = (
+ '${lp}@${name}: a #${public_format}.\n')
+ return string.Template(template).substitute(translations)
diff --git a/build-aux/qmi-codegen/VariableSequence.py b/build-aux/qmi-codegen/VariableSequence.py
index 6e6777a..07b3ba4 100644
--- a/build-aux/qmi-codegen/VariableSequence.py
+++ b/build-aux/qmi-codegen/VariableSequence.py
@@ -204,3 +204,12 @@ class VariableSequence(Variable):
for member in self.members:
built += member['object'].build_dispose(line_prefix, variable_name + '_' + member['name'])
return built
+
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ # Add sections for each member
+ for member in self.members:
+ member['object'].add_sections(sections)
diff --git a/build-aux/qmi-codegen/VariableString.py b/build-aux/qmi-codegen/VariableString.py
index 7e977c2..c6acbe0 100644
--- a/build-aux/qmi-codegen/VariableString.py
+++ b/build-aux/qmi-codegen/VariableString.py
@@ -219,7 +219,7 @@ class VariableString(Variable):
'name' : variable_name }
template = (
- '${lp}@${name}: a placeholder for the output constant string, or #NULL if not required.\n')
+ '${lp}@${name}: a placeholder for the output constant string, or %NULL if not required.\n')
return string.Template(template).substitute(translations)
@@ -315,6 +315,27 @@ class VariableString(Variable):
"""
+ Documentation for the struct field
+ """
+ def build_struct_field_documentation(self, line_prefix, variable_name):
+ translations = { 'lp' : line_prefix,
+ 'name' : variable_name }
+
+ if self.is_fixed_size:
+ translations['fixed_size'] = self.fixed_size
+ template = (
+ '${lp}@${name}: a string of exactly ${fixed_size} characters.\n')
+ elif self.max_size != '':
+ translations['max_size'] = self.max_size
+ template = (
+ '${lp}@${name}: a string with a maximum length of ${max_size} characters.\n')
+ else:
+ template = (
+ '${lp}@${name}: a string.\n')
+ return string.Template(template).substitute(translations)
+
+
+ """
Dispose the string
"""
def build_dispose(self, line_prefix, variable_name):
diff --git a/build-aux/qmi-codegen/VariableStruct.py b/build-aux/qmi-codegen/VariableStruct.py
index 5b582b2..c22d9c2 100644
--- a/build-aux/qmi-codegen/VariableStruct.py
+++ b/build-aux/qmi-codegen/VariableStruct.py
@@ -67,6 +67,16 @@ class VariableStruct(Variable):
translations = { 'format' : self.public_format }
template = (
'\n'
+ '/**\n'
+ ' * ${format}:\n')
+ f.write(string.Template(template).substitute(translations))
+ for member in self.members:
+ f.write(member['object'].build_struct_field_documentation(' * ', member['name']))
+
+ template = (
+ ' *\n'
+ ' * A ${format} struct.\n'
+ ' */\n'
'typedef struct _${format} {\n')
f.write(string.Template(template).substitute(translations))
@@ -173,7 +183,7 @@ class VariableStruct(Variable):
'name' : variable_name }
template = (
- '${lp}@${name}: a placeholder for the output constant #${format}, or #NULL if not required.\n')
+ '${lp}@${name}: a placeholder for the output constant #${format}, or %NULL if not required.\n')
return string.Template(template).substitute(translations)
@@ -235,6 +245,19 @@ class VariableStruct(Variable):
"""
+ Documentation for the struct field
+ """
+ def build_struct_field_documentation(self, line_prefix, variable_name):
+ translations = { 'lp' : line_prefix,
+ 'format' : self.public_format,
+ 'name' : variable_name }
+
+ template = (
+ '${lp}@${name}: a #${format} struct.\n')
+ return string.Template(template).substitute(translations)
+
+
+ """
Disposing a struct is just about disposing each of the struct fields one by
one.
"""
@@ -243,3 +266,14 @@ class VariableStruct(Variable):
for member in self.members:
built += member['object'].build_dispose(line_prefix, variable_name + '.' + member['name'])
return built
+
+
+ """
+ Add sections
+ """
+ def add_sections(self, sections):
+ # Add sections for each member
+ for member in self.members:
+ member['object'].add_sections(sections)
+
+ sections['public-types'] += self.public_format + '\n'
diff --git a/build-aux/qmi-codegen/qmi-codegen b/build-aux/qmi-codegen/qmi-codegen
index a25c7f0..38973a2 100755
--- a/build-aux/qmi-codegen/qmi-codegen
+++ b/build-aux/qmi-codegen/qmi-codegen
@@ -48,6 +48,7 @@ def codegen_main():
# Prepare output file names
output_file_c = open(opts.output + ".c", 'w')
output_file_h = open(opts.output + ".h", 'w')
+ output_file_sections = open(opts.output + ".sections", 'w')
# Load all common types
common_object_list_json = []
@@ -79,10 +80,15 @@ def codegen_main():
client = Client(object_list_json)
client.emit(output_file_h, output_file_c, message_list)
+ # Emit sections
+ client.emit_sections(output_file_sections)
+ message_list.emit_sections(output_file_sections)
+
utils.add_header_stop(output_file_h, os.path.basename(opts.output))
output_file_c.close()
output_file_h.close()
+ output_file_sections.close()
sys.exit(0)
diff --git a/docs/reference/libqmi-glib/Makefile.am b/docs/reference/libqmi-glib/Makefile.am
index 7d0ec26..20769bb 100644
--- a/docs/reference/libqmi-glib/Makefile.am
+++ b/docs/reference/libqmi-glib/Makefile.am
@@ -1,22 +1,46 @@
+
# The name of the module.
DOC_MODULE = libqmi-glib
# The top-level SGML file.
DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml
+# Sections file building
+ALL_SECTIONS = \
+ $(srcdir)/libqmi-glib-common.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-ctl.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-dms.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-nas.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-wds.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-wms.sections \
+ $(top_builddir)/libqmi-glib/generated/qmi-pds.sections
+
+$(DOC_MODULE)-sections.mstamp: $(ALL_SECTIONS)
+ $(AM_V_GEN) \
+ rm -f $(DOC_MODULE)-sections.txt && \
+ cat $(ALL_SECTIONS) > $(DOC_MODULE)-sections.txt && \
+ touch $(DOC_MODULE)-sections.mstamp
+
+BUILT_SOURCES = $(DOC_MODULE)-sections.mstamp
+
# Extra options to supply to gtkdoc-scan
-SCAN_OPTIONS =
+SCAN_OPTIONS = --rebuild-types
# The directory containing the source code.
DOC_SOURCE_DIR = \
- $(top_srcdir)/libqmi-glib
+ $(top_srcdir)/libqmi-glib \
+ $(top_builddir)/libqmi-glib/generated
-HFILE_GLOB =
-CFILE_GLOB =
+# Used for dependencies
+HFILE_GLOB = \
+ $(top_srcdir)/libqmi-glib/*.h \
+ $(top_builddir)/libqmi-glib/generated/*.h
+CFILE_GLOB = \
+ $(top_srcdir)/libqmi-glib/*.c \
+ $(top_builddir)/libqmi-glib/generated/*.c
# Headers to ignore
-IGNORE_HFILES = \
- $(NULL)
+IGNORE_HFILES =
# CFLAGS and LDFLAGS for compiling scan program. Only needed
# if $(DOC_MODULE).types is non-empty.
@@ -24,32 +48,21 @@ INCLUDES = \
-I$(srcdir) \
-I$(top_srcdir) \
-I$(top_builddir) \
- $(LIBQMI_GLIB_CFLAGS) \
- $(NULL)
+ $(LIBQMI_GLIB_CFLAGS)
GTKDOC_LIBS = \
$(LIBQMI_GLIB_LIBS) \
- $(top_builddir)/libqmi-glib/libqmi-glib.la \
- $(NULL)
+ $(top_builddir)/libqmi-glib/libqmi-glib.la
# Extra options to supply to gtkdoc-mkdb
MKDB_OPTIONS = --output-format=xml --sgml-mode --name-space=qmi
-# Images to copy into HTML directory
-HTML_IMAGES = \
- $(NULL)
+# Extra SGML files that are included by $(DOC_MAIN_SGML_FILE)
+content_files = version.xml
-# Note that PNG files are also added in content_files so that
-# the documentation is not built before the PNGs.
-content_files = \
- $(HTML_IMAGES) \
- $(NULL)
-
-expand_content_files = \
- $(NULL)
+expand_content_files =
-extra_files = \
- $(NULL)
+extra_files =
if ENABLE_GTK_DOC
include $(top_srcdir)/gtk-doc.make
@@ -59,6 +72,9 @@ CLEANFILES =
endif
EXTRA_DIST += \
+ libqmi-glib-common.sections \
+ $(DOC_MODULE)-sections.txt \
+ $(DOC_MODULE)-sections.mstamp \
version.xml.in \
$(DIAGRAMS) \
$(NULL)
@@ -71,13 +87,14 @@ CLEANFILES += \
$(DOC_MODULE)-undocumented.txt \
$(DOC_MODULE)-overrides.txt \
$(DOC_MODULE)-unused.txt \
- $(DOC_MODULE)-sections.txt \
$(DOC_MODULE).args \
$(DOC_MODULE).hierarchy \
$(DOC_MODULE).interfaces \
$(DOC_MODULE).prerequisites \
$(DOC_MODULE).signals \
$(DOC_MODULE).types \
+ $(DOC_MODULE)-sections.txt \
+ $(DOC_MODULE)-sections.mstamp
*.stamp \
-rf xml html tmpl \
$(NULL)
diff --git a/docs/reference/libqmi-glib/libqmi-glib-common.sections b/docs/reference/libqmi-glib/libqmi-glib-common.sections
new file mode 100644
index 0000000..0bce0d7
--- /dev/null
+++ b/docs/reference/libqmi-glib/libqmi-glib-common.sections
@@ -0,0 +1,691 @@
+<SECTION>
+<FILE>qmi-client</FILE>
+<TITLE>QmiClient</TITLE>
+QMI_CID_NONE
+QMI_CID_BROADCAST
+QMI_CLIENT_DEVICE
+QMI_CLIENT_SERVICE
+QMI_CLIENT_CID
+QMI_CLIENT_VERSION_MAJOR
+QMI_CLIENT_VERSION_MINOR
+QmiClient
+QmiClientClass
+qmi_client_get_device
+qmi_client_peek_device
+qmi_client_get_service
+qmi_client_get_cid
+qmi_client_get_version
+qmi_client_check_version
+qmi_client_get_next_transaction_id
+qmi_client_process_indication
+<SUBSECTION Standard>
+QMI_CLIENT
+QMI_CLIENT_CLASS
+QMI_CLIENT_GET_CLASS
+QMI_IS_CLIENT
+QMI_IS_CLIENT_CLASS
+QMI_TYPE_CLIENT
+QmiClientPrivate
+qmi_client_get_type
+</SECTION>
+
+<SECTION>
+<FILE>qmi-device</FILE>
+<TITLE>QmiDevice</TITLE>
+QMI_DEVICE_FILE
+QMI_DEVICE_CLIENT_CTL
+QmiDevice
+QmiDeviceClass
+qmi_device_new
+qmi_device_new_finish
+qmi_device_get_file
+qmi_device_peek_file
+qmi_device_get_path
+qmi_device_get_path_display
+qmi_device_is_open
+QmiDeviceOpenFlags
+qmi_device_open
+qmi_device_open_finish
+qmi_device_close
+qmi_device_allocate_client
+qmi_device_allocate_client_finish
+QmiDeviceReleaseClientFlags
+qmi_device_release_client
+qmi_device_release_client_finish
+qmi_device_set_instance_id
+qmi_device_set_instance_id_finish
+qmi_device_command
+qmi_device_command_finish
+<SUBSECTION Standard>
+QMI_DEVICE
+QMI_DEVICE_CLASS
+QMI_DEVICE_GET_CLASS
+QMI_IS_DEVICE
+QMI_IS_DEVICE_CLASS
+QMI_TYPE_DEVICE
+QmiDevicePrivate
+qmi_device_get_type
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enum-types</FILE>
+IS_ENUM
+qmi_service_get_string
+qmi_service_build_string_from_mask
+qmi_ctl_data_format_get_string
+qmi_ctl_data_format_build_string_from_mask
+IS_FLAGS
+qmi_ctl_data_link_protocol_get_string
+qmi_ctl_data_link_protocol_build_string_from_mask
+qmi_ctl_flag_get_string
+qmi_ctl_flag_build_string_from_mask
+qmi_service_flag_get_string
+qmi_service_flag_build_string_from_mask
+qmi_wds_ip_family_get_string
+qmi_wds_ip_family_build_string_from_mask
+qmi_wds_technology_preference_get_string
+qmi_wds_technology_preference_build_string_from_mask
+qmi_wds_extended_technology_preference_get_string
+qmi_wds_extended_technology_preference_build_string_from_mask
+qmi_wds_call_type_get_string
+qmi_wds_call_type_build_string_from_mask
+qmi_wds_call_end_reason_get_string
+qmi_wds_call_end_reason_build_string_from_mask
+qmi_wds_verbose_call_end_reason_type_get_string
+qmi_wds_verbose_call_end_reason_type_build_string_from_mask
+qmi_wds_verbose_call_end_reason_mip_get_string
+qmi_wds_verbose_call_end_reason_mip_build_string_from_mask
+qmi_wds_verbose_call_end_reason_internal_get_string
+qmi_wds_verbose_call_end_reason_internal_build_string_from_mask
+qmi_wds_verbose_call_end_reason_cm_get_string
+qmi_wds_verbose_call_end_reason_cm_build_string_from_mask
+qmi_wds_verbose_call_end_reason_3gpp_get_string
+qmi_wds_verbose_call_end_reason_3gpp_build_string_from_mask
+qmi_wds_verbose_call_end_reason_ppp_get_string
+qmi_wds_verbose_call_end_reason_ppp_build_string_from_mask
+qmi_wds_verbose_call_end_reason_ehrpd_get_string
+qmi_wds_verbose_call_end_reason_ehrpd_build_string_from_mask
+qmi_wds_verbose_call_end_reason_ipv6_get_string
+qmi_wds_verbose_call_end_reason_ipv6_build_string_from_mask
+qmi_wds_connection_status_get_string
+qmi_wds_connection_status_build_string_from_mask
+qmi_wds_data_bearer_technology_get_string
+qmi_wds_data_bearer_technology_build_string_from_mask
+qmi_wds_network_type_get_string
+qmi_wds_network_type_build_string_from_mask
+qmi_wds_rat_3gpp2_get_string
+qmi_wds_rat_3gpp2_build_string_from_mask
+qmi_wds_rat_3gpp_get_string
+qmi_wds_rat_3gpp_build_string_from_mask
+qmi_wds_so_cdma1x_get_string
+qmi_wds_so_cdma1x_build_string_from_mask
+qmi_wds_so_evdo_reva_get_string
+qmi_wds_so_evdo_reva_build_string_from_mask
+qmi_wds_get_current_settings_requested_settings_get_string
+qmi_wds_get_current_settings_requested_settings_build_string_from_mask
+qmi_wds_pdp_type_get_string
+qmi_wds_pdp_type_build_string_from_mask
+qmi_wds_traffic_class_get_string
+qmi_wds_traffic_class_build_string_from_mask
+qmi_wds_authentication_get_string
+qmi_wds_authentication_build_string_from_mask
+qmi_wds_profile_type_get_string
+qmi_wds_profile_type_build_string_from_mask
+qmi_dms_data_service_capability_get_string
+qmi_dms_data_service_capability_build_string_from_mask
+qmi_dms_sim_capability_get_string
+qmi_dms_sim_capability_build_string_from_mask
+qmi_dms_radio_interface_get_string
+qmi_dms_radio_interface_build_string_from_mask
+qmi_dms_power_state_get_string
+qmi_dms_power_state_build_string_from_mask
+qmi_dms_uim_pin_id_get_string
+qmi_dms_uim_pin_id_build_string_from_mask
+qmi_dms_uim_pin_status_get_string
+qmi_dms_uim_pin_status_build_string_from_mask
+qmi_dms_operating_mode_get_string
+qmi_dms_operating_mode_build_string_from_mask
+qmi_dms_offline_reason_get_string
+qmi_dms_offline_reason_build_string_from_mask
+qmi_dms_time_source_get_string
+qmi_dms_time_source_build_string_from_mask
+qmi_dms_activation_state_get_string
+qmi_dms_activation_state_build_string_from_mask
+qmi_dms_uim_facility_get_string
+qmi_dms_uim_facility_build_string_from_mask
+qmi_dms_uim_facility_state_get_string
+qmi_dms_uim_facility_state_build_string_from_mask
+qmi_dms_uim_state_get_string
+qmi_dms_uim_state_build_string_from_mask
+qmi_dms_time_reference_type_get_string
+qmi_dms_time_reference_type_build_string_from_mask
+qmi_dms_firmware_image_type_get_string
+qmi_dms_firmware_image_type_build_string_from_mask
+qmi_nas_radio_interface_get_string
+qmi_nas_radio_interface_build_string_from_mask
+qmi_nas_active_band_get_string
+qmi_nas_active_band_build_string_from_mask
+qmi_nas_network_service_domain_get_string
+qmi_nas_network_service_domain_build_string_from_mask
+qmi_nas_evdo_sinr_level_get_string
+qmi_nas_evdo_sinr_level_build_string_from_mask
+qmi_nas_signal_strength_request_get_string
+qmi_nas_signal_strength_request_build_string_from_mask
+qmi_nas_network_scan_type_get_string
+qmi_nas_network_scan_type_build_string_from_mask
+qmi_nas_network_status_get_string
+qmi_nas_network_status_build_string_from_mask
+qmi_nas_network_register_type_get_string
+qmi_nas_network_register_type_build_string_from_mask
+qmi_nas_registration_state_get_string
+qmi_nas_registration_state_build_string_from_mask
+qmi_nas_attach_state_get_string
+qmi_nas_attach_state_build_string_from_mask
+qmi_nas_network_type_get_string
+qmi_nas_network_type_build_string_from_mask
+qmi_nas_roaming_indicator_status_get_string
+qmi_nas_roaming_indicator_status_build_string_from_mask
+qmi_nas_data_capability_get_string
+qmi_nas_data_capability_build_string_from_mask
+qmi_nas_service_status_get_string
+qmi_nas_service_status_build_string_from_mask
+qmi_nas_hdr_personality_get_string
+qmi_nas_hdr_personality_build_string_from_mask
+qmi_nas_call_barring_status_get_string
+qmi_nas_call_barring_status_build_string_from_mask
+qmi_nas_network_description_display_get_string
+qmi_nas_network_description_display_build_string_from_mask
+qmi_nas_network_description_encoding_get_string
+qmi_nas_network_description_encoding_build_string_from_mask
+qmi_nas_radio_technology_preference_get_string
+qmi_nas_radio_technology_preference_build_string_from_mask
+qmi_nas_preference_duration_get_string
+qmi_nas_preference_duration_build_string_from_mask
+qmi_nas_rat_mode_preference_get_string
+qmi_nas_rat_mode_preference_build_string_from_mask
+qmi_nas_cdma_prl_preference_get_string
+qmi_nas_cdma_prl_preference_build_string_from_mask
+qmi_nas_roaming_preference_get_string
+qmi_nas_roaming_preference_build_string_from_mask
+qmi_nas_network_selection_preference_get_string
+qmi_nas_network_selection_preference_build_string_from_mask
+qmi_nas_change_duration_get_string
+qmi_nas_change_duration_build_string_from_mask
+qmi_nas_service_domain_preference_get_string
+qmi_nas_service_domain_preference_build_string_from_mask
+qmi_nas_gsm_wcdma_acquisition_order_preference_get_string
+qmi_nas_gsm_wcdma_acquisition_order_preference_build_string_from_mask
+qmi_nas_td_scdma_band_preference_get_string
+qmi_nas_td_scdma_band_preference_build_string_from_mask
+qmi_nas_roaming_status_get_string
+qmi_nas_roaming_status_build_string_from_mask
+qmi_nas_hdr_protocol_revision_get_string
+qmi_nas_hdr_protocol_revision_build_string_from_mask
+qmi_nas_wcdma_hs_service_get_string
+qmi_nas_wcdma_hs_service_build_string_from_mask
+qmi_nas_cell_broadcast_capability_get_string
+qmi_nas_cell_broadcast_capability_build_string_from_mask
+qmi_nas_sim_reject_state_get_string
+qmi_nas_sim_reject_state_build_string_from_mask
+qmi_wms_storage_type_get_string
+qmi_wms_storage_type_build_string_from_mask
+qmi_wms_ack_indicator_get_string
+qmi_wms_ack_indicator_build_string_from_mask
+qmi_wms_message_format_get_string
+qmi_wms_message_format_build_string_from_mask
+qmi_wms_message_mode_get_string
+qmi_wms_message_mode_build_string_from_mask
+qmi_wms_notification_type_get_string
+qmi_wms_notification_type_build_string_from_mask
+qmi_wms_cdma_service_option_get_string
+qmi_wms_cdma_service_option_build_string_from_mask
+qmi_wms_cdma_cause_code_get_string
+qmi_wms_cdma_cause_code_build_string_from_mask
+qmi_wms_cdma_error_class_get_string
+qmi_wms_cdma_error_class_build_string_from_mask
+qmi_wms_gsm_umts_rp_cause_get_string
+qmi_wms_gsm_umts_rp_cause_build_string_from_mask
+qmi_wms_gsm_umts_tp_cause_get_string
+qmi_wms_gsm_umts_tp_cause_build_string_from_mask
+qmi_wms_message_delivery_failure_type_get_string
+qmi_wms_message_delivery_failure_type_build_string_from_mask
+qmi_wms_message_tag_type_get_string
+qmi_wms_message_tag_type_build_string_from_mask
+qmi_wms_message_protocol_get_string
+qmi_wms_message_protocol_build_string_from_mask
+qmi_wms_message_type_get_string
+qmi_wms_message_type_build_string_from_mask
+qmi_wms_message_class_get_string
+qmi_wms_message_class_build_string_from_mask
+qmi_wms_receipt_action_get_string
+qmi_wms_receipt_action_build_string_from_mask
+qmi_wms_transfer_indication_get_string
+qmi_wms_transfer_indication_build_string_from_mask
+qmi_pds_operation_mode_get_string
+qmi_pds_operation_mode_build_string_from_mask
+qmi_pds_position_session_status_get_string
+qmi_pds_position_session_status_build_string_from_mask
+qmi_pds_data_valid_get_string
+qmi_pds_data_valid_build_string_from_mask
+qmi_pds_tracking_session_state_get_string
+qmi_pds_tracking_session_state_build_string_from_mask
+<SUBSECTION Standard>
+QMI_TYPE_CTL_DATA_FORMAT
+QMI_TYPE_CTL_DATA_LINK_PROTOCOL
+QMI_TYPE_CTL_FLAG
+QMI_TYPE_DMS_ACTIVATION_STATE
+QMI_TYPE_DMS_DATA_SERVICE_CAPABILITY
+QMI_TYPE_DMS_FIRMWARE_IMAGE_TYPE
+QMI_TYPE_DMS_OFFLINE_REASON
+QMI_TYPE_DMS_OPERATING_MODE
+QMI_TYPE_DMS_POWER_STATE
+QMI_TYPE_DMS_RADIO_INTERFACE
+QMI_TYPE_DMS_SIM_CAPABILITY
+QMI_TYPE_DMS_TIME_REFERENCE_TYPE
+QMI_TYPE_DMS_TIME_SOURCE
+QMI_TYPE_DMS_UIM_FACILITY
+QMI_TYPE_DMS_UIM_FACILITY_STATE
+QMI_TYPE_DMS_UIM_PIN_ID
+QMI_TYPE_DMS_UIM_PIN_STATUS
+QMI_TYPE_DMS_UIM_STATE
+QMI_TYPE_NAS_ACTIVE_BAND
+QMI_TYPE_NAS_ATTACH_STATE
+QMI_TYPE_NAS_CALL_BARRING_STATUS
+QMI_TYPE_NAS_CDMA_PRL_PREFERENCE
+QMI_TYPE_NAS_CELL_BROADCAST_CAPABILITY
+QMI_TYPE_NAS_CHANGE_DURATION
+QMI_TYPE_NAS_DATA_CAPABILITY
+QMI_TYPE_NAS_EVDO_SINR_LEVEL
+QMI_TYPE_NAS_GSM_WCDMA_ACQUISITION_ORDER_PREFERENCE
+QMI_TYPE_NAS_HDR_PERSONALITY
+QMI_TYPE_NAS_HDR_PROTOCOL_REVISION
+QMI_TYPE_NAS_NETWORK_DESCRIPTION_DISPLAY
+QMI_TYPE_NAS_NETWORK_DESCRIPTION_ENCODING
+QMI_TYPE_NAS_NETWORK_REGISTER_TYPE
+QMI_TYPE_NAS_NETWORK_SCAN_TYPE
+QMI_TYPE_NAS_NETWORK_SELECTION_PREFERENCE
+QMI_TYPE_NAS_NETWORK_SERVICE_DOMAIN
+QMI_TYPE_NAS_NETWORK_STATUS
+QMI_TYPE_NAS_NETWORK_TYPE
+QMI_TYPE_NAS_PREFERENCE_DURATION
+QMI_TYPE_NAS_RADIO_INTERFACE
+QMI_TYPE_NAS_RADIO_TECHNOLOGY_PREFERENCE
+QMI_TYPE_NAS_RAT_MODE_PREFERENCE
+QMI_TYPE_NAS_REGISTRATION_STATE
+QMI_TYPE_NAS_ROAMING_INDICATOR_STATUS
+QMI_TYPE_NAS_ROAMING_PREFERENCE
+QMI_TYPE_NAS_ROAMING_STATUS
+QMI_TYPE_NAS_SERVICE_DOMAIN_PREFERENCE
+QMI_TYPE_NAS_SERVICE_STATUS
+QMI_TYPE_NAS_SIGNAL_STRENGTH_REQUEST
+QMI_TYPE_NAS_SIM_REJECT_STATE
+QMI_TYPE_NAS_TD_SCDMA_BAND_PREFERENCE
+QMI_TYPE_NAS_WCDMA_HS_SERVICE
+QMI_TYPE_PDS_DATA_VALID
+QMI_TYPE_PDS_OPERATION_MODE
+QMI_TYPE_PDS_POSITION_SESSION_STATUS
+QMI_TYPE_PDS_TRACKING_SESSION_STATE
+QMI_TYPE_SERVICE
+QMI_TYPE_SERVICE_FLAG
+QMI_TYPE_WDS_AUTHENTICATION
+QMI_TYPE_WDS_CALL_END_REASON
+QMI_TYPE_WDS_CALL_TYPE
+QMI_TYPE_WDS_CONNECTION_STATUS
+QMI_TYPE_WDS_DATA_BEARER_TECHNOLOGY
+QMI_TYPE_WDS_EXTENDED_TECHNOLOGY_PREFERENCE
+QMI_TYPE_WDS_GET_CURRENT_SETTINGS_REQUESTED_SETTINGS
+QMI_TYPE_WDS_IP_FAMILY
+QMI_TYPE_WDS_NETWORK_TYPE
+QMI_TYPE_WDS_PDP_TYPE
+QMI_TYPE_WDS_PROFILE_TYPE
+QMI_TYPE_WDS_RAT_3GPP
+QMI_TYPE_WDS_RAT_3GPP2
+QMI_TYPE_WDS_SO_CDMA1X
+QMI_TYPE_WDS_SO_EVDO_REVA
+QMI_TYPE_WDS_TECHNOLOGY_PREFERENCE
+QMI_TYPE_WDS_TRAFFIC_CLASS
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_3GPP
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_CM
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_EHRPD
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_INTERNAL
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_IPV6
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_MIP
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_PPP
+QMI_TYPE_WDS_VERBOSE_CALL_END_REASON_TYPE
+QMI_TYPE_WMS_ACK_INDICATOR
+QMI_TYPE_WMS_CDMA_CAUSE_CODE
+QMI_TYPE_WMS_CDMA_ERROR_CLASS
+QMI_TYPE_WMS_CDMA_SERVICE_OPTION
+QMI_TYPE_WMS_GSM_UMTS_RP_CAUSE
+QMI_TYPE_WMS_GSM_UMTS_TP_CAUSE
+QMI_TYPE_WMS_MESSAGE_CLASS
+QMI_TYPE_WMS_MESSAGE_DELIVERY_FAILURE_TYPE
+QMI_TYPE_WMS_MESSAGE_FORMAT
+QMI_TYPE_WMS_MESSAGE_MODE
+QMI_TYPE_WMS_MESSAGE_PROTOCOL
+QMI_TYPE_WMS_MESSAGE_TAG_TYPE
+QMI_TYPE_WMS_MESSAGE_TYPE
+QMI_TYPE_WMS_NOTIFICATION_TYPE
+QMI_TYPE_WMS_RECEIPT_ACTION
+QMI_TYPE_WMS_STORAGE_TYPE
+QMI_TYPE_WMS_TRANSFER_INDICATION
+qmi_ctl_data_format_get_type
+qmi_ctl_data_link_protocol_get_type
+qmi_ctl_flag_get_type
+qmi_dms_activation_state_get_type
+qmi_dms_data_service_capability_get_type
+qmi_dms_firmware_image_type_get_type
+qmi_dms_offline_reason_get_type
+qmi_dms_operating_mode_get_type
+qmi_dms_power_state_get_type
+qmi_dms_radio_interface_get_type
+qmi_dms_sim_capability_get_type
+qmi_dms_time_reference_type_get_type
+qmi_dms_time_source_get_type
+qmi_dms_uim_facility_get_type
+qmi_dms_uim_facility_state_get_type
+qmi_dms_uim_pin_id_get_type
+qmi_dms_uim_pin_status_get_type
+qmi_dms_uim_state_get_type
+qmi_nas_active_band_get_type
+qmi_nas_attach_state_get_type
+qmi_nas_call_barring_status_get_type
+qmi_nas_cdma_prl_preference_get_type
+qmi_nas_cell_broadcast_capability_get_type
+qmi_nas_change_duration_get_type
+qmi_nas_data_capability_get_type
+qmi_nas_evdo_sinr_level_get_type
+qmi_nas_gsm_wcdma_acquisition_order_preference_get_type
+qmi_nas_hdr_personality_get_type
+qmi_nas_hdr_protocol_revision_get_type
+qmi_nas_network_description_display_get_type
+qmi_nas_network_description_encoding_get_type
+qmi_nas_network_register_type_get_type
+qmi_nas_network_scan_type_get_type
+qmi_nas_network_selection_preference_get_type
+qmi_nas_network_service_domain_get_type
+qmi_nas_network_status_get_type
+qmi_nas_network_type_get_type
+qmi_nas_preference_duration_get_type
+qmi_nas_radio_interface_get_type
+qmi_nas_radio_technology_preference_get_type
+qmi_nas_rat_mode_preference_get_type
+qmi_nas_registration_state_get_type
+qmi_nas_roaming_indicator_status_get_type
+qmi_nas_roaming_preference_get_type
+qmi_nas_roaming_status_get_type
+qmi_nas_service_domain_preference_get_type
+qmi_nas_service_status_get_type
+qmi_nas_signal_strength_request_get_type
+qmi_nas_sim_reject_state_get_type
+qmi_nas_td_scdma_band_preference_get_type
+qmi_nas_wcdma_hs_service_get_type
+qmi_pds_data_valid_get_type
+qmi_pds_operation_mode_get_type
+qmi_pds_position_session_status_get_type
+qmi_pds_tracking_session_state_get_type
+qmi_service_flag_get_type
+qmi_service_get_type
+qmi_wds_authentication_get_type
+qmi_wds_call_end_reason_get_type
+qmi_wds_call_type_get_type
+qmi_wds_connection_status_get_type
+qmi_wds_data_bearer_technology_get_type
+qmi_wds_extended_technology_preference_get_type
+qmi_wds_get_current_settings_requested_settings_get_type
+qmi_wds_ip_family_get_type
+qmi_wds_network_type_get_type
+qmi_wds_pdp_type_get_type
+qmi_wds_profile_type_get_type
+qmi_wds_rat_3gpp2_get_type
+qmi_wds_rat_3gpp_get_type
+qmi_wds_so_cdma1x_get_type
+qmi_wds_so_evdo_reva_get_type
+qmi_wds_technology_preference_get_type
+qmi_wds_traffic_class_get_type
+qmi_wds_verbose_call_end_reason_3gpp_get_type
+qmi_wds_verbose_call_end_reason_cm_get_type
+qmi_wds_verbose_call_end_reason_ehrpd_get_type
+qmi_wds_verbose_call_end_reason_internal_get_type
+qmi_wds_verbose_call_end_reason_ipv6_get_type
+qmi_wds_verbose_call_end_reason_mip_get_type
+qmi_wds_verbose_call_end_reason_ppp_get_type
+qmi_wds_verbose_call_end_reason_type_get_type
+qmi_wms_ack_indicator_get_type
+qmi_wms_cdma_cause_code_get_type
+qmi_wms_cdma_error_class_get_type
+qmi_wms_cdma_service_option_get_type
+qmi_wms_gsm_umts_rp_cause_get_type
+qmi_wms_gsm_umts_tp_cause_get_type
+qmi_wms_message_class_get_type
+qmi_wms_message_delivery_failure_type_get_type
+qmi_wms_message_format_get_type
+qmi_wms_message_mode_get_type
+qmi_wms_message_protocol_get_type
+qmi_wms_message_tag_type_get_type
+qmi_wms_message_type_get_type
+qmi_wms_notification_type_get_type
+qmi_wms_receipt_action_get_type
+qmi_wms_storage_type_get_type
+qmi_wms_transfer_indication_get_type
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enums</FILE>
+QmiService
+QmiCtlDataFormat
+QmiCtlDataLinkProtocol
+QmiCtlFlag
+QmiServiceFlag
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enums-dms</FILE>
+QmiDmsDataServiceCapability
+QmiDmsSimCapability
+QmiDmsRadioInterface
+QmiDmsPowerState
+QmiDmsUimPinId
+QmiDmsUimPinStatus
+QmiDmsOperatingMode
+QmiDmsOfflineReason
+QmiDmsTimeSource
+QmiDmsActivationState
+QmiDmsUimFacility
+QmiDmsUimFacilityState
+QmiDmsUimState
+QmiDmsTimeReferenceType
+QmiDmsFirmwareImageType
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enums-nas</FILE>
+QmiNasRadioInterface
+QmiNasActiveBand
+QmiNasNetworkServiceDomain
+QmiNasEvdoSinrLevel
+QmiNasSignalStrengthRequest
+QmiNasNetworkScanType
+QmiNasNetworkStatus
+QmiNasNetworkRegisterType
+QmiNasRegistrationState
+QmiNasAttachState
+QmiNasNetworkType
+QmiNasRoamingIndicatorStatus
+QmiNasDataCapability
+QmiNasServiceStatus
+QmiNasHdrPersonality
+QmiNasCallBarringStatus
+QmiNasNetworkDescriptionDisplay
+QmiNasNetworkDescriptionEncoding
+QmiNasRadioTechnologyPreference
+QmiNasPreferenceDuration
+QmiNasRatModePreference
+QmiNasCdmaPrlPreference
+QmiNasRoamingPreference
+QmiNasNetworkSelectionPreference
+QmiNasChangeDuration
+QmiNasServiceDomainPreference
+QmiNasGsmWcdmaAcquisitionOrderPreference
+QmiNasTdScdmaBandPreference
+QmiNasRoamingStatus
+QmiNasHdrProtocolRevision
+QmiNasWcdmaHsService
+QmiNasCellBroadcastCapability
+QmiNasSimRejectState
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enums-pds</FILE>
+QmiPdsOperationMode
+QmiPdsPositionSessionStatus
+QmiPdsDataValid
+QmiPdsTrackingSessionState
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enums-wds</FILE>
+QmiWdsIpFamily
+QmiWdsTechnologyPreference
+QmiWdsExtendedTechnologyPreference
+QmiWdsCallType
+QmiWdsCallEndReason
+QmiWdsVerboseCallEndReasonType
+qmi_wds_verbose_call_end_reason_get_string
+QmiWdsVerboseCallEndReasonMip
+QmiWdsVerboseCallEndReasonInternal
+QmiWdsVerboseCallEndReasonCm
+QmiWdsVerboseCallEndReason3gpp
+QmiWdsVerboseCallEndReasonPpp
+QmiWdsVerboseCallEndReasonEhrpd
+QmiWdsVerboseCallEndReasonIpv6
+QmiWdsConnectionStatus
+QmiWdsDataBearerTechnology
+QmiWdsNetworkType
+QmiWdsRat3gpp2
+QmiWdsRat3gpp
+QmiWdsSoCdma1x
+QmiWdsSoEvdoRevA
+QmiWdsGetCurrentSettingsRequestedSettings
+QmiWdsPdpType
+QmiWdsTrafficClass
+QmiWdsAuthentication
+QmiWdsProfileType
+</SECTION>
+
+<SECTION>
+<FILE>qmi-enums-wms</FILE>
+QmiWmsStorageType
+QmiWmsAckIndicator
+QmiWmsMessageFormat
+QmiWmsMessageMode
+QmiWmsNotificationType
+QmiWmsCdmaServiceOption
+QmiWmsCdmaCauseCode
+QmiWmsCdmaErrorClass
+QmiWmsGsmUmtsRpCause
+QmiWmsGsmUmtsTpCause
+QmiWmsMessageDeliveryFailureType
+QmiWmsMessageTagType
+QmiWmsMessageProtocol
+QmiWmsMessageType
+QmiWmsMessageClass
+QmiWmsReceiptAction
+QmiWmsTransferIndication
+</SECTION>
+
+<SECTION>
+<FILE>qmi-error-types</FILE>
+qmi_core_error_quark
+qmi_core_error_get_string
+qmi_protocol_error_quark
+qmi_protocol_error_get_string
+<SUBSECTION Standard>
+QMI_CORE_ERROR
+QMI_PROTOCOL_ERROR
+QMI_TYPE_CORE_ERROR
+QMI_TYPE_PROTOCOL_ERROR
+qmi_core_error_get_type
+qmi_protocol_error_get_type
+</SECTION>
+
+<SECTION>
+<FILE>qmi-errors</FILE>
+QMI_DBUS_ERROR_PREFIX
+QMI_CORE_ERROR_DBUS_PREFIX
+QMI_PROTOCOL_ERROR_DBUS_PREFIX
+QmiCoreError
+QmiProtocolError
+</SECTION>
+
+<SECTION>
+<FILE>qmi-flags64-dms</FILE>
+QmiDmsBandCapability
+QmiDmsLteBandCapability
+</SECTION>
+
+<SECTION>
+<FILE>qmi-flags64-nas</FILE>
+QmiNasBandPreference
+QmiNasLteBandPreference
+</SECTION>
+
+<SECTION>
+<FILE>qmi-flags64-types</FILE>
+qmi_dms_band_capability_build_string_from_mask
+qmi_dms_lte_band_capability_build_string_from_mask
+qmi_nas_band_preference_build_string_from_mask
+qmi_nas_lte_band_preference_build_string_from_mask
+</SECTION>
+
+<SECTION>
+<FILE>qmi-message</FILE>
+QMI_MESSAGE_QMUX_MARKER
+QmiMessage
+qmi_message_new
+qmi_message_new_from_raw
+qmi_message_ref
+qmi_message_unref
+qmi_message_is_response
+qmi_message_is_indication
+qmi_message_get_service
+qmi_message_get_client_id
+qmi_message_get_transaction_id
+qmi_message_get_message_id
+qmi_message_get_length
+qmi_message_get_raw
+qmi_message_get_version_introduced
+QmiMessageForeachRawTlvFn
+qmi_message_foreach_raw_tlv
+qmi_message_get_raw_tlv
+qmi_message_add_raw_tlv
+qmi_message_get_printable
+qmi_message_get_tlv_printable
+</SECTION>
+
+<SECTION>
+<FILE>qmi-utils</FILE>
+qmi_utils_str_hex
+qmi_utils_read_guint8_from_buffer
+qmi_utils_read_gint8_from_buffer
+qmi_utils_read_guint16_from_buffer
+qmi_utils_read_gint16_from_buffer
+qmi_utils_read_guint32_from_buffer
+qmi_utils_read_gint32_from_buffer
+qmi_utils_read_guint64_from_buffer
+qmi_utils_read_gint64_from_buffer
+qmi_utils_read_sized_guint_from_buffer
+qmi_utils_write_guint8_to_buffer
+qmi_utils_write_gint8_to_buffer
+qmi_utils_write_guint16_to_buffer
+qmi_utils_write_gint16_to_buffer
+qmi_utils_write_guint32_to_buffer
+qmi_utils_write_gint32_to_buffer
+qmi_utils_write_guint64_to_buffer
+qmi_utils_write_gint64_to_buffer
+qmi_utils_write_sized_guint_to_buffer
+qmi_utils_read_string_from_buffer
+qmi_utils_write_string_to_buffer
+qmi_utils_read_fixed_size_string_from_buffer
+qmi_utils_write_fixed_size_string_to_buffer
+</SECTION>
diff --git a/docs/reference/libqmi-glib/libqmi-glib-docs.xml b/docs/reference/libqmi-glib/libqmi-glib-docs.xml
index 02d5394..2c0d62d 100644
--- a/docs/reference/libqmi-glib/libqmi-glib-docs.xml
+++ b/docs/reference/libqmi-glib/libqmi-glib-docs.xml
@@ -52,39 +52,169 @@
<chapter>
<title>Control Service (CTL)</title>
- <xi:include href="xml/qmi-ctl.xml"/>
+ <xi:include href="xml/qmi-client-ctl.xml"/>
+ <xi:include href="xml/qmi-message-ctl-set-instance-id.xml"/>
+ <xi:include href="xml/qmi-message-ctl-get-version-info.xml"/>
+ <xi:include href="xml/qmi-message-ctl-allocate-cid.xml"/>
+ <xi:include href="xml/qmi-message-ctl-release-cid.xml"/>
+ <xi:include href="xml/qmi-message-ctl-set-data-format.xml"/>
+ <xi:include href="xml/qmi-message-ctl-sync.xml"/>
</chapter>
<chapter>
<title>Device Management Service (DMS)</title>
- <xi:include href="xml/qmi-dms.xml"/>
+ <xi:include href="xml/qmi-client-dms.xml"/>
<xi:include href="xml/qmi-enums-dms.xml"/>
<xi:include href="xml/qmi-flags64-dms.xml"/>
+ <section>
+ <title>DMS Indications</title>
+ <xi:include href="xml/qmi-indication-dms-event-report.xml"/>
+ </section>
+ <section>
+ <title>DMS Requests</title>
+ <xi:include href="xml/qmi-message-dms-reset.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-event-report.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-capabilities.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-manufacturer.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-model.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-revision.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-msisdn.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-ids.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-power-state.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-set-pin-protection.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-verify-pin.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-unblock-pin.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-change-pin.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-get-pin-status.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-hardware-revision.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-operating-mode.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-operating-mode.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-time.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-prl-version.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-activation-state.xml"/>
+ <xi:include href="xml/qmi-message-dms-activate-automatic.xml"/>
+ <xi:include href="xml/qmi-message-dms-activate-manual.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-user-lock-state.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-user-lock-state.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-user-lock-code.xml"/>
+ <xi:include href="xml/qmi-message-dms-read-user-data.xml"/>
+ <xi:include href="xml/qmi-message-dms-write-user-data.xml"/>
+ <xi:include href="xml/qmi-message-dms-read-eri-file.xml"/>
+ <xi:include href="xml/qmi-message-dms-restore-factory-defaults.xml"/>
+ <xi:include href="xml/qmi-message-dms-validate-service-programming-code.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-get-iccid.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-get-ck-status.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-set-ck-protection.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-unblock-ck.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-get-imsi.xml"/>
+ <xi:include href="xml/qmi-message-dms-uim-get-state.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-band-capabilities.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-factory-sku.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-firmware-preference.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-firmware-preference.xml"/>
+ <xi:include href="xml/qmi-message-dms-list-stored-images.xml"/>
+ <xi:include href="xml/qmi-message-dms-delete-stored-image.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-time.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-stored-image-info.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-alt-net-config.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-alt-net-config.xml"/>
+ <xi:include href="xml/qmi-message-dms-get-software-version.xml"/>
+ <xi:include href="xml/qmi-message-dms-set-service-programming-code.xml"/>
+ </section>
</chapter>
<chapter>
<title>Network Access Service (NAS)</title>
- <xi:include href="xml/qmi-nas.xml"/>
+ <xi:include href="xml/qmi-client-nas.xml"/>
<xi:include href="xml/qmi-enums-nas.xml"/>
<xi:include href="xml/qmi-flags64-nas.xml"/>
+ <section>
+ <title>NAS Indications</title>
+ <xi:include href="xml/qmi-indication-nas-event-report.xml"/>
+ <xi:include href="xml/qmi-indication-nas-serving-system.xml"/>
+ <xi:include href="xml/qmi-indication-nas-system-info.xml"/>
+ <xi:include href="xml/qmi-indication-nas-signal-info.xml"/>
+ </section>
+ <section>
+ <title>NAS Requests</title>
+ <xi:include href="xml/qmi-message-nas-reset.xml"/>
+ <xi:include href="xml/qmi-message-nas-set-event-report.xml"/>
+ <xi:include href="xml/qmi-message-nas-register-indications.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-signal-strength.xml"/>
+ <xi:include href="xml/qmi-message-nas-network-scan.xml"/>
+ <xi:include href="xml/qmi-message-nas-initiate-network-register.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-serving-system.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-home-network.xml"/>
+ <xi:include href="xml/qmi-message-nas-set-technology-preference.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-technology-preference.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-rf-band-information.xml"/>
+ <xi:include href="xml/qmi-message-nas-set-system-selection-preference.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-system-selection-preference.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-system-info.xml"/>
+ <xi:include href="xml/qmi-message-nas-get-signal-info.xml"/>
+ <xi:include href="xml/qmi-message-nas-config-signal-info.xml"/>
+ </section>
</chapter>
<chapter>
<title>Wireless Data Service (WDS)</title>
- <xi:include href="xml/qmi-wds.xml"/>
+ <xi:include href="xml/qmi-client-wds.xml"/>
<xi:include href="xml/qmi-enums-wds.xml"/>
+ <section>
+ <title>WDS Requests</title>
+ <xi:include href="xml/qmi-message-wds-reset.xml"/>
+ <xi:include href="xml/qmi-message-wds-start-network.xml"/>
+ <xi:include href="xml/qmi-message-wds-stop-network.xml"/>
+ <xi:include href="xml/qmi-message-wds-get-packet-service-status.xml"/>
+ <xi:include href="xml/qmi-message-wds-get-current-settings.xml"/>
+ <xi:include href="xml/qmi-message-wds-get-data-bearer-technology.xml"/>
+ <xi:include href="xml/qmi-message-wds-get-current-data-bearer-technology.xml"/>
+ <xi:include href="xml/qmi-message-wds-set-ip-family.xml"/>
+ </section>
</chapter>
<chapter>
<title>Wireless Messaging Service (WMS)</title>
- <xi:include href="xml/qmi-wms.xml"/>
+ <xi:include href="xml/qmi-client-wms.xml"/>
<xi:include href="xml/qmi-enums-wms.xml"/>
+ <section>
+ <title>WMS Indications</title>
+ <xi:include href="xml/qmi-indication-wms-event-report.xml"/>
+ </section>
+ <section>
+ <title>WMS Requests</title>
+ <xi:include href="xml/qmi-message-wms-reset.xml"/>
+ <xi:include href="xml/qmi-message-wms-set-event-report.xml"/>
+ <xi:include href="xml/qmi-message-wms-raw-send.xml"/>
+ <xi:include href="xml/qmi-message-wms-raw-write.xml"/>
+ <xi:include href="xml/qmi-message-wms-raw-read.xml"/>
+ <xi:include href="xml/qmi-message-wms-modify-tag.xml"/>
+ <xi:include href="xml/qmi-message-wms-delete.xml"/>
+ <xi:include href="xml/qmi-message-wms-get-message-protocol.xml"/>
+ <xi:include href="xml/qmi-message-wms-list-messages.xml"/>
+ <xi:include href="xml/qmi-message-wms-set-routes.xml"/>
+ <xi:include href="xml/qmi-message-wms-get-routes.xml"/>
+ <xi:include href="xml/qmi-message-wms-send-from-memory-storage.xml"/>
+ </section>
</chapter>
<chapter>
<title>Position Determination Service (PDS)</title>
- <xi:include href="xml/qmi-pds.xml"/>
+ <xi:include href="xml/qmi-client-pds.xml"/>
<xi:include href="xml/qmi-enums-pds.xml"/>
+ <section>
+ <title>PDS Indications</title>
+ <xi:include href="xml/qmi-indication-pds-event-report.xml"/>
+ </section>
+ <section>
+ <title>PDS Requests</title>
+ <xi:include href="xml/qmi-message-pds-reset.xml"/>
+ <xi:include href="xml/qmi-message-pds-set-event-report.xml"/>
+ <xi:include href="xml/qmi-message-pds-get-gps-service-state.xml"/>
+ <xi:include href="xml/qmi-message-pds-set-gps-service-state.xml"/>
+ <xi:include href="xml/qmi-message-pds-get-auto-tracking-state.xml"/>
+ <xi:include href="xml/qmi-message-pds-set-auto-tracking-state.xml"/>
+ </section>
</chapter>
<chapter id="object-tree">
diff --git a/libqmi-glib/generated/Makefile.am b/libqmi-glib/generated/Makefile.am
index 6305a07..24be190 100644
--- a/libqmi-glib/generated/Makefile.am
+++ b/libqmi-glib/generated/Makefile.am
@@ -24,6 +24,14 @@ GENERATED_C = \
qmi-wms.c \
qmi-pds.c
+GENERATED_SECTIONS = \
+ qmi-ctl.sections \
+ qmi-dms.sections \
+ qmi-nas.sections \
+ qmi-wds.sections \
+ qmi-wms.sections \
+ qmi-pds.sections
+
# Error types
qmi-error-types.h: $(top_srcdir)/libqmi-glib/qmi-errors.h $(top_srcdir)/build-aux/templates/qmi-error-types-template.h
$(AM_V_GEN) $(GLIB_MKENUMS) \
@@ -81,7 +89,7 @@ qmi-flags64-types.c: $(FLAGS64) qmi-flags64-types.h $(top_srcdir)/build-aux/temp
$(FLAGS64) > $@
# CTL service
-qmi-ctl.h qmi-ctl.c: $(top_srcdir)/data/qmi-service-ctl.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+qmi-ctl.h qmi-ctl.c qmi-ctl.sections: $(top_srcdir)/data/qmi-service-ctl.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
$(AM_V_GEN) \
rm -f qmi-ctl.h && \
rm -f qmi-ctl.c && \
@@ -91,7 +99,7 @@ qmi-ctl.h qmi-ctl.c: $(top_srcdir)/data/qmi-service-ctl.json $(top_srcdir)/build
--output qmi-ctl
# DMS service
-qmi-dms.h qmi-dms.c: $(top_srcdir)/data/qmi-service-dms.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+qmi-dms.h qmi-dms.c qmi-dms.sections: $(top_srcdir)/data/qmi-service-dms.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
$(AM_V_GEN) \
rm -f qmi-dms.h && \
rm -f qmi-dms.c && \
@@ -101,7 +109,7 @@ qmi-dms.h qmi-dms.c: $(top_srcdir)/data/qmi-service-dms.json $(top_srcdir)/build
--output qmi-dms
# WDS service
-qmi-wds.h qmi-wds.c: $(top_srcdir)/data/qmi-service-wds.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+qmi-wds.h qmi-wds.c qmi-wds.sections: $(top_srcdir)/data/qmi-service-wds.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
$(AM_V_GEN) \
rm -f qmi-wds.h && \
rm -f qmi-wds.c && \
@@ -111,7 +119,7 @@ qmi-wds.h qmi-wds.c: $(top_srcdir)/data/qmi-service-wds.json $(top_srcdir)/build
--output qmi-wds
# NAS service
-qmi-nas.h qmi-nas.c: $(top_srcdir)/data/qmi-service-nas.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+qmi-nas.h qmi-nas.c qmi-nas.sections: $(top_srcdir)/data/qmi-service-nas.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
$(AM_V_GEN) \
rm -f qmi-nas.h && \
rm -f qmi-nas.c && \
@@ -121,7 +129,7 @@ qmi-nas.h qmi-nas.c: $(top_srcdir)/data/qmi-service-nas.json $(top_srcdir)/build
--output qmi-nas
# WMS service
-qmi-wms.h qmi-wms.c: $(top_srcdir)/data/qmi-service-wms.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+qmi-wms.h qmi-wms.c qmi-wms.sections: $(top_srcdir)/data/qmi-service-wms.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
$(AM_V_GEN) \
rm -f qmi-wms.h && \
rm -f qmi-wms.c && \
@@ -131,7 +139,7 @@ qmi-wms.h qmi-wms.c: $(top_srcdir)/data/qmi-service-wms.json $(top_srcdir)/build
--output qmi-wms
# PDS service
-qmi-pds.h qmi-pds.c: $(top_srcdir)/data/qmi-service-pds.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
+qmi-pds.h qmi-pds.c qmi-pds.sections: $(top_srcdir)/data/qmi-service-pds.json $(top_srcdir)/build-aux/qmi-codegen/*.py $(top_srcdir)/build-aux/qmi-codegen/qmi-codegen
$(AM_V_GEN) \
rm -f qmi-pds.h && \
rm -f qmi-pds.c && \
@@ -157,5 +165,5 @@ libqmi_glib_generated_la_LIBADD = \
includedir = @includedir@/libqmi-glib
nodist_include_HEADERS = $(GENERATED_H)
-CLEANFILES = $(GENERATED_H) $(GENERATED_C)
+CLEANFILES = $(GENERATED_H) $(GENERATED_C) $(GENERATED_SECTIONS)