From 3ca6e219ad6325e4ae5486df0f1071c90430a259 Mon Sep 17 00:00:00 2001 From: jacobkeeler Date: Thu, 1 Feb 2018 13:13:19 -0500 Subject: Remove QT HMI API and QT specific RPCs --- src/components/dbus/CMakeLists.txt | 18 - src/components/dbus/codegen/code_formatter.py | 58 -- src/components/dbus/codegen/ford_xml_parser.py | 231 ------- src/components/dbus/codegen/make_hmi_requests.py | 343 ---------- .../dbus/codegen/make_introspection_c.py | 126 ---- .../dbus/codegen/make_message_descriptions.py | 273 -------- .../dbus/codegen/make_notifications_qml.py | 387 ----------- src/components/dbus/codegen/make_qml_dbus_cpp.py | 736 --------------------- src/components/dbus/codegen/make_qml_dbus_qml.py | 217 ------ .../dbus/codegen/make_qml_requests_cpp.py | 253 ------- src/components/dbus/codegen/make_request_to_sdl.py | 335 ---------- 11 files changed, 2977 deletions(-) delete mode 100644 src/components/dbus/codegen/code_formatter.py delete mode 100644 src/components/dbus/codegen/ford_xml_parser.py delete mode 100755 src/components/dbus/codegen/make_hmi_requests.py delete mode 100755 src/components/dbus/codegen/make_introspection_c.py delete mode 100755 src/components/dbus/codegen/make_message_descriptions.py delete mode 100755 src/components/dbus/codegen/make_notifications_qml.py delete mode 100755 src/components/dbus/codegen/make_qml_dbus_cpp.py delete mode 100755 src/components/dbus/codegen/make_qml_dbus_qml.py delete mode 100644 src/components/dbus/codegen/make_qml_requests_cpp.py delete mode 100755 src/components/dbus/codegen/make_request_to_sdl.py (limited to 'src/components/dbus') diff --git a/src/components/dbus/CMakeLists.txt b/src/components/dbus/CMakeLists.txt index 211310d885..6e541126c2 100644 --- a/src/components/dbus/CMakeLists.txt +++ b/src/components/dbus/CMakeLists.txt @@ -55,24 +55,6 @@ set(LIBRARIES dbus-1 -L${DBUS_LIBS_DIRECTORY} ) -add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/message_descriptions.cc - COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/codegen/make_message_descriptions.py - --infile ${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/QT_HMI_API.xml - --outdir ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/QT_HMI_API.xml - ${CMAKE_CURRENT_SOURCE_DIR}/codegen/make_message_descriptions.py -) - -add_custom_command( - OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/introspection_xml.cc - COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/codegen/make_introspection_c.py - --infile ${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/QT_HMI_API.xml - --outdir ${CMAKE_CURRENT_BINARY_DIR} - DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/../interfaces/QT_HMI_API.xml - ${CMAKE_CURRENT_SOURCE_DIR}/codegen/make_introspection_c.py -) - add_library("DBus" ${SOURCES}) add_dependecnies("DBus" Utils install-3rd_party_dbus) diff --git a/src/components/dbus/codegen/code_formatter.py b/src/components/dbus/codegen/code_formatter.py deleted file mode 100644 index c3eb1b7815..0000000000 --- a/src/components/dbus/codegen/code_formatter.py +++ /dev/null @@ -1,58 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file code_formatter.py -# @brief Utility that helps to manage indents in generated code -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2013, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -class CodeBlock: - indent = 0 - def __init__(self, out): - self.out = out - if type(out) == file: - self.indent = 0 - elif type(out) == CodeBlock: - self.indent = out.indent - def __enter__(self): - self.indent += 1 - return self - def __exit__(self, exc_type, exc_value, traceback): - if self.indent >= 1: - self.indent -= 1 - def write(self, s): - for string in s.splitlines(True): - self.out.write(' ' * self.indent + string) - -# vim: set ts=4 sw=4 et: - diff --git a/src/components/dbus/codegen/ford_xml_parser.py b/src/components/dbus/codegen/ford_xml_parser.py deleted file mode 100644 index 4f9f222d24..0000000000 --- a/src/components/dbus/codegen/ford_xml_parser.py +++ /dev/null @@ -1,231 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file ford_xml_parser.py -# @brief Parser for HMI_API.xml -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2013, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from xml.etree import ElementTree -from collections import OrderedDict - -node_name = '/com/ford/hmi' - -class ParamDesc: - pass - -class FordXmlParser: - def __init__(self, in_el_tree, interface_path=None): - self.interface_path = interface_path - self.el_tree = in_el_tree - self.find_enums() - self.find_structs() - - def find_enums(self): - self.enums = dict() - for interface_el in self.el_tree.findall('interface'): - interface_name = interface_el.get('name') - for enum_el in interface_el.findall('enum'): - enum_name = enum_el.get('name') - self.enums[(interface_name,enum_name)] = enum_el - - - def make_param_desc(self, param_el, iface=None): - param_desc = ParamDesc() - param_desc.name = param_el.get('name') - param_desc.type = param_el.get('type') - param_desc.enum = False - param_desc.struct = False - param_desc.fulltype = param_desc.type - if param_el.get('mandatory') == 'false': - param_desc.mandatory = False - else: - param_desc.mandatory = True - if param_el.get('array') == 'true': - param_desc.array = True - else: - param_desc.array = False - param_desc.minValue = param_el.get('minvalue') if param_el.get('minvalue') else 0 - param_desc.maxValue = param_el.get('maxvalue') - param_desc.minLength = param_el.get('minlength') if param_el.get('minlength') else 0 - param_desc.maxLength = param_el.get('maxlength') - param_desc.minSize = param_el.get('minsize') - param_desc.maxSize = param_el.get('maxsize') - - param_desc.restricted = param_desc.minValue != None or \ - param_desc.maxValue != None or \ - param_desc.minLength > 0 or \ - param_desc.maxLength > 0 - param_desc.restrictedArray = param_desc.array and (param_desc.minSize > 0 or param_desc.maxSize > 0) - if iface is None: - return param_desc - if param_desc.type not in ['Integer', 'String', 'Boolean', 'Float']: - param_type = param_desc.type.split('.') - if len(param_type) > 1: - param_type = (param_type[0], param_type[1]) - else: - param_type = (iface, param_type[0]) - param_desc.fulltype = param_type - if param_type in self.enums: param_desc.enum = True - elif param_type in self.structs: param_desc.struct = True - return param_desc - - - def find_structs(self): - self.structs = OrderedDict() - for interface_el in self.el_tree.findall('interface'): - interface_name = interface_el.get('name') - for struct_el in interface_el.findall('struct'): - struct_name = struct_el.get('name') - self.structs[(interface_name, struct_name)] = [] - - for interface_el in self.el_tree.findall('interface'): - interface_name = interface_el.get('name') - for struct_el in interface_el.findall('struct'): - struct_name = struct_el.get('name') - for param_el in struct_el.findall('param'): - param_desc = self.make_param_desc(param_el, interface_name) - self.structs[(interface_name, struct_name)].append(param_desc) - - - def convert_struct_to_dbus(self, param_type): - ret = '(' - struct = self.structs[param_type] - for param in struct: - ret = ret + self.convert_to_dbus_type(param) - ret = ret + ')' - return ret - - - def convert_to_dbus_type(self, param): - if param.type == 'Integer': restype = 'i' - elif param.type == 'String': restype = 's' - elif param.type == 'Boolean': restype = 'b' - elif param.type == 'Float': restype = 'd' # D-Bus double - elif param.enum: restype = 'i' # D-Bus 32-bit signed int - elif param.struct: restype = self.convert_struct_to_dbus(param.fulltype) - else: raise RuntimeError('Unknown type: ' + param.type) - if param.array: restype = 'a' + restype - if not param.mandatory: restype = '(b' + restype + ')' - return restype - - - def find_notifications(self, interface_el): - notifications = list() - for function_el in interface_el.findall('function[@messagetype="notification"]'): - notifications.append(function_el) - return notifications - - - def find_notifications_by_provider(self, interface_el, provider): - notifications = list() - condition = 'function[@messagetype="notification"][@provider="%s"]' % provider - for function_el in interface_el.findall(condition): - notifications.append(function_el) - return notifications - - - def find_request_response_pairs(self, interface_el): - result = list() - request_els = interface_el.findall('function[@messagetype="request"]') - response_els = interface_el.findall('function[@messagetype="response"]') - for request_el in request_els: - name = request_el.get('name') - response_el = next(r for r in response_els if r.get('name') == name) - result.append((request_el, response_el)) - return result - - - def find_request_response_pairs_by_provider(self, interface_el, provider): - result = list() - condition = 'function[@messagetype="request"][@provider="%s"]' % provider - request_els = interface_el.findall(condition) - response_els = interface_el.findall('function[@messagetype="response"]') - for request_el in request_els: - name = request_el.get('name') - response_el = next(r for r in response_els if r.get('name') == name) - result.append((request_el, response_el)) - return result - - - def convert_to_signal(self, notification_el, interface): - result = ElementTree.Element('signal') - result.set('name', notification_el.get('name')) - for param_el in notification_el.findall('param'): - self.create_arg_element(result, param_el, interface) - return result - - - def convert_to_method(self, (request_el, response_el), interface): - result = ElementTree.Element('method') - result.set('name', request_el.get('name')) - for param_el in request_el.findall('param'): - arg_el = self.create_arg_element(result, param_el, interface) - arg_el.set('direction', 'in') - - arg_el = ElementTree.SubElement(result, 'arg') - arg_el.set('name', 'retCode') - arg_el.set('type', 'i') - arg_el.set('direction', 'out') - - for param_el in response_el.findall('param'): - arg_el = self.create_arg_element(result, param_el, interface) - arg_el.set('direction', 'out') - return result - - - def create_arg_element(self, parent, param_el, interface): - arg_el = ElementTree.SubElement(parent, 'arg') - arg_el.set('name', param_el.get('name')) - arg_el.set('type', self.convert_to_dbus_type(self.make_param_desc(param_el, interface))) - return arg_el - - - def create_introspection_iface_el(self, interface_el, provider): - interface = interface_el.get('name') - interface_name = self.interface_path + '.' + interface - - notifications = self.find_notifications_by_provider(interface_el, provider) - signals = [self.convert_to_signal(n, interface) for n in notifications] - - request_responses = self.find_request_response_pairs_by_provider(interface_el, provider) - methods = [self.convert_to_method(r, interface) for r in request_responses] - - if signals or methods: - el = ElementTree.Element('interface', attrib={'name':interface_name}) - for m in methods: el.append(m) - for s in signals: el.append(s) - return el - - - diff --git a/src/components/dbus/codegen/make_hmi_requests.py b/src/components/dbus/codegen/make_hmi_requests.py deleted file mode 100755 index 4716d40439..0000000000 --- a/src/components/dbus/codegen/make_hmi_requests.py +++ /dev/null @@ -1,343 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_qml_dbus_cpp.py -# @brief Generator of QML to QDbus C++ part -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2014, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -import os.path -from sys import argv -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser, ParamDesc -from code_formatter import CodeBlock - -prefix_class_item = 'Declarative' -invoke_type_connection = 'Direct' - -def defaultValue(param): - if param.type == "Integer": - return "0" - elif param.type == "Float": - return "0.0" - elif param.type == "Boolean": - return "false" - elif param.enum: - return "0" - -class Impl(FordXmlParser): - def make_requests_classes_header(self, out): - for interface_el in self.el_tree.findall('interface'): - request_responses = self.find_request_response_pairs_by_provider(interface_el, "sdl") - for (request, response) in request_responses: - request_full_name = interface_el.get('name') + '_' +request.get('name') - out.write('class ' + request_full_name + ': public HMIRequest {\n') - with CodeBlock(out) as output: - output.write('Q_OBJECT\n') - out.write(' public:\n') - with CodeBlock(out) as output: - output.write(request_full_name + '(QJSValue hmi_callback, QDBusInterface *interface, QList args, QString name):\n') - output.write(' HMIRequest(hmi_callback, interface, args, name) {}\n') - out.write(' private:\n') - with CodeBlock(out) as output: - output.write('QJSValueList fillArgsList();\n};\n\n') - - - def make_header_file(self, out): - out.write("namespace requests {\n") - out.write("class HMIRequest: public QObject {\n") - with CodeBlock(out) as output: - output.write('Q_OBJECT\n') - out.write('public:\n') - with CodeBlock(out) as output: - output.write('HMIRequest(QJSValue hmi_callback, QDBusInterface *interface, QList args, QString name );\n') - out.write('protected:\n') - with CodeBlock(out) as output: - output.write('virtual QJSValueList fillArgsList() = 0;\n') - output.write('QDBusPendingCallWatcher *watcher_;\n') - output.write('QJSValue hmi_callback_;\n\n') - output.write('template\n') - output.write('QJSValue CreateQJSValue(T value) {\n') - output.write(' return QJSValue(value);\n') - output.write('}\n\n') - output.write('template\n') - output.write('QJSValue CreateQJSValue(QList value) {\n') - with CodeBlock(output) as output: - output.write('QJSValue array = hmi_callback_.engine()->newArray();\n') - output.write('int i = 0;\n') - output.write('foreach (T item, value) {\n') - output.write(' QJSValue value = CreateQJSValue(item);\n') - output.write(' array.setProperty(i, value);\n') - output.write(' ++i;\n') - output.write('}\n') - output.write('return array;\n') - output.write('}\n') - out.write('private:\n') - with CodeBlock(out) as output: - output.write('QDBusInterface *interface_;\n') - output.write('QList args_;\n') - out.write('public slots:\n') - with CodeBlock(out) as output: - output.write('void invokeCallback();\n') - out.write('};\n\n') - output.write('template<>\n') - output.write('QJSValue HMIRequest::CreateQJSValue(QStringList value);\n') - for (interface_name, struct_name) in self.structs: - out.write('template<>\n') - out.write('QJSValue HMIRequest::CreateQJSValue(Common_' + struct_name + ' value);\n\n') - impl.make_requests_classes_header(out) - out.write("} // namespace requests\n") - - - def qt_param_type(self, param): - if not param.mandatory: - param_copy = copy(param) - param_copy.mandatory = True - return "OptionalArgument< " + self.qt_param_type(param_copy) + " >" - if param.array: - param_copy = copy(param) - param_copy.array = False - if param.type == 'String': - return "QStringList" - return "QList< " + self.qt_param_type(param_copy) + " >" - if param.type == 'Integer' or param.enum: - return 'int' - elif param.type == 'String': - return 'QString' - elif param.type == 'Boolean': - return 'bool' - elif param.type == 'Float': - return 'double' - elif param.struct: - return "_".join(param.fulltype) - return "xxx" - - - def make_requests_methods_source(self, out): - for interface_el in self.el_tree.findall('interface'): - request_responses = self.find_request_response_pairs_by_provider(interface_el, "sdl") - for (request, response) in request_responses: - iface_name = interface_el.get('name') - request_full_name = iface_name + '_' +request.get('name') - out.write('QJSValueList ' + request_full_name + '::fillArgsList() {\n') - out.write(' QDBusPendingReply< ') - count = 0 - for param_el in response.findall('param'): - param = self.make_param_desc(param_el, iface_name) - out.write(self.qt_param_type(param)) - count += 1 - if count < len(response.findall('param')): - out.write(',') - out.write(' > reply = *watcher_;\n') - - with CodeBlock(out) as out: - out.write('QJSValueList qjsValueList;\n\n') - out.write('QJSValue param;\n\n') - count = 0 - for param_el in response.findall('param'): - if param_el.get('mandatory') == 'false': - out.write('if (reply.argumentAt<' + str(count) + '>().presence) {\n') - out.write(' param = CreateQJSValue(reply.argumentAt<' + str(count) + '>().val);\n') - out.write('} else {\n') - out.write(' param = QJSValue();\n') - out.write('}\n') - out.write('qjsValueList.append(param);\n') - else: - out.write('param = CreateQJSValue(reply.argumentAt<' + str(count) + '>());\n') - out.write('qjsValueList.append(param);\n') - count += 1 - out.write('return qjsValueList;\n') - out.write('}\n\n') - - - def make_source_file(self, out): - out.write("namespace requests {\n") - for interface_el in self.el_tree.findall('interface'): - for struct_el in interface_el.findall('struct'): - out.write('template<>\n') - out.write('QJSValue HMIRequest::CreateQJSValue(Common_' + struct_el.get('name') + ' value){\n') - with CodeBlock(out) as output: - output.write('QJSValue object = hmi_callback_.engine()->newObject();\n') - for param_el in struct_el.findall('param'): - param_name = param_el.get('name') - if param_el.get('mandatory') == 'true': - with CodeBlock(out) as output: - output.write('object.setProperty("' + param_name + '", CreateQJSValue(value.' + param_name + '));\n') - elif param_el.get('mandatory') == 'false': - with CodeBlock(out) as output: - output.write('object.setProperty("' + param_name + '", value.' + param_name + '.presence ? CreateQJSValue(value.' + param_name + '.val) : QJSValue());\n') - out.write('return object;\n') - out.write('}\n\n') - - - out.write('HMIRequest::HMIRequest(QJSValue hmi_callback, QDBusInterface *interface, QList args, QString name) :\n') - out.write(' hmi_callback_(hmi_callback), interface_(interface), args_(args) {\n') - with CodeBlock(out) as output: - output.write('QDBusPendingCall pcall = interface->asyncCallWithArgumentList(name, args);\n') - output.write('watcher_ = new QDBusPendingCallWatcher(pcall);\n') - output.write('QObject::connect(watcher_, SIGNAL(finished(QDBusPendingCallWatcher*)), this, SLOT(invokeCallback()));\n}\n\n') - out.write('void HMIRequest::invokeCallback() {\n') - with CodeBlock(out) as output: - output.write('if (!hmi_callback_.isUndefined()) {\n') - with CodeBlock(output) as output: - output.write('QJSValueList qjsValueList;\n') - output.write('qjsValueList = this->fillArgsList();\n') - output.write('hmi_callback_.call(qjsValueList);\n') - output.write('}\n') - output.write('watcher_->deleteLater();\n') - output.write('this->deleteLater();\n}\n\n') - impl.make_requests_methods_source(out) - out.write("} // namespace requests\n") - - -arg_parser = ArgumentParser(description="Generator of Qt to QDbus C++ part") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--version', required=False, help="Qt version 4.8.5 (default) or 5.1.0") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output files request_to_sdl.h, request_to_sdl.cc will be saved") -args = arg_parser.parse_args() - -if args.version == "4.8.5": - prefix_class_item = 'Declarative' - invoke_type_connection = 'Direct' -elif args.version == "5.1.0": - prefix_class_item = 'Quick' - invoke_type_connection = 'BlockingQueued' - -header_name = 'hmi_requests.h' -source_name = 'hmi_requests.cc' - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Impl(in_tree_root, 'com.ford.sdl.hmi') - -header_out = open(args.outdir + '/' + header_name, "w") -source_out = open(args.outdir + '/' + source_name, "w") - -header_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -header_out.write("""/** - * @file hmi_requests.h - * @brief Generated class that process requests from qtHMI - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2014, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") -header_out.write("#ifndef SRC_COMPONENTS_QTHMI_QMLMODELQT5_HMIREQUESTS_\n"); -header_out.write("#define SRC_COMPONENTS_QTHMI_QMLMODELQT5_HMIREQUESTS_\n\n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write('#include \n'); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); - -header_out.write('#include "qml_dbus.h"\n\n'); - -impl.make_header_file(header_out) - -header_out.write("#endif // SRC_COMPONENTS_QTHMI_QMLMODELQT5_HMIREQUESTS_\n"); - -source_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -source_out.write("""/** - * @file hmi_requests.cc - * @brief Generated class that process requests from qtHMI - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2014, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") -source_out.write('#include "hmi_requests.h"\n\n') -impl.make_source_file(source_out) diff --git a/src/components/dbus/codegen/make_introspection_c.py b/src/components/dbus/codegen/make_introspection_c.py deleted file mode 100755 index 22a53f308d..0000000000 --- a/src/components/dbus/codegen/make_introspection_c.py +++ /dev/null @@ -1,126 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_introspection_c.py -# @brief Converts introspection.xml to C-string -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2013, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -from ford_xml_parser import FordXmlParser -from ford_xml_parser import node_name -from xml.etree import ElementTree -from os import path -from sys import argv - -class Impl(FordXmlParser): - def convert_to_introspection(self, out_el_tree): - for interface_el in self.el_tree.findall('interface'): - el = self.create_introspection_iface_el(interface_el, 'sdl') - if el is not None: - out_el_tree.append(el) - -arg_parser = ArgumentParser(description='Converts introspection.xml to C-string') -arg_parser.add_argument('--infile', required=True, help="Full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--outdir', required=True, help="Path to directory where output file introspection_xml.cc will be saved") -args = arg_parser.parse_args() - -if not path.isdir(args.outdir): - makedirs(args.outdir) - -out_file = open(args.outdir + '/' + 'introspection_xml.cc', "w") - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() -out_tree_root = ElementTree.Element('node', attrib={'name':node_name}) - -impl = Impl(in_tree_root, 'com.ford.hmi.sdl') -impl.convert_to_introspection(out_tree_root) - -introspection_string = '' -introspection_string += "\n" -introspection_string += ElementTree.tostring(out_tree_root) - -out_file.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -out_file.write("""/** - * @file instrospections_xml.cc - * @brief D-Bus introspection XML as C-string - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") - -out_file.write("char introspection_xml[] = {") - -cnt = 0 -for char in introspection_string: - if cnt % 12 == 0: - out_file.write("\n ") - else: - out_file.write(" ") - out_file.write("0x%02x," % ord(char)) - cnt = cnt + 1 - -out_file.write(" 0x00\n") -out_file.write("};") - diff --git a/src/components/dbus/codegen/make_message_descriptions.py b/src/components/dbus/codegen/make_message_descriptions.py deleted file mode 100755 index 0079666392..0000000000 --- a/src/components/dbus/codegen/make_message_descriptions.py +++ /dev/null @@ -1,273 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_message_descriptions.py -# @brief Generates HMI API message descriptions for D-Bus -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2013, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser -from os import path -from sys import argv - -namespace_name = 'ford_message_descriptions' -namespace = namespace_name + '::' - - -class Impl(FordXmlParser): - def write_param_definition(self, param_var_name, param, out): - if param.array: - tmp_param = copy(param) - tmp_param.array = False - tmp_param.mandatory = True - dbus_sig = self.convert_to_dbus_type(tmp_param) - self.write_param_definition(param_var_name + '_array', tmp_param, out) - - if param.array: out.write('const ' + namespace + 'ArrayDescription ') - elif param.struct: out.write('const ' + namespace + 'StructDescription ') - else: out.write('const ' + namespace + 'ParameterDescription ') - - out.write(param_var_name + " = {\n") - - if param.struct or param.array: - out.write(" {\n") - shift = ' ' * 4 - else: - shift = ' ' * 2 - - out.write(shift + "\"" + param.name + "\",\n") - - if param.array: - out.write(shift + namespace + "Array,\n") - elif param.struct: - out.write(shift + namespace + "Struct,\n") - elif param.enum: - out.write(shift + namespace + "Enum,\n") - else: - out.write(shift + namespace + param.type + ",\n") - - if param.mandatory: - out.write(shift + "true\n") - else: - out.write(shift + "false\n") - - if param.struct or param.array: - out.write(" },\n") - if param.array: - out.write(" (const " + namespace + "ParameterDescription*)&" + param_var_name + "_array,\n") - out.write(" \"" + dbus_sig + "\"\n") - elif param.struct: - out.write(" Structs::" + param.fulltype[0] + "__" + param.fulltype[1] + "__parameters\n") - out.write("};\n") - - - def write_struct_params_declarations(self, out): - out.write("struct Structs {\n"); - for (interface, name), params in self.structs.iteritems(): - params_var_name = interface + '__' + name + '__parameters' - out.write(" static const " + namespace + "ParameterDescription* " + params_var_name + "[];\n") - out.write("};\n\n") - - - def write_enum_entries_declarations(self, out): - out.write("struct Enums {\n"); - for interface, name in self.enums: - entries_var_name = interface + '__' + name + '__entries' - out.write(" static const " + namespace + "EnumDescription::Entry* " + entries_var_name + "[];\n") - out.write("};\n\n") - - - def write_parameters(self, params, out, name): - n = 1 - for param in params: - param_var_name = name + str(n) - n = n + 1 - self.write_param_definition(param_var_name, param, out) - - - def write_struct_params_definitions(self, out): - for (interface, name), params in self.structs.iteritems(): - param_var_name = interface + '__' + name + '__parameter' - self.write_parameters(params, out, param_var_name) - params_var_name = 'Structs::' + interface + '__' + name + '__parameters' - out.write("const " + namespace + "ParameterDescription* " + params_var_name + "[] = {\n") - for n in range(1, len(params) + 1): - name = param_var_name + str(n) - out.write(" (const " + namespace + "ParameterDescription*)&" + name + ",\n") - out.write( " NULL };\n\n") - - - def write_enum_entries_definitions(self, out): - for (interface, name), enum_el in self.enums.iteritems(): - n = 1 - for element_el in enum_el.findall('element'): - entry_var_name = interface + '__' + name + '__entry' + str(n) - value = element_el.get("value") - if value is None: - value = str(n) - out.write(namespace + "EnumDescription::Entry " + entry_var_name + " = {\"" + element_el.get("name") + "\", " + value + "};\n") - n = n + 1 - - entries_var_name = "Enums::" + interface + '__' + name + '__entries' - out.write("const " + namespace + "EnumDescription::Entry* " + entries_var_name + "[] = {\n") - for n in range(1, len(enum_el.findall('element')) + 1): - entry_var_name = interface + '__' + name + '__entry' + str(n) - out.write(" &" + entry_var_name + ",\n") - out.write(" NULL };\n\n") - - - def write_message_definition(self, message_el, interface, out): - name = message_el.get('name') - messagetype = message_el.get('messagetype') - params = list() - for param_el in message_el.findall('param'): - param_desc = self.make_param_desc(param_el, interface) - params.append(param_desc) - param_var_name = interface + '__' + name + '__' + messagetype + '__parameter' - self.write_parameters(params, out, param_var_name) - - params_var_name = param_var_name + 's' - out.write("const " + namespace + "ParameterDescription* " + params_var_name + "[] = {\n") - for n in range(1, len(params) + 1): - param_name = param_var_name + str(n) - out.write(" (const " + namespace + "ParameterDescription*)&" + param_name + ",\n") - out.write(" NULL };\n") - - message_desc_name = interface + '__' + name + '__' + messagetype - out.write("const " + namespace + "MessageDescription " + message_desc_name + " = {\n") - out.write(" \"" + interface + "\",\n") - out.write(" \"" + name + "\",\n") - out.write(" hmi_apis::messageType::" + messagetype + ",\n") - out.write(" hmi_apis::FunctionID::" + interface + "_" + name + ",\n") - out.write(" " + params_var_name + "\n") - out.write("};\n\n") - - - def write_message_definitions(self, out): - for interface_el in self.el_tree.findall('interface'): - interface = interface_el.get('name') - message_els = interface_el.findall('function') - for message_el in message_els: - self.write_message_definition(message_el, interface, out) - - - def make_message_descriptions(self, out): - self.write_struct_params_declarations(out) - #self.write_enum_entries_declarations(out) - self.write_struct_params_definitions(out) - #self.write_enum_entries_definitions(out) - self.write_message_definitions(out) - - - def make_message_array(self, out): - out.write("const MessageDescription* message_descriptions[] = {\n") - for interface_el in self.el_tree.findall('interface'): - interface = interface_el.get('name') - message_els = interface_el.findall('function') - for message_el in message_els: - name = message_el.get('name') - messagetype = message_el.get('messagetype') - message_desc_name = interface + '__' + name + '__' + messagetype - out.write(" &" + message_desc_name + ",\n") - out.write(" NULL\n") - out.write("};\n") - - -arg_parser = ArgumentParser(description="Generates HMI API message descriptions for D-Bus on SDL core side") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output file message_descriptions.cc will be saved") -args = arg_parser.parse_args() - -if not path.isdir(args.outdir): - makedirs(args.outdir) - -outfile = 'message_descriptions.cc' - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Impl(in_tree_root) - -out = open(args.outdir + "/" + outfile, "w") - -out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -out.write("""/** - * @file message_descriptions.cc - * @brief Generated HMI API message descriptions for D-Bus - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") - -out.write("#include \"dbus/message_descriptions.h\"\n\n"); -out.write("namespace {\n\n"); -impl.make_message_descriptions(out) -out.write("}\n\n"); - -out.write("namespace " + namespace_name + " {\n\n"); -impl.make_message_array(out) -out.write("}\n\n"); - diff --git a/src/components/dbus/codegen/make_notifications_qml.py b/src/components/dbus/codegen/make_notifications_qml.py deleted file mode 100755 index 3c173e8b4f..0000000000 --- a/src/components/dbus/codegen/make_notifications_qml.py +++ /dev/null @@ -1,387 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_qml_dbus_cpp.py -# @brief Generator of QML to QDbus C++ part -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2014, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -import os.path -from sys import argv -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser, ParamDesc -from code_formatter import CodeBlock - -class Notifications_qml(FordXmlParser): - #Used for qt signal names, because qt signals cannot begin with a capital letter - def first_letter_to_lower_case(self, s): - if len(s) == 0: - return s - else: - return s[0].lower() + s[1:] - - def make_header(self, out): - out.write("class SdlProxy: public Item {\n") - with CodeBlock(out) as out: - out.write("Q_OBJECT\n") - out.write("Q_DISABLE_COPY(SdlProxy)\n") - out.write("public:\n") - out.write("explicit SdlProxy(Item* parent = 0);\n") - out.write("private:\n") - out.write("QDBusInterface *sdlBasicCommunicationInterface;\n") - out.write("signals:\n") - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - notifications = self.find_notifications_by_provider(interface_el, "sdl") - for notification_el in notifications: - with CodeBlock(out) as out: - out.write("void %s(" % self.first_letter_to_lower_case( notification_el.get("name")) ) - param_el_count = 1 - list_of_params = notification_el.findall("param") - list_of_params_len = len(list_of_params) - for param_el in list_of_params: - param = self.make_param_desc(param_el, iface_name) - out.write("QVariant %s" % param_el.get("name")) - if param_el_count < list_of_params_len: - out.write(", ") - param_el_count += 1 - out.write(");\n") - with CodeBlock(out) as out: - out.write("private slots:\n") - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - notifications = self.find_notifications_by_provider(interface_el, "sdl") - for notification_el in notifications: - with CodeBlock(out) as out: - out.write("void slot_%s(" % notification_el.get("name")) - param_el_count = 1 - list_of_params = notification_el.findall("param") - list_of_params_len = len(list_of_params) - for param_el in list_of_params: - param = self.make_param_desc(param_el, iface_name) - out.write("%s %s" % (self.qt_param_type(param), param_el.get("name"))) - if param_el_count < list_of_params_len: - out.write(", ") - param_el_count += 1 - out.write(");\n") - out.write("};\n") - - - def qt_param_type(self, param): - if not param.mandatory: - param_copy = copy(param) - param_copy.mandatory = True - return "OptionalArgument< " + self.qt_param_type(param_copy) + " >" - if param.array: - param_copy = copy(param) - param_copy.array = False - if param.type == 'String': - return "QStringList" - return "QList< " + self.qt_param_type(param_copy) + " >" - if param.type == 'Integer' or param.enum: - return 'int' - elif param.type == 'String': - return 'QString' - elif param.type == 'Boolean': - return 'bool' - elif param.type == 'Float': - return 'double' - elif param.struct: - return "_".join(param.fulltype) - else: - raise RuntimeError('Unknown type: ' + param.type) - - - def qml_param_type(self, param): - if not param.mandatory: - return "QVariant" - if param.array: - return "QVariant" - if param.type == 'Integer' or param.enum: - return 'int' - elif param.type == 'String': - return 'QString' - elif param.type == 'Boolean': - return 'bool' - elif param.type == 'Float': - return 'double' - elif param.struct: - return "QVariant" - else: - raise RuntimeError('Unknown type: ' + param.type) - - - def make_source(self, out): - def qml_args(variable_name_needed): - param_el_count = 1 - list_of_params = notification_el.findall("param") - list_of_params_len = len(list_of_params) - for param_el in list_of_params: - param = self.make_param_desc(param_el, iface_name) - if variable_name_needed: - out.write("%s %s" % (self.qt_param_type(param), param_el.get("name"))) - else: - out.write("%s" % self.qt_param_type(param)) - if param_el_count < list_of_params_len: - out.write(", ") - param_el_count += 1 - out.write("SdlProxy::SdlProxy(Item *parent): Item(parent) {\n") - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - notifications = self.find_notifications_by_provider(interface_el, "sdl") - for notification_el in notifications: - notification_name = notification_el.get('name') - with CodeBlock(out) as out: - out.write("QDBusConnection::sessionBus().connect(\n") - with CodeBlock(out) as out: - out.write("\"com.ford.sdl.core\", \"/\", \"com.ford.sdl.core.%s\",\n" % iface_name) - out.write("\"%s\", this, SLOT(slot_%s(" % (notification_name, notification_el.get("name"))) - qml_args(variable_name_needed = False) - out.write(")));\n") - out.write("}\n\n") - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - notifications = self.find_notifications_by_provider(interface_el, "sdl") - for notification_el in notifications: - notific_full_name = interface_el.get("name") + "_" + notification_el.get("name") - out.write("void SdlProxy::slot_%s(" % notification_el.get("name")) - qml_args(variable_name_needed = True) - out.write(") {\n") - with CodeBlock(out) as out: - out.write("LOG4CXX_TRACE(logger_, \"ENTER\");\n\n") - for param_el in notification_el.findall("param"): - param = self.make_param_desc(param_el, iface_name) - tmp_param_name = param.name + "_qvariant" - out.write("QVariant %s;\n" % tmp_param_name) - out.write("%s = ValueToVariant(%s);\n" % (tmp_param_name, param.name)) - self.write_param_validation(param, param.name, "\nLOG4CXX_ERROR(logger_, \"%s in %s out of bounds\")" % (param.name, notific_full_name), out) - out.write("\n") - out.write("emit %s(" % self.first_letter_to_lower_case( notification_el.get("name")) ) - param_el_count = 1 - list_of_params = notification_el.findall("param") - list_of_params_len = len(list_of_params) - for param_el in list_of_params: - param = self.make_param_desc(param_el, iface_name) - out.write("%s" % param.name + "_qvariant") - if param_el_count < list_of_params_len: - out.write(", ") - param_el_count += 1 - out.write(");\n") - with CodeBlock(out) as out: - out.write("LOG4CXX_TRACE(logger_, \"EXIT\");\n") - out.write("}\n\n") - - - - def write_param_validation(self, param, param_name, fail_statement, out, level=0): - if not param.mandatory and (param.restricted or param.restrictedArray or (param.struct and any(map(lambda x: x.restricted, self.structs[param.fulltype])))): - out.write("if (%s.presence) {\n" % param_name) - param_copy = copy(param) - param_copy.mandatory = True - with CodeBlock(out) as out: - self.write_param_validation(param_copy, param_name + ".val", fail_statement, out, level+1) - out.write("}\n") - elif param.array: - if param.minSize > 0: - out.write("if ({0}.count() < {1}) {{".format(param_name, param.minSize)) - with CodeBlock(out) as out: - out.write("{0};\n".format(fail_statement)) - out.write("}\n") - if param.maxSize != None: - out.write("if ({0}.count() > {1}) {{".format(param_name, param.maxSize)) - with CodeBlock(out) as out: - out.write("{0};\n".format(fail_statement)) - out.write("}\n") - if param.restricted: - out.write('for ({0}::const_iterator it_{2} = {1}.begin(); it_{2} != {1}.end(); ++it_{2}) {{\n'.format(self.qt_param_type(param), param_name, level)) - with CodeBlock(out) as out: - param_copy = copy(param) - param_copy.array = False - self.write_param_validation(param_copy, "(*it_{0})".format(level), fail_statement, out, level+1) - out.write("}\n") - elif param.struct: - for p in self.structs[param.fulltype]: - self.write_param_validation(p, "{0}.{1}".format(param_name, p.name), fail_statement, out, level+1) - elif param.type == "Integer" or param.type == "Float": - conditions = [] - if (param.minValue != None): - conditions.append("(%s < %s)" % (param_name, param.minValue)) - if (param.maxValue != None): - conditions.append("(%s > %s)" % (param_name, param.maxValue)) - if conditions: - out.write('if (%s) {' % ' || '.join(conditions)) - with CodeBlock(out) as out: - out.write('%s;\n' % fail_statement) - out.write("}\n") - elif param.type == "String": - conditions = [] - if (param.minLength > 0): - conditions.append("(%s.size() < %s)" % (param_name, param.minLength)) - if (param.maxLength > 0): - conditions.append("(%s.size() > %s)" % (param_name, param.maxLength)) - if conditions: - out.write('if (%s) {' % ' || '.join(conditions)) - with CodeBlock(out) as out: - out.write('%s;\n' % (fail_statement)) - out.write("}\n") - - -#QVarian name; -#if (ttsName.presence) { - - - -arg_parser = ArgumentParser(description="Generator of classes which Qt to QDbus C++ part") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--version', required=False, help="Qt version 4.8.5 (default) or 5.1.0") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output files request_to_sdl.h, request_to_sdl.cc will be saved") -args = arg_parser.parse_args() - - -if args.version == "4.8.5": - prefix_class_item = 'Script' - invoke_type_connection = 'Direct' -elif args.version == "5.1.0": - prefix_class_item = 'JS' - invoke_type_connection = 'BlockingQueued' -else: - prefix_class_item = 'JS' - invoke_type_connection = 'BlockingQueued' - -header_name = 'sdl_proxy.h' -source_name = 'sdl_proxy.cc' - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Notifications_qml(in_tree_root, 'com.ford.sdl.hmi') - -header_out = open(args.outdir + '/' + header_name, "w") -source_out = open(args.outdir + '/' + source_name, "w") - -header_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -header_out.write(""" -/* - Copyright (c) 2014, Ford Motor Company - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following - disclaimer in the documentation and/or other materials provided with the - distribution. - - Neither the name of the Ford Motor Company nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. -*/ -""") -header_out.write("#ifndef SRC_COMPONENTS_QT_HMI_QML_PLUGINS_DBUS_ADAPTER_SDL_PROXY_H_\n") -header_out.write("#define SRC_COMPONENTS_QT_HMI_QML_PLUGINS_DBUS_ADAPTER_SDL_PROXY_H_\n\n") -header_out.write("#include \"qml_dbus.h\"\n") -header_out.write("#include \"qt_version.h\"\n\n") -header_out.write("#include \n") -header_out.write("#include \n") -header_out.write("#if QT_4\n") -header_out.write("#include \n") -header_out.write("typedef QDeclarativeItem Item;\n") -header_out.write("#elif QT_5\n") -header_out.write("#include \n") -header_out.write("typedef QQuickItem Item;\n") -header_out.write("#endif // QT_VERSION\n") - -impl.make_header(header_out) - -header_out.write("#endif // SRC_COMPONENTS_QT_HMI_QML_PLUGINS_DBUS_ADAPTER_REQUEST_TO_SDL_H_") - - -source_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -source_out.write(""" -/* - Copyright (c) 2014, Ford Motor Company - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following - disclaimer in the documentation and/or other materials provided with the - distribution. - - Neither the name of the Ford Motor Company nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. -*/ - -""") - -source_out.write("#include \"sdl_proxy.h\"\n") -source_out.write("#include \"utils/logger.h\"\n") -source_out.write("CREATE_LOGGERPTR_GLOBAL(logger_, \"DBusPlugin\")\n\n") - -impl.make_source(source_out) diff --git a/src/components/dbus/codegen/make_qml_dbus_cpp.py b/src/components/dbus/codegen/make_qml_dbus_cpp.py deleted file mode 100755 index f40bc74df8..0000000000 --- a/src/components/dbus/codegen/make_qml_dbus_cpp.py +++ /dev/null @@ -1,736 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_qml_dbus_cpp.py -# @brief Generator of QML to QDbus C++ part -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2013, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -import os.path -from sys import argv -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser, ParamDesc -from code_formatter import CodeBlock - -prefix_class_item = 'Declarative' -invoke_type_connection = 'Direct' - -def defaultValue(param): - if param.type == "Integer": - return "0" - elif param.type == "Float": - return "0.0" - elif param.type == "Boolean": - return "false" - elif param.enum: - return "0" - -class Impl(FordXmlParser): - def make_dbus_type_declarations(self, out): - for struct in self.structs.items(): - self.write_struct_declaration(struct, out) - - def make_dbus_metatype_declarations(self, out): - for struct in self.structs.items(): - self.write_struct_metatype_declaration(struct, out) - - - def write_struct_declaration(self, ((iface, name), params), out): - struct_name = "{0}_{1}".format(iface, name) - out.write("struct {0} {{\n".format(struct_name)) - with CodeBlock(out) as out: - for param in params: - out.write("{0} {1};\n".format(self.qt_param_type(param), param.name)) - out.write("{0}()\n".format(struct_name)) - initializersList = map(lambda x: "{0}({1})".format(x.name, defaultValue(x)), [p for p in params if p.type != "String" and not p.struct and not p.array]) - if initializersList: - out.write(": " + ",\n ".join(initializersList)) - - out.write("{ }\n") - - out.write("};\n") - out.write('QDBusArgument& operator << (QDBusArgument&, const ' + struct_name + "&);\n") - out.write('const QDBusArgument& operator >> (const QDBusArgument&, ' + struct_name + "&);\n") - out.write('void PutArgToMap(QVariantMap& map, const char* name, const ' + struct_name + "& v);\n") - out.write('QVariant ValueToVariant(const ' + struct_name + "& v);\n") - out.write('QVariant ValueToVariant(const QList<' + struct_name + " >& v);\n") - out.write('bool GetArgFromMap(const QVariantMap& map, const char* name, ' + struct_name + "& v);\n") - out.write('bool VariantToValue(const QVariant& variant, ' + struct_name + "& v);\n") - out.write('bool VariantToValue(const QVariant& variant, QList<' + struct_name + " >& v);\n") - - - def write_struct_metatype_declaration(self, ((iface, name), params), out): - struct_name = iface + '_' + name - out.write('Q_DECLARE_METATYPE(' + struct_name + ")\n") - out.write('Q_DECLARE_METATYPE(OptionalArgument<' + struct_name + ">)\n") - out.write('Q_DECLARE_METATYPE(QList<' + struct_name + ">)\n") - out.write('Q_DECLARE_METATYPE(OptionalArgument >)\n\n") - - - def make_dbus_type_definitions(self, out): - for struct in self.structs.items(): - self.write_struct_definition(struct, out) - - def write_struct_definition(self, ((iface, name), params), out): - struct_name = iface + '_' + name - - out.write('QDBusArgument& operator << (QDBusArgument& arg, const ' + struct_name + "& v) {\n") - with CodeBlock(out) as out: - out.write("arg.beginStructure();\n") - for param in params: - out.write("arg << v.{0};\n".format(param.name)) - out.write("arg.endStructure();\n") - out.write("return arg;\n") - out.write("}\n\n") - - out.write('const QDBusArgument& operator >> (const QDBusArgument& arg, ' + struct_name + "& v) {\n") - with CodeBlock(out) as out: - out.write("arg.beginStructure();\n") - for param in params: - out.write("arg >> v.{0};\n".format(param.name)) - out.write("arg.endStructure();\n") - out.write("return arg;\n") - out.write("}\n\n") - - out.write('QVariant ValueToVariant(const ' + struct_name + "& v) {\n") - with CodeBlock(out) as out: - out.write("QVariantMap map;\n") - for param in params: - out.write("""PutArgToMap(map, "{0}", v.{0});\n""".format(param.name)) - out.write("return QVariant::fromValue(map);\n") - out.write("}\n\n") - - out.write('QVariant ValueToVariant(const QList<' + struct_name + ">& v) {\n") - with CodeBlock(out) as out: - out.write("QList ret;\n") - out.write("for (QList<{0}>::const_iterator i = v.begin(); i != v.end(); ++i)\n".format(struct_name)) - with CodeBlock(out) as out: - out.write("ret.append(ValueToVariant(*i));\n") - out.write("return QVariant::fromValue(ret);\n") - out.write("}\n\n") - - out.write('void PutArgToMap(QVariantMap& map, const char* name, const ' + struct_name + "& v) {\n") - with CodeBlock(out) as out: - out.write("map.insert(name, ValueToVariant(v));\n") - out.write("}\n\n") - - out.write('bool VariantToValue(const QVariant& variant, ' + struct_name + "& v) {\n") - with CodeBlock(out) as out: - out.write("if (variant.type() != QVariant::Map) {\n") - with CodeBlock(out) as out: - out.write("""LOG4CXX_ERROR(logger_, "Input argument isn't a map");\n""") - out.write("return false;\n") - out.write("}\n") - out.write("QVariantMap map = variant.toMap();\n") - for param in params: - out.write("if (!GetArgFromMap(map, \"" + param.name + "\", v." + param.name + ")) return false;\n") - out.write("return true;\n") - out.write("}\n\n") - - out.write('bool VariantToValue(const QVariant& variant, QList<' + struct_name + ">& v) {\n") - with CodeBlock(out) as out: - out.write("if (variant.type() != QVariant::List) {\n") - with CodeBlock(out) as out: - out.write("""LOG4CXX_ERROR(logger_, "Input argument isn't a list");\n""") - out.write("return false;\n") - out.write("}\n") - out.write("QList list = variant.toList();\n") - out.write("for (QList::const_iterator i = list.begin(); i != list.end(); ++i) {\n"); - with CodeBlock(out) as out: - out.write(struct_name + " s;\n"); - out.write("if (!VariantToValue(*i, s)) return false;\n"); - out.write("v.append(s);\n"); - out.write("}\n") - out.write("return true;\n") - out.write("}\n\n") - - out.write('bool GetArgFromMap(const QVariantMap& map, const char* name, ' + struct_name + "& v) {\n") - with CodeBlock(out) as out: - out.write("QVariantMap::const_iterator it = map.find(name);\n") - out.write("if (map.end() == it) {\n") - with CodeBlock(out) as out: - out.write("""LOG4CXX_WARN(logger_, "Argument '" << name << "' not found");\n""") - out.write("return false;\n") - out.write("}\n") - out.write("if (it->type() != QVariant::Map) {\n") - with CodeBlock(out) as out: - out.write("""LOG4CXX_ERROR(logger_, "Argument '" << name << "' isn't a map");\n""") - out.write("return false;\n") - out.write("}\n") - out.write("const QVariantMap& inmap = it->toMap();\n") - for param in params: - out.write("if (!GetArgFromMap(inmap, \"" + param.name + "\", v." + param.name + ")) return false;\n") - out.write("return true;\n") - out.write("}\n\n") - - def write_param_validation(self, param, param_name, fail_statement, out, level=0): - if not param.mandatory and (param.restricted or param.restrictedArray or (param.struct and any(map(lambda x: x.restricted, self.structs[param.fulltype])))): - out.write("if (%s.presence) {\n" % param_name) - param_copy = copy(param) - param_copy.mandatory = True - with CodeBlock(out) as out: - self.write_param_validation(param_copy, param_name + ".val", fail_statement, out, level+1) - out.write("}\n") - elif param.array: - if param.minSize > 0: - out.write("if ({0}.count() < {1}) {{ {2}; }}\n".format(param_name, param.minSize, fail_statement)) - if param.maxSize != None: - out.write("if ({0}.count() > {1}) {{ {2}; }}\n".format(param_name, param.maxSize, fail_statement)) - if param.restricted: - out.write('for ({0}::const_iterator it_{2} = {1}.begin(); it_{2} != {1}.end(); ++it_{2}) {{\n'.format(self.qt_param_type(param), param_name, level)) - with CodeBlock(out) as out: - param_copy = copy(param) - param_copy.array = False - self.write_param_validation(param_copy, "(*it_{0})".format(level), fail_statement, out, level+1) - out.write("}\n") - elif param.struct: - for p in self.structs[param.fulltype]: - self.write_param_validation(p, "{0}.{1}".format(param_name, p.name), fail_statement, out, level+1) - elif param.type == "Integer" or param.type == "Float": - conditions = [] - if (param.minValue != None): - conditions.append("(%s < %s)" % (param_name, param.minValue)) - if (param.maxValue != None): - conditions.append("(%s > %s)" % (param_name, param.maxValue)) - if conditions: - out.write('if (%s) { %s; }\n' % (' || '.join(conditions), fail_statement)) - elif param.type == "String": - conditions = [] - if (param.minLength > 0): - conditions.append("(%s.size() < %s)" % (param_name, param.minLength)) - if (param.maxLength > 0): - conditions.append("(%s.size() > %s)" % (param_name, param.maxLength)) - if conditions: - with CodeBlock(out) as out: - out.write('if (%s) { %s;\n }\n' % (' || '.join(conditions), fail_statement)) - - def qt_param_type(self, param): - if not param.mandatory: - param_copy = copy(param) - param_copy.mandatory = True - return "OptionalArgument< " + self.qt_param_type(param_copy) + " >" - if param.array: - param_copy = copy(param) - param_copy.array = False - if param.type == 'String': - return "QStringList" - return "QList< " + self.qt_param_type(param_copy) + " >" - if param.type == 'Integer' or param.enum: - return 'int' - elif param.type == 'String': - return 'QString' - elif param.type == 'Boolean': - return 'bool' - elif param.type == 'Float': - return 'double' - elif param.struct: - return "_".join(param.fulltype) - return "xxx" - - - def from_variant_func_name(self, param, interface): - prefix = '' - if not param.mandatory: - param_copy = copy(param) - param_copy.mandatory = True - return 'opt_' + self.from_variant_func_name(param_copy, interface) - if param.array: - param_copy = copy(param) - param_copy.array = False - return 'arr_' + self.from_variant_func_name(param_copy, interface) - - if param.type in ['Integer', 'String', 'Boolean', 'Float']: - param_type = param.type - else: - param_type = param.type.split('.') - if len(param_type) > 1: - param_type = (param_type[0], param_type[1]) - else: - param_type = (interface, param_type[0]) - if param_type in self.structs: - param_type = param_type[0] + '_' + param_type[1] - elif param_type in self.enums: - param_type = 'Integer' - return param_type + '_from_variant' - - - def make_method_signature(self, request, response, interface, add_classname): - in_params = [self.make_param_desc(x, interface) for x in request.findall('param')] - out_params = [self.make_param_desc(x, interface) for x in response.findall('param')] - - signature_len = len(''.join(map(lambda x: self.convert_to_dbus_type(x), in_params + out_params))) - if signature_len > 255: - raise RuntimeError("Too long signature of {0} method. Maximum valid length is 255, actual is {1}", request.get('name'), signature_len) - - return "int {0}{1} ({2}{3}const QDBusMessage& message, QString& userMessage_out{4}{5})".format( - interface + "Adaptor::" if add_classname else "", - request.get('name'), - ", ".join(map(lambda x: "const {0}& {1}_in".format(self.qt_param_type(x), x.name), in_params)), - ", " if in_params else "", - ", " if out_params else "", - ", ".join(map(lambda x: "{0}& {1}_out".format(self.qt_param_type(x), x.name), out_params))) - - - def make_signal_signature(self, signal, interface, add_void): - params = signal.findall('param') - if add_void: - retstr = 'void ' - else: - retstr = '' - retstr = retstr + signal.get('name') + '(' - params_num = len(params) - for i in range(0, params_num): - param_desc = self.make_param_desc(params[i], interface) - param_type = self.qt_param_type(param_desc) - retstr = retstr + param_type + ' ' + param_desc.name - if i <> params_num - 1: retstr = retstr + ", " - retstr = retstr + ')' - return retstr - - - def make_qml_signal_signature(self, signal, interface, name, short=False, add_classname=False): - params = signal.findall('param') - if short: - retstr = '' - else: - retstr = 'void ' - if add_classname: - retstr = retstr + interface + 'Adaptor::' - retstr = retstr + name + '(' - params_num = len(params) - for i in range(0, params_num): - param_desc = self.make_param_desc(params[i], interface) - if param_desc.struct or param_desc.array or not param_desc.mandatory: typ = 'QVariant' - elif param_desc.type == 'Integer' or param_desc.enum: typ = 'int' - elif param_desc.type == 'Boolean': typ = 'bool' - elif param_desc.type == 'Float': typ = 'double' - elif param_desc.type == 'String': typ = 'QString' - else: typ = 'QVariant' - retstr = retstr + typ - if not short: retstr = retstr + ' ' + param_desc.name - if i <> params_num - 1: retstr = retstr + ", " - retstr = retstr + ')' - return retstr - - - def write_adaptor_declaration(self, interface_el, notifications, request_responses, out): - global prefix_class_item - def glue_strings(strings): - ret = list() - curstr = '' - for str in strings: - curstr = curstr + str - if(str[-1] == '>'): - ret.append(curstr) - curstr = '' - return ret - ifacename = interface_el.get('name') - out.write("class " + ifacename + "Adaptor : public QDBusAbstractAdaptor {\n"); - out.write(" Q_OBJECT\n"); - out.write(" Q_CLASSINFO(\"D-Bus Interface\", \"" + self.interface_path + '.' + ifacename + "\")\n"); - out.write(" Q_CLASSINFO(\"D-Bus Introspection\",\n"); - introspection_el = self.create_introspection_iface_el(interface_el, 'hmi') - introspection = glue_strings(ElementTree.tostringlist(introspection_el)) - for str in introspection: - str = str.replace('"', '\\"') - out.write('"' + str + '"' + "\n") - out.write(" )\n") - out.write(" public:\n") - out.write(" explicit " + ifacename + "Adaptor(QObject *parent = 0);\n") - out.write(" void SetApi(Q%sItem*);\n" % prefix_class_item) - out.write(" DBusController *dbusController;\n") - out.write(" public slots:\n") - for (request, response) in request_responses: - signature = self.make_method_signature(request, response, ifacename, False) - out.write(" " + signature + ";\n") - out.write(" signals:\n") - for n in notifications: - signature = self.make_signal_signature(n, ifacename, True) - out.write(" " + signature + ";\n") - out.write(" private slots:\n") - for n in notifications: - signature = self.make_qml_signal_signature(n, ifacename, n.get('name') + '_qml', False) - out.write(" " + signature + ";\n") - out.write(" private:\n") - out.write(" Q%sItem* api_;\n" % prefix_class_item) - out.write("};\n\n"); - - def write_adaptor_definition(self, interface_el, notifications, request_responses, out): - global prefix_class_item - iface_name = interface_el.get('name') - classname = iface_name + 'Adaptor' - out.write("{0}::{0}(QObject* parent) : QDBusAbstractAdaptor(parent) {{}}\n".format(classname)) - - out.write("void {0}::SetApi(Q{1}Item* api) {{\n".format(classname, prefix_class_item)) - with CodeBlock(out) as out: - out.write("api_ = api;\n") - for n in notifications: - signame = n.get('name') - signame = signame[:1].lower() + signame[1:] - slotname = n.get('name') + '_qml' - sig_signature = self.make_qml_signal_signature(n, iface_name, signame, True) - slot_signature = self.make_qml_signal_signature(n, iface_name, slotname, True) - out.write("connect(api_, SIGNAL(" + sig_signature + "), this, SLOT(" + slot_signature + "));\n") - out.write("LOG4CXX_TRACE(logger_, \"CONNECT SIGNALS: \" << __PRETTY_FUNCTION__ );\n") - out.write("}\n\n") - - for (request,response) in request_responses: - in_params = [ self.make_param_desc(x, iface_name) for x in request.findall('param') ] - out_params = [ self.make_param_desc(x, iface_name) for x in response.findall('param') ] - - out.write("bool fill{0}{1}Reply(QDBusMessage& message, const QVariantMap& map) {{\n".format(classname, request.get('name'))) - with CodeBlock(out) as out: - out.write("int retCode_out = 0;\n") - out.write("GetArgFromMap(map, \"__retCode\", retCode_out);\n") - out.write("QVariant retCode_arg = QVariant::fromValue(retCode_out);\n") - out.write("message << retCode_arg;\n") - out.write("QString userMessage_out;\n") - out.write("GetArgFromMap(map, \"__message\", userMessage_out);\n") - out.write("QVariant userMessage_arg = QVariant::fromValue(userMessage_out);\n") - out.write("message << userMessage_arg;\n") - for p in out_params: - param_name = p.name - param_type = self.qt_param_type(p) - out.write("%s %s_out;\n" % (param_type, p.name)) - out.write("if (!GetArgFromMap(map, \"{0}\", {0}_out)) {{ return false; }}\n".format(p.name)) - self.write_param_validation(p, p.name + "_out", "return false", out) - out.write("QVariant {0}_arg;\n".format(p.name)) - out.write("{0}_arg.setValue({0}_out);\n".format(p.name)) - out.write("message << {0}_arg;\n".format(p.name)) - out.write("LOG4CXX_DEBUG(logger_, \"Output arguments:\\n\" << QVariant(map));\n") - out.write("LOG4CXX_TRACE(logger_, \"REPLY ASYNC: \" << __PRETTY_FUNCTION__ );\n") - out.write("return true;\n") - out.write("}\n\n") - - out.write("{0} {{\n".format(self.make_method_signature(request, response, iface_name, True))) - with CodeBlock(out) as out: - out.write("LOG4CXX_TRACE(logger_, \"ENTER: \" << __PRETTY_FUNCTION__ );\n") - out.write("int ret = 0;\n") - return_statement = "return ret;\n" - out.write("QVariantMap in_arg;\n"); - out.write("QVariant out_arg_v;\n"); - for param in in_params: - self.write_param_validation(param, param.name + "_in", "RaiseDbusError(this, InvalidData); return ret", out) - out.write("PutArgToMap(in_arg, \"" + param.name + "\", " + param.name + "_in);\n") - out.write("LOG4CXX_DEBUG(logger_, \"Input arguments:\\n\" << in_arg);\n") - method_name = request.get('name')[:1].lower() + request.get('name')[1:] - - out.write("dbusController->message = &message;\n") - out.write("dbusController->fill = &fill{0}{1}Reply;\n".format(classname, request.get("name"))) - - out.write("""if (!QMetaObject::invokeMethod(api_, "{0}", Qt::{1}Connection, Q_RETURN_ARG(QVariant, out_arg_v), Q_ARG(QVariant, QVariant(in_arg)))) {{\n""".format(method_name, invoke_type_connection)) - with CodeBlock(out) as out: - out.write("RaiseDbusError(this, InvalidData);\n") - out.write("LOG4CXX_ERROR(logger_, \"Can't invoke method " + method_name +"\");\n ") - out.write("return ret;\n") - out.write("}\n") - - out.write("dbusController->message = NULL;\n") - out.write("dbusController->fill = NULL;\n") - out.write("if (message.isDelayedReply()) {\n") - with CodeBlock(out) as out: - out.write("return ret;\n") - out.write("}\n") - - out.write("QVariantMap out_arg;\n") - out.write("if (out_arg_v.type() == QVariant::Map) {\n") - with CodeBlock(out) as out: - out.write("out_arg = out_arg_v.toMap();\n") - out.write("};\n") - - out.write("int err;\n") - out.write("""if (GetArgFromMap(out_arg, "__errno", err)) { RaiseDbusError(this, err); return ret; }\n""") - - out.write("int async_uid;\n") - out.write("if (GetArgFromMap(out_arg, \"__async_uid\", async_uid)) {\n") - with CodeBlock(out) as out: - out.write("message.setDelayedReply(true);\n") - out.write("dbusController->addMessage(message, &fill%s%sReply, async_uid);\n" % (classname, request.get('name'))) - out.write("LOG4CXX_TRACE(logger_, \"EXIT ASYNC: \" << __PRETTY_FUNCTION__ );\n") - out.write("return ret;\n"); - out.write("}\n\n") - - for param in out_params: - out.write("if (!GetArgFromMap(out_arg, \"{0}\", {0}_out)) {{ RaiseDbusError(this, InvalidData); return ret; }}\n".format(param.name)) - self.write_param_validation(param, param.name + "_out", "RaiseDbusError(this, InvalidData); return ret", out) - - out.write("GetArgFromMap(out_arg, \"__retCode\", ret);\n") - out.write("GetArgFromMap(out_arg, \"__message\", userMessage_out);\n") - out.write("LOG4CXX_DEBUG(logger_, \"Output arguments:\\n\" << QVariant(out_arg));\n") - out.write("LOG4CXX_TRACE(logger_, \"EXIT: \" << __PRETTY_FUNCTION__ );\n") - out.write("return ret;\n") - out.write("}\n\n") - - for n in notifications: - slotname = n.get('name') + '_qml' - slot_signature = self.make_qml_signal_signature(n, iface_name, slotname, False, True) - out.write(slot_signature + " {\n") - params = n.findall('param') - out.write(" LOG4CXX_TRACE(logger_, \"EMIT SIGNAL: \" << __PRETTY_FUNCTION__ );\n") - out.write(" LOG4CXX_DEBUG(logger_, \"Arguments:\\n{\"") - for p in params[0:-1]: - param = self.make_param_desc(p, iface_name) - out.write(" << \" " + param.name + ":\" << " + param.name + " << \",\"") - for p in params[-1:]: # last param without comma in end line - p = params[-1] - param = self.make_param_desc(p, iface_name) - out.write(" << \" " + param.name + ":\" << " + param.name) - out.write(" << \" }\");\n") - for p in params: - param = self.make_param_desc(p, iface_name) - param_type = self.qt_param_type(param) - param_name = 'p_' + param.name - if param.mandatory: - if param.array or (param.type not in ['Integer', 'String', 'Float', 'Boolean'] and not param.enum): - out.write(' ' + param_type + ' ' + param_name + ";\n") - out.write(' if (!VariantToValue(' + param.name + ', ' + param_name + ")) {\n") - out.write(" LOG4CXX_ERROR(logger_, \"Can't convert variant to value\");\n") - out.write(" return;}\n") - else: - out.write(' ' + param_type + ' ' + param_name + ";\n") - out.write(' ' + param_name + '.presence = !' + param.name + ".isNull();\n") - out.write(' if (' + param_name + ".presence) {\n") - out.write(' if (!VariantToValue(' + param.name + ', ' + param_name + ".val)) {\n") - out.write(" LOG4CXX_ERROR(logger_, \"Can't convert variant to value\");\n") - out.write(" return;\n }\n") - out.write(" }\n") - out.write(' emit ' + n.get('name') + '(') - for i in range(len(params)): - param = self.make_param_desc(params[i], iface_name) - basic_type = (param.type in ['Integer', 'String', 'Float', 'Boolean']) or param.enum - if param.array or (not param.mandatory) or (not basic_type): - param_name = 'p_' + param.name - else: - param_name = param.name - out.write(param_name) - if i != len(params) - 1: out.write(', ') - out.write(");\n") - out.write("}\n\n") - - - def make_dbus_adaptor_declarations(self, out): - for interface_el in self.el_tree.findall('interface'): - notifications = self.find_notifications_by_provider(interface_el, "hmi") - request_responses = self.find_request_response_pairs_by_provider(interface_el, "hmi") - if len(notifications) > 0 or len(request_responses) > 0: - self.write_adaptor_declaration(interface_el, notifications, request_responses, out) - - - def make_dbus_adaptor_definitions(self, out): - for interface_el in self.el_tree.findall('interface'): - notifications = self.find_notifications_by_provider(interface_el, "hmi") - request_responses = self.find_request_response_pairs_by_provider(interface_el, "hmi") - if len(notifications) > 0 or len(request_responses) > 0: - self.write_adaptor_definition(interface_el, notifications, request_responses, out) - - - def make_dbus_register_metatypes_declaraion(self, out): - out.write("void RegisterDbusMetatypes();\n") - - - def make_dbus_register_metatypes_definition(self, out): - out.write("void RegisterDbusMetatypes() {\n") - for (iface, name) in self.structs: - struct_name = iface + '_' + name - out.write('qDBusRegisterMetaType<' + struct_name + ">();\n") - out.write('qDBusRegisterMetaType >();\n") - out.write('qDBusRegisterMetaType >();\n") - out.write('qDBusRegisterMetaType > >();\n") - out.write("}\n") - - - def make_api_adaptors_class(self, out): - global prefix_class_item - out.write("struct ApiAdaptors {\n") - interfaces = self.el_tree.findall('interface') - def filt(iface): - return self.find_notifications_by_provider(iface, "hmi") or self.find_request_response_pairs_by_provider(iface, "hmi") - interfaces = filter(filt, interfaces) - for interface_el in interfaces: - name = interface_el.get('name') + 'Adaptor' - out.write(" " + name + "* " + name + "_;\n") - out.write(" ApiAdaptors() :\n") - for i in range(len(interfaces)): - name = interfaces[i].get('name') + 'Adaptor' - out.write(" " + name + "_(NULL)") - if i <> len(interfaces) - 1: out.write(',') - out.write("\n") - out.write(" {}\n") - out.write(" void Init(QObject* p) {\n") - for interface_el in interfaces: - name = interface_el.get('name') + 'Adaptor' - out.write(" " + name + "_ = new " + name + "(p);\n") - out.write(" }\n") - out.write(" void SetApi(QObject* p) {\n") - for interface_el in interfaces: - name = interface_el.get('name') + 'Adaptor' - chname = interface_el.get('name') - out.write(" " + name + ("_->SetApi(p->findChild(\"" % prefix_class_item) + chname + "\"));\n") - out.write(" }\n") - out.write(" void SetDBusController(DBusController* dc) {\n") - for interface_el in interfaces: - name = interface_el.get('name') + 'Adaptor' - chname = interface_el.get('name') - out.write(" " + name + "_->dbusController = dc;\n") - out.write(" }\n") - out.write("};\n\n") - - - -arg_parser = ArgumentParser(description="Generator of Qt to QDbus C++ part") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--version', required=False, help="Qt version 4.8.5 (default) or 5.1.0") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output files qml_dbus.cc, qml_dbus.h will be saved") -args = arg_parser.parse_args() - -if args.version == "4.8.5": - prefix_class_item = 'Declarative' - invoke_type_connection = 'Direct' -elif args.version == "5.1.0": - prefix_class_item = 'Quick' - invoke_type_connection = 'BlockingQueued' - -header_name = 'qml_dbus.h' -source_name = 'qml_dbus.cc' - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Impl(in_tree_root, 'com.ford.sdl.hmi') - -header_out = open(args.outdir + '/' + header_name, "w") -source_out = open(args.outdir + '/' + source_name, "w") - -header_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -header_out.write("""/** - * @file qml_dbus.h - * @brief Generated QDbus adaptors header file - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") -header_out.write("#ifndef SRC_COMPONENTS_DBUS_QML_DBUS_H_\n"); -header_out.write("#define SRC_COMPONENTS_DBUS_QML_DBUS_H_\n\n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n" % (prefix_class_item, prefix_class_item)); -header_out.write("#include \"qml_dbus_common.h\"\n\n"); -header_out.write("#include \"dbus_controller.h\"\n\n"); -impl.make_dbus_type_declarations(header_out) -impl.make_dbus_adaptor_declarations(header_out) -impl.make_dbus_register_metatypes_declaraion(header_out) -impl.make_api_adaptors_class(header_out) -impl.make_dbus_metatype_declarations(header_out) -header_out.write("#endif // #ifndef SRC_COMPONENTS_DBUS_QML_DBUS_H_\n"); - -source_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -source_out.write("""/** - * @file qml_dbus.cc - * @brief Generated QDbus adaptors source file - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") -source_out.write("#include \"" + header_name + "\"\n\n"); -source_out.write("#include \"utils/logger.h\"\n") -source_out.write("#ifdef ENABLE_LOG\n") -source_out.write("extern log4cxx::LoggerPtr logger_;\n") -source_out.write("#endif // ENABLE_LOG\n\n") -impl.make_dbus_type_definitions(source_out) -impl.make_dbus_adaptor_definitions(source_out) -impl.make_dbus_register_metatypes_definition(source_out) diff --git a/src/components/dbus/codegen/make_qml_dbus_qml.py b/src/components/dbus/codegen/make_qml_dbus_qml.py deleted file mode 100755 index 8d057dcda1..0000000000 --- a/src/components/dbus/codegen/make_qml_dbus_qml.py +++ /dev/null @@ -1,217 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_qml_dbus_qml.py -# @brief Generator of QML to QDbus QML part -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2013, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from os import path -from os import makedirs -from sys import argv -from argparse import ArgumentParser -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser - -namespace = 'dbus_qml' -qt_quick_version = '1.1' -type_variant_name = 'variant' - -class Impl(FordXmlParser): - def write_function(self, ifacename, request, response, out): - name = request.get('name') - name = name[:1].lower() + name[1:] - out.write(" function " + name + "(params) {\n") - out.write(""" console.debug("{0}Proxy::{1}")\n""".format(ifacename, name)) - out.write(" try {\n") - out.write(" if(\"{0}\" in sdl{1})\n".format(name, ifacename)) - out.write(" return sdl{0}.{1}(" .format(ifacename, name)) - params = request.findall('param') - for i in range(len(params)): - out.write('params.' + params[i].get('name')) - if i <> len(params) - 1: - out.write(', ') - out.write(")\n") - out.write(" else\n") - out.write(""" return { "__errno": Common.Result.UNSUPPORTED_REQUEST }\n""") - out.write(" } catch(err) {\n") - out.write(""" return { "__errno": err }\n""") - out.write(" }\n") - out.write(" }\n\n") - - - def write_signal_param(self, param, out): - if param.array or param.struct or not param.mandatory: typ = type_variant_name - elif param.type == 'Integer' or param.enum: typ = 'int' - elif param.type == 'String': typ = 'string' - elif param.type == 'Boolean': typ = 'bool' - elif param.type == 'Float': typ = 'double' - else: typ = type_variant_name - out.write(typ + ' ' + param.name) - - - def write_signal(self, ifacename, notification, out): - name = notification.get('name') - name = name[:1].lower() + name[1:] - out.write(" signal " + name + "(") - params = notification.findall('param') - for i in range(len(params)): - self.write_signal_param(self.make_param_desc(params[i], ifacename), out) - if i <> len(params) - 1: - out.write(', ') - out.write(")\n") - name = notification.get('name') - out.write(""" on{1}: console.debug("emitted {0}:{1}")\n""".format(ifacename, name)) - - - def write_qml(self, iface, out): - global qt_quick_version - name = iface.get('name') - out.write("import QtQuick %s\n" % qt_quick_version) - out.write("""import "Common.js" as Common\n""") - out.write("import \"..\"\n\n") - out.write("Item {\n") - out.write(" " + name + " {\n") - out.write(" id: sdl" + name + "\n") - out.write(" }\n") - - notifications = impl.find_notifications_by_provider(interface_el, "hmi") - request_responses = impl.find_request_response_pairs_by_provider(interface_el, "hmi") - for request, response in request_responses: - self.write_function(name, request, response, out) - for n in notifications: - self.write_signal(name, n, out) - out.write("}\n") - - - def write_js_enum(self, enum, out): - out.write("var " + enum.get('name') + " = {\n") - lastval = -1 - elements = enum.findall('element') - for i in range(len(elements)): - element = elements[i] - value = element.get('value') - if value is None: - value = lastval + 1 - else: - value = int(value) - lastval = value - name = element.get('internal_name') - if name is None: - name = element.get('name') - out.write(" " + name + ': ' + str(value)) - if len(elements) - 1 != i: out.write(',') - out.write("\n") - out.write("}\n\n") - - -def write_header(out): - out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) - out.write("""/** - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -""") - -arg_parser = ArgumentParser(description="Generator of Qt to QDbus QML part") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--version', required=False, help="Qt version 4.8.5 (default) or 5.1.0") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output files with pattern name Proxy.qml will be saved, e.g. BasicCommunicationProxy.qml, ButtonsProxy.qml VRProxy.qml") -args = arg_parser.parse_args() - -if args.version == "4.8.5": - qt_quick_version = "1.1" - type_variant_name = "variant" -elif args.version == "5.1.0": - qt_quick_version = "2.0" - type_variant_name = "var" - -if not path.isdir(args.outdir): - makedirs(args.outdir) - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Impl(in_tree_root) - -for interface_el in in_tree_root.findall('interface'): - notifications = impl.find_notifications_by_provider(interface_el, "hmi") - request_responses = impl.find_request_response_pairs_by_provider(interface_el, "hmi") - if notifications or request_responses: - filename = interface_el.get('name')+'Proxy.qml' - outfile = open(args.outdir + '/' + filename, 'w') - write_header(outfile) - impl.write_qml(interface_el, outfile) - -enum_files = dict() -for (iface, name), enum in impl.enums.items(): - if iface in enum_files: - outfile = enum_files[iface] - else: - filename = iface+'.js' - outfile = open(args.outdir + '/' + filename, 'w') - write_header(outfile) - outfile.write(".pragma library\n") - enum_files[iface] = outfile - impl.write_js_enum(enum, outfile) - - diff --git a/src/components/dbus/codegen/make_qml_requests_cpp.py b/src/components/dbus/codegen/make_qml_requests_cpp.py deleted file mode 100644 index 6674b8f5e2..0000000000 --- a/src/components/dbus/codegen/make_qml_requests_cpp.py +++ /dev/null @@ -1,253 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_qml_dbus_cpp.py -# @brief Generator of QML to QDbus C++ part -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2014, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -import os.path -from sys import argv -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser, ParamDesc -from code_formatter import CodeBlock - -prefix_class_item = 'Declarative' -invoke_type_connection = 'Direct' - -def defaultValue(param): - if param.type == "Integer": - return "0" - elif param.type == "Float": - return "0.0" - elif param.type == "Boolean": - return "false" - elif param.enum: - return "0" - -class Impl(FordXmlParser): - - - def args_for_function_definition(self, params, out): - if len(params) == 0: - out.write('QJSValue hmi_callback') - return - for param in params: - out.write('QVariant ' + param.get('name') + ', ') - out.write('QJSValue hmi_callback') - - - def make_requests_for_header(self, out): - for interface_el in self.el_tree.findall('interface'): - request_responses = self.find_request_response_pairs_by_provider(interface_el, "sdl") - for (request, response) in request_responses: - all_params = list() - for param_el in request.findall('param'): - all_params.append(param_el) - with CodeBlock(out) as output: - output.write("Q_INVOLABKE void " + interface_el.get('name') + "_" +request.get('name') + "(") - impl.args_for_function_definition(all_params, out) - output.write(");\n") - - - def make_header_file(self, out): - out.write("class RequestToSDL : public QObject\n") - out.write("{\n") - out.write(" public:\n") - with CodeBlock(out) as output: - output.write("explicit RequestToSDL(QObject *parent = 0);\n") - output.write("~RequestToSDL();\n") - impl.make_requests_for_header(out) - out.write(" private:\n") - with CodeBlock(out) as output: - for interface_el in self.el_tree.findall('interface'): - output.write('QDBusInterface *' + interface_el.get('name') + ';\n') - out.write("};\n") - - - def make_requests_for_source(self, out): - for interface_el in self.el_tree.findall('interface'): - request_responses = self.find_request_response_pairs_by_provider(interface_el, "sdl") - for (request, response) in request_responses: - out.write('void RequestToSDL::' + request.get('name') + '(QString name, ') - for param_el in request.findall('param'): - out.write('QVariant ' + param_el.get('name') + ', ') - out.write('QJSValue hmi_callback) {\n') - with CodeBlock(out) as output: - output.write('QList args;\n') - for param_el in request.findall('param'): - output.write('args << ' + param_el.get('name') + ';\n') - output.write('new ' + interface_el.get('name') + '_' + request.get('name') + '(' + interface_el.get('name') + ', name, args, hmi_callback);\n}\n') - - - - def make_source_file(self, out): - out.write('#include "request_to_sdl.h"\n') - out.write('\n') - out.write('RequestToSDL::RequestToSDL(QObject *parent) {\n') - with CodeBlock(out) as output: - output.write('QDBusConnection bus = QDBusConnection::sessionBus();\n') - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - output.write(iface_name + ' = new QDBusInterface("com.ford.sdl.core", "/", "com.ford.sdl.core.' + iface_name + '", bus, this);\n') - out.write('}\n\n') - out.write('RequestToSDL::~RequestToSDL() {\n') - with CodeBlock(out) as output: - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - output.write(iface_name + '->deleteLater();\n') - output.write('this->deleteLater();\n') - out.write('}\n\n') - impl.make_requests_for_source(out) - - - - - -arg_parser = ArgumentParser(description="Generator of Qt to QDbus C++ part") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--version', required=False, help="Qt version 4.8.5 (default) or 5.1.0") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output files request_to_sdl.h, request_to_sdl.cc will be saved") -args = arg_parser.parse_args() - -if args.version == "4.8.5": - prefix_class_item = 'Declarative' - invoke_type_connection = 'Direct' -elif args.version == "5.1.0": - prefix_class_item = 'Quick' - invoke_type_connection = 'BlockingQueued' - -header_name = 'request_to_sdl.h' -source_name = 'request_to_sdl.cc' - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Impl(in_tree_root, 'com.ford.sdl.hmi') - -header_out = open(args.outdir + '/' + header_name, "w") -source_out = open(args.outdir + '/' + source_name, "w") - -header_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -header_out.write("""/** - * @file request_to_sdl.h - * @brief Generated class that process requests from qtHMI - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") -header_out.write("#ifndef SRC_COMPONENTS_QTHMI_QMLMODELQT5_REQUESTTOSDL_\n"); -header_out.write("#define SRC_COMPONENTS_QTHMI_QMLMODELQT5_REQUESTTOSDL_\n\n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write("#include \n"); -header_out.write('#include "hmi_requests.h"\n'); - -impl.make_header_file(header_out) - -header_out.write("#endif SRC_COMPONENTS_QTHMI_QMLMODELQT5_REQUESTTOSDL_\n"); - - -source_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -source_out.write("""/** - * @file request_to_sdl.cc - * @brief Generated class that process requests from qtHMI - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2014, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -""") - -impl.make_source_file(source_out) diff --git a/src/components/dbus/codegen/make_request_to_sdl.py b/src/components/dbus/codegen/make_request_to_sdl.py deleted file mode 100755 index c8940f3eb7..0000000000 --- a/src/components/dbus/codegen/make_request_to_sdl.py +++ /dev/null @@ -1,335 +0,0 @@ -#!/usr/bin/env python -# -*- coding: utf-8 -*- -# -# @file make_qml_dbus_cpp.py -# @brief Generator of QML to QDbus C++ part -# -# This file is a part of HMI D-Bus layer. -# -# Copyright (c) 2014, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -from argparse import ArgumentParser -import os.path -from sys import argv -from xml.etree import ElementTree -from copy import copy -from ford_xml_parser import FordXmlParser, ParamDesc -from code_formatter import CodeBlock - -class Impl(FordXmlParser): - - def args_for_function_definition(self, params, iface_name, out): - for param_el in params: - param = self.make_param_desc(param_el, iface_name) - out.write('QVariant %s,' % (param.name)) - out.write('Q%sValue hmi_callback' % prefix_class_item) - - def make_requests_for_header(self, out): - for interface_el in self.el_tree.findall('interface'): - request_responses = self.find_request_response_pairs_by_provider(interface_el, "sdl") - for (request, response) in request_responses: - all_params = list() - for param_el in request.findall('param'): - all_params.append(param_el) - with CodeBlock(out) as output: - output.write("Q_INVOKABLE bool %s_%s(" % (interface_el.get('name'), request.get('name'))) - impl.args_for_function_definition(all_params, interface_el.get('name'), out) - output.write(");\n") - - - def make_header_file(self, out): - out.write("class QDBusInterface;\n") - out.write("class RequestToSDL : public QObject\n") - out.write("{\n") - out.write(' Q_OBJECT\n') - out.write(" public:\n") - with CodeBlock(out) as output: - output.write("explicit RequestToSDL(QObject *parent = 0);\n") - output.write("~RequestToSDL();\n") - impl.make_requests_for_header(out) - out.write(" private:\n") - with CodeBlock(out) as output: - for interface_el in self.el_tree.findall('interface'): - output.write('QDBusInterface *%s;\n' % interface_el.get('name')) - out.write("};\n") - - - def qt_param_type(self, param): - if not param.mandatory: - param_copy = copy(param) - param_copy.mandatory = True - return "OptionalArgument< " + self.qt_param_type(param_copy) + " >" - if param.array: - param_copy = copy(param) - param_copy.array = False - if param.type == 'String': - return "QStringList" - return "QList< " + self.qt_param_type(param_copy) + " >" - if param.type == 'Integer' or param.enum: - return 'int' - elif param.type == 'String': - return 'QString' - elif param.type == 'Boolean': - return 'bool' - elif param.type == 'Float': - return 'double' - elif param.struct: - return "_".join(param.fulltype) - else: - raise RuntimeError('Unknown type: ' + param.type) - - - def make_requests_for_source(self, out): - for interface_el in self.el_tree.findall('interface'): - request_responses = self.find_request_response_pairs_by_provider(interface_el, "sdl") - for (request, response) in request_responses: - request_name = request.get('name') - iface_name = interface_el.get('name') - request_full_name = iface_name + '_' + request_name - out.write('bool RequestToSDL::' + request_full_name + '(') - for param_el in request.findall('param'): - out.write('QVariant %s, ' % (param_el.get('name'))) - out.write('Q%sValue hmi_callback) {\n' % prefix_class_item) - with CodeBlock(out) as output: - output.write('LOG4CXX_TRACE(logger_, "ENTER");\n') - output.write('QList args;\n') - for param_el in request.findall('param'): - param = self.make_param_desc(param_el, iface_name) - output.write('%s %s;\n' % (impl.qt_param_type(param), param.name + "_tmp")) - output.write('if (VariantToValue(%s, %s)) {\n' % (param.name, param.name + '_tmp')) - with CodeBlock(output) as out: - self.write_param_validation(param, param.name + "_tmp", - "\nLOG4CXX_ERROR(logger_, \"%s in %s out of bounds\");\nreturn false" % (param.name, request_full_name), - out) - out.write('args << QVariant::fromValue(%s);\n' % (param.name + '_tmp')) - output.write('} else {\n') - with CodeBlock(output) as out: - out.write('LOG4CXX_ERROR(logger_, "%s in %s is NOT valid");\n' % (param.name, request_full_name)) - out.write('return false;\n') - out.write('}\n') - output.write('new requests::' + request_full_name + '(hmi_callback, ' + interface_el.get('name') + ' , args, ' - + '"' + request_name + '");\n') - output.write('LOG4CXX_TRACE(logger_, "EXIT");\n') - output.write('return true;\n') - out.write('}\n\n') - - - def write_param_validation(self, param, param_name, fail_statement, out, level=0): - if not param.mandatory and (param.restricted or param.restrictedArray or (param.struct and any(map(lambda x: x.restricted, self.structs[param.fulltype])))): - out.write("if (%s.presence) {\n" % param_name) - param_copy = copy(param) - param_copy.mandatory = True - with CodeBlock(out) as out: - self.write_param_validation(param_copy, param_name + ".val", fail_statement, out, level+1) - out.write("}\n") - elif param.array: - if param.minSize > 0: - out.write("if ({0}.count() < {1}) {{".format(param_name, param.minSize)) - with CodeBlock(out) as out: - out.write("{0};\n".format(fail_statement)) - out.write("}\n") - if param.maxSize != None: - out.write("if ({0}.count() > {1}) {{".format(param_name, param.maxSize)) - with CodeBlock(out) as out: - out.write("{0};\n".format(fail_statement)) - out.write("}\n") - if param.restricted: - out.write('for ({0}::const_iterator it_{2} = {1}.begin(); it_{2} != {1}.end(); ++it_{2}) {{\n'.format(self.qt_param_type(param), param_name, level)) - with CodeBlock(out) as out: - param_copy = copy(param) - param_copy.array = False - self.write_param_validation(param_copy, "(*it_{0})".format(level), fail_statement, out, level+1) - out.write("}\n") - elif param.struct: - for p in self.structs[param.fulltype]: - self.write_param_validation(p, "{0}.{1}".format(param_name, p.name), fail_statement, out, level+1) - elif param.type == "Integer" or param.type == "Float": - conditions = [] - if (param.minValue != None): - conditions.append("(%s < %s)" % (param_name, param.minValue)) - if (param.maxValue != None): - conditions.append("(%s > %s)" % (param_name, param.maxValue)) - if conditions: - out.write('if (%s) {' % ' || '.join(conditions)) - with CodeBlock(out) as out: - out.write('%s;\n' % fail_statement) - out.write("}\n") - elif param.type == "String": - conditions = [] - if (param.minLength > 0): - conditions.append("(%s.size() < %s)" % (param_name, param.minLength)) - if (param.maxLength > 0): - conditions.append("(%s.size() > %s)" % (param_name, param.maxLength)) - if conditions: - out.write('if (%s) {' % ' || '.join(conditions)) - with CodeBlock(out) as out: - out.write('%s;\n' % (fail_statement)) - out.write("}\n") - - def make_source_file(self, out): - out.write('RequestToSDL::RequestToSDL(QObject *parent) {\n') - with CodeBlock(out) as output: - output.write('QDBusConnection bus = QDBusConnection::sessionBus();\n') - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - output.write(iface_name + ' = new QDBusInterface("com.ford.sdl.core", "/", "com.ford.sdl.core.' + iface_name + '", bus, this);\n') - out.write('}\n\n') - out.write('RequestToSDL::~RequestToSDL() {\n') - with CodeBlock(out) as output: - for interface_el in self.el_tree.findall('interface'): - iface_name = interface_el.get('name') - output.write(iface_name + '->deleteLater();\n') - output.write('this->deleteLater();\n') - out.write('}\n\n') - impl.make_requests_for_source(out) - -arg_parser = ArgumentParser(description="Generator of Qt to QDbus C++ part") -arg_parser.add_argument('--infile', required=True, help="full name of input file, e.g. applink/src/components/interfaces/QT_HMI_API.xml") -arg_parser.add_argument('--version', required=False, help="Qt version 4.8.5 (default) or 5.1.0") -arg_parser.add_argument('--outdir', required=True, help="path to directory where output files request_to_sdl.h, request_to_sdl.cc will be saved") -args = arg_parser.parse_args() - - -if args.version == "4.8.5": - prefix_class_item = 'Script' - invoke_type_connection = 'Direct' -elif args.version == "5.1.0": - prefix_class_item = 'JS' - invoke_type_connection = 'BlockingQueued' -else: - prefix_class_item = 'JS' - invoke_type_connection = 'BlockingQueued' - -header_name = 'request_to_sdl.h' -source_name = 'request_to_sdl.cc' - -in_tree = ElementTree.parse(args.infile) -in_tree_root = in_tree.getroot() - -impl = Impl(in_tree_root, 'com.ford.sdl.hmi') - -header_out = open(args.outdir + '/' + header_name, "w") -source_out = open(args.outdir + '/' + source_name, "w") - -header_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -header_out.write(""" -/* - Copyright (c) 2014, Ford Motor Company - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following - disclaimer in the documentation and/or other materials provided with the - distribution. - - Neither the name of the Ford Motor Company nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. -*/ -""") -header_out.write("#ifndef SRC_COMPONENTS_QT_HMI_QML_PLUGINS_DBUS_ADAPTER_REQUEST_TO_SDL_H_\n") -header_out.write("#define SRC_COMPONENTS_QT_HMI_QML_PLUGINS_DBUS_ADAPTER_REQUEST_TO_SDL_H_\n\n") - -header_out.write("#include \n") -header_out.write("#include \n") -header_out.write("#include \n\n") -header_out.write('#include "qml_dbus.h"\n\n') -if args.version == "4.8.5": - header_out.write("#include \n") -elif args.version == "5.1.0": - header_out.write("#include \n") - -impl.make_header_file(header_out) -header_out.write("#endif // SRC_COMPONENTS_QT_HMI_QML_PLUGINS_DBUS_ADAPTER_REQUEST_TO_SDL_H_") - - -source_out.write("// Warning! This file is generated by '%s'. Edit at your own risk.\n" % argv[0]) -source_out.write(""" -/* - Copyright (c) 2014, Ford Motor Company - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions are met: - - Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - - Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following - disclaimer in the documentation and/or other materials provided with the - distribution. - - Neither the name of the Ford Motor Company nor the names of its contributors - may be used to endorse or promote products derived from this software - without specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE - ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. -*/ - -""") - -source_out.write('#include "request_to_sdl.h"\n') -source_out.write("#include \n") -source_out.write("#include \n") -source_out.write('#include "hmi_requests.h"\n') -source_out.write('#include "utils/logger.h"\n\n') -source_out.write('CREATE_LOGGERPTR_GLOBAL(logger_, "DBusPlugin")\n\n') - -impl.make_source_file(source_out) -- cgit v1.2.1 From c6fbf117ee4bdee6743d0fe35a189104f47efd17 Mon Sep 17 00:00:00 2001 From: Jacob Keeler Date: Tue, 10 Jul 2018 13:57:52 -0400 Subject: Remove DBus from project --- src/components/dbus/CMakeLists.txt | 64 - src/components/dbus/codegen/introspection_xml.cc | 327 - src/components/dbus/include/dbus/dbus_adapter.h | 375 - src/components/dbus/include/dbus/dbus_message.h | 179 - .../dbus/include/dbus/dbus_message_controller.h | 97 - .../dbus/include/dbus/dbus_message_inl.h | 214 - .../dbus/include/dbus/message_descriptions.h | 73 - src/components/dbus/include/dbus/schema.h | 98 - src/components/dbus/src/dbus_adapter.cc | 937 -- src/components/dbus/src/dbus_message.cc | 217 - src/components/dbus/src/dbus_message_controller.cc | 90 - src/components/dbus/src/introspection_xml.cc | 327 - src/components/dbus/src/message_descriptions.cc | 10424 ------------------- src/components/dbus/src/schema.cc | 145 - src/components/dbus/test/CMakeLists.txt | 53 - src/components/dbus/test/dbus_adapter_test.cc | 59 - .../dbus/test/dbus_message_controller_test.cc | 116 - .../include/dbus/mock_dbus_message_controller.h | 75 - .../dbus/test/include/dbus/mock_subscriber.h | 62 - src/components/dbus/test/mock_subscriber.cc | 71 - src/components/dbus/test/schema_test.cc | 118 - 21 files changed, 14121 deletions(-) delete mode 100644 src/components/dbus/CMakeLists.txt delete mode 100644 src/components/dbus/codegen/introspection_xml.cc delete mode 100644 src/components/dbus/include/dbus/dbus_adapter.h delete mode 100644 src/components/dbus/include/dbus/dbus_message.h delete mode 100644 src/components/dbus/include/dbus/dbus_message_controller.h delete mode 100644 src/components/dbus/include/dbus/dbus_message_inl.h delete mode 100644 src/components/dbus/include/dbus/message_descriptions.h delete mode 100644 src/components/dbus/include/dbus/schema.h delete mode 100644 src/components/dbus/src/dbus_adapter.cc delete mode 100644 src/components/dbus/src/dbus_message.cc delete mode 100644 src/components/dbus/src/dbus_message_controller.cc delete mode 100644 src/components/dbus/src/introspection_xml.cc delete mode 100644 src/components/dbus/src/message_descriptions.cc delete mode 100644 src/components/dbus/src/schema.cc delete mode 100644 src/components/dbus/test/CMakeLists.txt delete mode 100644 src/components/dbus/test/dbus_adapter_test.cc delete mode 100644 src/components/dbus/test/dbus_message_controller_test.cc delete mode 100644 src/components/dbus/test/include/dbus/mock_dbus_message_controller.h delete mode 100644 src/components/dbus/test/include/dbus/mock_subscriber.h delete mode 100644 src/components/dbus/test/mock_subscriber.cc delete mode 100644 src/components/dbus/test/schema_test.cc (limited to 'src/components/dbus') diff --git a/src/components/dbus/CMakeLists.txt b/src/components/dbus/CMakeLists.txt deleted file mode 100644 index 7679153a0c..0000000000 --- a/src/components/dbus/CMakeLists.txt +++ /dev/null @@ -1,64 +0,0 @@ -# Copyright (c) 2016, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake) - -include_directories ( - ${DBUS_INCLUDE_DIRS} - ${CMAKE_CURRENT_SOURCE_DIR}/include/ - ${CMAKE_SOURCE_DIR}/ - ${COMPONENTS_DIR} - ${COMPONENTS_DIR}/formatters/include/ - ${COMPONENTS_DIR}/smart_objects/include/ - ${COMPONENTS_DIR}/utils/include/ - ${CMAKE_BINARY_DIR}/src/components/ -) - -set(PATHS - ${CMAKE_CURRENT_SOURCE_DIR}/include - ${CMAKE_CURRENT_SOURCE_DIR}/src - ${CMAKE_CURRENT_SOURCE_DIR}/src/introspection_xml.cc - ${CMAKE_CURRENT_BINARY_DIR}/message_descriptions.cc -) -collect_sources(SOURCES "${PATHS}") - -set(LIBRARIES - HMI_API - Utils - dbus-1 -) - -add_library("DBus" ${SOURCES}) - -target_link_libraries("DBus" "${LIBRARIES}") - -if(BUILD_TESTS) - add_subdirectory(test) -endif() diff --git a/src/components/dbus/codegen/introspection_xml.cc b/src/components/dbus/codegen/introspection_xml.cc deleted file mode 100644 index 210c232a4d..0000000000 --- a/src/components/dbus/codegen/introspection_xml.cc +++ /dev/null @@ -1,327 +0,0 @@ -// Warning! This file is generated by 'make_introspection_c.py'. Edit at your -// own risk. -/** - * @file instrospections_xml.cc - * @brief D-Bus introspection XML as C-string - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -char introspection_xml[] = { - 0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x6e, 0x6f, - 0x64, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, - 0x2f, 0x2f, 0x66, 0x72, 0x65, 0x65, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, - 0x70, 0x2f, 0x2f, 0x44, 0x54, 0x44, 0x20, 0x44, 0x2d, 0x42, 0x55, 0x53, - 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x49, 0x6e, 0x74, 0x72, - 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, - 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, - 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x66, 0x72, 0x65, 0x65, 0x64, - 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x73, - 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x64, 0x62, 0x75, - 0x73, 0x2f, 0x31, 0x2e, 0x30, 0x2f, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x73, - 0x70, 0x65, 0x63, 0x74, 0x2e, 0x64, 0x74, 0x64, 0x22, 0x3e, 0x0a, 0x3c, - 0x6e, 0x6f, 0x64, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x2f, - 0x63, 0x6f, 0x6d, 0x2f, 0x66, 0x6f, 0x72, 0x64, 0x2f, 0x68, 0x6d, 0x69, - 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x66, - 0x6f, 0x72, 0x64, 0x2e, 0x68, 0x6d, 0x69, 0x2e, 0x73, 0x64, 0x6c, 0x2e, - 0x42, 0x61, 0x73, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x3c, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, - 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, - 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, - 0x6e, 0x53, 0x44, 0x4c, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, - 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x4e, - 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, - 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x41, 0x70, 0x70, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x28, 0x73, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, - 0x29, 0x28, 0x73, 0x73, 0x28, 0x62, 0x69, 0x29, 0x28, 0x62, 0x62, 0x29, - 0x29, 0x73, 0x28, 0x62, 0x61, 0x28, 0x73, 0x69, 0x29, 0x29, 0x28, 0x62, - 0x61, 0x73, 0x29, 0x69, 0x69, 0x62, 0x28, 0x62, 0x61, 0x69, 0x29, 0x28, - 0x62, 0x62, 0x29, 0x28, 0x62, 0x61, 0x69, 0x29, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x74, 0x74, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x28, 0x62, 0x61, 0x28, 0x73, 0x69, 0x29, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x76, 0x72, 0x53, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x73, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x61, 0x73, - 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x56, 0x72, - 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x73, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, - 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, - 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, - 0x41, 0x70, 0x70, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, - 0x72, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, - 0x65, 0x64, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x6f, 0x6e, - 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x74, 0x68, 0x6f, - 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x53, 0x44, 0x4c, 0x43, 0x6c, - 0x6f, 0x73, 0x65, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x50, - 0x75, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, - 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, - 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, - 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x46, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x79, 0x6e, 0x63, - 0x46, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, - 0x6e, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x2f, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x3e, 0x3c, 0x69, 0x6e, 0x74, 0x65, - 0x72, 0x66, 0x61, 0x63, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x6f, 0x72, 0x64, 0x2e, 0x68, 0x6d, 0x69, - 0x2e, 0x73, 0x64, 0x6c, 0x2e, 0x55, 0x49, 0x22, 0x3e, 0x3c, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, - 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, - 0x61, 0x63, 0x65, 0x3e, 0x3c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, - 0x63, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6d, - 0x2e, 0x66, 0x6f, 0x72, 0x64, 0x2e, 0x68, 0x6d, 0x69, 0x2e, 0x73, 0x64, - 0x6c, 0x2e, 0x53, 0x44, 0x4c, 0x22, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x68, - 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x22, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, - 0x43, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x53, 0x44, - 0x4c, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, - 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x28, 0x73, 0x73, 0x28, 0x62, 0x69, 0x29, 0x28, - 0x62, 0x62, 0x29, 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, - 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x69, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x65, 0x64, - 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x41, 0x70, 0x70, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x62, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, - 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x61, 0x28, 0x73, 0x69, 0x28, 0x62, 0x62, 0x29, - 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x41, - 0x70, 0x70, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x6d, - 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x6c, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, - 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x73, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, - 0x67, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, - 0x69, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, - 0x43, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x28, 0x62, 0x61, 0x28, 0x73, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, - 0x29, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, - 0x29, 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, - 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, - 0x74, 0x4f, 0x66, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x64, - 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, - 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, - 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x28, 0x73, 0x69, 0x28, 0x62, 0x62, - 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, - 0x6f, 0x64, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x44, 0x4c, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x43, 0x6f, - 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x6d, - 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x43, - 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, - 0x2f, 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, - 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x47, 0x65, 0x74, 0x55, 0x52, 0x4c, 0x53, 0x22, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, - 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, - 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, - 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x72, - 0x6c, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, - 0x61, 0x28, 0x73, 0x28, 0x62, 0x73, 0x29, 0x29, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x73, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x4f, 0x6e, 0x41, 0x70, 0x70, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x22, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, - 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x41, 0x70, 0x70, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, - 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x52, 0x65, 0x76, - 0x6f, 0x6b, 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, - 0x62, 0x61, 0x28, 0x73, 0x69, 0x28, 0x62, 0x62, 0x29, 0x29, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x61, 0x70, 0x70, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, - 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, - 0x55, 0x6e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x61, - 0x69, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x53, 0x44, 0x4c, 0x43, 0x6f, - 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x22, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x73, 0x73, 0x28, 0x62, 0x69, 0x29, 0x28, 0x62, 0x62, - 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, - 0x3c, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x3e, - 0x3c, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x3e, 0x00}; \ No newline at end of file diff --git a/src/components/dbus/include/dbus/dbus_adapter.h b/src/components/dbus/include/dbus/dbus_adapter.h deleted file mode 100644 index 42a2ac1140..0000000000 --- a/src/components/dbus/include/dbus/dbus_adapter.h +++ /dev/null @@ -1,375 +0,0 @@ -/* - * Copyright (c) 2013-2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_ADAPTER_H_ -#define SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_ADAPTER_H_ - -#include -#include "smart_objects/smart_object.h" -#include "dbus/schema.h" -#include "dbus/message_descriptions.h" - -struct DBusConnection; -struct DBusMessage; -struct DBusMessageIter; - -namespace dbus { - -/** - * \brief class for work with DBus - */ -class DBusAdapter { - public: - /** - * \brief constructs DBus adapter - * \param sdlServiceName core service name - * \param sdlObjectPath core object path - * \param hmiServiceName hmi service name - */ - DBusAdapter(const std::string& sdlServiceName, - const std::string& sdlObjectPath, - const std::string& hmiServiceName, - const std::string& hmiObjectPath); - - /** - * \brief destructs DBus adapter - */ - virtual ~DBusAdapter(); - - /** - * \brief inits service - * \return true if success - */ - bool Init(); - - /** - * \brief return schema messages for DBus - * \return schema - */ - const DBusSchema& get_schema() const; - - protected: - /** - * \brief calls method on HMI - * \param id id message - * \param func_id id function in Ford protocol - * \param name pair interface and name of method for call - * \param obj params for call - */ - void MethodCall(uint id, - const MessageId func_id, - const MessageName& name, - const smart_objects::SmartObject& obj); - - /** - * \brief sends signal - * \param id id message - * \param func_id id function in Ford protocol - * \param name pair interface and name of signal for call - * \param obj params for signal - */ - void Signal(const MessageId func_id, - const MessageName& name, - const smart_objects::SmartObject& obj); - - /** - * \brief returns result of call method to HMI - * \param id id message - * \param obj params for return - */ - void MethodReturn(uint id, - const MessageId func_id, - const MessageName& name, - const smart_objects::SmartObject& obj); - - /** - * \brief sends error on message from HMI - * \param id id message - * \param msg message from HMI - * \param name name of error - * \param description description of error - */ - void Error(uint id, const std::string& name, const std::string& description); - - /** - * \brief adds a match rule - * \param rule string rule in the DBus specification - */ - void AddMatch(const std::string& rule); - - /** - * \brief processes incoming message from DBus if queue isn't empty - * and fill obj - * \param obj object for send to core - * \return true if message processed - */ - bool Process(smart_objects::SmartObject& obj); - - /** - * \brief saves link D-Bus serial to Ford message id - * \param serial D-Bus message serial - * \param ids pair correlation id and Ford message id - */ - inline void SaveRequestToHMI(uint32_t serial, - const std::pair& ids); - - /** - * \brief gets Ford message id by serial - * \param serial D-Bus message serial - * \return pair correlation id and Ford message id - */ - inline std::pair GetRequestToHMI(uint32_t serial); - - /** - * \brief saves link D-Bus serial to Ford message id - * \param serial D-Bus message serial - * \param request D-Bus message from HMI - */ - inline void SaveRequestFromHMI(uint32_t serial, DBusMessage* request); - - /** - * \brief gets D-Bus message id by serial - * \param serial DBus message serial - * \return D-Bus message from HMI - */ - inline DBusMessage* GetRequestFromHMI(uint32_t serial); - - std::string sdl_service_name_; - std::string sdl_object_path_; - std::string hmi_service_name_; - std::string hmi_object_path_; - DBusConnection* conn_; - - private: - /** - * \brief schema messages and arguments for DBus - */ - const DBusSchema* schema_; - - /** - * \brief mapping serial message DBus on message id Ford protocol - */ - std::map > requests_to_hmi_; - - /** - * \brief mapping message id Ford protocol on message DBus - */ - std::map requests_from_hmi_; - - /** - * \brief processes incoming call of method and fill obj - * \param msg message from DBus - * \param obj object for send to core - * \return true if success - */ - bool ProcessMethodCall(DBusMessage* msg, smart_objects::SmartObject& obj); - - /** - * \brief processes incoming return of method and fill obj - * \param msg message from DBus - * \param obj object for send to core - * \return true if success - */ - bool ProcessMethodReturn(DBusMessage* msg, smart_objects::SmartObject& obj); - - /** - * \brief processes incoming error and fill obj - * \param msg message from DBus - * \param obj object for send to core - * \return true if success - */ - bool ProcessError(DBusMessage* msg, smart_objects::SmartObject& obj); - - /** - * \brief processes incoming signal and fill obj - * \param msg message from DBus - * \param obj object for send to core - * \return true if success - */ - bool ProcessSignal(DBusMessage* msg, smart_objects::SmartObject& obj); - - /** - * \brief sets arguments to message - * \param msg DBus message - * \param rules list of rules for arguments - * \param args map of arguments - * \return true if success - */ - bool SetArguments(DBusMessage* msg, - const ListArgs& rules, - const smart_objects::SmartObject& args); - - /** - * \brief Sets one argument to message - * \param iter DBus message iterator - * \param rules description for argument - * \param param value of argument - * \return true if success - */ - bool SetOneArgument( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - const smart_objects::SmartObject& param); - - /** - * \brief sets value for argument - * \param iter DBus message iterator - * \param rules description for argument - * \param param value of argument - * \return true if success - */ - bool SetValue(DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - const smart_objects::SmartObject& param); - - /** - * \brief sets value for every element of argument - * \param iter DBus message iterator - * \param rules description for argument - * \param param array values of argument - * \return true if success - */ - bool SetArrayValue(DBusMessageIter* iter, - const ford_message_descriptions::ArrayDescription* rules, - const smart_objects::SmartObject& param); - - /** - * \brief sets struct value for argument - * \param iter DBus message iter - * \param rules description for argument - * \param param structure - * \return true if success - */ - bool SetStructValue(DBusMessageIter* iter, - const ford_message_descriptions::StructDescription* rules, - const smart_objects::SmartObject& param); - - /** - * \brief sets optional value for argument. - * Optional param is struct bool, value - * \param iter DBus message iterator - * \param rules description for argument - * \param param value of optional argument - * \return true if success - */ - bool SetOptionalValue( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - const smart_objects::SmartObject& param); - - /** - * \brief gets arguments from message - * \param iter DBus message iterator - * \param code response code (output) - * \param message response message (output) - * \return true if success - */ - bool GetHeader(DBusMessageIter* iter, int* code, std::string* message); - - /** - * \brief gets arguments from message with header - * \param iter DBus message iterator - * \param rules list of rules for arguments - * \param args map of arguments - * \return true if success - */ - bool GetArguments(DBusMessageIter* iter, - const ListArgs& rules, - smart_objects::SmartObject& args); - - /** - * \brief gets one argument from message - * \param iter DBus message iterator - * \param rules description for argument - * \param args map of arguments - * \return true if success - */ - bool GetOneArgument( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - smart_objects::SmartObject& args); - - /** - * \brief gets value for argument - * \param iter DBus message iterator - * \param rules description for argument - * \param param value of argument - * \return true if success - */ - bool GetValue(DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - smart_objects::SmartObject& param); - - /** - * \brief gets value for every element of argument - * \param iter DBus message iterator - * \param rules description for argument - * \param param array values of argument - * \return true if success - */ - bool GetArrayValue(DBusMessageIter* iter, - const ford_message_descriptions::ArrayDescription* rules, - smart_objects::SmartObject& param); - - /** - * \brief gets struct value for argument - * \param iter DBus message iterator - * \param rules description for argument - * \param param structure - * \return true if success - */ - bool GetStructValue(DBusMessageIter* iter, - const ford_message_descriptions::StructDescription* rules, - smart_objects::SmartObject& param); - - /** - * \brief gets optional value for argument. - * Optional param is struct bool, value - * \param iter DBus message iterator - * \param rules description for argument - * \param param value of optional argument - * \return true if success - */ - bool GetOptionalValue( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - smart_objects::SmartObject& param); - - /** - * \brief processes request on introspect - * \param msg DBus message - */ - void Introspect(DBusMessage* msg); -}; - -} // namespace dbus - -#endif // SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_ADAPTER_H_ diff --git a/src/components/dbus/include/dbus/dbus_message.h b/src/components/dbus/include/dbus/dbus_message.h deleted file mode 100644 index 23e672d0fc..0000000000 --- a/src/components/dbus/include/dbus/dbus_message.h +++ /dev/null @@ -1,179 +0,0 @@ -/* Copyright (c) 2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_H_ -#define SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_H_ - -#include -#include - -#include - -namespace dbus { - -enum ContainerType { - kArray = DBUS_TYPE_ARRAY, - kStruct = DBUS_TYPE_STRUCT, - kDictEntry = DBUS_TYPE_DICT_ENTRY -}; - -class MessageRefKeeper { - public: - MessageRefKeeper(); - MessageRefKeeper(DBusMessage* message); - ~MessageRefKeeper(); - MessageRefKeeper(const MessageRefKeeper& other); - MessageRefKeeper& operator=(MessageRefKeeper other); - DBusMessage* get() const; - DBusMessage* Pass(); - void swap(MessageRefKeeper& other); - - private: - DBusMessage* raw_message_; -}; - -class MessageRef { - public: - MessageRef(DBusMessage* message); - ~MessageRef(); - std::string GetInterface() const; - std::string GetMember() const; - - protected: - MessageRefKeeper raw_message_ref_; - friend class MessageReader; - friend class MessageWriter; -}; - -class MessageReader { - public: - // Main constructor - MessageReader(const MessageRef& message); - bool has_failed() const; - bool IsAtLastElement() const; - bool HasNext() const; - - // Type checkers - bool NextIsInvalid() const; - bool NextIsBool() const; - bool NextIsByte() const; - bool NextIsInt16() const; - bool NextIsUint16() const; - bool NextIsInt32() const; - bool NextIsUint32() const; - bool NextIsInt64() const; - bool NextIsUint64() const; - bool NextIsDouble() const; - bool NextIsString() const; - bool NextIsArray() const; - bool NextIsStruct() const; - bool NextIsDictEntry() const; - - // Readers - bool TakeBool(); - uint8_t TakeByte(); - int16_t TakeInt16(); - uint16_t TakeUint16(); - int32_t TakeInt32(); - uint32_t TakeUint32(); - int64_t TakeInt64(); - uint64_t TakeUint64(); - double TakeDouble(); - std::string TakeString(); - - MessageReader TakeArrayReader(); - MessageReader TakeStructReader(); - MessageReader TakeDictEntryReader(); - - private: - typedef int DataType; - // Container reader constructor - MessageReader(MessageReader* reader, DataType container_data_type); - void MoveToNext(); - void MarkFailed(); - DataType NextValueType() const; - void ReadNextValue(DataType type, void* value); - - private: - // Fields - MessageReader* parent_reader_; - bool failed_; - DBusMessageIter iterator_; -}; - -class MessageWriter { - public: - // Methods - // Main appending constructor - MessageWriter(const MessageRef& message); - // Container writer constructor - MessageWriter(MessageWriter* parent, - ContainerType type, - const char* array_signature); - ~MessageWriter(); - void PutBool(bool value); - void PutByte(uint8_t value); - void PutInt16(int16_t value); - void PutUint16(uint16_t value); - void PutInt32(int32_t value); - void PutUint32(uint32_t value); - void PutInt64(int64_t value); - void PutUint64(uint64_t value); - void PutDouble(double value); - void PutString(const std::string& value); - - private: - typedef int DataType; - // Main constructor - void WriteAndCheck(DataType value_type, const void* value); - void CloseWriter(); - - private: - // Fields - bool has_opened_subcontainer_; - MessageWriter* parent_writer_; - DBusMessageIter iterator_; - - // Disallow copy and assign - MessageWriter(const MessageWriter& other); - MessageWriter& operator=(const MessageWriter& other); -}; - -MessageRef MethodCall(const char* bus_name, - const char* path, - const char* interface, - const char* method); -MessageRef Signal(const char* path, const char* interface, const char* name); -} // namespace dbus - -#include "dbus/dbus_message_inl.h" - -#endif // SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_H_ diff --git a/src/components/dbus/include/dbus/dbus_message_controller.h b/src/components/dbus/include/dbus/dbus_message_controller.h deleted file mode 100644 index a4a3718ce3..0000000000 --- a/src/components/dbus/include/dbus/dbus_message_controller.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_CONTROLLER_H_ -#define SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_CONTROLLER_H_ - -#include -#include -#include "dbus/dbus_adapter.h" -#include "smart_objects/smart_object.h" - -namespace dbus { - -class DBusMessageController : public DBusAdapter { - public: - /** - * @brief constructs DBus message controller - * @param sdlServiceName name of service SDL - * @param sdlObjectPath path of object SDL - * @param hmiServiceName name of service HMI - * @param hmiObjectPath path of object HMI - */ - DBusMessageController(const std::string& sdlServiceName, - const std::string& sdlObjectPath, - const std::string& hmiServiceName, - const std::string& hmiObjectPath); - - /** - * @brief destructs DBus message controller - */ - virtual ~DBusMessageController(); - - /** - * @brief subscribes to the DBus signal. - * @param interface name of interface in HMI - * @param signal name of signal - */ - void SubscribeTo(const std::string& interface, const std::string& signal); - - /** - * @brief Method for receiving thread. - */ - void* MethodForReceiverThread(void*); - - /** - * @brief Main thread loop. - */ - bool Run(); - - /** - * @brief Signal shutdown for thread loop. - */ - void Shutdown(); - - protected: - /** - * @brief sends message to core - * @param obj - */ - virtual void SendMessageToCore(const smart_objects::SmartObject& obj) = 0; - - private: - bool shutdown_; -}; - -} // namespace dbus - -#endif // SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_CONTROLLER_H_ diff --git a/src/components/dbus/include/dbus/dbus_message_inl.h b/src/components/dbus/include/dbus/dbus_message_inl.h deleted file mode 100644 index ba9bfaa78d..0000000000 --- a/src/components/dbus/include/dbus/dbus_message_inl.h +++ /dev/null @@ -1,214 +0,0 @@ -/* Copyright (c) 2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#ifndef SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_INL_H_ -#define SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_INL_H_ - -#include "dbus/dbus_message.h" - -namespace dbus { -// MessageReader -inline bool MessageReader::has_failed() const { - return failed_; -} - -inline bool MessageReader::IsAtLastElement() const { - DBusMessageIter* iter = const_cast(&iterator_); - return dbus_message_iter_has_next(iter) == 0; -} - -inline bool MessageReader::HasNext() const { - return !failed_ && NextValueType() != DBUS_TYPE_INVALID; -} - -inline bool MessageReader::NextIsInvalid() const { - return NextValueType() == DBUS_TYPE_INVALID; -} - -inline bool MessageReader::NextIsBool() const { - return NextValueType() == DBUS_TYPE_BOOLEAN; -} - -inline bool MessageReader::NextIsByte() const { - return NextValueType() == DBUS_TYPE_BYTE; -} - -inline bool MessageReader::NextIsInt16() const { - return NextValueType() == DBUS_TYPE_INT16; -} - -inline bool MessageReader::NextIsUint16() const { - return NextValueType() == DBUS_TYPE_UINT16; -} - -inline bool MessageReader::NextIsInt32() const { - return NextValueType() == DBUS_TYPE_INT32; -} - -inline bool MessageReader::NextIsUint32() const { - return NextValueType() == DBUS_TYPE_UINT32; -} - -inline bool MessageReader::NextIsInt64() const { - return NextValueType() == DBUS_TYPE_INT64; -} - -inline bool MessageReader::NextIsUint64() const { - return NextValueType() == DBUS_TYPE_UINT64; -} - -inline bool MessageReader::NextIsDouble() const { - return NextValueType() == DBUS_TYPE_DOUBLE; -} - -inline bool MessageReader::NextIsString() const { - return NextValueType() == DBUS_TYPE_STRING; -} - -inline bool MessageReader::NextIsArray() const { - return NextValueType() == DBUS_TYPE_ARRAY; -} - -inline bool MessageReader::NextIsStruct() const { - return NextValueType() == DBUS_TYPE_STRUCT; -} - -inline bool MessageReader::TakeBool() { - dbus_bool_t value = 0; - ReadNextValue(DBUS_TYPE_BOOLEAN, &value); - return value != 0; -} - -inline uint8_t MessageReader::TakeByte() { - uint8_t value = 0; - ReadNextValue(DBUS_TYPE_BYTE, &value); - return value; -} - -inline int16_t MessageReader::TakeInt16() { - int16_t value = 0; - ReadNextValue(DBUS_TYPE_INT16, &value); - return value; -} - -inline uint16_t MessageReader::TakeUint16() { - uint16_t value = 0; - ReadNextValue(DBUS_TYPE_UINT16, &value); - return value; -} - -inline int32_t MessageReader::TakeInt32() { - int32_t value = 0; - ReadNextValue(DBUS_TYPE_INT32, &value); - return value; -} - -inline uint32_t MessageReader::TakeUint32() { - uint32_t value = 0; - ReadNextValue(DBUS_TYPE_UINT32, &value); - return value; -} - -inline int64_t MessageReader::TakeInt64() { - int64_t value = 0; - ReadNextValue(DBUS_TYPE_INT64, &value); - return value; -} - -inline uint64_t MessageReader::TakeUint64() { - uint64_t value = 0; - ReadNextValue(DBUS_TYPE_UINT64, &value); - return value; -} - -inline double MessageReader::TakeDouble() { - double value = 0.; - ReadNextValue(DBUS_TYPE_DOUBLE, &value); - return value; -} - -inline std::string MessageReader::TakeString() { - const char* value = ""; - ReadNextValue(DBUS_TYPE_STRING, &value); - return value; -} - -inline MessageReader::DataType MessageReader::NextValueType() const { - DBusMessageIter* iter = const_cast(&iterator_); - return failed_ ? DBUS_TYPE_INVALID : dbus_message_iter_get_arg_type(iter); -} - -// Message writer methods -inline void MessageWriter::PutBool(bool value) { - dbus_bool_t dbus_value = value; - WriteAndCheck(DBUS_TYPE_BOOLEAN, &dbus_value); -} - -inline void MessageWriter::PutByte(uint8_t value) { - WriteAndCheck(DBUS_TYPE_BYTE, &value); -} - -inline void MessageWriter::PutInt16(int16_t value) { - WriteAndCheck(DBUS_TYPE_INT16, &value); -} - -inline void MessageWriter::PutUint16(uint16_t value) { - WriteAndCheck(DBUS_TYPE_UINT16, &value); -} - -inline void MessageWriter::PutInt32(int32_t value) { - WriteAndCheck(DBUS_TYPE_INT32, &value); -} - -inline void MessageWriter::PutUint32(uint32_t value) { - WriteAndCheck(DBUS_TYPE_UINT32, &value); -} - -inline void MessageWriter::PutInt64(int64_t value) { - WriteAndCheck(DBUS_TYPE_INT64, &value); -} - -inline void MessageWriter::PutUint64(uint64_t value) { - WriteAndCheck(DBUS_TYPE_UINT64, &value); -} - -inline void MessageWriter::PutDouble(double value) { - WriteAndCheck(DBUS_TYPE_DOUBLE, &value); -} - -inline void MessageWriter::PutString(const std::string& value) { - const char* pointer = value.c_str(); - WriteAndCheck(DBUS_TYPE_STRING, &pointer); -} - -} // namespace dbus - -#endif // SRC_COMPONENTS_DBUS_INCLUDE_DBUS_DBUS_MESSAGE_INL_H_ diff --git a/src/components/dbus/include/dbus/message_descriptions.h b/src/components/dbus/include/dbus/message_descriptions.h deleted file mode 100644 index a9e7a5e141..0000000000 --- a/src/components/dbus/include/dbus/message_descriptions.h +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef SRC_COMPONENTS_DBUS_INCLUDE_DBUS_MESSAGE_DESCRIPTIONS_H_ -#define SRC_COMPONENTS_DBUS_INCLUDE_DBUS_MESSAGE_DESCRIPTIONS_H_ - -#include -#include -#include "interfaces/HMI_API.h" - -namespace ford_message_descriptions { - -enum ParameterType { Integer, Boolean, Float, String, Struct, Enum, Array }; - -struct ParameterDescription { - const char* name; - const ParameterType type; - const bool obligatory; // TODO (dchmerev@luxoft.com): rename to 'mandatory' - // as in HMI API description -}; - -struct ArrayDescription { - const ParameterDescription base; - const ParameterDescription* element; - const char* element_dbus_signature; -}; - -struct StructDescription { - const ParameterDescription base; - const ParameterDescription** parameters; -}; - -struct MessageDescription { - const char* interface; - const char* name; - const hmi_apis::messageType::eType message_type; - const hmi_apis::FunctionID::eType function_id; - const ParameterDescription** parameters; -}; - -extern const MessageDescription* message_descriptions[]; - -} // namespace ford_message_descriptions - -#endif // SRC_COMPONENTS_DBUS_INCLUDE_DBUS_MESSAGE_DESCRIPTIONS_H_ diff --git a/src/components/dbus/include/dbus/schema.h b/src/components/dbus/include/dbus/schema.h deleted file mode 100644 index 3dfe49cc95..0000000000 --- a/src/components/dbus/include/dbus/schema.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#ifndef SRC_COMPONENTS_DBUS_INCLUDE_DBUS_SCHEMA_H_ -#define SRC_COMPONENTS_DBUS_INCLUDE_DBUS_SCHEMA_H_ - -#include -#include -#include - -#include "dbus/message_descriptions.h" -#include "interfaces/HMI_API.h" - -namespace dbus { - -using ford_message_descriptions::ParameterDescription; -using ford_message_descriptions::MessageDescription; - -struct Description; - -typedef hmi_apis::FunctionID::eType MessageId; -typedef hmi_apis::messageType::eType MessageType; -typedef std::pair MessageName; // interface, message -typedef std::vector ListArgs; -typedef std::vector Messages; - -/** - * \brief Wrapper class for message description - */ -class DBusSchema { - public: - explicit DBusSchema(const MessageDescription** array); - - /** - * \brief gets message name by message id - * \param id id message - * \return name message - */ - MessageName getMessageName(MessageId id) const; - - /** - * \brief gets message id by message name - * \param name name message - * \return id message - */ - MessageId getMessageId(const MessageName& name) const; - - /** - * \brief gets list rules for arguments - * \param id id message - * \param type type message - * \return list rules - */ - ListArgs getListArgs(MessageId id, MessageType type) const; - - /** - * \brief gets list rules for arguments - * @param name name message - * @param type type message - * @return list rules - */ - ListArgs getListArgs(const MessageName& name, MessageType type) const; - - private: - Messages msgs_; -}; - -} // namespace dbus - -#endif // SRC_COMPONENTS_DBUS_INCLUDE_DBUS_SCHEMA_H_ diff --git a/src/components/dbus/src/dbus_adapter.cc b/src/components/dbus/src/dbus_adapter.cc deleted file mode 100644 index 33d05a728b..0000000000 --- a/src/components/dbus/src/dbus_adapter.cc +++ /dev/null @@ -1,937 +0,0 @@ -/* - * Copyright (c) 2013-2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include "dbus/dbus_adapter.h" -#include -#include -#include "formatters/CSmartFactory.h" -#include "utils/logger.h" -#include "smart_objects/smart_object.h" -#include "introspection_xml.cc" -#include "message_descriptions.cc" - -using ford_message_descriptions::ParameterDescription; -namespace sos = NsSmartDeviceLink::NsJSONHandler::strings; - -extern char introspection_xml[]; - -namespace dbus { - -CREATE_LOGGERPTR_GLOBAL(logger_, "HMIMessageHandler") - -std::vector& split(const std::string& s, - char delim, - std::vector& elems) { - std::stringstream ss(s); - std::string item; - while (std::getline(ss, item, delim)) { - elems.push_back(item); - } - return elems; -} - -DBusAdapter::DBusAdapter(const std::string& sdlServiceName, - const std::string& sdlObjectPath, - const std::string& hmiServiceName, - const std::string& hmiObjectPath) - : sdl_service_name_(sdlServiceName) - , sdl_object_path_(sdlObjectPath) - , hmi_service_name_(hmiServiceName) - , hmi_object_path_(hmiObjectPath) - , conn_(NULL) - , schema_(new DBusSchema(ford_message_descriptions::message_descriptions)) { -} - -DBusAdapter::~DBusAdapter() { - dbus_shutdown(); - delete schema_; -} - -bool DBusAdapter::Init() { - DBusError err; - int ret; - dbus_error_init(&err); - if (!dbus_threads_init_default()) { - LOG4CXX_ERROR(logger_, "DBus: Can't initializes threads"); - return false; - } - conn_ = dbus_bus_get(DBUS_BUS_SESSION, &err); - if (dbus_error_is_set(&err)) { - LOG4CXX_ERROR(logger_, "DBus: Connection Error " << err.message); - dbus_error_free(&err); - return false; - } - ret = dbus_bus_request_name( - conn_, sdl_service_name_.c_str(), DBUS_NAME_FLAG_DO_NOT_QUEUE, &err); - if (ret == -1 || dbus_error_is_set(&err)) { - LOG4CXX_ERROR(logger_, "DBus: Can't request name " << err.name); - dbus_error_free(&err); - return false; - } - if (DBUS_REQUEST_NAME_REPLY_PRIMARY_OWNER != ret) { - LOG4CXX_ERROR(logger_, - "DBus: Service '" << sdl_service_name_ - << "' is already running"); - return false; - } - - LOG4CXX_INFO(logger_, "DBus: Success init dbus adaptor"); - return true; -} - -bool DBusAdapter::Process(smart_objects::SmartObject& obj) { - if (conn_ == NULL) { - LOG4CXX_ERROR(logger_, "DBus: DBusAdaptor isn't initialized"); - return false; - } - DBusMessage* msg = dbus_connection_pop_message(conn_); - if (msg != NULL) { - switch (dbus_message_get_type(msg)) { - case DBUS_MESSAGE_TYPE_METHOD_CALL: - return ProcessMethodCall(msg, obj); - case DBUS_MESSAGE_TYPE_METHOD_RETURN: - return ProcessMethodReturn(msg, obj); - case DBUS_MESSAGE_TYPE_ERROR: - return ProcessError(msg, obj); - case DBUS_MESSAGE_TYPE_SIGNAL: - return ProcessSignal(msg, obj); - default: - return false; - } - } else { - dbus_connection_read_write(conn_, 50); - } - return false; -} - -void DBusAdapter::MethodReturn(uint id, - const MessageId func_id, - const MessageName& name, - const smart_objects::SmartObject& obj) { - LOG4CXX_DEBUG(logger_, "Method return " << name.first << "." << name.second); - if (conn_ == NULL) { - LOG4CXX_ERROR(logger_, "DBus: DBusAdaptor isn't init"); - return; - } - - if (func_id == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name method"); - return; - } - - DBusMessage* msg = GetRequestFromHMI(id); - if (!msg) { - LOG4CXX_WARN(logger_, "DBus: request from HMI is not found"); - return; - } - - DBusMessage* reply; - reply = dbus_message_new_method_return(msg); - if (NULL == reply) { - LOG4CXX_WARN(logger_, "DBus: Failed call method (Message Null)"); - return; - } - - const ListArgs& args = - schema_->getListArgs(func_id, hmi_apis::messageType::response); - if (!SetArguments(reply, args, obj)) { - LOG4CXX_ERROR(logger_, "DBus: Failed call method (Signature is wrong)"); - dbus_message_unref(reply); - dbus_message_unref(msg); - return; - } - - dbus_uint32_t serial; - if (!dbus_connection_send(conn_, reply, &serial)) { - LOG4CXX_ERROR(logger_, "DBus: Failed call method (Can't send message)"); - dbus_message_unref(reply); - dbus_message_unref(msg); - return; - } - dbus_connection_flush(conn_); - dbus_message_unref(reply); - dbus_message_unref(msg); - LOG4CXX_INFO(logger_, "DBus: Success return method"); -} - -void DBusAdapter::Error(uint id, - const std::string& name, - const std::string& description) { - LOG4CXX_DEBUG(logger_, "Error " << name << ": " << description); - if (conn_ == NULL) { - LOG4CXX_ERROR(logger_, "DBus: DBusAdaptor isn't init"); - return; - } - - DBusMessage* msg = GetRequestFromHMI(id); - if (!msg) { - LOG4CXX_WARN(logger_, "DBus: request from HMI is not found"); - return; - } - - DBusMessage* error; - error = dbus_message_new_error(msg, name.c_str(), description.c_str()); - if (NULL == error) { - LOG4CXX_WARN(logger_, "DBus: Failed call method (Message Null)"); - return; - } - - dbus_uint32_t serial; - if (!dbus_connection_send(conn_, error, &serial)) { - LOG4CXX_ERROR(logger_, "DBus: Failed call method (Can't send message)"); - dbus_message_unref(error); - dbus_message_unref(msg); - return; - } - dbus_connection_flush(conn_); - dbus_message_unref(error); - dbus_message_unref(msg); - LOG4CXX_INFO(logger_, "DBus: Success error"); -} - -void DBusAdapter::MethodCall(uint id, - const MessageId func_id, - const MessageName& name, - const smart_objects::SmartObject& obj) { - LOG4CXX_DEBUG(logger_, "Method call " << name.first << "." << name.second); - if (conn_ == NULL) { - LOG4CXX_ERROR(logger_, "DBus: DBusAdaptor isn't init"); - return; - } - - if (func_id == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name method"); - return; - } - - DBusMessage* msg; - msg = dbus_message_new_method_call( - hmi_service_name_.c_str(), - hmi_object_path_.c_str(), - (hmi_service_name_ + "." + name.first).c_str(), - name.second.c_str()); - if (NULL == msg) { - LOG4CXX_WARN(logger_, "DBus: Failed call method (Message Null)"); - return; - } - - const ListArgs& args = - schema_->getListArgs(func_id, hmi_apis::messageType::request); - if (!SetArguments(msg, args, obj)) { - LOG4CXX_ERROR(logger_, "DBus: Failed call method (Signature is wrong)"); - dbus_message_unref(msg); - return; - } - - dbus_uint32_t serial; - if (!dbus_connection_send(conn_, msg, &serial)) { - LOG4CXX_ERROR(logger_, "DBus: Failed call method (Can't send message)"); - dbus_message_unref(msg); - return; - } - SaveRequestToHMI(serial, std::make_pair(id, func_id)); - dbus_message_unref(msg); - LOG4CXX_INFO(logger_, "DBus: Success call method"); -} - -void DBusAdapter::Signal(const MessageId func_id, - const MessageName& name, - const smart_objects::SmartObject& obj) { - LOG4CXX_DEBUG(logger_, "Signal " << name.first << "." << name.second); - if (conn_ == NULL) { - LOG4CXX_ERROR(logger_, "DBus: DBusAdaptor isn't init"); - return; - } - - if (func_id == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name method"); - return; - } - - DBusMessage* msg; - msg = dbus_message_new_signal(sdl_object_path_.c_str(), - (sdl_service_name_ + "." + name.first).c_str(), - name.second.c_str()); - if (NULL == msg) { - LOG4CXX_WARN(logger_, "DBus: Failed emit signal (Message Null)"); - return; - } - - const ListArgs& args = - schema_->getListArgs(func_id, hmi_apis::messageType::notification); - if (!SetArguments(msg, args, obj)) { - LOG4CXX_ERROR(logger_, "DBus: Failed call method (Signature is wrong)"); - dbus_message_unref(msg); - return; - } - - if (!dbus_connection_send(conn_, msg, NULL)) { // serial isn't required - LOG4CXX_WARN(logger_, "DBus: Failed emit signal (Out Of Memory)"); - dbus_message_unref(msg); - return; - } - dbus_message_unref(msg); - LOG4CXX_INFO(logger_, "DBus: Success emit signal"); -} - -void DBusAdapter::AddMatch(const std::string& rule) { - LOG4CXX_INFO(logger_, "Subscription: " << rule); - dbus_bus_add_match(conn_, rule.c_str(), NULL); -} - -bool DBusAdapter::ProcessMethodCall(DBusMessage* msg, - smart_objects::SmartObject& obj) { - std::string method = dbus_message_get_member(msg); - std::string interface = dbus_message_get_interface(msg); - LOG4CXX_INFO(logger_, "DBus: name of method " << interface << " " << method); - - if (interface == "org.freedesktop.DBus.Introspectable" && - method == "Introspect") { - LOG4CXX_INFO(logger_, "DBus: INTROSPECT"); - Introspect(msg); - return false; - } - - std::vector elems; - split(interface, '.', elems); - MessageName name(elems.back(), method); - MessageId m_id = schema_->getMessageId(name); - if (m_id == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name method call from hmi"); - return false; - } - - uint32_t serial = dbus_message_get_serial(msg); - if (!serial) { - LOG4CXX_ERROR(logger_, "DBus: Serial of request from HMI isn't defined"); - return false; - } - - obj[sos::S_PARAMS][sos::S_CORRELATION_ID] = serial; - obj[sos::S_PARAMS][sos::S_FUNCTION_ID] = m_id; - obj[sos::S_PARAMS][sos::S_MESSAGE_TYPE] = hmi_apis::messageType::request; - obj[sos::S_MSG_PARAMS] = - smart_objects::SmartObject(smart_objects::SmartType_Map); - - const ListArgs args = - schema_->getListArgs(name, hmi_apis::messageType::request); - - DBusMessageIter iter; - dbus_message_iter_init(msg, &iter); - if (GetArguments(&iter, args, obj[sos::S_MSG_PARAMS])) { - SaveRequestFromHMI(serial, msg); - return true; - } - return false; -} - -bool DBusAdapter::ProcessMethodReturn(DBusMessage* msg, - smart_objects::SmartObject& obj) { - LOG4CXX_AUTO_TRACE(logger_); - dbus_uint32_t reply_serial = dbus_message_get_reply_serial(msg); - std::pair ids = GetRequestToHMI(reply_serial); - if (ids.second == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name method"); - return false; - } - - obj[sos::S_MSG_PARAMS] = - smart_objects::SmartObject(smart_objects::SmartType_Map); - - ListArgs args = - schema_->getListArgs(ids.second, hmi_apis::messageType::response); - DBusMessageIter iter; - dbus_message_iter_init(msg, &iter); - int code = 0; - std::string message; - smart_objects::SmartObject description(smart_objects::SmartType_Map); - bool ret = GetHeader(&iter, &code, &message) && - GetArguments(&iter, args, description); - - if (ret) { - obj[sos::S_PARAMS][sos::S_CORRELATION_ID] = ids.first; - obj[sos::S_PARAMS][sos::S_FUNCTION_ID] = ids.second; - obj[sos::S_PARAMS][sos::S_MESSAGE_TYPE] = hmi_apis::messageType::response; - obj[sos::S_PARAMS][sos::kCode] = code; - obj[sos::S_PARAMS][sos::kMessage] = message; - if (code != hmi_apis::Common_Result::SUCCESS) { - MessageName name = schema_->getMessageName(ids.second); - description["method"] = name.first + "." + name.second; - obj[sos::S_PARAMS]["data"] = description; - } else { - obj[sos::S_MSG_PARAMS] = description; - } - } - - dbus_message_unref(msg); - return ret; -} - -bool DBusAdapter::ProcessError(DBusMessage* msg, - smart_objects::SmartObject& obj) { - dbus_uint32_t reply_serial = dbus_message_get_reply_serial(msg); - std::pair ids = GetRequestToHMI(reply_serial); - if (ids.second == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name method"); - return false; - } - - const char* error_name; - bool ret = false; - if ((error_name = dbus_message_get_error_name(msg)) != NULL) { - smart_objects::SmartObject name(smart_objects::SmartType_String); - name = error_name; - ford_message_descriptions::ParameterDescription rule = { - "description", ford_message_descriptions::String, true}; - ListArgs args; - args.push_back(&rule); - smart_objects::SmartObject description(smart_objects::SmartType_Map); - description[rule.name] = - smart_objects::SmartObject(smart_objects::SmartType_String); - - DBusMessageIter iter; - dbus_message_iter_init(msg, &iter); - ret = GetArguments(&iter, args, description); - MessageName method = schema_->getMessageName(ids.second); - - obj[sos::S_PARAMS][sos::S_CORRELATION_ID] = ids.first; - obj[sos::S_PARAMS][sos::S_FUNCTION_ID] = ids.second; - obj[sos::S_PARAMS][sos::S_MESSAGE_TYPE] = - hmi_apis::messageType::error_response; - obj[sos::S_PARAMS][sos::kCode] = name.asInt(); - obj[sos::S_PARAMS][sos::kMessage] = description[rule.name].asString(); - obj[sos::S_MSG_PARAMS] = - smart_objects::SmartObject(smart_objects::SmartType_Map); - obj[sos::S_PARAMS]["data"]["method"] = method.first + "." + method.second; - - LOG4CXX_WARN(logger_, - "DBus: Call of method " << method.first << "." << method.second - << " returned error " << name.asInt() - << ": " - << description[rule.name].asString()); - } else { - LOG4CXX_ERROR(logger_, "DBus: Type message isn't error"); - } - - dbus_message_unref(msg); - return ret; -} - -bool DBusAdapter::ProcessSignal(DBusMessage* msg, - smart_objects::SmartObject& obj) { - std::string method = dbus_message_get_member(msg); - std::string interface = dbus_message_get_interface(msg); - LOG4CXX_INFO(logger_, "DBus: name of signal " << method); - - std::vector elems; - split(interface, '.', elems); - MessageName name(elems.back(), method); - MessageId m_id = schema_->getMessageId(name); - if (m_id == hmi_apis::FunctionID::INVALID_ENUM) { - LOG4CXX_ERROR(logger_, "DBus: Invalid name signal"); - return false; - } - - obj[sos::S_PARAMS][sos::S_FUNCTION_ID] = m_id; - obj[sos::S_PARAMS][sos::S_MESSAGE_TYPE] = hmi_apis::messageType::notification; - obj[sos::S_MSG_PARAMS] = - smart_objects::SmartObject(smart_objects::SmartType_Map); - - const ListArgs args = - schema_->getListArgs(name, hmi_apis::messageType::notification); - - DBusMessageIter iter; - dbus_message_iter_init(msg, &iter); - bool ret = GetArguments(&iter, args, obj[sos::S_MSG_PARAMS]); - dbus_message_unref(msg); - return ret; -} - -bool DBusAdapter::SetArguments(DBusMessage* msg, - const ListArgs& rules, - const smart_objects::SmartObject& args) { - DBusMessageIter iter; - dbus_message_iter_init_append(msg, &iter); - size_t size = rules.size(); - for (size_t i = 0; i < size; ++i) { - const smart_objects::SmartObject& param = args.getElement(rules[i]->name); - if (!SetOneArgument(&iter, rules[i], param)) { - return false; - } - } - return true; -} - -bool DBusAdapter::SetOneArgument(DBusMessageIter* iter, - const ParameterDescription* rules, - const smart_objects::SmartObject& param) { - if (rules->obligatory) { - if (param.isValid()) { - return SetValue(iter, rules, param); - } else { - LOG4CXX_WARN(logger_, - "DBus: Argument '" << rules->name << "' is obligatory!"); - return false; - } - } else { - return SetOptionalValue(iter, rules, param); - } -} - -bool DBusAdapter::SetValue( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - const smart_objects::SmartObject& param) { - // LOG4CXX_DEBUG(logger_, "DBus: Set param " << rules->name << " = " << - // param.asString()); - int type = 0; - void* value = 0; - dbus_int32_t integerValue = 0; - double floatValue = 0; - dbus_bool_t booleanValue = false; - std::string stringValue; - const char* cStringValue; - switch (rules->type) { - case ford_message_descriptions::ParameterType::Array: - return SetArrayValue( - iter, - reinterpret_cast( - rules), - param); - break; - case ford_message_descriptions::ParameterType::Struct: - return SetStructValue( - iter, - reinterpret_cast( - rules), - param); - break; - case ford_message_descriptions::ParameterType::Enum: - case ford_message_descriptions::ParameterType::Integer: - type = DBUS_TYPE_INT32; - integerValue = param.asInt(); - value = &integerValue; - break; - case ford_message_descriptions::ParameterType::Float: - type = DBUS_TYPE_DOUBLE; - floatValue = param.asDouble(); - value = &floatValue; - break; - case ford_message_descriptions::ParameterType::Boolean: - type = DBUS_TYPE_BOOLEAN; - booleanValue = param.asBool(); - value = &booleanValue; - break; - case ford_message_descriptions::ParameterType::String: - type = DBUS_TYPE_STRING; - stringValue = param.asString(); - cStringValue = stringValue.c_str(); - value = &cStringValue; - break; - default: - LOG4CXX_ERROR(logger_, "DBus: Unknown type of argument"); - return false; - } - return dbus_message_iter_append_basic(iter, type, value); -} - -bool DBusAdapter::SetOptionalValue( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - const smart_objects::SmartObject& param) { - DBusMessageIter sub_iter; - if (!dbus_message_iter_open_container( - iter, DBUS_TYPE_STRUCT, NULL, &sub_iter)) { - LOG4CXX_ERROR( - logger_, - "DBus: Can't open container type (STRUCT) for optional parameter"); - return false; - } - - ford_message_descriptions::ParameterDescription flagRules = { - "flag", ford_message_descriptions::Boolean, true}; - smart_objects::SmartObject flag(param.getType() != - smart_objects::SmartType_Invalid); - if (!SetValue(&sub_iter, &flagRules, flag) || - !SetValue(&sub_iter, rules, param)) { - return false; - } - - if (!dbus_message_iter_close_container(iter, &sub_iter)) { - LOG4CXX_ERROR( - logger_, - "DBus: Can't close container type (STRUCT) for optional parameter"); - return false; - } - return true; -} - -bool DBusAdapter::SetArrayValue( - DBusMessageIter* iter, - const ford_message_descriptions::ArrayDescription* rules, - const smart_objects::SmartObject& param) { - smart_objects::SmartType type = param.getType(); - if (type != smart_objects::SmartType_Array && - type != smart_objects::SmartType_Invalid) { - LOG4CXX_ERROR(logger_, "DBus: SmartObject is not a map"); - return false; - } - DBusMessageIter sub_iter; - if (!dbus_message_iter_open_container( - iter, DBUS_TYPE_ARRAY, rules->element_dbus_signature, &sub_iter)) { - LOG4CXX_ERROR(logger_, "DBus: Can't open container type (ARRAY)"); - return false; - } - size_t size = param.length(); - for (size_t i = 0; i < size; ++i) { - if (!SetValue(&sub_iter, rules->element, param[i])) { - return false; - } - } - if (!dbus_message_iter_close_container(iter, &sub_iter)) { - LOG4CXX_ERROR(logger_, "DBus: Can't close container type (ARRAY)"); - return false; - } - return true; -} - -bool DBusAdapter::SetStructValue( - DBusMessageIter* iter, - const ford_message_descriptions::StructDescription* rules, - const smart_objects::SmartObject& structure) { - smart_objects::SmartType type = structure.getType(); - if (type != smart_objects::SmartType_Map && - type != smart_objects::SmartType_Invalid) { - LOG4CXX_ERROR(logger_, "DBus: SmartObject is not a map"); - return false; - } - DBusMessageIter sub_iter; - if (!dbus_message_iter_open_container( - iter, DBUS_TYPE_STRUCT, NULL, &sub_iter)) { - LOG4CXX_ERROR(logger_, "DBus: Can't open container type (STRUCT)"); - return false; - } - const ParameterDescription** entry; - entry = rules->parameters; - while (*entry != NULL) { - const smart_objects::SmartObject& param = - structure.getElement((*entry)->name); - if (!SetOneArgument(&sub_iter, *entry, param)) { - return false; - } - entry++; - } - if (!dbus_message_iter_close_container(iter, &sub_iter)) { - LOG4CXX_ERROR(logger_, "DBus: Can't close container type (STRUCT)"); - return false; - } - return true; -} - -bool DBusAdapter::GetHeader(DBusMessageIter* iter, - int* code, - std::string* message) { - // Get code of response - dbus_int32_t intValue; - int type = dbus_message_iter_get_arg_type(iter); - if (type != DBUS_TYPE_INT32) { - LOG4CXX_ERROR(logger_, "DBus: Unknown format of header"); - return false; - } - dbus_message_iter_get_basic(iter, &intValue); - *code = intValue; - LOG4CXX_DEBUG(logger_, "DBus: Code of response " << *code); - - dbus_message_iter_next(iter); - - // Get message of response - type = dbus_message_iter_get_arg_type(iter); - if (type != DBUS_TYPE_STRING) { - LOG4CXX_ERROR(logger_, "DBus: Unknown format of header"); - return false; - } - const char* stringValue; - dbus_message_iter_get_basic(iter, &stringValue); - *message = stringValue; - LOG4CXX_DEBUG(logger_, "DBus: message of response " << *message); - - dbus_message_iter_next(iter); - return true; -} - -bool DBusAdapter::GetArguments(DBusMessageIter* iter, - const ListArgs& rules, - smart_objects::SmartObject& args) { - LOG4CXX_AUTO_TRACE(logger_); - - size_t size = rules.size(); - for (size_t i = 0; i < size; ++i) { - if (!GetOneArgument(iter, rules[i], args)) { - return false; - } - dbus_message_iter_next(iter); - } - return true; -} - -const DBusSchema& DBusAdapter::get_schema() const { - return *schema_; -} - -bool DBusAdapter::GetOneArgument( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - smart_objects::SmartObject& args) { - if (rules->obligatory) { - return GetValue(iter, rules, args[rules->name]); - } else { - return GetOptionalValue(iter, rules, args); - } -} - -bool DBusAdapter::GetValue( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - smart_objects::SmartObject& param) { - LOG4CXX_DEBUG(logger_, "DBus: Get param " << rules->name); - int type = dbus_message_iter_get_arg_type(iter); - switch (rules->type) { - case ford_message_descriptions::ParameterType::Array: - if (type == DBUS_TYPE_ARRAY) { - return GetArrayValue( - iter, - // FIXME (dchmerev@luxoft.com): not portable, danger cast. - reinterpret_cast< - const ford_message_descriptions::ArrayDescription*>(rules), - param); - } else { - LOG4CXX_ERROR(logger_, "DBus: Not expected type of argument"); - return false; - } - break; - case ford_message_descriptions::ParameterType::Struct: - if (type == DBUS_TYPE_STRUCT) { - return GetStructValue( - iter, - reinterpret_cast< - const ford_message_descriptions::StructDescription*>(rules), - param); - } else { - LOG4CXX_ERROR(logger_, "DBus: Not expected type of argument"); - return false; - } - break; - case ford_message_descriptions::ParameterType::Enum: - case ford_message_descriptions::ParameterType::Integer: - if (type == DBUS_TYPE_INT32) { - dbus_int32_t integerValue; - dbus_message_iter_get_basic(iter, &integerValue); - smart_objects::SmartObject value(integerValue); - param = value; - LOG4CXX_DEBUG(logger_, - "DBus: " << rules->name << " = " << integerValue); - } else { - LOG4CXX_ERROR(logger_, "DBus: Not expected type of argument"); - return false; - } - break; - case ford_message_descriptions::ParameterType::Float: - if (type == DBUS_TYPE_DOUBLE) { - double floatValue; - dbus_message_iter_get_basic(iter, &floatValue); - smart_objects::SmartObject value(floatValue); - param = value; - LOG4CXX_DEBUG(logger_, "DBus: " << rules->name << " = " << floatValue); - } else { - LOG4CXX_ERROR(logger_, "DBus: Not expected type of argument"); - return false; - } - break; - case ford_message_descriptions::ParameterType::Boolean: - if (type == DBUS_TYPE_BOOLEAN) { - dbus_bool_t booleanValue; - dbus_message_iter_get_basic(iter, &booleanValue); - smart_objects::SmartObject value(static_cast(booleanValue)); - param = value; - LOG4CXX_DEBUG(logger_, - "DBus: " << rules->name << " = " << std::boolalpha - << booleanValue); - } else { - LOG4CXX_ERROR(logger_, "DBus: Not expected type of argument"); - return false; - } - break; - case ford_message_descriptions::ParameterType::String: - if (type == DBUS_TYPE_STRING) { - const char* stringValue; - dbus_message_iter_get_basic(iter, &stringValue); - std::string strValue = stringValue; - smart_objects::SmartObject value(strValue); - param = value; - LOG4CXX_DEBUG(logger_, - "DBus: " << rules->name << " = \"" << strValue << "\""); - } else { - LOG4CXX_ERROR(logger_, "DBus: Not expected type of argument"); - return false; - } - break; - default: - LOG4CXX_ERROR(logger_, "DBus: Unknown type of argument"); - return false; - } - return true; -} - -bool DBusAdapter::GetArrayValue( - DBusMessageIter* iter, - const ford_message_descriptions::ArrayDescription* rules, - smart_objects::SmartObject& param) { - smart_objects::SmartObject array(smart_objects::SmartType_Array); - - int i = 0; - DBusMessageIter sub_iter; - dbus_message_iter_recurse(iter, &sub_iter); - while (dbus_message_iter_get_arg_type(&sub_iter) != DBUS_TYPE_INVALID) { - if (!GetValue(&sub_iter, rules->element, array[i])) { - return false; - } - dbus_message_iter_next(&sub_iter); - i++; - } - param = array; - return true; -} - -bool DBusAdapter::GetStructValue( - DBusMessageIter* iter, - const ford_message_descriptions::StructDescription* rules, - smart_objects::SmartObject& param) { - DBusMessageIter sub_iter; - dbus_message_iter_recurse(iter, &sub_iter); - const ParameterDescription** entry; - entry = rules->parameters; - smart_objects::SmartObject structure(smart_objects::SmartType_Map); - while (*entry != NULL) { - if (!GetOneArgument(&sub_iter, *entry, structure)) { - return false; - } - dbus_message_iter_next(&sub_iter); - entry++; - } - param = structure; - return true; -} - -bool DBusAdapter::GetOptionalValue( - DBusMessageIter* iter, - const ford_message_descriptions::ParameterDescription* rules, - smart_objects::SmartObject& param) { - int type = dbus_message_iter_get_arg_type(iter); - if (type != DBUS_TYPE_STRUCT) { - LOG4CXX_WARN( - logger_, - "DBus: Not expected type of argument. It is not optional parameter."); - return false; - } - - DBusMessageIter sub_iter; - dbus_message_iter_recurse(iter, &sub_iter); - ford_message_descriptions::ParameterDescription flagRules = { - "flag", ford_message_descriptions::Boolean, true}; - smart_objects::SmartObject flag; - if (!GetValue(&sub_iter, &flagRules, flag)) { - return false; - } - if (flag.asBool()) { - dbus_message_iter_next(&sub_iter); - return GetValue(&sub_iter, rules, param[rules->name]); - } else { - return true; - } -} - -std::pair DBusAdapter::GetRequestToHMI(uint32_t serial) { - std::map >::iterator it; - it = requests_to_hmi_.find(serial); - if (it != requests_to_hmi_.end()) { - std::pair ids = it->second; - requests_to_hmi_.erase(it); - return ids; - } - return std::make_pair(0, hmi_apis::FunctionID::INVALID_ENUM); -} - -void DBusAdapter::SaveRequestToHMI(uint32_t serial, - const std::pair& ids) { - requests_to_hmi_.insert(std::make_pair(serial, ids)); -} - -void DBusAdapter::Introspect(DBusMessage* msg) { - DBusMessage* reply; - - dbus_uint32_t serial = dbus_message_get_serial(msg); - reply = dbus_message_new_method_return(msg); - if (!reply) { - LOG4CXX_WARN(logger_, "DBus: Failed return method for introspection"); - return; - } - - DBusMessageIter iter; - dbus_message_iter_init_append(reply, &iter); - char* value = introspection_xml; - dbus_message_iter_append_basic(&iter, DBUS_TYPE_STRING, &value); - dbus_connection_send(conn_, reply, &serial); - dbus_connection_flush(conn_); - dbus_message_unref(reply); - dbus_message_unref(msg); -} - -void DBusAdapter::SaveRequestFromHMI(uint32_t serial, DBusMessage* request) { - LOG4CXX_DEBUG(logger_, "Save correlation id (serial id) : " << serial); - LOG4CXX_DEBUG(logger_, "D-Bus message: " << request); - requests_from_hmi_.insert(std::make_pair(serial, request)); -} - -DBusMessage* DBusAdapter::GetRequestFromHMI(uint32_t serial) { - LOG4CXX_DEBUG(logger_, "Get correlation id (serial id) : " << serial); - std::map::iterator it; - it = requests_from_hmi_.find(serial); - if (it != requests_from_hmi_.end()) { - DBusMessage* msg = it->second; - requests_from_hmi_.erase(it); - LOG4CXX_DEBUG(logger_, "D-Bus message: " << msg); - return msg; - } - return 0; -} - -} // namespace dbus diff --git a/src/components/dbus/src/dbus_message.cc b/src/components/dbus/src/dbus_message.cc deleted file mode 100644 index b8a55896ce..0000000000 --- a/src/components/dbus/src/dbus_message.cc +++ /dev/null @@ -1,217 +0,0 @@ -/* Copyright (c) 2014, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include "dbus/dbus_message.h" - -#include -#include - -#include - -namespace dbus { - -MessageRefKeeper::MessageRefKeeper() : raw_message_(NULL) {} - -MessageRefKeeper::MessageRefKeeper(DBusMessage* message) - : raw_message_(message) { - assert(raw_message_); - dbus_message_ref(raw_message_); -} - -MessageRefKeeper::~MessageRefKeeper() { - if (raw_message_) { - dbus_message_unref(raw_message_); - } -} - -MessageRefKeeper::MessageRefKeeper(const MessageRefKeeper& other) - : raw_message_(other.raw_message_) { - assert(raw_message_); - dbus_message_ref(raw_message_); -} - -MessageRefKeeper& MessageRefKeeper::operator=(MessageRefKeeper other) { - other.swap(*this); - return *this; -} - -DBusMessage* MessageRefKeeper::get() const { - return raw_message_; -} - -DBusMessage* MessageRefKeeper::Pass() { - DBusMessage* message = raw_message_; - raw_message_ = NULL; - return message; -} - -void MessageRefKeeper::swap(MessageRefKeeper& other) { - std::swap(raw_message_, other.raw_message_); -} - -MessageRef::MessageRef(DBusMessage* message) : raw_message_ref_(message) {} - -MessageRef::~MessageRef() {} - -std::string MessageRef::GetInterface() const { - return dbus_message_get_interface(raw_message_ref_.get()); -} - -std::string MessageRef::GetMember() const { - return dbus_message_get_member(raw_message_ref_.get()); -} - -// Message writer -MessageReader::MessageReader(const MessageRef& message) - : parent_reader_(NULL), failed_(false) { - dbus_bool_t success = - dbus_message_iter_init(message.raw_message_ref_.get(), &iterator_); - if (!success) { - MarkFailed(); - } -} - -MessageReader::MessageReader(MessageReader* reader, - DataType container_data_type) - : parent_reader_(reader), failed_(reader->has_failed()) { - assert(parent_reader_); - if (!failed_) { - if (reader->NextValueType() != container_data_type) { - MarkFailed(); - } else { - dbus_message_iter_recurse(&reader->iterator_, &iterator_); - reader->MoveToNext(); - } - } -} - -bool MessageReader::NextIsDictEntry() const { - return NextValueType() == DBUS_TYPE_DICT_ENTRY; -} - -MessageReader MessageReader::TakeArrayReader() { - return MessageReader(this, DBUS_TYPE_ARRAY); -} - -MessageReader MessageReader::TakeStructReader() { - return MessageReader(this, DBUS_TYPE_STRUCT); -} - -MessageReader MessageReader::TakeDictEntryReader() { - return MessageReader(this, DBUS_TYPE_DICT_ENTRY); -} - -void MessageReader::MoveToNext() { - if (!HasNext()) { - MarkFailed(); - } - dbus_message_iter_next(&iterator_); -} - -void MessageReader::MarkFailed() { - if (!failed_) { - failed_ = true; - if (parent_reader_) { - parent_reader_->MarkFailed(); - } - } -} - -void MessageReader::ReadNextValue(MessageReader::DataType type, void* value) { - assert(value); - if (NextValueType() != type) { - MarkFailed(); - } else if (!failed_) { - dbus_message_iter_get_basic(&iterator_, value); - MoveToNext(); - } -} - -// DbusMessageWriter -MessageWriter::MessageWriter(const MessageRef& message) - : has_opened_subcontainer_(false), parent_writer_(NULL) { - dbus_message_iter_init_append(message.raw_message_ref_.get(), &iterator_); -} - -MessageWriter::MessageWriter(MessageWriter* parent, - ContainerType container_type, - const char* array_signature) - : has_opened_subcontainer_(false), parent_writer_(parent) { - assert(parent_writer_); - // Only array writers require array_signature - assert((container_type == kArray && array_signature != NULL) || - (container_type != kArray && array_signature == NULL)); - assert(!parent_writer_->has_opened_subcontainer_); - bool enough_memory = dbus_message_iter_open_container( - &parent_writer_->iterator_, container_type, array_signature, &iterator_); - assert(enough_memory); - parent_writer_->has_opened_subcontainer_ = true; -} - -MessageWriter::~MessageWriter() { - assert(!has_opened_subcontainer_); - if (parent_writer_ != NULL) { - CloseWriter(); - } -} - -void MessageWriter::WriteAndCheck(MessageWriter::DataType value_type, - const void* value) { - assert(!has_opened_subcontainer_); - dbus_bool_t enough_memory = - dbus_message_iter_append_basic(&iterator_, value_type, value); - assert(enough_memory); -} - -void MessageWriter::CloseWriter() { - assert(parent_writer_); - assert(parent_writer_->has_opened_subcontainer_); - dbus_bool_t enough_memory = - dbus_message_iter_close_container(&parent_writer_->iterator_, &iterator_); - assert(enough_memory); - parent_writer_->has_opened_subcontainer_ = false; -} - -// Construction functions - -MessageRef MethodCall(const char* bus_name, - const char* path, - const char* interface, - const char* method) { - return MessageRef( - dbus_message_new_method_call(bus_name, path, interface, method)); -} - -MessageRef Signal(const char* path, const char* interface, const char* name) { - return MessageRef(dbus_message_new_signal(path, interface, name)); -} - -} // namespace dbus diff --git a/src/components/dbus/src/dbus_message_controller.cc b/src/components/dbus/src/dbus_message_controller.cc deleted file mode 100644 index 59f08d6695..0000000000 --- a/src/components/dbus/src/dbus_message_controller.cc +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include "dbus/dbus_message_controller.h" -#include "formatters/CSmartFactory.h" - -namespace sos = NsSmartDeviceLink::NsJSONHandler::strings; - -namespace dbus { - -DBusMessageController::DBusMessageController(const std::string& sdlServiceName, - const std::string& sdlObjectPath, - const std::string& hmiServiceName, - const std::string& hmiObjectPath) - : DBusAdapter(sdlServiceName, sdlObjectPath, hmiServiceName, hmiObjectPath) - , shutdown_(false) {} - -void DBusMessageController::SubscribeTo(const std::string& interface, - const std::string& signal) { - std::string rule = "type='signal'"; - rule.append(", sender='") - .append(hmi_service_name_) - .append("'") - .append(", path='") - .append(hmi_object_path_) - .append("'") - .append(", interface='") - .append(hmi_service_name_) - .append(".") - .append(interface) - .append("'") - .append(", member='") - .append(signal) - .append("'"); - DBusAdapter::AddMatch(rule); -} - -DBusMessageController::~DBusMessageController() {} - -void* DBusMessageController::MethodForReceiverThread(void*) { - Run(); - return NULL; -} - -bool DBusMessageController::Run() { - while (!shutdown_) { - smart_objects::SmartObject obj(smart_objects::SmartType_Map); - obj[sos::S_PARAMS][sos::S_PROTOCOL_VERSION] = 2; - obj[sos::S_PARAMS][sos::S_PROTOCOL_TYPE] = 1; - if (DBusAdapter::Process(obj)) { - SendMessageToCore(obj); - } - } - return true; -} - -void DBusMessageController::Shutdown() { - shutdown_ = true; -} - -} // namespace dbus diff --git a/src/components/dbus/src/introspection_xml.cc b/src/components/dbus/src/introspection_xml.cc deleted file mode 100644 index 210c232a4d..0000000000 --- a/src/components/dbus/src/introspection_xml.cc +++ /dev/null @@ -1,327 +0,0 @@ -// Warning! This file is generated by 'make_introspection_c.py'. Edit at your -// own risk. -/** - * @file instrospections_xml.cc - * @brief D-Bus introspection XML as C-string - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -char introspection_xml[] = { - 0x3c, 0x21, 0x44, 0x4f, 0x43, 0x54, 0x59, 0x50, 0x45, 0x20, 0x6e, 0x6f, - 0x64, 0x65, 0x20, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x43, 0x20, 0x22, 0x2d, - 0x2f, 0x2f, 0x66, 0x72, 0x65, 0x65, 0x64, 0x65, 0x73, 0x6b, 0x74, 0x6f, - 0x70, 0x2f, 0x2f, 0x44, 0x54, 0x44, 0x20, 0x44, 0x2d, 0x42, 0x55, 0x53, - 0x20, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x20, 0x49, 0x6e, 0x74, 0x72, - 0x6f, 0x73, 0x70, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x20, 0x31, 0x2e, - 0x30, 0x2f, 0x2f, 0x45, 0x4e, 0x22, 0x20, 0x22, 0x68, 0x74, 0x74, 0x70, - 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x66, 0x72, 0x65, 0x65, 0x64, - 0x65, 0x73, 0x6b, 0x74, 0x6f, 0x70, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x73, - 0x74, 0x61, 0x6e, 0x64, 0x61, 0x72, 0x64, 0x73, 0x2f, 0x64, 0x62, 0x75, - 0x73, 0x2f, 0x31, 0x2e, 0x30, 0x2f, 0x69, 0x6e, 0x74, 0x72, 0x6f, 0x73, - 0x70, 0x65, 0x63, 0x74, 0x2e, 0x64, 0x74, 0x64, 0x22, 0x3e, 0x0a, 0x3c, - 0x6e, 0x6f, 0x64, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x2f, - 0x63, 0x6f, 0x6d, 0x2f, 0x66, 0x6f, 0x72, 0x64, 0x2f, 0x68, 0x6d, 0x69, - 0x22, 0x3e, 0x3c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x66, - 0x6f, 0x72, 0x64, 0x2e, 0x68, 0x6d, 0x69, 0x2e, 0x73, 0x64, 0x6c, 0x2e, - 0x42, 0x61, 0x73, 0x69, 0x63, 0x43, 0x6f, 0x6d, 0x6d, 0x75, 0x6e, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x3e, 0x3c, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, - 0x52, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x53, - 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, - 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, - 0x6e, 0x53, 0x44, 0x4c, 0x50, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, - 0x6e, 0x63, 0x65, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x46, 0x69, 0x6c, 0x65, 0x52, - 0x65, 0x6d, 0x6f, 0x76, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x4e, - 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x73, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, - 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, - 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x41, 0x70, 0x70, 0x52, 0x65, 0x67, - 0x69, 0x73, 0x74, 0x65, 0x72, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x6c, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x28, 0x73, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, - 0x29, 0x28, 0x73, 0x73, 0x28, 0x62, 0x69, 0x29, 0x28, 0x62, 0x62, 0x29, - 0x29, 0x73, 0x28, 0x62, 0x61, 0x28, 0x73, 0x69, 0x29, 0x29, 0x28, 0x62, - 0x61, 0x73, 0x29, 0x69, 0x69, 0x62, 0x28, 0x62, 0x61, 0x69, 0x29, 0x28, - 0x62, 0x62, 0x29, 0x28, 0x62, 0x61, 0x69, 0x29, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x74, 0x74, 0x73, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x28, 0x62, 0x61, 0x28, 0x73, 0x69, 0x29, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x76, 0x72, 0x53, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x73, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x61, 0x73, - 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x75, 0x6d, 0x65, 0x56, 0x72, - 0x47, 0x72, 0x61, 0x6d, 0x6d, 0x61, 0x72, 0x73, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x70, - 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, - 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, - 0x41, 0x70, 0x70, 0x55, 0x6e, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x65, - 0x72, 0x65, 0x64, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x6e, 0x65, 0x78, 0x70, 0x65, 0x63, 0x74, - 0x65, 0x64, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x50, 0x6c, 0x61, 0x79, 0x54, 0x6f, 0x6e, - 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x74, 0x68, 0x6f, - 0x64, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x53, 0x44, 0x4c, 0x43, 0x6c, - 0x6f, 0x73, 0x65, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x50, - 0x75, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6f, 0x66, 0x66, 0x73, 0x65, - 0x74, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, - 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x22, 0x20, - 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, - 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x66, 0x69, 0x6c, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x46, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x79, 0x6e, 0x63, - 0x46, 0x69, 0x6c, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x73, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x66, 0x69, 0x6c, 0x65, - 0x54, 0x79, 0x70, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x70, 0x65, 0x72, 0x73, 0x69, 0x73, 0x74, 0x65, - 0x6e, 0x74, 0x46, 0x69, 0x6c, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, - 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x2f, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x3e, 0x3c, 0x69, 0x6e, 0x74, 0x65, - 0x72, 0x66, 0x61, 0x63, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x63, 0x6f, 0x6d, 0x2e, 0x66, 0x6f, 0x72, 0x64, 0x2e, 0x68, 0x6d, 0x69, - 0x2e, 0x73, 0x64, 0x6c, 0x2e, 0x55, 0x49, 0x22, 0x3e, 0x3c, 0x73, 0x69, - 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, - 0x6e, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x53, 0x74, 0x61, 0x72, 0x74, - 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, - 0x6e, 0x61, 0x6c, 0x3e, 0x3c, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, - 0x61, 0x63, 0x65, 0x3e, 0x3c, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, - 0x63, 0x65, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x63, 0x6f, 0x6d, - 0x2e, 0x66, 0x6f, 0x72, 0x64, 0x2e, 0x68, 0x6d, 0x69, 0x2e, 0x73, 0x64, - 0x6c, 0x2e, 0x53, 0x44, 0x4c, 0x22, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x68, - 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x41, 0x63, 0x74, - 0x69, 0x76, 0x61, 0x74, 0x65, 0x41, 0x70, 0x70, 0x22, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, - 0x43, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x53, 0x44, - 0x4c, 0x41, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, - 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, - 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x28, 0x73, 0x73, 0x28, 0x62, 0x69, 0x29, 0x28, - 0x62, 0x62, 0x29, 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, - 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x69, 0x73, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, - 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x65, 0x64, - 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x41, 0x70, 0x70, 0x50, - 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, - 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, - 0x22, 0x62, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, - 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, - 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x61, 0x28, 0x73, 0x69, 0x28, 0x62, 0x62, 0x29, - 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x41, - 0x70, 0x70, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x62, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x6d, - 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x47, 0x65, 0x74, 0x55, 0x73, 0x65, 0x72, 0x46, 0x72, 0x69, 0x65, 0x6e, - 0x64, 0x6c, 0x79, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, - 0x6f, 0x6e, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, - 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x73, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, - 0x67, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, - 0x69, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, - 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, - 0x43, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x28, 0x62, 0x61, 0x28, 0x73, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, - 0x29, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, 0x29, 0x28, 0x62, 0x73, - 0x29, 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, - 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x47, 0x65, 0x74, 0x4c, 0x69, 0x73, - 0x74, 0x4f, 0x66, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, - 0x6e, 0x73, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x49, 0x44, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x43, 0x6f, 0x64, - 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, - 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, - 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, - 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x20, 0x74, - 0x79, 0x70, 0x65, 0x3d, 0x22, 0x61, 0x28, 0x73, 0x69, 0x28, 0x62, 0x62, - 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, - 0x6f, 0x64, 0x3e, 0x3c, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, - 0x44, 0x4c, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x43, 0x6f, - 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, - 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x6d, - 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x47, 0x65, 0x74, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, - 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, - 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, 0x65, 0x74, 0x43, - 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, - 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, 0x75, 0x74, 0x22, - 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, - 0x2f, 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, - 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, - 0x22, 0x47, 0x65, 0x74, 0x55, 0x52, 0x4c, 0x53, 0x22, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, - 0x3d, 0x22, 0x69, 0x6e, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, - 0x65, 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, - 0x20, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, - 0x6f, 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x72, - 0x65, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, - 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x22, 0x6f, - 0x75, 0x74, 0x22, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x75, 0x72, - 0x6c, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, - 0x61, 0x28, 0x73, 0x28, 0x62, 0x73, 0x29, 0x29, 0x29, 0x22, 0x20, 0x2f, - 0x3e, 0x3c, 0x2f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x3e, 0x3c, 0x73, - 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x4f, 0x6e, 0x41, 0x70, 0x70, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, - 0x69, 0x6f, 0x6e, 0x43, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x64, 0x22, 0x3e, - 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, - 0x70, 0x70, 0x49, 0x44, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, - 0x69, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, - 0x6d, 0x65, 0x3d, 0x22, 0x69, 0x73, 0x41, 0x70, 0x70, 0x50, 0x65, 0x72, - 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x76, 0x6f, - 0x6b, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, - 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, - 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x52, 0x65, 0x76, - 0x6f, 0x6b, 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, - 0x6f, 0x6e, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, - 0x62, 0x61, 0x28, 0x73, 0x69, 0x28, 0x62, 0x62, 0x29, 0x29, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x61, 0x70, 0x70, 0x52, 0x65, 0x76, 0x6f, 0x6b, 0x65, 0x64, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x43, 0x6f, 0x6e, 0x73, 0x65, 0x6e, 0x74, - 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, - 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x61, 0x70, 0x70, - 0x55, 0x6e, 0x61, 0x75, 0x74, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x65, 0x64, - 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x62, 0x29, - 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, - 0x65, 0x3d, 0x22, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x22, - 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x69, 0x29, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, - 0x3d, 0x22, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x54, 0x79, 0x70, - 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x28, 0x62, 0x61, - 0x69, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x53, 0x44, 0x4c, 0x43, 0x6f, - 0x6e, 0x73, 0x65, 0x6e, 0x74, 0x4e, 0x65, 0x65, 0x64, 0x65, 0x64, 0x22, - 0x3e, 0x3c, 0x61, 0x72, 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, - 0x64, 0x65, 0x76, 0x69, 0x63, 0x65, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, - 0x3d, 0x22, 0x28, 0x73, 0x73, 0x28, 0x62, 0x69, 0x29, 0x28, 0x62, 0x62, - 0x29, 0x29, 0x22, 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, - 0x61, 0x6c, 0x3e, 0x3c, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x20, 0x6e, - 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x4f, 0x6e, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x3e, 0x3c, 0x61, 0x72, - 0x67, 0x20, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x22, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x22, 0x20, 0x74, 0x79, 0x70, 0x65, 0x3d, 0x22, 0x69, 0x22, - 0x20, 0x2f, 0x3e, 0x3c, 0x2f, 0x73, 0x69, 0x67, 0x6e, 0x61, 0x6c, 0x3e, - 0x3c, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x66, 0x61, 0x63, 0x65, 0x3e, - 0x3c, 0x2f, 0x6e, 0x6f, 0x64, 0x65, 0x3e, 0x00}; \ No newline at end of file diff --git a/src/components/dbus/src/message_descriptions.cc b/src/components/dbus/src/message_descriptions.cc deleted file mode 100644 index 1a5e499a7f..0000000000 --- a/src/components/dbus/src/message_descriptions.cc +++ /dev/null @@ -1,10424 +0,0 @@ -// Warning! This file is generated by 'make_message_descriptions.py'. Edit at -// your own risk. -/** - * @file message_descriptions.cc - * @brief Generated HMI API message descriptions for D-Bus - * - * This file is a part of HMI D-Bus layer. - */ -// Copyright (c) 2013, Ford Motor Company -// All rights reserved. -// -// Redistribution and use in source and binary forms, with or without -// modification, are permitted provided that the following conditions are met: -// -// Redistributions of source code must retain the above copyright notice, this -// list of conditions and the following disclaimer. -// -// Redistributions in binary form must reproduce the above copyright notice, -// this list of conditions and the following -// disclaimer in the documentation and/or other materials provided with the -// distribution. -// -// Neither the name of the Ford Motor Company nor the names of its contributors -// may be used to endorse or promote products derived from this software -// without specific prior written permission. -// -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 'A PARTICULAR PURPOSE -// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -// POSSIBILITY OF SUCH DAMAGE. - -#include "dbus/message_descriptions.h" - -namespace { - -struct Structs { - static const ford_message_descriptions::ParameterDescription* - Common__Coordinate__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__DeviceInfo__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__UserFriendlyMessage__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__PermissionItem__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ServiceInfo__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TextField__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ButtonCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__VehicleDataResult__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TouchCoord__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TouchEvent__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__PresetBankCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__Image__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__SoftButton__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TTSChunk__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__HMIApplication__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__MenuParams__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__Choice__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__VrHelpItem__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TimeFormat__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TouchEventCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ImageResolution__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ScreenParams__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ImageField__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__VideoStreamingFormat__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__VideoConfig__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__DisplayCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__SoftButtonCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__HMICapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__AudioPassThruCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TextFieldStruct__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__KeyboardProperties__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__Turn__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__VehicleType__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__GPSData__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__SingleTireStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__DIDResult__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__HeadLampStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__TireStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__BeltStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__BodyInformation__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__DeviceStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ECallInfo__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__AirbagStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__EmergencyEvent__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ClusterModeStatus__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__MyKey__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__RdsData__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__RadioControlData__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__RadioControlCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__Temperature__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ClimateControlData__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ClimateControlCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__ModuleData__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__DateTime__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__OASISAddress__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__LocationDetails__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__NavigationCapability__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__PhoneCapability__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__VideoStreamingCapability__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__SystemCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__RemoteControlCapabilities__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__Rectangle__parameters[]; - static const ford_message_descriptions::ParameterDescription* - Common__HapticRect__parameters[]; -}; - -const ford_message_descriptions::ParameterDescription - Common__Coordinate__parameter1 = { - "latitudeDegrees", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Common__Coordinate__parameter2 = { - "longitudeDegrees", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__Coordinate__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__Coordinate__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Coordinate__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__DeviceInfo__parameter1 = { - "name", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__DeviceInfo__parameter2 = { - "id", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__DeviceInfo__parameter3 = { - "transportType", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceInfo__parameter4 = { - "isSDLAllowed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__DeviceInfo__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceInfo__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceInfo__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceInfo__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceInfo__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__UserFriendlyMessage__parameter1 = { - "messageCode", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__UserFriendlyMessage__parameter2 = { - "ttsString", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__UserFriendlyMessage__parameter3 = { - "label", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__UserFriendlyMessage__parameter4 = { - "line1", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__UserFriendlyMessage__parameter5 = { - "line2", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__UserFriendlyMessage__parameter6 = { - "textBody", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__UserFriendlyMessage__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__UserFriendlyMessage__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__UserFriendlyMessage__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__UserFriendlyMessage__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__UserFriendlyMessage__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__UserFriendlyMessage__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__UserFriendlyMessage__parameter6, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__PermissionItem__parameter1 = { - "name", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__PermissionItem__parameter2 = { - "id", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__PermissionItem__parameter3 = { - "allowed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__PermissionItem__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__PermissionItem__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__PermissionItem__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__PermissionItem__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ServiceInfo__parameter1 = { - "url", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__ServiceInfo__parameter2 = { - "policyAppId", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ServiceInfo__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ServiceInfo__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ServiceInfo__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TextField__parameter1 = { - "name", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__TextField__parameter2 = { - "characterSet", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__TextField__parameter3 = { - "width", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__TextField__parameter4 = { - "rows", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TextField__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TextField__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TextField__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TextField__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TextField__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ButtonCapabilities__parameter1 = { - "name", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__ButtonCapabilities__parameter2 = { - "shortPressAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__ButtonCapabilities__parameter3 = { - "longPressAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__ButtonCapabilities__parameter4 = { - "upDownAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ButtonCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ButtonCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ButtonCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ButtonCapabilities__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ButtonCapabilities__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__VehicleDataResult__parameter1 = { - "dataType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__VehicleDataResult__parameter2 = { - "resultCode", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__VehicleDataResult__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__VehicleDataResult__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VehicleDataResult__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TouchCoord__parameter1 = { - "x", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__TouchCoord__parameter2 = { - "y", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TouchCoord__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchCoord__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchCoord__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TouchEvent__parameter1 = { - "id", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__TouchEvent__parameter2_array = { - "ts", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ArrayDescription - Common__TouchEvent__parameter2 = { - {"ts", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEvent__parameter2_array, - "i"}; -const ford_message_descriptions::StructDescription - Common__TouchEvent__parameter3_array = { - {"c", ford_message_descriptions::Struct, true}, - Structs::Common__TouchCoord__parameters}; -const ford_message_descriptions::ArrayDescription - Common__TouchEvent__parameter3 = { - {"c", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEvent__parameter3_array, - "(ii)"}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TouchEvent__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEvent__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEvent__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEvent__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__PresetBankCapabilities__parameter1 = { - "onScreenPresetsAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__PresetBankCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__PresetBankCapabilities__parameter1, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__Image__parameter1 = { - "value", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__Image__parameter2 = { - "imageType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__Image__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__Image__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Image__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__SoftButton__parameter1 = { - "type", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__SoftButton__parameter2 = { - "text", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - Common__SoftButton__parameter3 = { - {"image", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription - Common__SoftButton__parameter4 = { - "isHighlighted", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__SoftButton__parameter5 = { - "softButtonID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__SoftButton__parameter6 = { - "systemAction", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__SoftButton__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButton__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButton__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButton__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButton__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButton__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButton__parameter6, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TTSChunk__parameter1 = { - "text", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__TTSChunk__parameter2 = { - "type", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TTSChunk__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TTSChunk__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TTSChunk__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter1 = { - "appName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter2 = { - "ngnMediaScreenAppName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter3 = { - "icon", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - Common__HMIApplication__parameter4 = { - {"deviceInfo", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter5 = { - "policyAppID", ford_message_descriptions::String, true}; -const ford_message_descriptions::StructDescription - Common__HMIApplication__parameter6_array = { - {"ttsName", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - Common__HMIApplication__parameter6 = { - {"ttsName", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter6_array, - "(si)"}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter7_array = { - "vrSynonyms", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - Common__HMIApplication__parameter7 = { - {"vrSynonyms", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter7_array, - "s"}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter8 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter9 = { - "hmiDisplayLanguageDesired", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter10 = { - "isMediaApplication", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter11_array = { - "appType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__HMIApplication__parameter11 = { - {"appType", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter11_array, - "i"}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter12 = { - "greyOut", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__HMIApplication__parameter13_array = { - "requestType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__HMIApplication__parameter13 = { - {"requestType", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter13_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__HMIApplication__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMIApplication__parameter13, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__MenuParams__parameter1 = { - "parentID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__MenuParams__parameter2 = { - "position", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__MenuParams__parameter3 = { - "menuName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__MenuParams__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__MenuParams__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__MenuParams__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__MenuParams__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__Choice__parameter1 = { - "choiceID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__Choice__parameter2 = { - "menuName", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription Common__Choice__parameter3 = - {{"image", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription - Common__Choice__parameter4 = { - "secondaryText", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__Choice__parameter5 = { - "tertiaryText", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription Common__Choice__parameter6 = - {{"secondaryImage", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__Choice__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__Choice__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Choice__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Choice__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Choice__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Choice__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Choice__parameter6, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__VrHelpItem__parameter1 = { - "text", ford_message_descriptions::String, true}; -const ford_message_descriptions::StructDescription - Common__VrHelpItem__parameter2 = { - {"image", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription - Common__VrHelpItem__parameter3 = { - "position", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__VrHelpItem__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__VrHelpItem__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VrHelpItem__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VrHelpItem__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TimeFormat__parameter1 = { - "hours", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__TimeFormat__parameter2 = { - "minutes", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__TimeFormat__parameter3 = { - "seconds", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TimeFormat__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TimeFormat__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TimeFormat__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TimeFormat__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TouchEventCapabilities__parameter1 = { - "pressAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__TouchEventCapabilities__parameter2 = { - "multiTouchAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__TouchEventCapabilities__parameter3 = { - "doublePressAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TouchEventCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEventCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEventCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TouchEventCapabilities__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ImageResolution__parameter1 = { - "resolutionWidth", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__ImageResolution__parameter2 = { - "resolutionHeight", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ImageResolution__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ImageResolution__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ImageResolution__parameter2, - NULL}; - -const ford_message_descriptions::StructDescription - Common__ScreenParams__parameter1 = { - {"resolution", ford_message_descriptions::Struct, true}, - Structs::Common__ImageResolution__parameters}; -const ford_message_descriptions::StructDescription - Common__ScreenParams__parameter2 = { - {"touchEventAvailable", ford_message_descriptions::Struct, false}, - Structs::Common__TouchEventCapabilities__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ScreenParams__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ScreenParams__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ScreenParams__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ImageField__parameter1 = { - "name", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__ImageField__parameter2_array = { - "imageTypeSupported", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__ImageField__parameter2 = { - {"imageTypeSupported", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ImageField__parameter2_array, - "i"}; -const ford_message_descriptions::StructDescription - Common__ImageField__parameter3 = { - {"imageResolution", ford_message_descriptions::Struct, false}, - Structs::Common__ImageResolution__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ImageField__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ImageField__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ImageField__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ImageField__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__VideoStreamingFormat__parameter1 = { - "protocol", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__VideoStreamingFormat__parameter2 = { - "codec", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__VideoStreamingFormat__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingFormat__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingFormat__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__VideoConfig__parameter1 = { - "protocol", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__VideoConfig__parameter2 = { - "codec", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__VideoConfig__parameter3 = { - "width", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__VideoConfig__parameter4 = { - "height", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__VideoConfig__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoConfig__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoConfig__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoConfig__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoConfig__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__DisplayCapabilities__parameter1 = { - "displayType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::StructDescription - Common__DisplayCapabilities__parameter2_array = { - {"textFields", ford_message_descriptions::Struct, true}, - Structs::Common__TextField__parameters}; -const ford_message_descriptions::ArrayDescription - Common__DisplayCapabilities__parameter2 = { - {"textFields", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter2_array, - "(iiii)"}; -const ford_message_descriptions::StructDescription - Common__DisplayCapabilities__parameter3_array = { - {"imageFields", ford_message_descriptions::Struct, true}, - Structs::Common__ImageField__parameters}; -const ford_message_descriptions::ArrayDescription - Common__DisplayCapabilities__parameter3 = { - {"imageFields", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter3_array, - "(i(bai)(b(ii)))"}; -const ford_message_descriptions::ParameterDescription - Common__DisplayCapabilities__parameter4_array = { - "mediaClockFormats", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__DisplayCapabilities__parameter4 = { - {"mediaClockFormats", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter4_array, - "i"}; -const ford_message_descriptions::ParameterDescription - Common__DisplayCapabilities__parameter5_array = { - "imageCapabilities", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__DisplayCapabilities__parameter5 = { - {"imageCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter5_array, - "i"}; -const ford_message_descriptions::ParameterDescription - Common__DisplayCapabilities__parameter6 = { - "graphicSupported", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__DisplayCapabilities__parameter7_array = { - "templatesAvailable", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - Common__DisplayCapabilities__parameter7 = { - {"templatesAvailable", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter7_array, - "s"}; -const ford_message_descriptions::StructDescription - Common__DisplayCapabilities__parameter8 = { - {"screenParams", ford_message_descriptions::Struct, false}, - Structs::Common__ScreenParams__parameters}; -const ford_message_descriptions::ParameterDescription - Common__DisplayCapabilities__parameter9 = { - "numCustomPresetsAvailable", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__DisplayCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DisplayCapabilities__parameter9, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__SoftButtonCapabilities__parameter1 = { - "shortPressAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__SoftButtonCapabilities__parameter2 = { - "longPressAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__SoftButtonCapabilities__parameter3 = { - "upDownAvailable", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__SoftButtonCapabilities__parameter4 = { - "imageSupported", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__SoftButtonCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButtonCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButtonCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButtonCapabilities__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__SoftButtonCapabilities__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__HMICapabilities__parameter1 = { - "navigation", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__HMICapabilities__parameter2 = { - "phoneCall", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__HMICapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMICapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HMICapabilities__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__AudioPassThruCapabilities__parameter1 = { - "samplingRate", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AudioPassThruCapabilities__parameter2 = { - "bitsPerSample", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AudioPassThruCapabilities__parameter3 = { - "audioType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__AudioPassThruCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__AudioPassThruCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AudioPassThruCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AudioPassThruCapabilities__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TextFieldStruct__parameter1 = { - "fieldName", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__TextFieldStruct__parameter2 = { - "fieldText", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TextFieldStruct__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TextFieldStruct__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TextFieldStruct__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__KeyboardProperties__parameter1 = { - "language", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__KeyboardProperties__parameter2 = { - "keyboardLayout", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__KeyboardProperties__parameter3 = { - "keypressMode", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__KeyboardProperties__parameter4_array = { - "limitedCharacterList", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - Common__KeyboardProperties__parameter4 = { - {"limitedCharacterList", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__KeyboardProperties__parameter4_array, - "s"}; -const ford_message_descriptions::ParameterDescription - Common__KeyboardProperties__parameter5 = { - "autoCompleteText", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__KeyboardProperties__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__KeyboardProperties__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__KeyboardProperties__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__KeyboardProperties__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__KeyboardProperties__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__KeyboardProperties__parameter5, - NULL}; - -const ford_message_descriptions::StructDescription Common__Turn__parameter1 = { - {"navigationText", ford_message_descriptions::Struct, false}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::StructDescription Common__Turn__parameter2 = { - {"turnIcon", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__Turn__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__Turn__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Turn__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__VehicleType__parameter1 = { - "make", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__VehicleType__parameter2 = { - "model", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__VehicleType__parameter3 = { - "modelYear", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__VehicleType__parameter4 = { - "trim", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__VehicleType__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__VehicleType__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VehicleType__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VehicleType__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VehicleType__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter1 = { - "longitudeDegrees", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter2 = { - "latitudeDegrees", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter3 = { - "utcYear", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter4 = { - "utcMonth", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter5 = { - "utcDay", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter6 = { - "utcHours", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter7 = { - "utcMinutes", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter8 = { - "utcSeconds", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter9 = { - "compassDirection", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter10 = { - "pdop", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter11 = { - "hdop", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter12 = { - "vdop", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter13 = { - "actual", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter14 = { - "satellites", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter15 = { - "dimension", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter16 = { - "altitude", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter17 = { - "heading", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - Common__GPSData__parameter18 = { - "speed", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__GPSData__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&Common__GPSData__parameter18, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__SingleTireStatus__parameter1 = { - "status", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__SingleTireStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__SingleTireStatus__parameter1, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__DIDResult__parameter1 = { - "resultCode", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__DIDResult__parameter2 = { - "didLocation", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Common__DIDResult__parameter3 = { - "data", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__DIDResult__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__DIDResult__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DIDResult__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DIDResult__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__HeadLampStatus__parameter1 = { - "lowBeamsOn", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__HeadLampStatus__parameter2 = { - "highBeamsOn", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__HeadLampStatus__parameter3 = { - "ambientLightSensorStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__HeadLampStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__HeadLampStatus__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HeadLampStatus__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HeadLampStatus__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__TireStatus__parameter1 = { - "pressureTelltale", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - Common__TireStatus__parameter2 = { - {"leftFront", ford_message_descriptions::Struct, false}, - Structs::Common__SingleTireStatus__parameters}; -const ford_message_descriptions::StructDescription - Common__TireStatus__parameter3 = { - {"rightFront", ford_message_descriptions::Struct, false}, - Structs::Common__SingleTireStatus__parameters}; -const ford_message_descriptions::StructDescription - Common__TireStatus__parameter4 = { - {"leftRear", ford_message_descriptions::Struct, false}, - Structs::Common__SingleTireStatus__parameters}; -const ford_message_descriptions::StructDescription - Common__TireStatus__parameter5 = { - {"rightRear", ford_message_descriptions::Struct, false}, - Structs::Common__SingleTireStatus__parameters}; -const ford_message_descriptions::StructDescription - Common__TireStatus__parameter6 = { - {"innerLeftRear", ford_message_descriptions::Struct, false}, - Structs::Common__SingleTireStatus__parameters}; -const ford_message_descriptions::StructDescription - Common__TireStatus__parameter7 = { - {"innerRightRear", ford_message_descriptions::Struct, false}, - Structs::Common__SingleTireStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__TireStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__TireStatus__parameter7, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter1 = { - "driverBeltDeployed", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter2 = { - "passengerBeltDeployed", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter3 = { - "passengerBuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter4 = { - "driverBuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter5 = { - "leftRow2BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter6 = { - "passengerChildDetected", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter7 = { - "rightRow2BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter8 = { - "middleRow2BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter9 = { - "middleRow3BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter10 = { - "leftRow3BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter11 = { - "rightRow3BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter12 = { - "leftRearInflatableBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter13 = { - "rightRearInflatableBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter14 = { - "middleRow1BeltDeployed", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__BeltStatus__parameter15 = { - "middleRow1BuckleBelted", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__BeltStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BeltStatus__parameter15, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter1 = { - "parkBrakeActive", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter2 = { - "ignitionStableStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter3 = { - "ignitionStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter4 = { - "driverDoorAjar", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter5 = { - "passengerDoorAjar", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter6 = { - "rearLeftDoorAjar", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__BodyInformation__parameter7 = { - "rearRightDoorAjar", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__BodyInformation__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__BodyInformation__parameter7, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter1 = { - "voiceRecOn", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter2 = { - "btIconOn", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter3 = { - "callActive", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter4 = { - "phoneRoaming", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter5 = { - "textMsgAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter6 = { - "battLevelStatus", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter7 = { - "stereoAudioOutputMuted", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter8 = { - "monoAudioOutputMuted", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter9 = { - "signalLevelStatus", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter10 = { - "primaryAudioSource", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__DeviceStatus__parameter11 = { - "eCallEventActive", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__DeviceStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&Common__DeviceStatus__parameter11, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ECallInfo__parameter1 = { - "eCallNotificationStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__ECallInfo__parameter2 = { - "auxECallNotificationStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__ECallInfo__parameter3 = { - "eCallConfirmationStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ECallInfo__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ECallInfo__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ECallInfo__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ECallInfo__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter1 = { - "driverAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter2 = { - "driverSideAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter3 = { - "driverCurtainAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter4 = { - "passengerAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter5 = {"passengerCurtainAirbagDeployed", - ford_message_descriptions::Enum, - true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter6 = { - "driverKneeAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter7 = { - "passengerSideAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__AirbagStatus__parameter8 = { - "passengerKneeAirbagDeployed", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__AirbagStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__AirbagStatus__parameter8, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__EmergencyEvent__parameter1 = { - "emergencyEventType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__EmergencyEvent__parameter2 = { - "fuelCutoffStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__EmergencyEvent__parameter3 = { - "rolloverEvent", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__EmergencyEvent__parameter4 = { - "maximumChangeVelocity", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__EmergencyEvent__parameter5 = { - "multipleEvents", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__EmergencyEvent__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__EmergencyEvent__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__EmergencyEvent__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__EmergencyEvent__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__EmergencyEvent__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__EmergencyEvent__parameter5, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ClusterModeStatus__parameter1 = { - "powerModeActive", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Common__ClusterModeStatus__parameter2 = { - "powerModeQualificationStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__ClusterModeStatus__parameter3 = { - "carModeStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__ClusterModeStatus__parameter4 = { - "powerModeStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ClusterModeStatus__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClusterModeStatus__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClusterModeStatus__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClusterModeStatus__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClusterModeStatus__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__MyKey__parameter1 = { - "e911Override", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__MyKey__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__MyKey__parameter1, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter1 = { - "PS", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter2 = { - "RT", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter3 = { - "CT", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter4 = { - "PI", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter5 = { - "PTY", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter6 = { - "TP", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter7 = { - "TA", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RdsData__parameter8 = { - "REG", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__RdsData__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RdsData__parameter8, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter1 = { - "frequencyInteger", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter2 = { - "frequencyFraction", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter3 = { - "band", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - Common__RadioControlData__parameter4 = { - {"rdsData", ford_message_descriptions::Struct, false}, - Structs::Common__RdsData__parameters}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter5 = { - "availableHDs", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter6 = { - "hdChannel", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter7 = { - "signalStrength", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter8 = { - "signalChangeThreshold", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter9 = { - "radioEnable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlData__parameter10 = { - "state", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__RadioControlData__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlData__parameter10, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter1 = { - "moduleName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter2 = { - "radioEnableAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter3 = { - "radioBandAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter4 = { - "radioFrequencyAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter5 = { - "hdChannelAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter6 = { - "rdsDataAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter7 = { - "availableHDsAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter8 = { - "stateAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter9 = { - "signalStrengthAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__RadioControlCapabilities__parameter10 = { - "signalChangeThresholdAvailable", - ford_message_descriptions::Boolean, - false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__RadioControlCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RadioControlCapabilities__parameter10, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__Temperature__parameter1 = { - "unit", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Common__Temperature__parameter2 = { - "value", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__Temperature__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__Temperature__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Temperature__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter1 = { - "fanSpeed", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::StructDescription - Common__ClimateControlData__parameter2 = { - {"currentTemperature", ford_message_descriptions::Struct, false}, - Structs::Common__Temperature__parameters}; -const ford_message_descriptions::StructDescription - Common__ClimateControlData__parameter3 = { - {"desiredTemperature", ford_message_descriptions::Struct, false}, - Structs::Common__Temperature__parameters}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter4 = { - "acEnable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter5 = { - "circulateAirEnable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter6 = { - "autoModeEnable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter7 = { - "defrostZone", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter8 = { - "dualModeEnable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter9 = { - "acMaxEnable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlData__parameter10 = { - "ventilationMode", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ClimateControlData__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlData__parameter10, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter1 = { - "moduleName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter2 = { - "currentTemperatureAvailable", - ford_message_descriptions::Boolean, - false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter3 = { - "fanSpeedAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter4 = { - "desiredTemperatureAvailable", - ford_message_descriptions::Boolean, - false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter5 = { - "acEnableAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter6 = { - "acMaxEnableAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter7 = { - "circulateAirEnableAvailable", - ford_message_descriptions::Boolean, - false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter8 = { - "autoModeEnableAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter9 = { - "dualModeEnableAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter10 = { - "defrostZoneAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter11_array = { - "defrostZone", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__ClimateControlCapabilities__parameter11 = { - {"defrostZone", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter11_array, - "i"}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter12 = { - "ventilationModeAvailable", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__ClimateControlCapabilities__parameter13_array = { - "ventilationMode", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - Common__ClimateControlCapabilities__parameter13 = { - {"ventilationMode", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter13_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ClimateControlCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ClimateControlCapabilities__parameter13, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__ModuleData__parameter1 = { - "moduleType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::StructDescription - Common__ModuleData__parameter2 = { - {"radioControlData", ford_message_descriptions::Struct, false}, - Structs::Common__RadioControlData__parameters}; -const ford_message_descriptions::StructDescription - Common__ModuleData__parameter3 = { - {"climateControlData", ford_message_descriptions::Struct, false}, - Structs::Common__ClimateControlData__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__ModuleData__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__ModuleData__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ModuleData__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__ModuleData__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter1 = { - "millisecond", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter2 = { - "second", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter3 = { - "minute", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter4 = { - "hour", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter5 = { - "day", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter6 = { - "month", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter7 = { - "year", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter8 = { - "tz_hour", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Common__DateTime__parameter9 = { - "tz_minute", ford_message_descriptions::Integer, false}; -/*const ford_message_descriptions::ParameterDescription* - Structs::Common__DateTime__parameters[] = { - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter1, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter2, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter3, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter4, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter5, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter6, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter7, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter8, - (const - ford_message_descriptions::ParameterDescription*)&Common__DateTime__parameter9, - NULL };*/ - -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter1 = { - "countryName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter2 = { - "countryCode", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter3 = { - "postalCode", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter4 = { - "administrativeArea", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter5 = { - "subAdministrativeArea", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter6 = { - "locality", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter7 = { - "subLocality", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter8 = { - "thoroughfare", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__OASISAddress__parameter9 = { - "subThoroughfare", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__OASISAddress__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&Common__OASISAddress__parameter9, - NULL}; - -const ford_message_descriptions::StructDescription - Common__LocationDetails__parameter1 = { - {"coordinate", ford_message_descriptions::Struct, false}, - Structs::Common__Coordinate__parameters}; -const ford_message_descriptions::ParameterDescription - Common__LocationDetails__parameter2 = { - "locationName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__LocationDetails__parameter3_array = { - "addressLines", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - Common__LocationDetails__parameter3 = { - {"addressLines", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter3_array, - "s"}; -const ford_message_descriptions::ParameterDescription - Common__LocationDetails__parameter4 = { - "locationDescription", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Common__LocationDetails__parameter5 = { - "phoneNumber", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - Common__LocationDetails__parameter6 = { - {"locationImage", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::StructDescription - Common__LocationDetails__parameter7 = { - {"searchAddress", ford_message_descriptions::Struct, false}, - Structs::Common__OASISAddress__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__LocationDetails__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Common__LocationDetails__parameter7, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__NavigationCapability__parameter1 = { - "sendLocationEnabled", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - Common__NavigationCapability__parameter2 = { - "getWayPointsEnabled", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__NavigationCapability__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__NavigationCapability__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__NavigationCapability__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__PhoneCapability__parameter1 = { - "dialNumberEnabled", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__PhoneCapability__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__PhoneCapability__parameter1, - NULL}; - -const ford_message_descriptions::StructDescription - Common__VideoStreamingCapability__parameter1 = { - {"preferredResolution", ford_message_descriptions::Struct, false}, - Structs::Common__ImageResolution__parameters}; -const ford_message_descriptions::ParameterDescription - Common__VideoStreamingCapability__parameter2 = { - "maxBitrate", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::StructDescription - Common__VideoStreamingCapability__parameter3_array = { - {"supportedFormats", ford_message_descriptions::Struct, true}, - Structs::Common__VideoStreamingFormat__parameters}; -const ford_message_descriptions::ArrayDescription - Common__VideoStreamingCapability__parameter3 = { - {"supportedFormats", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingCapability__parameter3_array, - "(ii)"}; -const ford_message_descriptions::ParameterDescription - Common__VideoStreamingCapability__parameter4 = { - "hapticSpatialDataSupported", - ford_message_descriptions::Boolean, - false}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__VideoStreamingCapability__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingCapability__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingCapability__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingCapability__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__VideoStreamingCapability__parameter4, - NULL}; - -const ford_message_descriptions::StructDescription - Common__SystemCapabilities__parameter1 = { - {"navigationCapability", ford_message_descriptions::Struct, false}, - Structs::Common__NavigationCapability__parameters}; -const ford_message_descriptions::StructDescription - Common__SystemCapabilities__parameter2 = { - {"phoneCapability", ford_message_descriptions::Struct, false}, - Structs::Common__PhoneCapability__parameters}; -const ford_message_descriptions::StructDescription - Common__SystemCapabilities__parameter3 = { - {"videoStreamingCapability", ford_message_descriptions::Struct, false}, - Structs::Common__VideoStreamingCapability__parameters}; -/*const ford_message_descriptions::ParameterDescription* - Structs::Common__SystemCapabilities__parameters[] = { - (const - ford_message_descriptions::ParameterDescription*)&Common__SystemCapabilities__parameter1, - (const - ford_message_descriptions::ParameterDescription*)&Common__SystemCapabilities__parameter2, - (const - ford_message_descriptions::ParameterDescription*)&Common__SystemCapabilities__parameter3, - NULL };*/ - -const ford_message_descriptions::StructDescription - Common__RemoteControlCapabilities__parameter1_array = { - {"climateControlCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__ClimateControlCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - Common__RemoteControlCapabilities__parameter1 = { - {"climateControlCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RemoteControlCapabilities__parameter1_array, - "(s(bb)(bb)(bb)(bb)(bb)(bb)(bb)(bb)(bb)(bai)(bb)(bai))"}; -const ford_message_descriptions::StructDescription - Common__RemoteControlCapabilities__parameter2_array = { - {"radioControlCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__RadioControlCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - Common__RemoteControlCapabilities__parameter2 = { - {"radioControlCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RemoteControlCapabilities__parameter2_array, - "(s(bb)(bb)(bb)(bb)(bb)(bb)(bb)(bb)(bb))"}; -const ford_message_descriptions::StructDescription - Common__RemoteControlCapabilities__parameter3_array = { - {"buttonCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__ButtonCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - Common__RemoteControlCapabilities__parameter3 = { - {"buttonCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RemoteControlCapabilities__parameter3_array, - "(ibbb)"}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__RemoteControlCapabilities__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__RemoteControlCapabilities__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RemoteControlCapabilities__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__RemoteControlCapabilities__parameter3, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__Rectangle__parameter1 = { - "x", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Common__Rectangle__parameter2 = { - "y", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Common__Rectangle__parameter3 = { - "width", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Common__Rectangle__parameter4 = { - "height", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__Rectangle__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__Rectangle__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Rectangle__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Rectangle__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Common__Rectangle__parameter4, - NULL}; - -const ford_message_descriptions::ParameterDescription - Common__HapticRect__parameter1 = { - "id", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - Common__HapticRect__parameter2 = { - {"rect", ford_message_descriptions::Struct, true}, - Structs::Common__Rectangle__parameters}; -const ford_message_descriptions::ParameterDescription* - Structs::Common__HapticRect__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Common__HapticRect__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Common__HapticRect__parameter2, - NULL}; - -const ford_message_descriptions::ParameterDescription* - Buttons__GetCapabilities__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Buttons__GetCapabilities__request = { - "Buttons", - "GetCapabilities", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Buttons_GetCapabilities, - Buttons__GetCapabilities__request__parameters}; - -const ford_message_descriptions::StructDescription - Buttons__GetCapabilities__response__parameter1_array = { - {"capabilities", ford_message_descriptions::Struct, true}, - Structs::Common__ButtonCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - Buttons__GetCapabilities__response__parameter1 = { - {"capabilities", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__GetCapabilities__response__parameter1_array, - "(ibbb)"}; -const ford_message_descriptions::StructDescription - Buttons__GetCapabilities__response__parameter2 = { - {"presetBankCapabilities", ford_message_descriptions::Struct, false}, - Structs::Common__PresetBankCapabilities__parameters}; -const ford_message_descriptions::ParameterDescription* - Buttons__GetCapabilities__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__GetCapabilities__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__GetCapabilities__response__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Buttons__GetCapabilities__response = { - "Buttons", - "GetCapabilities", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Buttons_GetCapabilities, - Buttons__GetCapabilities__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonEvent__notification__parameter1 = { - "name", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonEvent__notification__parameter2 = { - "mode", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonEvent__notification__parameter3 = { - "customButtonID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonEvent__notification__parameter4 = { - "appID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - Buttons__OnButtonEvent__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonEvent__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonEvent__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonEvent__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonEvent__notification__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - Buttons__OnButtonEvent__notification = { - "Buttons", - "OnButtonEvent", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Buttons_OnButtonEvent, - Buttons__OnButtonEvent__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonPress__notification__parameter1 = { - "name", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonPress__notification__parameter2 = { - "mode", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonPress__notification__parameter3 = { - "customButtonID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonPress__notification__parameter4 = { - "appID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - Buttons__OnButtonPress__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonPress__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonPress__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonPress__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonPress__notification__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - Buttons__OnButtonPress__notification = { - "Buttons", - "OnButtonPress", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Buttons_OnButtonPress, - Buttons__OnButtonPress__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonSubscription__notification__parameter1 = { - "name", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonSubscription__notification__parameter2 = { - "isSubscribed", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - Buttons__OnButtonSubscription__notification__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Buttons__OnButtonSubscription__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonSubscription__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonSubscription__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Buttons__OnButtonSubscription__notification__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - Buttons__OnButtonSubscription__notification = { - "Buttons", - "OnButtonSubscription", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Buttons_OnButtonSubscription, - Buttons__OnButtonSubscription__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnReady__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnReady__notification = { - "BasicCommunication", - "OnReady", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnReady, - BasicCommunication__OnReady__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnStartDeviceDiscovery__notification__parameters[] = { - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnStartDeviceDiscovery__notification = { - "BasicCommunication", - "OnStartDeviceDiscovery", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnStartDeviceDiscovery, - BasicCommunication__OnStartDeviceDiscovery__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnUpdateDeviceList__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnUpdateDeviceList__notification = { - "BasicCommunication", - "OnUpdateDeviceList", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnUpdateDeviceList, - BasicCommunication__OnUpdateDeviceList__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPhoneCall__notification__parameter1 = { - "isActive", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnPhoneCall__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPhoneCall__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnPhoneCall__notification = { - "BasicCommunication", - "OnPhoneCall", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnPhoneCall, - BasicCommunication__OnPhoneCall__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnEmergencyEvent__notification__parameter1 = { - "enabled", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnEmergencyEvent__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnEmergencyEvent__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnEmergencyEvent__notification = { - "BasicCommunication", - "OnEmergencyEvent", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnEmergencyEvent, - BasicCommunication__OnEmergencyEvent__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnResumeAudioSource__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnResumeAudioSource__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnResumeAudioSource__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnResumeAudioSource__notification = { - "BasicCommunication", - "OnResumeAudioSource", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnResumeAudioSource, - BasicCommunication__OnResumeAudioSource__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnSDLPersistenceComplete__notification__parameters[] = { - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnSDLPersistenceComplete__notification = { - "BasicCommunication", - "OnSDLPersistenceComplete", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnSDLPersistenceComplete, - BasicCommunication__OnSDLPersistenceComplete__notification__parameters}; - -const ford_message_descriptions::StructDescription - BasicCommunication__UpdateAppList__request__parameter1_array = { - {"applications", ford_message_descriptions::Struct, true}, - Structs::Common__HMIApplication__parameters}; -const ford_message_descriptions::ArrayDescription - BasicCommunication__UpdateAppList__request__parameter1 = { - {"applications", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__UpdateAppList__request__parameter1_array, - "(s(bs)(bs)(ss(bi)(bb))s(ba(si))(bas)iib(bai)(bb)(bai))"}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__UpdateAppList__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__UpdateAppList__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__UpdateAppList__request = { - "BasicCommunication", - "UpdateAppList", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_UpdateAppList, - BasicCommunication__UpdateAppList__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__UpdateAppList__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__UpdateAppList__response = { - "BasicCommunication", - "UpdateAppList", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_UpdateAppList, - BasicCommunication__UpdateAppList__response__parameters}; - -const ford_message_descriptions::StructDescription - BasicCommunication__UpdateDeviceList__request__parameter1_array = { - {"deviceList", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ArrayDescription - BasicCommunication__UpdateDeviceList__request__parameter1 = { - {"deviceList", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__UpdateDeviceList__request__parameter1_array, - "(ss(bi)(bb))"}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__UpdateDeviceList__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__UpdateDeviceList__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__UpdateDeviceList__request = { - "BasicCommunication", - "UpdateDeviceList", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_UpdateDeviceList, - BasicCommunication__UpdateDeviceList__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__UpdateDeviceList__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__UpdateDeviceList__response = { - "BasicCommunication", - "UpdateDeviceList", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_UpdateDeviceList, - BasicCommunication__UpdateDeviceList__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnFileRemoved__notification__parameter1 = { - "fileName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnFileRemoved__notification__parameter2 = { - "fileType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnFileRemoved__notification__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnFileRemoved__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnFileRemoved__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnFileRemoved__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnFileRemoved__notification__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnFileRemoved__notification = { - "BasicCommunication", - "OnFileRemoved", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnFileRemoved, - BasicCommunication__OnFileRemoved__notification__parameters}; - -const ford_message_descriptions::StructDescription - BasicCommunication__AllowDeviceToConnect__request__parameter1 = { - {"device", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__AllowDeviceToConnect__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__AllowDeviceToConnect__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__AllowDeviceToConnect__request = { - "BasicCommunication", - "AllowDeviceToConnect", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_AllowDeviceToConnect, - BasicCommunication__AllowDeviceToConnect__request__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__AllowDeviceToConnect__response__parameter1 = { - "allow", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__AllowDeviceToConnect__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__AllowDeviceToConnect__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__AllowDeviceToConnect__response = { - "BasicCommunication", - "AllowDeviceToConnect", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_AllowDeviceToConnect, - BasicCommunication__AllowDeviceToConnect__response__parameters}; - -const ford_message_descriptions::StructDescription - BasicCommunication__OnDeviceChosen__notification__parameter1 = { - {"deviceInfo", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnDeviceChosen__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnDeviceChosen__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnDeviceChosen__notification = { - "BasicCommunication", - "OnDeviceChosen", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnDeviceChosen, - BasicCommunication__OnDeviceChosen__notification__parameters}; - -const ford_message_descriptions::StructDescription - BasicCommunication__OnFindApplications__notification__parameter1 = { - {"deviceInfo", ford_message_descriptions::Struct, false}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnFindApplications__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnFindApplications__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnFindApplications__notification = { - "BasicCommunication", - "OnFindApplications", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnFindApplications, - BasicCommunication__OnFindApplications__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__ActivateApp__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__ActivateApp__request__parameter2 = { - "priority", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__ActivateApp__request__parameter3 = { - "level", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__ActivateApp__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__ActivateApp__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__ActivateApp__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__ActivateApp__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__ActivateApp__request = { - "BasicCommunication", - "ActivateApp", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_ActivateApp, - BasicCommunication__ActivateApp__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__ActivateApp__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__ActivateApp__response = { - "BasicCommunication", - "ActivateApp", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_ActivateApp, - BasicCommunication__ActivateApp__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppActivated__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnAppActivated__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppActivated__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnAppActivated__notification = { - "BasicCommunication", - "OnAppActivated", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnAppActivated, - BasicCommunication__OnAppActivated__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppDeactivated__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppDeactivated__notification__parameter2 = { - "reason", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnAppDeactivated__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppDeactivated__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppDeactivated__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnAppDeactivated__notification = { - "BasicCommunication", - "OnAppDeactivated", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnAppDeactivated, - BasicCommunication__OnAppDeactivated__notification__parameters}; - -const ford_message_descriptions::StructDescription - BasicCommunication__OnAppRegistered__notification__parameter1 = { - {"application", ford_message_descriptions::Struct, true}, - Structs::Common__HMIApplication__parameters}; -const ford_message_descriptions::StructDescription - BasicCommunication__OnAppRegistered__notification__parameter2_array = { - {"ttsName", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - BasicCommunication__OnAppRegistered__notification__parameter2 = { - {"ttsName", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter2_array, - "(si)"}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppRegistered__notification__parameter3_array = { - "vrSynonyms", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - BasicCommunication__OnAppRegistered__notification__parameter3 = { - {"vrSynonyms", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter3_array, - "s"}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppRegistered__notification__parameter4 = { - "resumeVrGrammars", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppRegistered__notification__parameter5 = { - "priority", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnAppRegistered__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppRegistered__notification__parameter5, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnAppRegistered__notification = { - "BasicCommunication", - "OnAppRegistered", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnAppRegistered, - BasicCommunication__OnAppRegistered__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppUnregistered__notification__parameter1 = { - "unexpectedDisconnect", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnAppUnregistered__notification__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnAppUnregistered__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppUnregistered__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnAppUnregistered__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnAppUnregistered__notification = { - "BasicCommunication", - "OnAppUnregistered", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnAppUnregistered, - BasicCommunication__OnAppUnregistered__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnExitApplication__notification__parameter1 = { - "reason", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnExitApplication__notification__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnExitApplication__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnExitApplication__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnExitApplication__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnExitApplication__notification = { - "BasicCommunication", - "OnExitApplication", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnExitApplication, - BasicCommunication__OnExitApplication__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnExitAllApplications__notification__parameter1 = { - "reason", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnExitAllApplications__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnExitAllApplications__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnExitAllApplications__notification = { - "BasicCommunication", - "OnExitAllApplications", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnExitAllApplications, - BasicCommunication__OnExitAllApplications__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnAwakeSDL__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnAwakeSDL__notification = { - "BasicCommunication", - "OnAwakeSDL", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnAwakeSDL, - BasicCommunication__OnAwakeSDL__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__MixingAudioSupported__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__MixingAudioSupported__request = { - "BasicCommunication", - "MixingAudioSupported", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_MixingAudioSupported, - BasicCommunication__MixingAudioSupported__request__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__MixingAudioSupported__response__parameter1 = { - "attenuatedSupported", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__MixingAudioSupported__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__MixingAudioSupported__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__MixingAudioSupported__response = { - "BasicCommunication", - "MixingAudioSupported", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_MixingAudioSupported, - BasicCommunication__MixingAudioSupported__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__PlayTone__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__PlayTone__notification__parameter2 = { - "methodName", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__PlayTone__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__PlayTone__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__PlayTone__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__PlayTone__notification = { - "BasicCommunication", - "PlayTone", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_PlayTone, - BasicCommunication__PlayTone__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__DialNumber__request__parameter1 = { - "number", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__DialNumber__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__DialNumber__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__DialNumber__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__DialNumber__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__DialNumber__request = { - "BasicCommunication", - "DialNumber", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_DialNumber, - BasicCommunication__DialNumber__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__DialNumber__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__DialNumber__response = { - "BasicCommunication", - "DialNumber", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_DialNumber, - BasicCommunication__DialNumber__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter1 = { - "requestType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter2 = { - "url", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter3 = { - "fileType", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter4 = { - "offset", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter5 = { - "length", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter6 = { - "timeout", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter7 = { - "fileName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemRequest__notification__parameter8 = { - "appID", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnSystemRequest__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemRequest__notification__parameter8, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnSystemRequest__notification = { - "BasicCommunication", - "OnSystemRequest", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnSystemRequest, - BasicCommunication__OnSystemRequest__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__SystemRequest__request__parameter1 = { - "requestType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__SystemRequest__request__parameter2 = { - "fileName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__SystemRequest__request__parameter3 = { - "appID", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__SystemRequest__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__SystemRequest__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__SystemRequest__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__SystemRequest__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__SystemRequest__request = { - "BasicCommunication", - "SystemRequest", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_SystemRequest, - BasicCommunication__SystemRequest__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__SystemRequest__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__SystemRequest__response = { - "BasicCommunication", - "SystemRequest", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_SystemRequest, - BasicCommunication__SystemRequest__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__PolicyUpdate__request__parameter1 = { - "file", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__PolicyUpdate__request__parameter2 = { - "timeout", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__PolicyUpdate__request__parameter3_array = { - "retry", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ArrayDescription - BasicCommunication__PolicyUpdate__request__parameter3 = { - {"retry", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__PolicyUpdate__request__parameter3_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__PolicyUpdate__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__PolicyUpdate__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__PolicyUpdate__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__PolicyUpdate__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__PolicyUpdate__request = { - "BasicCommunication", - "PolicyUpdate", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_PolicyUpdate, - BasicCommunication__PolicyUpdate__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__PolicyUpdate__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__PolicyUpdate__response = { - "BasicCommunication", - "PolicyUpdate", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_PolicyUpdate, - BasicCommunication__PolicyUpdate__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnSDLClose__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnSDLClose__notification = { - "BasicCommunication", - "OnSDLClose", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnSDLClose, - BasicCommunication__OnSDLClose__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter1 = { - "offset", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter2 = { - "length", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter3 = { - "fileSize", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter4 = { - "FileName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter5 = { - "syncFileName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter6 = { - "fileType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnPutFile__notification__parameter7 = { - "persistentFile", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnPutFile__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnPutFile__notification__parameter7, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnPutFile__notification = { - "BasicCommunication", - "OnPutFile", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnPutFile, - BasicCommunication__OnPutFile__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__GetSystemInfo__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__GetSystemInfo__request = { - "BasicCommunication", - "GetSystemInfo", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_GetSystemInfo, - BasicCommunication__GetSystemInfo__request__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__GetSystemInfo__response__parameter1 = { - "ccpu_version", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__GetSystemInfo__response__parameter2 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__GetSystemInfo__response__parameter3 = { - "wersCountryCode", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__GetSystemInfo__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__GetSystemInfo__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__GetSystemInfo__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__GetSystemInfo__response__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__GetSystemInfo__response = { - "BasicCommunication", - "GetSystemInfo", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_GetSystemInfo, - BasicCommunication__GetSystemInfo__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnSystemInfoChanged__notification__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnSystemInfoChanged__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnSystemInfoChanged__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnSystemInfoChanged__notification = { - "BasicCommunication", - "OnSystemInfoChanged", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnSystemInfoChanged, - BasicCommunication__OnSystemInfoChanged__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnIgnitionCycleOver__notification__parameters[] = { - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnIgnitionCycleOver__notification = { - "BasicCommunication", - "OnIgnitionCycleOver", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnIgnitionCycleOver, - BasicCommunication__OnIgnitionCycleOver__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__DecryptCertificate__request__parameter1 = { - "fileName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__DecryptCertificate__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__DecryptCertificate__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__DecryptCertificate__request = { - "BasicCommunication", - "DecryptCertificate", - hmi_apis::messageType::request, - hmi_apis::FunctionID::BasicCommunication_DecryptCertificate, - BasicCommunication__DecryptCertificate__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - BasicCommunication__DecryptCertificate__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__DecryptCertificate__response = { - "BasicCommunication", - "DecryptCertificate", - hmi_apis::messageType::response, - hmi_apis::FunctionID::BasicCommunication_DecryptCertificate, - BasicCommunication__DecryptCertificate__response__parameters}; - -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnEventChanged__notification__parameter1 = { - "eventName", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - BasicCommunication__OnEventChanged__notification__parameter2 = { - "isActive", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - BasicCommunication__OnEventChanged__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnEventChanged__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&BasicCommunication__OnEventChanged__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - BasicCommunication__OnEventChanged__notification = { - "BasicCommunication", - "OnEventChanged", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::BasicCommunication_OnEventChanged, - BasicCommunication__OnEventChanged__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__IsReady__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription VR__IsReady__request = { - "VR", - "IsReady", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_IsReady, - VR__IsReady__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__IsReady__response__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - VR__IsReady__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__IsReady__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription VR__IsReady__response = { - "VR", - "IsReady", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_IsReady, - VR__IsReady__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__Started__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription VR__Started__notification = - {"VR", - "Started", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VR_Started, - VR__Started__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__Stopped__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription VR__Stopped__notification = - {"VR", - "Stopped", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VR_Stopped, - VR__Stopped__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__AddCommand__request__parameter1 = { - "cmdID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VR__AddCommand__request__parameter2_array = { - "vrCommands", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - VR__AddCommand__request__parameter2 = { - {"vrCommands", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__AddCommand__request__parameter2_array, - "s"}; -const ford_message_descriptions::ParameterDescription - VR__AddCommand__request__parameter3 = { - "type", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - VR__AddCommand__request__parameter4 = { - "grammarID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VR__AddCommand__request__parameter5 = { - "appID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - VR__AddCommand__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__AddCommand__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VR__AddCommand__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VR__AddCommand__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VR__AddCommand__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VR__AddCommand__request__parameter5, - NULL}; -const ford_message_descriptions::MessageDescription VR__AddCommand__request = { - "VR", - "AddCommand", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_AddCommand, - VR__AddCommand__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__AddCommand__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription VR__AddCommand__response = { - "VR", - "AddCommand", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_AddCommand, - VR__AddCommand__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__DeleteCommand__request__parameter1 = { - "cmdID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VR__DeleteCommand__request__parameter2 = { - "type", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - VR__DeleteCommand__request__parameter3 = { - "grammarID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VR__DeleteCommand__request__parameter4 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VR__DeleteCommand__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__DeleteCommand__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VR__DeleteCommand__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VR__DeleteCommand__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VR__DeleteCommand__request__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription VR__DeleteCommand__request = - {"VR", - "DeleteCommand", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_DeleteCommand, - VR__DeleteCommand__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__DeleteCommand__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VR__DeleteCommand__response = {"VR", - "DeleteCommand", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_DeleteCommand, - VR__DeleteCommand__response__parameters}; - -const ford_message_descriptions::StructDescription - VR__PerformInteraction__request__parameter1_array = { - {"helpPrompt", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - VR__PerformInteraction__request__parameter1 = { - {"helpPrompt", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter1_array, - "(si)"}; -const ford_message_descriptions::StructDescription - VR__PerformInteraction__request__parameter2_array = { - {"initialPrompt", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - VR__PerformInteraction__request__parameter2 = { - {"initialPrompt", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter2_array, - "(si)"}; -const ford_message_descriptions::StructDescription - VR__PerformInteraction__request__parameter3_array = { - {"timeoutPrompt", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - VR__PerformInteraction__request__parameter3 = { - {"timeoutPrompt", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter3_array, - "(si)"}; -const ford_message_descriptions::ParameterDescription - VR__PerformInteraction__request__parameter4 = { - "timeout", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VR__PerformInteraction__request__parameter5_array = { - "grammarID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ArrayDescription - VR__PerformInteraction__request__parameter5 = { - {"grammarID", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter5_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - VR__PerformInteraction__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__request__parameter5, - NULL}; -const ford_message_descriptions::MessageDescription - VR__PerformInteraction__request = { - "VR", - "PerformInteraction", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_PerformInteraction, - VR__PerformInteraction__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__PerformInteraction__response__parameter1 = { - "choiceID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - VR__PerformInteraction__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__PerformInteraction__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VR__PerformInteraction__response = { - "VR", - "PerformInteraction", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_PerformInteraction, - VR__PerformInteraction__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__OnCommand__notification__parameter1 = { - "cmdID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VR__OnCommand__notification__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VR__OnCommand__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__OnCommand__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VR__OnCommand__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - VR__OnCommand__notification = {"VR", - "OnCommand", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VR_OnCommand, - VR__OnCommand__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__ChangeRegistration__request__parameter1_array = { - "vrSynonyms", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - VR__ChangeRegistration__request__parameter1 = { - {"vrSynonyms", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__ChangeRegistration__request__parameter1_array, - "s"}; -const ford_message_descriptions::ParameterDescription - VR__ChangeRegistration__request__parameter2 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - VR__ChangeRegistration__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VR__ChangeRegistration__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__ChangeRegistration__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VR__ChangeRegistration__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VR__ChangeRegistration__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - VR__ChangeRegistration__request = { - "VR", - "ChangeRegistration", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_ChangeRegistration, - VR__ChangeRegistration__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__ChangeRegistration__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VR__ChangeRegistration__response = { - "VR", - "ChangeRegistration", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_ChangeRegistration, - VR__ChangeRegistration__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__OnLanguageChange__notification__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VR__OnLanguageChange__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__OnLanguageChange__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VR__OnLanguageChange__notification = { - "VR", - "OnLanguageChange", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VR_OnLanguageChange, - VR__OnLanguageChange__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__GetSupportedLanguages__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VR__GetSupportedLanguages__request = { - "VR", - "GetSupportedLanguages", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_GetSupportedLanguages, - VR__GetSupportedLanguages__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__GetSupportedLanguages__response__parameter1_array = { - "languages", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - VR__GetSupportedLanguages__response__parameter1 = { - {"languages", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__GetSupportedLanguages__response__parameter1_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - VR__GetSupportedLanguages__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__GetSupportedLanguages__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VR__GetSupportedLanguages__response = { - "VR", - "GetSupportedLanguages", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_GetSupportedLanguages, - VR__GetSupportedLanguages__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__GetLanguage__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription VR__GetLanguage__request = { - "VR", - "GetLanguage", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_GetLanguage, - VR__GetLanguage__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__GetLanguage__response__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VR__GetLanguage__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__GetLanguage__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription VR__GetLanguage__response = - {"VR", - "GetLanguage", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_GetLanguage, - VR__GetLanguage__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VR__GetCapabilities__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VR__GetCapabilities__request = {"VR", - "GetCapabilities", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VR_GetCapabilities, - VR__GetCapabilities__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VR__GetCapabilities__response__parameter1_array = { - "vrCapabilities", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - VR__GetCapabilities__response__parameter1 = { - {"vrCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VR__GetCapabilities__response__parameter1_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - VR__GetCapabilities__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VR__GetCapabilities__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VR__GetCapabilities__response = {"VR", - "GetCapabilities", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VR_GetCapabilities, - VR__GetCapabilities__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__GetCapabilities__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - TTS__GetCapabilities__request = {"TTS", - "GetCapabilities", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_GetCapabilities, - TTS__GetCapabilities__request__parameters}; - -const ford_message_descriptions::ParameterDescription - TTS__GetCapabilities__response__parameter1_array = { - "speechCapabilities", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - TTS__GetCapabilities__response__parameter1 = { - {"speechCapabilities", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetCapabilities__response__parameter1_array, - "i"}; -const ford_message_descriptions::ParameterDescription - TTS__GetCapabilities__response__parameter2_array = { - "prerecordedSpeechCapabilities", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - TTS__GetCapabilities__response__parameter2 = { - {"prerecordedSpeechCapabilities", - ford_message_descriptions::Array, - true}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetCapabilities__response__parameter2_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - TTS__GetCapabilities__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetCapabilities__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetCapabilities__response__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - TTS__GetCapabilities__response = { - "TTS", - "GetCapabilities", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_GetCapabilities, - TTS__GetCapabilities__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__Started__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription TTS__Started__notification = - {"TTS", - "Started", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::TTS_Started, - TTS__Started__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__Stopped__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription TTS__Stopped__notification = - {"TTS", - "Stopped", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::TTS_Stopped, - TTS__Stopped__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__IsReady__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription TTS__IsReady__request = { - "TTS", - "IsReady", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_IsReady, - TTS__IsReady__request__parameters}; - -const ford_message_descriptions::ParameterDescription - TTS__IsReady__response__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - TTS__IsReady__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__IsReady__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription TTS__IsReady__response = { - "TTS", - "IsReady", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_IsReady, - TTS__IsReady__response__parameters}; - -const ford_message_descriptions::StructDescription - TTS__Speak__request__parameter1_array = { - {"ttsChunks", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - TTS__Speak__request__parameter1 = { - {"ttsChunks", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__Speak__request__parameter1_array, - "(si)"}; -const ford_message_descriptions::ParameterDescription - TTS__Speak__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - TTS__Speak__request__parameter3 = { - "speakType", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - TTS__Speak__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__Speak__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__Speak__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__Speak__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription TTS__Speak__request = { - "TTS", - "Speak", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_Speak, - TTS__Speak__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__Speak__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription TTS__Speak__response = { - "TTS", - "Speak", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_Speak, - TTS__Speak__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__StopSpeaking__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription TTS__StopSpeaking__request = - {"TTS", - "StopSpeaking", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_StopSpeaking, - TTS__StopSpeaking__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__StopSpeaking__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - TTS__StopSpeaking__response = {"TTS", - "StopSpeaking", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_StopSpeaking, - TTS__StopSpeaking__response__parameters}; - -const ford_message_descriptions::StructDescription - TTS__ChangeRegistration__request__parameter1_array = { - {"ttsName", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - TTS__ChangeRegistration__request__parameter1 = { - {"ttsName", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__ChangeRegistration__request__parameter1_array, - "(si)"}; -const ford_message_descriptions::ParameterDescription - TTS__ChangeRegistration__request__parameter2 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - TTS__ChangeRegistration__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - TTS__ChangeRegistration__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__ChangeRegistration__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__ChangeRegistration__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__ChangeRegistration__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - TTS__ChangeRegistration__request = { - "TTS", - "ChangeRegistration", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_ChangeRegistration, - TTS__ChangeRegistration__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__ChangeRegistration__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - TTS__ChangeRegistration__response = { - "TTS", - "ChangeRegistration", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_ChangeRegistration, - TTS__ChangeRegistration__response__parameters}; - -const ford_message_descriptions::ParameterDescription - TTS__OnLanguageChange__notification__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - TTS__OnLanguageChange__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__OnLanguageChange__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - TTS__OnLanguageChange__notification = { - "TTS", - "OnLanguageChange", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::TTS_OnLanguageChange, - TTS__OnLanguageChange__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__GetSupportedLanguages__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - TTS__GetSupportedLanguages__request = { - "TTS", - "GetSupportedLanguages", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_GetSupportedLanguages, - TTS__GetSupportedLanguages__request__parameters}; - -const ford_message_descriptions::ParameterDescription - TTS__GetSupportedLanguages__response__parameter1_array = { - "languages", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - TTS__GetSupportedLanguages__response__parameter1 = { - {"languages", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetSupportedLanguages__response__parameter1_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - TTS__GetSupportedLanguages__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetSupportedLanguages__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - TTS__GetSupportedLanguages__response = { - "TTS", - "GetSupportedLanguages", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_GetSupportedLanguages, - TTS__GetSupportedLanguages__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__GetLanguage__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription TTS__GetLanguage__request = - {"TTS", - "GetLanguage", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_GetLanguage, - TTS__GetLanguage__request__parameters}; - -const ford_message_descriptions::ParameterDescription - TTS__GetLanguage__response__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - TTS__GetLanguage__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__GetLanguage__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription TTS__GetLanguage__response = - {"TTS", - "GetLanguage", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_GetLanguage, - TTS__GetLanguage__response__parameters}; - -const ford_message_descriptions::StructDescription - TTS__SetGlobalProperties__request__parameter1_array = { - {"helpPrompt", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - TTS__SetGlobalProperties__request__parameter1 = { - {"helpPrompt", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__SetGlobalProperties__request__parameter1_array, - "(si)"}; -const ford_message_descriptions::StructDescription - TTS__SetGlobalProperties__request__parameter2_array = { - {"timeoutPrompt", ford_message_descriptions::Struct, true}, - Structs::Common__TTSChunk__parameters}; -const ford_message_descriptions::ArrayDescription - TTS__SetGlobalProperties__request__parameter2 = { - {"timeoutPrompt", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__SetGlobalProperties__request__parameter2_array, - "(si)"}; -const ford_message_descriptions::ParameterDescription - TTS__SetGlobalProperties__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - TTS__SetGlobalProperties__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__SetGlobalProperties__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__SetGlobalProperties__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__SetGlobalProperties__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - TTS__SetGlobalProperties__request = { - "TTS", - "SetGlobalProperties", - hmi_apis::messageType::request, - hmi_apis::FunctionID::TTS_SetGlobalProperties, - TTS__SetGlobalProperties__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - TTS__SetGlobalProperties__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - TTS__SetGlobalProperties__response = { - "TTS", - "SetGlobalProperties", - hmi_apis::messageType::response, - hmi_apis::FunctionID::TTS_SetGlobalProperties, - TTS__SetGlobalProperties__response__parameters}; - -const ford_message_descriptions::ParameterDescription - TTS__OnResetTimeout__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - TTS__OnResetTimeout__notification__parameter2 = { - "methodName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - TTS__OnResetTimeout__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&TTS__OnResetTimeout__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&TTS__OnResetTimeout__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - TTS__OnResetTimeout__notification = { - "TTS", - "OnResetTimeout", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::TTS_OnResetTimeout, - TTS__OnResetTimeout__notification__parameters}; - -const ford_message_descriptions::StructDescription - UI__Alert__request__parameter1_array = { - {"alertStrings", ford_message_descriptions::Struct, true}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::ArrayDescription - UI__Alert__request__parameter1 = { - {"alertStrings", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter1_array, - "(is)"}; -const ford_message_descriptions::ParameterDescription - UI__Alert__request__parameter2 = { - "duration", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - UI__Alert__request__parameter3_array = { - {"softButtons", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButton__parameters}; -const ford_message_descriptions::ArrayDescription - UI__Alert__request__parameter3 = { - {"softButtons", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter3_array, - "(i(bs)(b(si))(bb)ii)"}; -const ford_message_descriptions::ParameterDescription - UI__Alert__request__parameter4 = { - "progressIndicator", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - UI__Alert__request__parameter5 = { - "alertType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - UI__Alert__request__parameter6 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__Alert__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__request__parameter6, - NULL}; -const ford_message_descriptions::MessageDescription UI__Alert__request = { - "UI", - "Alert", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_Alert, - UI__Alert__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__Alert__response__parameter1 = { - "tryAgainTime", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - UI__Alert__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__Alert__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription UI__Alert__response = { - "UI", - "Alert", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_Alert, - UI__Alert__response__parameters}; - -const ford_message_descriptions::StructDescription - UI__Show__request__parameter1_array = { - {"showStrings", ford_message_descriptions::Struct, true}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::ArrayDescription - UI__Show__request__parameter1 = { - {"showStrings", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter1_array, - "(is)"}; -const ford_message_descriptions::ParameterDescription - UI__Show__request__parameter2 = { - "alignment", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - UI__Show__request__parameter3 = { - {"graphic", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::StructDescription - UI__Show__request__parameter4 = { - {"secondaryGraphic", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::StructDescription - UI__Show__request__parameter5_array = { - {"softButtons", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButton__parameters}; -const ford_message_descriptions::ArrayDescription - UI__Show__request__parameter5 = { - {"softButtons", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter5_array, - "(i(bs)(b(si))(bb)ii)"}; -const ford_message_descriptions::ParameterDescription - UI__Show__request__parameter6_array = { - "customPresets", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - UI__Show__request__parameter6 = { - {"customPresets", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter6_array, - "s"}; -const ford_message_descriptions::ParameterDescription - UI__Show__request__parameter7 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__Show__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Show__request__parameter7, - NULL}; -const ford_message_descriptions::MessageDescription UI__Show__request = { - "UI", - "Show", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_Show, - UI__Show__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__Show__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__Show__response = { - "UI", - "Show", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_Show, - UI__Show__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__AddCommand__request__parameter1 = { - "cmdID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - UI__AddCommand__request__parameter2 = { - {"menuParams", ford_message_descriptions::Struct, false}, - Structs::Common__MenuParams__parameters}; -const ford_message_descriptions::StructDescription - UI__AddCommand__request__parameter3 = { - {"cmdIcon", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription - UI__AddCommand__request__parameter4 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__AddCommand__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddCommand__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddCommand__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddCommand__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddCommand__request__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription UI__AddCommand__request = { - "UI", - "AddCommand", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_AddCommand, - UI__AddCommand__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__AddCommand__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__AddCommand__response = { - "UI", - "AddCommand", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_AddCommand, - UI__AddCommand__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__DeleteCommand__request__parameter1 = { - "cmdID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__DeleteCommand__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__DeleteCommand__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__DeleteCommand__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__DeleteCommand__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription UI__DeleteCommand__request = - {"UI", - "DeleteCommand", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_DeleteCommand, - UI__DeleteCommand__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__DeleteCommand__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__DeleteCommand__response = {"UI", - "DeleteCommand", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_DeleteCommand, - UI__DeleteCommand__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__AddSubMenu__request__parameter1 = { - "menuID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - UI__AddSubMenu__request__parameter2 = { - {"menuParams", ford_message_descriptions::Struct, true}, - Structs::Common__MenuParams__parameters}; -const ford_message_descriptions::ParameterDescription - UI__AddSubMenu__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__AddSubMenu__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddSubMenu__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddSubMenu__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__AddSubMenu__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription UI__AddSubMenu__request = { - "UI", - "AddSubMenu", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_AddSubMenu, - UI__AddSubMenu__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__AddSubMenu__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__AddSubMenu__response = { - "UI", - "AddSubMenu", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_AddSubMenu, - UI__AddSubMenu__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__DeleteSubMenu__request__parameter1 = { - "menuID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__DeleteSubMenu__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__DeleteSubMenu__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__DeleteSubMenu__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__DeleteSubMenu__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription UI__DeleteSubMenu__request = - {"UI", - "DeleteSubMenu", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_DeleteSubMenu, - UI__DeleteSubMenu__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__DeleteSubMenu__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__DeleteSubMenu__response = {"UI", - "DeleteSubMenu", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_DeleteSubMenu, - UI__DeleteSubMenu__response__parameters}; - -const ford_message_descriptions::StructDescription - UI__PerformInteraction__request__parameter1 = { - {"initialText", ford_message_descriptions::Struct, false}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::StructDescription - UI__PerformInteraction__request__parameter2_array = { - {"choiceSet", ford_message_descriptions::Struct, true}, - Structs::Common__Choice__parameters}; -const ford_message_descriptions::ArrayDescription - UI__PerformInteraction__request__parameter2 = { - {"choiceSet", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter2_array, - "(i(bs)(b(si))(bs)(bs)(b(si)))"}; -const ford_message_descriptions::ParameterDescription - UI__PerformInteraction__request__parameter3 = { - "vrHelpTitle", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - UI__PerformInteraction__request__parameter4_array = { - {"vrHelp", ford_message_descriptions::Struct, true}, - Structs::Common__VrHelpItem__parameters}; -const ford_message_descriptions::ArrayDescription - UI__PerformInteraction__request__parameter4 = { - {"vrHelp", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter4_array, - "(s(b(si))i)"}; -const ford_message_descriptions::ParameterDescription - UI__PerformInteraction__request__parameter5 = { - "timeout", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__PerformInteraction__request__parameter6 = { - "interactionLayout", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - UI__PerformInteraction__request__parameter7 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__PerformInteraction__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__request__parameter7, - NULL}; -const ford_message_descriptions::MessageDescription - UI__PerformInteraction__request = { - "UI", - "PerformInteraction", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_PerformInteraction, - UI__PerformInteraction__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__PerformInteraction__response__parameter1 = { - "choiceID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - UI__PerformInteraction__response__parameter2 = { - "manualTextEntry", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - UI__PerformInteraction__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformInteraction__response__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__PerformInteraction__response = { - "UI", - "PerformInteraction", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_PerformInteraction, - UI__PerformInteraction__response__parameters}; - -const ford_message_descriptions::StructDescription - UI__SetMediaClockTimer__request__parameter1 = { - {"startTime", ford_message_descriptions::Struct, false}, - Structs::Common__TimeFormat__parameters}; -const ford_message_descriptions::StructDescription - UI__SetMediaClockTimer__request__parameter2 = { - {"endTime", ford_message_descriptions::Struct, false}, - Structs::Common__TimeFormat__parameters}; -const ford_message_descriptions::ParameterDescription - UI__SetMediaClockTimer__request__parameter3 = { - "updateMode", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - UI__SetMediaClockTimer__request__parameter4 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__SetMediaClockTimer__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetMediaClockTimer__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetMediaClockTimer__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetMediaClockTimer__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetMediaClockTimer__request__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - UI__SetMediaClockTimer__request = { - "UI", - "SetMediaClockTimer", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_SetMediaClockTimer, - UI__SetMediaClockTimer__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__SetMediaClockTimer__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__SetMediaClockTimer__response = { - "UI", - "SetMediaClockTimer", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_SetMediaClockTimer, - UI__SetMediaClockTimer__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__SetGlobalProperties__request__parameter1 = { - "vrHelpTitle", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - UI__SetGlobalProperties__request__parameter2_array = { - {"vrHelp", ford_message_descriptions::Struct, true}, - Structs::Common__VrHelpItem__parameters}; -const ford_message_descriptions::ArrayDescription - UI__SetGlobalProperties__request__parameter2 = { - {"vrHelp", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter2_array, - "(s(b(si))i)"}; -const ford_message_descriptions::ParameterDescription - UI__SetGlobalProperties__request__parameter3 = { - "menuTitle", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - UI__SetGlobalProperties__request__parameter4 = { - {"menuIcon", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::StructDescription - UI__SetGlobalProperties__request__parameter5 = { - {"keyboardProperties", ford_message_descriptions::Struct, false}, - Structs::Common__KeyboardProperties__parameters}; -const ford_message_descriptions::ParameterDescription - UI__SetGlobalProperties__request__parameter6 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__SetGlobalProperties__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetGlobalProperties__request__parameter6, - NULL}; -const ford_message_descriptions::MessageDescription - UI__SetGlobalProperties__request = { - "UI", - "SetGlobalProperties", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_SetGlobalProperties, - UI__SetGlobalProperties__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__SetGlobalProperties__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__SetGlobalProperties__response = { - "UI", - "SetGlobalProperties", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_SetGlobalProperties, - UI__SetGlobalProperties__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnCommand__notification__parameter1 = { - "cmdID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__OnCommand__notification__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__OnCommand__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnCommand__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnCommand__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnCommand__notification = {"UI", - "OnCommand", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnCommand, - UI__OnCommand__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnSystemContext__notification__parameter1 = { - "systemContext", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - UI__OnSystemContext__notification__parameter2 = { - "appID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - UI__OnSystemContext__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnSystemContext__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnSystemContext__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnSystemContext__notification = { - "UI", - "OnSystemContext", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnSystemContext, - UI__OnSystemContext__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__GetCapabilities__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__GetCapabilities__request = {"UI", - "GetCapabilities", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_GetCapabilities, - UI__GetCapabilities__request__parameters}; - -const ford_message_descriptions::StructDescription - UI__GetCapabilities__response__parameter1 = { - {"displayCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__DisplayCapabilities__parameters}; -const ford_message_descriptions::StructDescription - UI__GetCapabilities__response__parameter2 = { - {"audioPassThruCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__AudioPassThruCapabilities__parameters}; -const ford_message_descriptions::ParameterDescription - UI__GetCapabilities__response__parameter3 = { - "hmiZoneCapabilities", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::StructDescription - UI__GetCapabilities__response__parameter4_array = { - {"softButtonCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButtonCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - UI__GetCapabilities__response__parameter4 = { - {"softButtonCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetCapabilities__response__parameter4_array, - "(bbbb)"}; -const ford_message_descriptions::StructDescription - UI__GetCapabilities__response__parameter5 = { - {"hmiCapabilities", ford_message_descriptions::Struct, false}, - Structs::Common__HMICapabilities__parameters}; -const ford_message_descriptions::ParameterDescription* - UI__GetCapabilities__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetCapabilities__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetCapabilities__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetCapabilities__response__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetCapabilities__response__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetCapabilities__response__parameter5, - NULL}; -const ford_message_descriptions::MessageDescription - UI__GetCapabilities__response = {"UI", - "GetCapabilities", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_GetCapabilities, - UI__GetCapabilities__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__ChangeRegistration__request__parameter1 = { - "appName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - UI__ChangeRegistration__request__parameter2 = { - "ngnMediaScreenAppName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - UI__ChangeRegistration__request__parameter3 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - UI__ChangeRegistration__request__parameter4_array = { - "appHMIType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - UI__ChangeRegistration__request__parameter4 = { - {"appHMIType", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ChangeRegistration__request__parameter4_array, - "i"}; -const ford_message_descriptions::ParameterDescription - UI__ChangeRegistration__request__parameter5 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__ChangeRegistration__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__ChangeRegistration__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ChangeRegistration__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ChangeRegistration__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ChangeRegistration__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ChangeRegistration__request__parameter5, - NULL}; -const ford_message_descriptions::MessageDescription - UI__ChangeRegistration__request = { - "UI", - "ChangeRegistration", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_ChangeRegistration, - UI__ChangeRegistration__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__ChangeRegistration__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__ChangeRegistration__response = { - "UI", - "ChangeRegistration", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_ChangeRegistration, - UI__ChangeRegistration__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnLanguageChange__notification__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - UI__OnLanguageChange__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnLanguageChange__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnLanguageChange__notification = { - "UI", - "OnLanguageChange", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnLanguageChange, - UI__OnLanguageChange__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__GetSupportedLanguages__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__GetSupportedLanguages__request = { - "UI", - "GetSupportedLanguages", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_GetSupportedLanguages, - UI__GetSupportedLanguages__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__GetSupportedLanguages__response__parameter1_array = { - "languages", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - UI__GetSupportedLanguages__response__parameter1 = { - {"languages", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetSupportedLanguages__response__parameter1_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - UI__GetSupportedLanguages__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetSupportedLanguages__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - UI__GetSupportedLanguages__response = { - "UI", - "GetSupportedLanguages", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_GetSupportedLanguages, - UI__GetSupportedLanguages__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__GetLanguage__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__GetLanguage__request = { - "UI", - "GetLanguage", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_GetLanguage, - UI__GetLanguage__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__GetLanguage__response__parameter1 = { - "language", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - UI__GetLanguage__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__GetLanguage__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription UI__GetLanguage__response = - {"UI", - "GetLanguage", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_GetLanguage, - UI__GetLanguage__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnDriverDistraction__notification__parameter1 = { - "state", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - UI__OnDriverDistraction__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnDriverDistraction__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnDriverDistraction__notification = { - "UI", - "OnDriverDistraction", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnDriverDistraction, - UI__OnDriverDistraction__notification__parameters}; - -const ford_message_descriptions::StructDescription - UI__SetAppIcon__request__parameter1 = { - {"syncFileName", ford_message_descriptions::Struct, true}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription - UI__SetAppIcon__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__SetAppIcon__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetAppIcon__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetAppIcon__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription UI__SetAppIcon__request = { - "UI", - "SetAppIcon", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_SetAppIcon, - UI__SetAppIcon__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__SetAppIcon__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__SetAppIcon__response = { - "UI", - "SetAppIcon", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_SetAppIcon, - UI__SetAppIcon__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__SetDisplayLayout__request__parameter1 = { - "displayLayout", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - UI__SetDisplayLayout__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__SetDisplayLayout__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__SetDisplayLayout__request = {"UI", - "SetDisplayLayout", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_SetDisplayLayout, - UI__SetDisplayLayout__request__parameters}; - -const ford_message_descriptions::StructDescription - UI__SetDisplayLayout__response__parameter1 = { - {"displayCapabilities", ford_message_descriptions::Struct, false}, - Structs::Common__DisplayCapabilities__parameters}; -const ford_message_descriptions::StructDescription - UI__SetDisplayLayout__response__parameter2_array = { - {"buttonCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__ButtonCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - UI__SetDisplayLayout__response__parameter2 = { - {"buttonCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__response__parameter2_array, - "(ibbb)"}; -const ford_message_descriptions::StructDescription - UI__SetDisplayLayout__response__parameter3_array = { - {"softButtonCapabilities", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButtonCapabilities__parameters}; -const ford_message_descriptions::ArrayDescription - UI__SetDisplayLayout__response__parameter3 = { - {"softButtonCapabilities", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__response__parameter3_array, - "(bbbb)"}; -const ford_message_descriptions::StructDescription - UI__SetDisplayLayout__response__parameter4 = { - {"presetBankCapabilities", ford_message_descriptions::Struct, false}, - Structs::Common__PresetBankCapabilities__parameters}; -const ford_message_descriptions::ParameterDescription* - UI__SetDisplayLayout__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__response__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SetDisplayLayout__response__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - UI__SetDisplayLayout__response = { - "UI", - "SetDisplayLayout", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_SetDisplayLayout, - UI__SetDisplayLayout__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__ShowCustomForm__request__parameter1 = { - "customFormID", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - UI__ShowCustomForm__request__parameter2 = { - "parentFormID", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - UI__ShowCustomForm__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__ShowCustomForm__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ShowCustomForm__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__ShowCustomForm__request = {"UI", - "ShowCustomForm", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_ShowCustomForm, - UI__ShowCustomForm__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__ShowCustomForm__response__parameter1 = { - "info", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - UI__ShowCustomForm__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__ShowCustomForm__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - UI__ShowCustomForm__response = {"UI", - "ShowCustomForm", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_ShowCustomForm, - UI__ShowCustomForm__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnKeyboardInput__notification__parameter1 = { - "event", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - UI__OnKeyboardInput__notification__parameter2 = { - "data", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - UI__OnKeyboardInput__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnKeyboardInput__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnKeyboardInput__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnKeyboardInput__notification = { - "UI", - "OnKeyboardInput", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnKeyboardInput, - UI__OnKeyboardInput__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnTouchEvent__notification__parameter1 = { - "type", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::StructDescription - UI__OnTouchEvent__notification__parameter2_array = { - {"event", ford_message_descriptions::Struct, true}, - Structs::Common__TouchEvent__parameters}; -const ford_message_descriptions::ArrayDescription - UI__OnTouchEvent__notification__parameter2 = { - {"event", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnTouchEvent__notification__parameter2_array, - "(iaia(ii))"}; -const ford_message_descriptions::ParameterDescription* - UI__OnTouchEvent__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnTouchEvent__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnTouchEvent__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnTouchEvent__notification = { - "UI", - "OnTouchEvent", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnTouchEvent, - UI__OnTouchEvent__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__Slider__request__parameter1 = { - "numTicks", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__Slider__request__parameter2 = { - "position", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__Slider__request__parameter3 = { - "sliderHeader", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - UI__Slider__request__parameter4_array = { - "sliderFooter", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - UI__Slider__request__parameter4 = { - {"sliderFooter", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter4_array, - "s"}; -const ford_message_descriptions::ParameterDescription - UI__Slider__request__parameter5 = { - "timeout", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__Slider__request__parameter6 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__Slider__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__request__parameter6, - NULL}; -const ford_message_descriptions::MessageDescription UI__Slider__request = { - "UI", - "Slider", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_Slider, - UI__Slider__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__Slider__response__parameter1 = { - "sliderPosition", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - UI__Slider__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__Slider__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription UI__Slider__response = { - "UI", - "Slider", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_Slider, - UI__Slider__response__parameters}; - -const ford_message_descriptions::StructDescription - UI__ScrollableMessage__request__parameter1 = { - {"messageText", ford_message_descriptions::Struct, true}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::ParameterDescription - UI__ScrollableMessage__request__parameter2 = { - "timeout", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - UI__ScrollableMessage__request__parameter3_array = { - {"softButtons", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButton__parameters}; -const ford_message_descriptions::ArrayDescription - UI__ScrollableMessage__request__parameter3 = { - {"softButtons", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ScrollableMessage__request__parameter3_array, - "(i(bs)(b(si))(bb)ii)"}; -const ford_message_descriptions::ParameterDescription - UI__ScrollableMessage__request__parameter4 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__ScrollableMessage__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__ScrollableMessage__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ScrollableMessage__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ScrollableMessage__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__ScrollableMessage__request__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - UI__ScrollableMessage__request = { - "UI", - "ScrollableMessage", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_ScrollableMessage, - UI__ScrollableMessage__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__ScrollableMessage__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__ScrollableMessage__response = { - "UI", - "ScrollableMessage", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_ScrollableMessage, - UI__ScrollableMessage__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__PerformAudioPassThru__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - UI__PerformAudioPassThru__request__parameter2_array = { - {"audioPassThruDisplayTexts", ford_message_descriptions::Struct, true}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::ArrayDescription - UI__PerformAudioPassThru__request__parameter2 = { - {"audioPassThruDisplayTexts", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformAudioPassThru__request__parameter2_array, - "(is)"}; -const ford_message_descriptions::ParameterDescription - UI__PerformAudioPassThru__request__parameter3 = { - "maxDuration", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__PerformAudioPassThru__request__parameter4 = { - "muteAudio", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - UI__PerformAudioPassThru__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformAudioPassThru__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformAudioPassThru__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformAudioPassThru__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&UI__PerformAudioPassThru__request__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - UI__PerformAudioPassThru__request = { - "UI", - "PerformAudioPassThru", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_PerformAudioPassThru, - UI__PerformAudioPassThru__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__PerformAudioPassThru__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__PerformAudioPassThru__response = { - "UI", - "PerformAudioPassThru", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_PerformAudioPassThru, - UI__PerformAudioPassThru__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__EndAudioPassThru__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__EndAudioPassThru__request = {"UI", - "EndAudioPassThru", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_EndAudioPassThru, - UI__EndAudioPassThru__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__EndAudioPassThru__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__EndAudioPassThru__response = { - "UI", - "EndAudioPassThru", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_EndAudioPassThru, - UI__EndAudioPassThru__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__IsReady__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__IsReady__request = { - "UI", - "IsReady", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_IsReady, - UI__IsReady__request__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__IsReady__response__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - UI__IsReady__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__IsReady__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription UI__IsReady__response = { - "UI", - "IsReady", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_IsReady, - UI__IsReady__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__ClosePopUp__request__parameter1 = { - "methodName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription* - UI__ClosePopUp__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__ClosePopUp__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription UI__ClosePopUp__request = { - "UI", - "ClosePopUp", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_ClosePopUp, - UI__ClosePopUp__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__ClosePopUp__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription UI__ClosePopUp__response = { - "UI", - "ClosePopUp", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_ClosePopUp, - UI__ClosePopUp__response__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnResetTimeout__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - UI__OnResetTimeout__notification__parameter2 = { - "methodName", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - UI__OnResetTimeout__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnResetTimeout__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnResetTimeout__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnResetTimeout__notification = { - "UI", - "OnResetTimeout", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnResetTimeout, - UI__OnResetTimeout__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__OnRecordStart__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - UI__OnRecordStart__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__OnRecordStart__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - UI__OnRecordStart__notification = { - "UI", - "OnRecordStart", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::UI_OnRecordStart, - UI__OnRecordStart__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - UI__SendHapticData__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - UI__SendHapticData__request__parameter2_array = { - {"hapticRectData", ford_message_descriptions::Struct, true}, - Structs::Common__HapticRect__parameters}; -const ford_message_descriptions::ArrayDescription - UI__SendHapticData__request__parameter2 = { - {"hapticRectData", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SendHapticData__request__parameter2_array, - "(i(dddd))"}; -const ford_message_descriptions::ParameterDescription* - UI__SendHapticData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&UI__SendHapticData__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&UI__SendHapticData__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - UI__SendHapticData__request = {"UI", - "SendHapticData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::UI_SendHapticData, - UI__SendHapticData__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - UI__SendHapticData__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - UI__SendHapticData__response = {"UI", - "SendHapticData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::UI_SendHapticData, - UI__SendHapticData__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__IsReady__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__IsReady__request = {"Navigation", - "IsReady", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_IsReady, - Navigation__IsReady__request__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__IsReady__response__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__IsReady__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__IsReady__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__IsReady__response = {"Navigation", - "IsReady", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_IsReady, - Navigation__IsReady__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter2 = { - "longitudeDegrees", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter3 = { - "latitudeDegrees", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter4 = { - "locationName", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter5 = { - "locationDescription", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter6_array = { - "addressLines", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - Navigation__SendLocation__request__parameter6 = { - {"addressLines", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter6_array, - "s"}; -const ford_message_descriptions::ParameterDescription - Navigation__SendLocation__request__parameter7 = { - "phoneNumber", ford_message_descriptions::String, false}; -const ford_message_descriptions::StructDescription - Navigation__SendLocation__request__parameter8 = { - {"locationImage", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription* - Navigation__SendLocation__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SendLocation__request__parameter8, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__SendLocation__request = { - "Navigation", - "SendLocation", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_SendLocation, - Navigation__SendLocation__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__SendLocation__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__SendLocation__response = { - "Navigation", - "SendLocation", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_SendLocation, - Navigation__SendLocation__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__DialNumber__request__parameter1 = { - "number", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__DialNumber__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__DialNumber__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__DialNumber__request = { - "Navigation", - "DialNumber", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_DialNumber, - Navigation__DialNumber__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__DialNumber__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__DialNumber__response = { - "Navigation", - "DialNumber", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_DialNumber, - Navigation__DialNumber__response__parameters}; - -const ford_message_descriptions::StructDescription - Navigation__ShowConstantTBT__request__parameter1_array = { - {"navigationTexts", ford_message_descriptions::Struct, true}, - Structs::Common__TextFieldStruct__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__ShowConstantTBT__request__parameter1 = { - {"navigationTexts", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter1_array, - "(is)"}; -const ford_message_descriptions::StructDescription - Navigation__ShowConstantTBT__request__parameter2 = { - {"turnIcon", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::StructDescription - Navigation__ShowConstantTBT__request__parameter3 = { - {"nextTurnIcon", ford_message_descriptions::Struct, false}, - Structs::Common__Image__parameters}; -const ford_message_descriptions::ParameterDescription - Navigation__ShowConstantTBT__request__parameter4 = { - "distanceToManeuver", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Navigation__ShowConstantTBT__request__parameter5 = { - "distanceToManeuverScale", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription - Navigation__ShowConstantTBT__request__parameter6 = { - "maneuverComplete", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::StructDescription - Navigation__ShowConstantTBT__request__parameter7_array = { - {"softButtons", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButton__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__ShowConstantTBT__request__parameter7 = { - {"softButtons", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter7_array, - "(i(bs)(b(si))(bb)ii)"}; -const ford_message_descriptions::ParameterDescription - Navigation__ShowConstantTBT__request__parameter8 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__ShowConstantTBT__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__ShowConstantTBT__request__parameter8, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__ShowConstantTBT__request = { - "Navigation", - "ShowConstantTBT", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_ShowConstantTBT, - Navigation__ShowConstantTBT__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__ShowConstantTBT__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__ShowConstantTBT__response = { - "Navigation", - "ShowConstantTBT", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_ShowConstantTBT, - Navigation__ShowConstantTBT__response__parameters}; - -const ford_message_descriptions::StructDescription - Navigation__AlertManeuver__request__parameter1_array = { - {"softButtons", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButton__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__AlertManeuver__request__parameter1 = { - {"softButtons", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__AlertManeuver__request__parameter1_array, - "(i(bs)(b(si))(bb)ii)"}; -const ford_message_descriptions::ParameterDescription - Navigation__AlertManeuver__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__AlertManeuver__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__AlertManeuver__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__AlertManeuver__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__AlertManeuver__request = { - "Navigation", - "AlertManeuver", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_AlertManeuver, - Navigation__AlertManeuver__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__AlertManeuver__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__AlertManeuver__response = { - "Navigation", - "AlertManeuver", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_AlertManeuver, - Navigation__AlertManeuver__response__parameters}; - -const ford_message_descriptions::StructDescription - Navigation__UpdateTurnList__request__parameter1_array = { - {"turnList", ford_message_descriptions::Struct, true}, - Structs::Common__Turn__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__UpdateTurnList__request__parameter1 = { - {"turnList", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__UpdateTurnList__request__parameter1_array, - "((b(is))(b(si)))"}; -const ford_message_descriptions::StructDescription - Navigation__UpdateTurnList__request__parameter2_array = { - {"softButtons", ford_message_descriptions::Struct, true}, - Structs::Common__SoftButton__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__UpdateTurnList__request__parameter2 = { - {"softButtons", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__UpdateTurnList__request__parameter2_array, - "(i(bs)(b(si))(bb)ii)"}; -const ford_message_descriptions::ParameterDescription - Navigation__UpdateTurnList__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__UpdateTurnList__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__UpdateTurnList__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__UpdateTurnList__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__UpdateTurnList__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__UpdateTurnList__request = { - "Navigation", - "UpdateTurnList", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_UpdateTurnList, - Navigation__UpdateTurnList__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__UpdateTurnList__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__UpdateTurnList__response = { - "Navigation", - "UpdateTurnList", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_UpdateTurnList, - Navigation__UpdateTurnList__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__OnTBTClientState__notification__parameter1 = { - "state", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__OnTBTClientState__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__OnTBTClientState__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__OnTBTClientState__notification = { - "Navigation", - "OnTBTClientState", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Navigation_OnTBTClientState, - Navigation__OnTBTClientState__notification__parameters}; - -const ford_message_descriptions::StructDescription - Navigation__SetVideoConfig__request__parameter1 = { - {"config", ford_message_descriptions::Struct, true}, - Structs::Common__VideoConfig__parameters}; -const ford_message_descriptions::ParameterDescription - Navigation__SetVideoConfig__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__SetVideoConfig__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SetVideoConfig__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SetVideoConfig__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__SetVideoConfig__request = { - "Navigation", - "SetVideoConfig", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_SetVideoConfig, - Navigation__SetVideoConfig__request__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__SetVideoConfig__response__parameter1_array = { - "rejectedParams", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - Navigation__SetVideoConfig__response__parameter1 = { - {"rejectedParams", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SetVideoConfig__response__parameter1_array, - "s"}; -const ford_message_descriptions::ParameterDescription* - Navigation__SetVideoConfig__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__SetVideoConfig__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__SetVideoConfig__response = { - "Navigation", - "SetVideoConfig", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_SetVideoConfig, - Navigation__SetVideoConfig__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__StartStream__request__parameter1 = { - "url", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Navigation__StartStream__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__StartStream__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__StartStream__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__StartStream__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StartStream__request = { - "Navigation", - "StartStream", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_StartStream, - Navigation__StartStream__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__StartStream__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StartStream__response = { - "Navigation", - "StartStream", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_StartStream, - Navigation__StartStream__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__StopStream__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__StopStream__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__StopStream__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StopStream__request = { - "Navigation", - "StopStream", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_StopStream, - Navigation__StopStream__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__StopStream__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StopStream__response = { - "Navigation", - "StopStream", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_StopStream, - Navigation__StopStream__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__StartAudioStream__request__parameter1 = { - "url", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription - Navigation__StartAudioStream__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__StartAudioStream__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__StartAudioStream__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__StartAudioStream__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StartAudioStream__request = { - "Navigation", - "StartAudioStream", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_StartAudioStream, - Navigation__StartAudioStream__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__StartAudioStream__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StartAudioStream__response = { - "Navigation", - "StartAudioStream", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_StartAudioStream, - Navigation__StartAudioStream__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__StopAudioStream__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__StopAudioStream__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__StopAudioStream__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StopAudioStream__request = { - "Navigation", - "StopAudioStream", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_StopAudioStream, - Navigation__StopAudioStream__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__StopAudioStream__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__StopAudioStream__response = { - "Navigation", - "StopAudioStream", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_StopAudioStream, - Navigation__StopAudioStream__response__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__OnAudioDataStreaming__notification__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__OnAudioDataStreaming__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__OnAudioDataStreaming__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__OnAudioDataStreaming__notification = { - "Navigation", - "OnAudioDataStreaming", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Navigation_OnAudioDataStreaming, - Navigation__OnAudioDataStreaming__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__OnVideoDataStreaming__notification__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__OnVideoDataStreaming__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__OnVideoDataStreaming__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__OnVideoDataStreaming__notification = { - "Navigation", - "OnVideoDataStreaming", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Navigation_OnVideoDataStreaming, - Navigation__OnVideoDataStreaming__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__GetWayPoints__request__parameter1 = { - "wayPointType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - Navigation__GetWayPoints__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - Navigation__GetWayPoints__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__GetWayPoints__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__GetWayPoints__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__GetWayPoints__request = { - "Navigation", - "GetWayPoints", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_GetWayPoints, - Navigation__GetWayPoints__request__parameters}; - -const ford_message_descriptions::ParameterDescription - Navigation__GetWayPoints__response__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::StructDescription - Navigation__GetWayPoints__response__parameter2_array = { - {"wayPoints", ford_message_descriptions::Struct, true}, - Structs::Common__LocationDetails__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__GetWayPoints__response__parameter2 = { - {"wayPoints", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__GetWayPoints__response__parameter2_array, - "((b(dd))(bs)(bas)(bs)(bs)(b(si))(b((bs)(bs)(bs)(bs)(bs)(bs)(bs)(bs)(" - "bs))))"}; -const ford_message_descriptions::ParameterDescription* - Navigation__GetWayPoints__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__GetWayPoints__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__GetWayPoints__response__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__GetWayPoints__response = { - "Navigation", - "GetWayPoints", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_GetWayPoints, - Navigation__GetWayPoints__response__parameters}; - -const ford_message_descriptions::StructDescription - Navigation__OnWayPointChange__notification__parameter1_array = { - {"wayPoints", ford_message_descriptions::Struct, true}, - Structs::Common__LocationDetails__parameters}; -const ford_message_descriptions::ArrayDescription - Navigation__OnWayPointChange__notification__parameter1 = { - {"wayPoints", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__OnWayPointChange__notification__parameter1_array, - "((b(dd))(bs)(bas)(bs)(bs)(b(si))(b((bs)(bs)(bs)(bs)(bs)(bs)(bs)(bs)(" - "bs))))"}; -const ford_message_descriptions::ParameterDescription* - Navigation__OnWayPointChange__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&Navigation__OnWayPointChange__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - Navigation__OnWayPointChange__notification = { - "Navigation", - "OnWayPointChange", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::Navigation_OnWayPointChange, - Navigation__OnWayPointChange__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__SubscribeWayPoints__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__SubscribeWayPoints__request = { - "Navigation", - "SubscribeWayPoints", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_SubscribeWayPoints, - Navigation__SubscribeWayPoints__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__SubscribeWayPoints__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__SubscribeWayPoints__response = { - "Navigation", - "SubscribeWayPoints", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_SubscribeWayPoints, - Navigation__SubscribeWayPoints__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__UnsubscribeWayPoints__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__UnsubscribeWayPoints__request = { - "Navigation", - "UnsubscribeWayPoints", - hmi_apis::messageType::request, - hmi_apis::FunctionID::Navigation_UnsubscribeWayPoints, - Navigation__UnsubscribeWayPoints__request__parameters}; - -const ford_message_descriptions::ParameterDescription* - Navigation__UnsubscribeWayPoints__response__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - Navigation__UnsubscribeWayPoints__response = { - "Navigation", - "UnsubscribeWayPoints", - hmi_apis::messageType::response, - hmi_apis::FunctionID::Navigation_UnsubscribeWayPoints, - Navigation__UnsubscribeWayPoints__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__IsReady__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__IsReady__request = {"VehicleInfo", - "IsReady", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_IsReady, - VehicleInfo__IsReady__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__IsReady__response__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__IsReady__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__IsReady__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__IsReady__response = { - "VehicleInfo", - "IsReady", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_IsReady, - VehicleInfo__IsReady__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetVehicleType__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetVehicleType__request = { - "VehicleInfo", - "GetVehicleType", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetVehicleType, - VehicleInfo__GetVehicleType__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleType__response__parameter1 = { - {"vehicleType", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleType__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetVehicleType__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleType__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetVehicleType__response = { - "VehicleInfo", - "GetVehicleType", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetVehicleType, - VehicleInfo__GetVehicleType__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__ReadDID__request__parameter1 = { - "ecuName", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__ReadDID__request__parameter2_array = { - "didLocation", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ArrayDescription - VehicleInfo__ReadDID__request__parameter2 = { - {"didLocation", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__ReadDID__request__parameter2_array, - "i"}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__ReadDID__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__ReadDID__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__ReadDID__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__ReadDID__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__ReadDID__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__ReadDID__request = {"VehicleInfo", - "ReadDID", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_ReadDID, - VehicleInfo__ReadDID__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__ReadDID__response__parameter1_array = { - {"didResult", ford_message_descriptions::Struct, true}, - Structs::Common__DIDResult__parameters}; -const ford_message_descriptions::ArrayDescription - VehicleInfo__ReadDID__response__parameter1 = { - {"didResult", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__ReadDID__response__parameter1_array, - "(ii(bs))"}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__ReadDID__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__ReadDID__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__ReadDID__response = { - "VehicleInfo", - "ReadDID", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_ReadDID, - VehicleInfo__ReadDID__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDTCs__request__parameter1 = { - "ecuName", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDTCs__request__parameter2 = { - "dtcMask", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDTCs__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetDTCs__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDTCs__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDTCs__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDTCs__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetDTCs__request = {"VehicleInfo", - "GetDTCs", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetDTCs, - VehicleInfo__GetDTCs__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDTCs__response__parameter1 = { - "ecuHeader", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDTCs__response__parameter2_array = { - "dtc", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - VehicleInfo__GetDTCs__response__parameter2 = { - {"dtc", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDTCs__response__parameter2_array, - "s"}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetDTCs__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDTCs__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDTCs__response__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetDTCs__response = { - "VehicleInfo", - "GetDTCs", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetDTCs, - VehicleInfo__GetDTCs__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__DiagnosticMessage__request__parameter1 = { - "targetID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__DiagnosticMessage__request__parameter2 = { - "messageLength", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__DiagnosticMessage__request__parameter3_array = { - "messageData", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ArrayDescription - VehicleInfo__DiagnosticMessage__request__parameter3 = { - {"messageData", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__request__parameter3_array, - "i"}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__DiagnosticMessage__request__parameter4 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__DiagnosticMessage__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__request__parameter4, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__DiagnosticMessage__request = { - "VehicleInfo", - "DiagnosticMessage", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_DiagnosticMessage, - VehicleInfo__DiagnosticMessage__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__DiagnosticMessage__response__parameter1_array = { - "messageDataResult", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ArrayDescription - VehicleInfo__DiagnosticMessage__response__parameter1 = { - {"messageDataResult", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__response__parameter1_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__DiagnosticMessage__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__DiagnosticMessage__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__DiagnosticMessage__response = { - "VehicleInfo", - "DiagnosticMessage", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_DiagnosticMessage, - VehicleInfo__DiagnosticMessage__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter1 = { - "gps", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter2 = { - "speed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter3 = { - "rpm", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter4 = { - "fuelLevel", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter5 = { - "fuelLevel_State", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter6 = { - "instantFuelConsumption", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter7 = { - "externalTemperature", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter8 = { - "prndl", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter9 = { - "tirePressure", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter10 = { - "odometer", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter11 = { - "beltStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter12 = { - "bodyInformation", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter13 = { - "deviceStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter14 = { - "driverBraking", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter15 = { - "wiperStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter16 = { - "headLampStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter17 = { - "engineTorque", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter18 = { - "accPedalPosition", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter19 = { - "steeringWheelAngle", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter20 = { - "eCallInfo", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter21 = { - "airbagStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter22 = { - "emergencyEvent", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter23 = { - "clusterModeStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVehicleData__request__parameter24 = { - "myKey", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__SubscribeVehicleData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__request__parameter24, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeVehicleData__request = { - "VehicleInfo", - "SubscribeVehicleData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeVehicleData, - VehicleInfo__SubscribeVehicleData__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter1 = { - {"gps", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter2 = { - {"speed", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter3 = { - {"rpm", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter4 = { - {"fuelLevel", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter5 = { - {"fuelLevel_State", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter6 = { - {"instantFuelConsumption", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter7 = { - {"externalTemperature", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter8 = { - {"prndl", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter9 = { - {"tirePressure", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter10 = { - {"odometer", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter11 = { - {"beltStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter12 = { - {"bodyInformation", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter13 = { - {"deviceStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter14 = { - {"driverBraking", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter15 = { - {"wiperStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter16 = { - {"headLampStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter17 = { - {"engineTorque", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter18 = { - {"accPedalPosition", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter19 = { - {"steeringWheelAngle", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter20 = { - {"eCallInfo", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter21 = { - {"airbagStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter22 = { - {"emergencyEvent", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter23 = { - {"clusterModes", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeVehicleData__response__parameter24 = { - {"myKey", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__SubscribeVehicleData__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVehicleData__response__parameter24, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeVehicleData__response = { - "VehicleInfo", - "SubscribeVehicleData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeVehicleData, - VehicleInfo__SubscribeVehicleData__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter2 = { - "gps", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter3 = { - "speed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter4 = { - "rpm", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter5 = { - "fuelLevel", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter6 = { - "fuelLevel_State", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter7 = { - "instantFuelConsumption", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter8 = { - "externalTemperature", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter9 = { - "prndl", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter10 = { - "tirePressure", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter11 = { - "odometer", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter12 = { - "beltStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter13 = { - "bodyInformation", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter14 = { - "deviceStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter15 = { - "driverBraking", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter16 = { - "wiperStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter17 = { - "headLampStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter18 = { - "engineTorque", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter19 = { - "accPedalPosition", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter20 = { - "steeringWheelAngle", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter21 = { - "eCallInfo", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter22 = { - "airbagStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter23 = { - "emergencyEvent", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter24 = { - "clusterModeStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVehicleData__request__parameter25 = { - "myKey", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__UnsubscribeVehicleData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter24, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__request__parameter25, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeVehicleData__request = { - "VehicleInfo", - "UnsubscribeVehicleData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeVehicleData, - VehicleInfo__UnsubscribeVehicleData__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter1 = { - {"gps", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter2 = { - {"speed", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter3 = { - {"rpm", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter4 = { - {"fuelLevel", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter5 = { - {"fuelLevel_State", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter6 = { - {"instantFuelConsumption", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter7 = { - {"externalTemperature", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter8 = { - {"prndl", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter9 = { - {"tirePressure", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter10 = { - {"odometer", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter11 = { - {"beltStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter12 = { - {"bodyInformation", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter13 = { - {"deviceStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter14 = { - {"driverBraking", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter15 = { - {"wiperStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter16 = { - {"headLampStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter17 = { - {"engineTorque", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter18 = { - {"accPedalPosition", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter19 = { - {"steeringWheelAngle", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter20 = { - {"eCallInfo", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter21 = { - {"airbagStatus", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter22 = { - {"emergencyEvent", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter23 = { - {"clusterModes", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeVehicleData__response__parameter24 = { - {"myKey", ford_message_descriptions::Struct, false}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__UnsubscribeVehicleData__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVehicleData__response__parameter24, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeVehicleData__response = { - "VehicleInfo", - "UnsubscribeVehicleData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeVehicleData, - VehicleInfo__UnsubscribeVehicleData__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter1 = { - "gps", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter2 = { - "speed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter3 = { - "rpm", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter4 = { - "fuelLevel", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter5 = { - "fuelLevel_State", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter6 = { - "instantFuelConsumption", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter7 = { - "externalTemperature", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter8 = { - "vin", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter9 = { - "prndl", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter10 = { - "tirePressure", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter11 = { - "odometer", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter12 = { - "beltStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter13 = { - "bodyInformation", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter14 = { - "deviceStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter15 = { - "driverBraking", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter16 = { - "wiperStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter17 = { - "headLampStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter18 = { - "engineTorque", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter19 = { - "accPedalPosition", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter20 = { - "steeringWheelAngle", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter21 = { - "eCallInfo", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter22 = { - "airbagStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter23 = { - "emergencyEvent", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter24 = { - "clusterModeStatus", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__request__parameter25 = { - "myKey", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__GetVehicleData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter24, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__request__parameter25, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetVehicleData__request = { - "VehicleInfo", - "GetVehicleData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetVehicleData, - VehicleInfo__GetVehicleData__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter1 = { - {"gps", ford_message_descriptions::Struct, false}, - Structs::Common__GPSData__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter2 = { - "speed", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter3 = { - "rpm", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter4 = { - "fuelLevel", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter5 = { - "fuelLevel_State", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter6 = { - "instantFuelConsumption", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter7 = { - "externalTemperature", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter8 = { - "vin", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter9 = { - "prndl", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter10 = { - {"tirePressure", ford_message_descriptions::Struct, false}, - Structs::Common__TireStatus__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter11 = { - "odometer", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter12 = { - {"beltStatus", ford_message_descriptions::Struct, false}, - Structs::Common__BeltStatus__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter13 = { - {"bodyInformation", ford_message_descriptions::Struct, false}, - Structs::Common__BodyInformation__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter14 = { - {"deviceStatus", ford_message_descriptions::Struct, false}, - Structs::Common__DeviceStatus__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter15 = { - "driverBraking", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter16 = { - "wiperStatus", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter17 = { - {"headLampStatus", ford_message_descriptions::Struct, false}, - Structs::Common__HeadLampStatus__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter18 = { - "engineTorque", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter19 = { - "accPedalPosition", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVehicleData__response__parameter20 = { - "steeringWheelAngle", ford_message_descriptions::Float, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter21 = { - {"eCallInfo", ford_message_descriptions::Struct, false}, - Structs::Common__ECallInfo__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter22 = { - {"airbagStatus", ford_message_descriptions::Struct, false}, - Structs::Common__AirbagStatus__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter23 = { - {"emergencyEvent", ford_message_descriptions::Struct, false}, - Structs::Common__EmergencyEvent__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter24 = { - {"clusterModeStatus", ford_message_descriptions::Struct, false}, - Structs::Common__ClusterModeStatus__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__GetVehicleData__response__parameter25 = { - {"myKey", ford_message_descriptions::Struct, false}, - Structs::Common__MyKey__parameters}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__GetVehicleData__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter24, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVehicleData__response__parameter25, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetVehicleData__response = { - "VehicleInfo", - "GetVehicleData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetVehicleData, - VehicleInfo__GetVehicleData__response__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter1 = { - {"gps", ford_message_descriptions::Struct, false}, - Structs::Common__GPSData__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter2 = { - "speed", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter3 = { - "rpm", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter4 = { - "fuelLevel", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter5 = { - "fuelLevel_State", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter6 = { - "instantFuelConsumption", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter7 = { - "externalTemperature", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter8 = { - "vin", ford_message_descriptions::String, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter9 = { - "prndl", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter10 = { - {"tirePressure", ford_message_descriptions::Struct, false}, - Structs::Common__TireStatus__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter11 = { - "odometer", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter12 = { - {"beltStatus", ford_message_descriptions::Struct, false}, - Structs::Common__BeltStatus__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter13 = { - {"bodyInformation", ford_message_descriptions::Struct, false}, - Structs::Common__BodyInformation__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter14 = { - {"deviceStatus", ford_message_descriptions::Struct, false}, - Structs::Common__DeviceStatus__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter15 = { - "driverBraking", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter16 = { - "wiperStatus", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter17 = { - {"headLampStatus", ford_message_descriptions::Struct, false}, - Structs::Common__HeadLampStatus__parameters}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter18 = { - "engineTorque", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter19 = { - "accPedalPosition", ford_message_descriptions::Float, false}; -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVehicleData__notification__parameter20 = { - "steeringWheelAngle", ford_message_descriptions::Float, false}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter21 = { - {"eCallInfo", ford_message_descriptions::Struct, false}, - Structs::Common__ECallInfo__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter22 = { - {"airbagStatus", ford_message_descriptions::Struct, false}, - Structs::Common__AirbagStatus__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter23 = { - {"emergencyEvent", ford_message_descriptions::Struct, false}, - Structs::Common__EmergencyEvent__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter24 = { - {"clusterModeStatus", ford_message_descriptions::Struct, false}, - Structs::Common__ClusterModeStatus__parameters}; -const ford_message_descriptions::StructDescription - VehicleInfo__OnVehicleData__notification__parameter25 = { - {"myKey", ford_message_descriptions::Struct, false}, - Structs::Common__MyKey__parameters}; -const ford_message_descriptions::ParameterDescription* VehicleInfo__OnVehicleData__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter8, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter9, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter10, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter11, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter12, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter13, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter14, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter15, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter16, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter17, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter18, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter19, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter20, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter21, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter22, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter23, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter24, - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVehicleData__notification__parameter25, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnVehicleData__notification = { - "VehicleInfo", - "OnVehicleData", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnVehicleData, - VehicleInfo__OnVehicleData__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetGpsData__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetGpsData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetGpsData__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetGpsData__request = { - "VehicleInfo", - "GetGpsData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetGpsData, - VehicleInfo__GetGpsData__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetGpsData__response__parameter1 = { - {"gps", ford_message_descriptions::Struct, true}, - Structs::Common__GPSData__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetGpsData__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetGpsData__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetGpsData__response = { - "VehicleInfo", - "GetGpsData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetGpsData, - VehicleInfo__GetGpsData__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetSpeed__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetSpeed__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetSpeed__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetSpeed__request = { - "VehicleInfo", - "GetSpeed", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetSpeed, - VehicleInfo__GetSpeed__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetSpeed__response__parameter1 = { - "speed", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetSpeed__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetSpeed__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetSpeed__response = { - "VehicleInfo", - "GetSpeed", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetSpeed, - VehicleInfo__GetSpeed__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetRpm__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetRpm__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetRpm__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetRpm__request = {"VehicleInfo", - "GetRpm", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetRpm, - VehicleInfo__GetRpm__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetRpm__response__parameter1 = { - "rpm", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetRpm__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetRpm__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetRpm__response = {"VehicleInfo", - "GetRpm", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetRpm, - VehicleInfo__GetRpm__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetFuelLevel__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetFuelLevel__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetFuelLevel__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetFuelLevel__request = { - "VehicleInfo", - "GetFuelLevel", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetFuelLevel, - VehicleInfo__GetFuelLevel__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetFuelLevel__response__parameter1 = { - "fuelLevel", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetFuelLevel__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetFuelLevel__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetFuelLevel__response = { - "VehicleInfo", - "GetFuelLevel", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetFuelLevel, - VehicleInfo__GetFuelLevel__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetFuelLevelState__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetFuelLevelState__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetFuelLevelState__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetFuelLevelState__request = { - "VehicleInfo", - "GetFuelLevelState", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetFuelLevelState, - VehicleInfo__GetFuelLevelState__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetFuelLevelState__response__parameter1 = { - "fuelLevel_State", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetFuelLevelState__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetFuelLevelState__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetFuelLevelState__response = { - "VehicleInfo", - "GetFuelLevelState", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetFuelLevelState, - VehicleInfo__GetFuelLevelState__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetInstantFuelConsumption__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetInstantFuelConsumption__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetInstantFuelConsumption__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetInstantFuelConsumption__request = { - "VehicleInfo", - "GetInstantFuelConsumption", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetInstantFuelConsumption, - VehicleInfo__GetInstantFuelConsumption__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetInstantFuelConsumption__response__parameter1 = { - "instantFuelConsumption", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetInstantFuelConsumption__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetInstantFuelConsumption__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetInstantFuelConsumption__response = { - "VehicleInfo", - "GetInstantFuelConsumption", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetInstantFuelConsumption, - VehicleInfo__GetInstantFuelConsumption__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetExternalTemperature__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetExternalTemperature__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetExternalTemperature__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetExternalTemperature__request = { - "VehicleInfo", - "GetExternalTemperature", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetExternalTemperature, - VehicleInfo__GetExternalTemperature__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetExternalTemperature__response__parameter1 = { - "externalTemperature", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetExternalTemperature__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetExternalTemperature__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetExternalTemperature__response = { - "VehicleInfo", - "GetExternalTemperature", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetExternalTemperature, - VehicleInfo__GetExternalTemperature__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVin__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetVin__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVin__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetVin__request = {"VehicleInfo", - "GetVin", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetVin, - VehicleInfo__GetVin__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetVin__response__parameter1 = { - "vin", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetVin__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetVin__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetVin__response = {"VehicleInfo", - "GetVin", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetVin, - VehicleInfo__GetVin__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetPrndl__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetPrndl__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetPrndl__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetPrndl__request = { - "VehicleInfo", - "GetPrndl", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetPrndl, - VehicleInfo__GetPrndl__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetPrndl__response__parameter1 = { - "prndl", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetPrndl__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetPrndl__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetPrndl__response = { - "VehicleInfo", - "GetPrndl", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetPrndl, - VehicleInfo__GetPrndl__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetTirePressure__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetTirePressure__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetTirePressure__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetTirePressure__request = { - "VehicleInfo", - "GetTirePressure", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetTirePressure, - VehicleInfo__GetTirePressure__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetTirePressure__response__parameter1 = { - {"tirePressure", ford_message_descriptions::Struct, true}, - Structs::Common__TireStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetTirePressure__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetTirePressure__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetTirePressure__response = { - "VehicleInfo", - "GetTirePressure", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetTirePressure, - VehicleInfo__GetTirePressure__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetOdometer__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetOdometer__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetOdometer__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetOdometer__request = { - "VehicleInfo", - "GetOdometer", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetOdometer, - VehicleInfo__GetOdometer__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetOdometer__response__parameter1 = { - "odometer", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetOdometer__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetOdometer__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetOdometer__response = { - "VehicleInfo", - "GetOdometer", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetOdometer, - VehicleInfo__GetOdometer__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetBeltStatus__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetBeltStatus__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetBeltStatus__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetBeltStatus__request = { - "VehicleInfo", - "GetBeltStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetBeltStatus, - VehicleInfo__GetBeltStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetBeltStatus__response__parameter1 = { - {"beltStatus", ford_message_descriptions::Struct, true}, - Structs::Common__BeltStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetBeltStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetBeltStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetBeltStatus__response = { - "VehicleInfo", - "GetBeltStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetBeltStatus, - VehicleInfo__GetBeltStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetBodyInformation__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetBodyInformation__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetBodyInformation__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetBodyInformation__request = { - "VehicleInfo", - "GetBodyInformation", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetBodyInformation, - VehicleInfo__GetBodyInformation__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetBodyInformation__response__parameter1 = { - {"bodyInformation", ford_message_descriptions::Struct, true}, - Structs::Common__BodyInformation__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetBodyInformation__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetBodyInformation__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetBodyInformation__response = { - "VehicleInfo", - "GetBodyInformation", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetBodyInformation, - VehicleInfo__GetBodyInformation__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDeviceStatus__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetDeviceStatus__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDeviceStatus__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetDeviceStatus__request = { - "VehicleInfo", - "GetDeviceStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetDeviceStatus, - VehicleInfo__GetDeviceStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetDeviceStatus__response__parameter1 = { - {"deviceStatus", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetDeviceStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDeviceStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetDeviceStatus__response = { - "VehicleInfo", - "GetDeviceStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetDeviceStatus, - VehicleInfo__GetDeviceStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDriverBraking__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetDriverBraking__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDriverBraking__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetDriverBraking__request = { - "VehicleInfo", - "GetDriverBraking", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetDriverBraking, - VehicleInfo__GetDriverBraking__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetDriverBraking__response__parameter1 = { - "driverBraking", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetDriverBraking__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetDriverBraking__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetDriverBraking__response = { - "VehicleInfo", - "GetDriverBraking", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetDriverBraking, - VehicleInfo__GetDriverBraking__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetWiperStatus__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetWiperStatus__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetWiperStatus__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetWiperStatus__request = { - "VehicleInfo", - "GetWiperStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetWiperStatus, - VehicleInfo__GetWiperStatus__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetWiperStatus__response__parameter1 = { - "wiperStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetWiperStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetWiperStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetWiperStatus__response = { - "VehicleInfo", - "GetWiperStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetWiperStatus, - VehicleInfo__GetWiperStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetHeadLampStatus__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetHeadLampStatus__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetHeadLampStatus__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetHeadLampStatus__request = { - "VehicleInfo", - "GetHeadLampStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetHeadLampStatus, - VehicleInfo__GetHeadLampStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetHeadLampStatus__response__parameter1 = { - {"headLampStatus", ford_message_descriptions::Struct, true}, - Structs::Common__HeadLampStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetHeadLampStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetHeadLampStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetHeadLampStatus__response = { - "VehicleInfo", - "GetHeadLampStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetHeadLampStatus, - VehicleInfo__GetHeadLampStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetEngineTorque__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetEngineTorque__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetEngineTorque__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetEngineTorque__request = { - "VehicleInfo", - "GetEngineTorque", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetEngineTorque, - VehicleInfo__GetEngineTorque__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetEngineTorque__response__parameter1 = { - "engineTorque", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetEngineTorque__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetEngineTorque__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetEngineTorque__response = { - "VehicleInfo", - "GetEngineTorque", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetEngineTorque, - VehicleInfo__GetEngineTorque__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetAccPedalPosition__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetAccPedalPosition__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetAccPedalPosition__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetAccPedalPosition__request = { - "VehicleInfo", - "GetAccPedalPosition", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetAccPedalPosition, - VehicleInfo__GetAccPedalPosition__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetAccPedalPosition__response__parameter1 = { - "accPedalPosition", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetAccPedalPosition__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetAccPedalPosition__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetAccPedalPosition__response = { - "VehicleInfo", - "GetAccPedalPosition", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetAccPedalPosition, - VehicleInfo__GetAccPedalPosition__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetSteeringWheelAngle__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetSteeringWheelAngle__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetSteeringWheelAngle__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetSteeringWheelAngle__request = { - "VehicleInfo", - "GetSteeringWheelAngle", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetSteeringWheelAngle, - VehicleInfo__GetSteeringWheelAngle__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetSteeringWheelAngle__response__parameter1 = { - "steeringWheelAngle", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetSteeringWheelAngle__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetSteeringWheelAngle__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetSteeringWheelAngle__response = { - "VehicleInfo", - "GetSteeringWheelAngle", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetSteeringWheelAngle, - VehicleInfo__GetSteeringWheelAngle__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetECallInfo__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetECallInfo__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetECallInfo__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetECallInfo__request = { - "VehicleInfo", - "GetECallInfo", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetECallInfo, - VehicleInfo__GetECallInfo__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetECallInfo__response__parameter1 = { - {"eCallInfo", ford_message_descriptions::Struct, true}, - Structs::Common__ECallInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetECallInfo__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetECallInfo__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetECallInfo__response = { - "VehicleInfo", - "GetECallInfo", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetECallInfo, - VehicleInfo__GetECallInfo__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetAirbagStatus__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetAirbagStatus__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetAirbagStatus__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetAirbagStatus__request = { - "VehicleInfo", - "GetAirbagStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetAirbagStatus, - VehicleInfo__GetAirbagStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetAirbagStatus__response__parameter1 = { - {"airbagStatus", ford_message_descriptions::Struct, true}, - Structs::Common__AirbagStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetAirbagStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetAirbagStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetAirbagStatus__response = { - "VehicleInfo", - "GetAirbagStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetAirbagStatus, - VehicleInfo__GetAirbagStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetEmergencyEvent__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetEmergencyEvent__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetEmergencyEvent__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetEmergencyEvent__request = { - "VehicleInfo", - "GetEmergencyEvent", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetEmergencyEvent, - VehicleInfo__GetEmergencyEvent__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetEmergencyEvent__response__parameter1 = { - {"emergencyEvent", ford_message_descriptions::Struct, true}, - Structs::Common__EmergencyEvent__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetEmergencyEvent__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetEmergencyEvent__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetEmergencyEvent__response = { - "VehicleInfo", - "GetEmergencyEvent", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetEmergencyEvent, - VehicleInfo__GetEmergencyEvent__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetClusterModeStatus__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetClusterModeStatus__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetClusterModeStatus__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetClusterModeStatus__request = { - "VehicleInfo", - "GetClusterModeStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetClusterModeStatus, - VehicleInfo__GetClusterModeStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetClusterModeStatus__response__parameter1 = { - {"clusterModeStatus", ford_message_descriptions::Struct, true}, - Structs::Common__ClusterModeStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetClusterModeStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetClusterModeStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetClusterModeStatus__response = { - "VehicleInfo", - "GetClusterModeStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetClusterModeStatus, - VehicleInfo__GetClusterModeStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__GetMyKey__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetMyKey__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetMyKey__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetMyKey__request = { - "VehicleInfo", - "GetMyKey", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_GetMyKey, - VehicleInfo__GetMyKey__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__GetMyKey__response__parameter1 = { - {"myKey", ford_message_descriptions::Struct, true}, - Structs::Common__MyKey__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__GetMyKey__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__GetMyKey__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__GetMyKey__response = { - "VehicleInfo", - "GetMyKey", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_GetMyKey, - VehicleInfo__GetMyKey__response__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnGpsData__notification__parameter1 = { - {"gps", ford_message_descriptions::Struct, true}, - Structs::Common__GPSData__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnGpsData__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnGpsData__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnGpsData__notification = { - "VehicleInfo", - "OnGpsData", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnGpsData, - VehicleInfo__OnGpsData__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnSpeed__notification__parameter1 = { - "speed", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnSpeed__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnSpeed__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnSpeed__notification = { - "VehicleInfo", - "OnSpeed", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnSpeed, - VehicleInfo__OnSpeed__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnRpm__notification__parameter1 = { - "rpm", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnRpm__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnRpm__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnRpm__notification = { - "VehicleInfo", - "OnRpm", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnRpm, - VehicleInfo__OnRpm__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnFuelLevel__notification__parameter1 = { - "fuelLevel", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnFuelLevel__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnFuelLevel__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnFuelLevel__notification = { - "VehicleInfo", - "OnFuelLevel", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnFuelLevel, - VehicleInfo__OnFuelLevel__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnFuelLevelState__notification__parameter1 = { - "fuelLevel_State", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnFuelLevelState__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnFuelLevelState__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnFuelLevelState__notification = { - "VehicleInfo", - "OnFuelLevelState", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnFuelLevelState, - VehicleInfo__OnFuelLevelState__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnInstantFuelConsumption__notification__parameter1 = { - "instantFuelConsumption", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnInstantFuelConsumption__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnInstantFuelConsumption__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnInstantFuelConsumption__notification = { - "VehicleInfo", - "OnInstantFuelConsumption", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnInstantFuelConsumption, - VehicleInfo__OnInstantFuelConsumption__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnExternalTemperature__notification__parameter1 = { - "externalTemperature", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnExternalTemperature__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnExternalTemperature__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnExternalTemperature__notification = { - "VehicleInfo", - "OnExternalTemperature", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnExternalTemperature, - VehicleInfo__OnExternalTemperature__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnVin__notification__parameter1 = { - "vin", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnVin__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnVin__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnVin__notification = { - "VehicleInfo", - "OnVin", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnVin, - VehicleInfo__OnVin__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnPrndl__notification__parameter1 = { - "prndl", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnPrndl__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnPrndl__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnPrndl__notification = { - "VehicleInfo", - "OnPrndl", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnPrndl, - VehicleInfo__OnPrndl__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnTirePressure__notification__parameter1 = { - {"tirePressure", ford_message_descriptions::Struct, true}, - Structs::Common__TireStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnTirePressure__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnTirePressure__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnTirePressure__notification = { - "VehicleInfo", - "OnTirePressure", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnTirePressure, - VehicleInfo__OnTirePressure__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnOdometer__notification__parameter1 = { - "odometer", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnOdometer__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnOdometer__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnOdometer__notification = { - "VehicleInfo", - "OnOdometer", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnOdometer, - VehicleInfo__OnOdometer__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnBeltStatus__notification__parameter1 = { - {"beltStatus", ford_message_descriptions::Struct, true}, - Structs::Common__BeltStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnBeltStatus__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnBeltStatus__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnBeltStatus__notification = { - "VehicleInfo", - "OnBeltStatus", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnBeltStatus, - VehicleInfo__OnBeltStatus__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnBodyInformation__notification__parameter1 = { - {"bodyInformation", ford_message_descriptions::Struct, true}, - Structs::Common__BodyInformation__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnBodyInformation__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnBodyInformation__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnBodyInformation__notification = { - "VehicleInfo", - "OnBodyInformation", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnBodyInformation, - VehicleInfo__OnBodyInformation__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnDeviceStatus__notification__parameter1 = { - {"deviceStatus", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnDeviceStatus__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnDeviceStatus__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnDeviceStatus__notification = { - "VehicleInfo", - "OnDeviceStatus", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnDeviceStatus, - VehicleInfo__OnDeviceStatus__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnDriverBraking__notification__parameter1 = { - "driverBraking", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnDriverBraking__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnDriverBraking__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnDriverBraking__notification = { - "VehicleInfo", - "OnDriverBraking", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnDriverBraking, - VehicleInfo__OnDriverBraking__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnWiperStatus__notification__parameter1 = { - "wiperStatus", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnWiperStatus__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnWiperStatus__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnWiperStatus__notification = { - "VehicleInfo", - "OnWiperStatus", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnWiperStatus, - VehicleInfo__OnWiperStatus__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnHeadLampStatus__notification__parameter1 = { - {"headLampStatus", ford_message_descriptions::Struct, true}, - Structs::Common__HeadLampStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnHeadLampStatus__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnHeadLampStatus__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnHeadLampStatus__notification = { - "VehicleInfo", - "OnHeadLampStatus", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnHeadLampStatus, - VehicleInfo__OnHeadLampStatus__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnEngineTorque__notification__parameter1 = { - "engineTorque", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnEngineTorque__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnEngineTorque__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnEngineTorque__notification = { - "VehicleInfo", - "OnEngineTorque", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnEngineTorque, - VehicleInfo__OnEngineTorque__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnAccPedalPosition__notification__parameter1 = { - "accPedalPosition", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnAccPedalPosition__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnAccPedalPosition__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnAccPedalPosition__notification = { - "VehicleInfo", - "OnAccPedalPosition", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnAccPedalPosition, - VehicleInfo__OnAccPedalPosition__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__OnSteeringWheelAngle__notification__parameter1 = { - "steeringWheelAngle", ford_message_descriptions::Float, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnSteeringWheelAngle__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnSteeringWheelAngle__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnSteeringWheelAngle__notification = { - "VehicleInfo", - "OnSteeringWheelAngle", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnSteeringWheelAngle, - VehicleInfo__OnSteeringWheelAngle__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnECallInfo__notification__parameter1 = { - {"eCallInfo", ford_message_descriptions::Struct, true}, - Structs::Common__ECallInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnECallInfo__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnECallInfo__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnECallInfo__notification = { - "VehicleInfo", - "OnECallInfo", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnECallInfo, - VehicleInfo__OnECallInfo__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnAirbagStatus__notification__parameter1 = { - {"airbagStatus", ford_message_descriptions::Struct, true}, - Structs::Common__AirbagStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnAirbagStatus__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnAirbagStatus__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnAirbagStatus__notification = { - "VehicleInfo", - "OnAirbagStatus", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnAirbagStatus, - VehicleInfo__OnAirbagStatus__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnEmergencyEvent__notification__parameter1 = { - {"emergencyEvent", ford_message_descriptions::Struct, true}, - Structs::Common__EmergencyEvent__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnEmergencyEvent__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnEmergencyEvent__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnEmergencyEvent__notification = { - "VehicleInfo", - "OnEmergencyEvent", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnEmergencyEvent, - VehicleInfo__OnEmergencyEvent__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnClusterModeStatus__notification__parameter1 = { - {"clusterModeStatus", ford_message_descriptions::Struct, true}, - Structs::Common__ClusterModeStatus__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnClusterModeStatus__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnClusterModeStatus__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnClusterModeStatus__notification = { - "VehicleInfo", - "OnClusterModeStatus", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnClusterModeStatus, - VehicleInfo__OnClusterModeStatus__notification__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__OnMyKey__notification__parameter1 = { - {"myKey", ford_message_descriptions::Struct, true}, - Structs::Common__MyKey__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__OnMyKey__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__OnMyKey__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__OnMyKey__notification = { - "VehicleInfo", - "OnMyKey", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::VehicleInfo_OnMyKey, - VehicleInfo__OnMyKey__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeGps__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeGps__request = { - "VehicleInfo", - "SubscribeGps", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeGps, - VehicleInfo__SubscribeGps__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeGps__response__parameter1 = { - {"gps", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeGps__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeGps__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeGps__response = { - "VehicleInfo", - "SubscribeGps", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeGps, - VehicleInfo__SubscribeGps__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeGps__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeGps__request = { - "VehicleInfo", - "UnsubscribeGps", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeGps, - VehicleInfo__UnsubscribeGps__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeGps__response__parameter1 = { - {"gps", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeGps__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeGps__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeGps__response = { - "VehicleInfo", - "UnsubscribeGps", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeGps, - VehicleInfo__UnsubscribeGps__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeSpeed__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeSpeed__request = { - "VehicleInfo", - "SubscribeSpeed", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeSpeed, - VehicleInfo__SubscribeSpeed__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeSpeed__response__parameter1 = { - {"speed", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeSpeed__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeSpeed__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeSpeed__response = { - "VehicleInfo", - "SubscribeSpeed", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeSpeed, - VehicleInfo__SubscribeSpeed__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeSpeed__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeSpeed__request = { - "VehicleInfo", - "UnsubscribeSpeed", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeSpeed, - VehicleInfo__UnsubscribeSpeed__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeSpeed__response__parameter1 = { - {"speed", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeSpeed__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeSpeed__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeSpeed__response = { - "VehicleInfo", - "UnsubscribeSpeed", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeSpeed, - VehicleInfo__UnsubscribeSpeed__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeRpm__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeRpm__request = { - "VehicleInfo", - "SubscribeRpm", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeRpm, - VehicleInfo__SubscribeRpm__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeRpm__response__parameter1 = { - {"rpm", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeRpm__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeRpm__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeRpm__response = { - "VehicleInfo", - "SubscribeRpm", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeRpm, - VehicleInfo__SubscribeRpm__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeRpm__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeRpm__request = { - "VehicleInfo", - "UnsubscribeRpm", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeRpm, - VehicleInfo__UnsubscribeRpm__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeRpm__response__parameter1 = { - {"rpm", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeRpm__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeRpm__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeRpm__response = { - "VehicleInfo", - "UnsubscribeRpm", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeRpm, - VehicleInfo__UnsubscribeRpm__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeFuelLevel__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeFuelLevel__request = { - "VehicleInfo", - "SubscribeFuelLevel", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeFuelLevel, - VehicleInfo__SubscribeFuelLevel__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeFuelLevel__response__parameter1 = { - {"fuelLevel", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeFuelLevel__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeFuelLevel__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeFuelLevel__response = { - "VehicleInfo", - "SubscribeFuelLevel", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeFuelLevel, - VehicleInfo__SubscribeFuelLevel__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeFuelLevel__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeFuelLevel__request = { - "VehicleInfo", - "UnsubscribeFuelLevel", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeFuelLevel, - VehicleInfo__UnsubscribeFuelLevel__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeFuelLevel__response__parameter1 = { - {"fuelLevel", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeFuelLevel__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeFuelLevel__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeFuelLevel__response = { - "VehicleInfo", - "UnsubscribeFuelLevel", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeFuelLevel, - VehicleInfo__UnsubscribeFuelLevel__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeFuelLevel_State__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeFuelLevel_State__request = { - "VehicleInfo", - "SubscribeFuelLevel_State", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeFuelLevel_State, - VehicleInfo__SubscribeFuelLevel_State__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeFuelLevel_State__response__parameter1 = { - {"fuelLevel_State", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeFuelLevel_State__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeFuelLevel_State__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeFuelLevel_State__response = { - "VehicleInfo", - "SubscribeFuelLevel_State", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeFuelLevel_State, - VehicleInfo__SubscribeFuelLevel_State__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeFuelLevel_State__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeFuelLevel_State__request = { - "VehicleInfo", - "UnsubscribeFuelLevel_State", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeFuelLevel_State, - VehicleInfo__UnsubscribeFuelLevel_State__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeFuelLevel_State__response__parameter1 = { - {"fuelLevel_State", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeFuelLevel_State__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeFuelLevel_State__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeFuelLevel_State__response = { - "VehicleInfo", - "UnsubscribeFuelLevel_State", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeFuelLevel_State, - VehicleInfo__UnsubscribeFuelLevel_State__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeInstantFuelConsumption__request__parameters[] = { - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeInstantFuelConsumption__request = { - "VehicleInfo", - "SubscribeInstantFuelConsumption", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeInstantFuelConsumption, - VehicleInfo__SubscribeInstantFuelConsumption__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeInstantFuelConsumption__response__parameter1 = { - {"instantFuelConsumption", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeInstantFuelConsumption__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeInstantFuelConsumption__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeInstantFuelConsumption__response = { - "VehicleInfo", - "SubscribeInstantFuelConsumption", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeInstantFuelConsumption, - VehicleInfo__SubscribeInstantFuelConsumption__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeInstantFuelConsumption__request__parameters[] = { - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeInstantFuelConsumption__request = { - "VehicleInfo", - "UnsubscribeInstantFuelConsumption", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeInstantFuelConsumption, - VehicleInfo__UnsubscribeInstantFuelConsumption__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeInstantFuelConsumption__response__parameter1 = { - {"instantFuelConsumption", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeInstantFuelConsumption__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeInstantFuelConsumption__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeInstantFuelConsumption__response = { - "VehicleInfo", - "UnsubscribeInstantFuelConsumption", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeInstantFuelConsumption, - VehicleInfo__UnsubscribeInstantFuelConsumption__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeExternalTemperature__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeExternalTemperature__request = { - "VehicleInfo", - "SubscribeExternalTemperature", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeExternalTemperature, - VehicleInfo__SubscribeExternalTemperature__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeExternalTemperature__response__parameter1 = { - {"externalTemperature", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeExternalTemperature__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeExternalTemperature__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeExternalTemperature__response = { - "VehicleInfo", - "SubscribeExternalTemperature", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeExternalTemperature, - VehicleInfo__SubscribeExternalTemperature__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeExternalTemperature__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeExternalTemperature__request = { - "VehicleInfo", - "UnsubscribeExternalTemperature", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeExternalTemperature, - VehicleInfo__UnsubscribeExternalTemperature__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeExternalTemperature__response__parameter1 = { - {"externalTemperature", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeExternalTemperature__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeExternalTemperature__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeExternalTemperature__response = { - "VehicleInfo", - "UnsubscribeExternalTemperature", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeExternalTemperature, - VehicleInfo__UnsubscribeExternalTemperature__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribePrndl__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribePrndl__request = { - "VehicleInfo", - "SubscribePrndl", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribePrndl, - VehicleInfo__SubscribePrndl__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribePrndl__response__parameter1 = { - {"prndl", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribePrndl__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribePrndl__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribePrndl__response = { - "VehicleInfo", - "SubscribePrndl", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribePrndl, - VehicleInfo__SubscribePrndl__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribePrndl__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribePrndl__request = { - "VehicleInfo", - "UnsubscribePrndl", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribePrndl, - VehicleInfo__UnsubscribePrndl__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribePrndl__response__parameter1 = { - {"prndl", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribePrndl__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribePrndl__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribePrndl__response = { - "VehicleInfo", - "UnsubscribePrndl", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribePrndl, - VehicleInfo__UnsubscribePrndl__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeVin__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeVin__request = { - "VehicleInfo", - "SubscribeVin", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeVin, - VehicleInfo__SubscribeVin__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__SubscribeVin__response__parameter1 = { - "vin", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeVin__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeVin__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeVin__response = { - "VehicleInfo", - "SubscribeVin", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeVin, - VehicleInfo__SubscribeVin__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeVin__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeVin__request = { - "VehicleInfo", - "UnsubscribeVin", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeVin, - VehicleInfo__UnsubscribeVin__request__parameters}; - -const ford_message_descriptions::ParameterDescription - VehicleInfo__UnsubscribeVin__response__parameter1 = { - "vin", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeVin__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeVin__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeVin__response = { - "VehicleInfo", - "UnsubscribeVin", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeVin, - VehicleInfo__UnsubscribeVin__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeTirePressure__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeTirePressure__request = { - "VehicleInfo", - "SubscribeTirePressure", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeTirePressure, - VehicleInfo__SubscribeTirePressure__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeTirePressure__response__parameter1 = { - {"tirePressure", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeTirePressure__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeTirePressure__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeTirePressure__response = { - "VehicleInfo", - "SubscribeTirePressure", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeTirePressure, - VehicleInfo__SubscribeTirePressure__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeTirePressure__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeTirePressure__request = { - "VehicleInfo", - "UnsubscribeTirePressure", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeTirePressure, - VehicleInfo__UnsubscribeTirePressure__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeTirePressure__response__parameter1 = { - {"tirePressure", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeTirePressure__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeTirePressure__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeTirePressure__response = { - "VehicleInfo", - "UnsubscribeTirePressure", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeTirePressure, - VehicleInfo__UnsubscribeTirePressure__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeOdometer__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeOdometer__request = { - "VehicleInfo", - "SubscribeOdometer", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeOdometer, - VehicleInfo__SubscribeOdometer__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeOdometer__response__parameter1 = { - {"odometer", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeOdometer__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeOdometer__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeOdometer__response = { - "VehicleInfo", - "SubscribeOdometer", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeOdometer, - VehicleInfo__SubscribeOdometer__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeOdometer__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeOdometer__request = { - "VehicleInfo", - "UnsubscribeOdometer", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeOdometer, - VehicleInfo__UnsubscribeOdometer__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeOdometer__response__parameter1 = { - {"odometer", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeOdometer__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeOdometer__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeOdometer__response = { - "VehicleInfo", - "UnsubscribeOdometer", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeOdometer, - VehicleInfo__UnsubscribeOdometer__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeBeltStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeBeltStatus__request = { - "VehicleInfo", - "SubscribeBeltStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeBeltStatus, - VehicleInfo__SubscribeBeltStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeBeltStatus__response__parameter1 = { - {"beltStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeBeltStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeBeltStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeBeltStatus__response = { - "VehicleInfo", - "SubscribeBeltStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeBeltStatus, - VehicleInfo__SubscribeBeltStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeBeltStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeBeltStatus__request = { - "VehicleInfo", - "UnsubscribeBeltStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeBeltStatus, - VehicleInfo__UnsubscribeBeltStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeBeltStatus__response__parameter1 = { - {"beltStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeBeltStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeBeltStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeBeltStatus__response = { - "VehicleInfo", - "UnsubscribeBeltStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeBeltStatus, - VehicleInfo__UnsubscribeBeltStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeBodyInformation__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeBodyInformation__request = { - "VehicleInfo", - "SubscribeBodyInformation", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeBodyInformation, - VehicleInfo__SubscribeBodyInformation__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeBodyInformation__response__parameter1 = { - {"bodyInformation", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeBodyInformation__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeBodyInformation__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeBodyInformation__response = { - "VehicleInfo", - "SubscribeBodyInformation", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeBodyInformation, - VehicleInfo__SubscribeBodyInformation__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeBodyInformation__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeBodyInformation__request = { - "VehicleInfo", - "UnsubscribeBodyInformation", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeBodyInformation, - VehicleInfo__UnsubscribeBodyInformation__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeBodyInformation__response__parameter1 = { - {"bodyInformation", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeBodyInformation__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeBodyInformation__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeBodyInformation__response = { - "VehicleInfo", - "UnsubscribeBodyInformation", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeBodyInformation, - VehicleInfo__UnsubscribeBodyInformation__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeDeviceStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeDeviceStatus__request = { - "VehicleInfo", - "SubscribeDeviceStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeDeviceStatus, - VehicleInfo__SubscribeDeviceStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeDeviceStatus__response__parameter1 = { - {"deviceStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeDeviceStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeDeviceStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeDeviceStatus__response = { - "VehicleInfo", - "SubscribeDeviceStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeDeviceStatus, - VehicleInfo__SubscribeDeviceStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeDeviceStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeDeviceStatus__request = { - "VehicleInfo", - "UnsubscribeDeviceStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeDeviceStatus, - VehicleInfo__UnsubscribeDeviceStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeDeviceStatus__response__parameter1 = { - {"deviceStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeDeviceStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeDeviceStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeDeviceStatus__response = { - "VehicleInfo", - "UnsubscribeDeviceStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeDeviceStatus, - VehicleInfo__UnsubscribeDeviceStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeDriverBraking__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeDriverBraking__request = { - "VehicleInfo", - "SubscribeDriverBraking", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeDriverBraking, - VehicleInfo__SubscribeDriverBraking__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeDriverBraking__response__parameter1 = { - {"driverBraking", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeDriverBraking__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeDriverBraking__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeDriverBraking__response = { - "VehicleInfo", - "SubscribeDriverBraking", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeDriverBraking, - VehicleInfo__SubscribeDriverBraking__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeDriverBraking__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeDriverBraking__request = { - "VehicleInfo", - "UnsubscribeDriverBraking", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeDriverBraking, - VehicleInfo__UnsubscribeDriverBraking__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeDriverBraking__response__parameter1 = { - {"driverBraking", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeDriverBraking__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeDriverBraking__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeDriverBraking__response = { - "VehicleInfo", - "UnsubscribeDriverBraking", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeDriverBraking, - VehicleInfo__UnsubscribeDriverBraking__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeWiperStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeWiperStatus__request = { - "VehicleInfo", - "SubscribeWiperStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeWiperStatus, - VehicleInfo__SubscribeWiperStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeWiperStatus__response__parameter1 = { - {"wiperStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeWiperStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeWiperStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeWiperStatus__response = { - "VehicleInfo", - "SubscribeWiperStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeWiperStatus, - VehicleInfo__SubscribeWiperStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeWiperStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeWiperStatus__request = { - "VehicleInfo", - "UnsubscribeWiperStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeWiperStatus, - VehicleInfo__UnsubscribeWiperStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeWiperStatus__response__parameter1 = { - {"wiperStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeWiperStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeWiperStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeWiperStatus__response = { - "VehicleInfo", - "UnsubscribeWiperStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeWiperStatus, - VehicleInfo__UnsubscribeWiperStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeHeadLampStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeHeadLampStatus__request = { - "VehicleInfo", - "SubscribeHeadLampStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeHeadLampStatus, - VehicleInfo__SubscribeHeadLampStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeHeadLampStatus__response__parameter1 = { - {"headLampStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeHeadLampStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeHeadLampStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeHeadLampStatus__response = { - "VehicleInfo", - "SubscribeHeadLampStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeHeadLampStatus, - VehicleInfo__SubscribeHeadLampStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeHeadLampStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeHeadLampStatus__request = { - "VehicleInfo", - "UnsubscribeHeadLampStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeHeadLampStatus, - VehicleInfo__UnsubscribeHeadLampStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeHeadLampStatus__response__parameter1 = { - {"headLampStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeHeadLampStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeHeadLampStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeHeadLampStatus__response = { - "VehicleInfo", - "UnsubscribeHeadLampStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeHeadLampStatus, - VehicleInfo__UnsubscribeHeadLampStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeEngineTorque__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeEngineTorque__request = { - "VehicleInfo", - "SubscribeEngineTorque", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeEngineTorque, - VehicleInfo__SubscribeEngineTorque__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeEngineTorque__response__parameter1 = { - {"engineTorque", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeEngineTorque__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeEngineTorque__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeEngineTorque__response = { - "VehicleInfo", - "SubscribeEngineTorque", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeEngineTorque, - VehicleInfo__SubscribeEngineTorque__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeEngineTorque__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeEngineTorque__request = { - "VehicleInfo", - "UnsubscribeEngineTorque", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeEngineTorque, - VehicleInfo__UnsubscribeEngineTorque__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeEngineTorque__response__parameter1 = { - {"engineTorque", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeEngineTorque__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeEngineTorque__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeEngineTorque__response = { - "VehicleInfo", - "UnsubscribeEngineTorque", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeEngineTorque, - VehicleInfo__UnsubscribeEngineTorque__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeAccPedalPosition__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeAccPedalPosition__request = { - "VehicleInfo", - "SubscribeAccPedalPosition", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeAccPedalPosition, - VehicleInfo__SubscribeAccPedalPosition__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeAccPedalPosition__response__parameter1 = { - {"accPedalPosition", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeAccPedalPosition__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeAccPedalPosition__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeAccPedalPosition__response = { - "VehicleInfo", - "SubscribeAccPedalPosition", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeAccPedalPosition, - VehicleInfo__SubscribeAccPedalPosition__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeAccPedalPosition__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeAccPedalPosition__request = { - "VehicleInfo", - "UnsubscribeAccPedalPosition", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeAccPedalPosition, - VehicleInfo__UnsubscribeAccPedalPosition__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeAccPedalPosition__response__parameter1 = { - {"accPedalPosition", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeAccPedalPosition__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeAccPedalPosition__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeAccPedalPosition__response = { - "VehicleInfo", - "UnsubscribeAccPedalPosition", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeAccPedalPosition, - VehicleInfo__UnsubscribeAccPedalPosition__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeSteeringWheelAngle__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeSteeringWheelAngle__request = { - "VehicleInfo", - "SubscribeSteeringWheelAngle", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeSteeringWheelAngle, - VehicleInfo__SubscribeSteeringWheelAngle__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeSteeringWheelAngle__response__parameter1 = { - {"steeringWheelAngle", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeSteeringWheelAngle__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeSteeringWheelAngle__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeSteeringWheelAngle__response = { - "VehicleInfo", - "SubscribeSteeringWheelAngle", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeSteeringWheelAngle, - VehicleInfo__SubscribeSteeringWheelAngle__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeSteeringWheelAngle__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeSteeringWheelAngle__request = { - "VehicleInfo", - "UnsubscribeSteeringWheelAngle", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeSteeringWheelAngle, - VehicleInfo__UnsubscribeSteeringWheelAngle__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeSteeringWheelAngle__response__parameter1 = { - {"steeringWheelAngle", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeSteeringWheelAngle__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeSteeringWheelAngle__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeSteeringWheelAngle__response = { - "VehicleInfo", - "UnsubscribeSteeringWheelAngle", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeSteeringWheelAngle, - VehicleInfo__UnsubscribeSteeringWheelAngle__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeECallInfo__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeECallInfo__request = { - "VehicleInfo", - "SubscribeECallInfo", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeECallInfo, - VehicleInfo__SubscribeECallInfo__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeECallInfo__response__parameter1 = { - {"eCallInfo", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeECallInfo__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeECallInfo__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeECallInfo__response = { - "VehicleInfo", - "SubscribeECallInfo", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeECallInfo, - VehicleInfo__SubscribeECallInfo__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeECallInfo__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeECallInfo__request = { - "VehicleInfo", - "UnsubscribeECallInfo", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeECallInfo, - VehicleInfo__UnsubscribeECallInfo__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeECallInfo__response__parameter1 = { - {"eCallInfo", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeECallInfo__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeECallInfo__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeECallInfo__response = { - "VehicleInfo", - "UnsubscribeECallInfo", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeECallInfo, - VehicleInfo__UnsubscribeECallInfo__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeAirbagStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeAirbagStatus__request = { - "VehicleInfo", - "SubscribeAirbagStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeAirbagStatus, - VehicleInfo__SubscribeAirbagStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeAirbagStatus__response__parameter1 = { - {"airbagStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeAirbagStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeAirbagStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeAirbagStatus__response = { - "VehicleInfo", - "SubscribeAirbagStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeAirbagStatus, - VehicleInfo__SubscribeAirbagStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeAirbagStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeAirbagStatus__request = { - "VehicleInfo", - "UnsubscribeAirbagStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeAirbagStatus, - VehicleInfo__UnsubscribeAirbagStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeAirbagStatus__response__parameter1 = { - {"airbagStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeAirbagStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeAirbagStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeAirbagStatus__response = { - "VehicleInfo", - "UnsubscribeAirbagStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeAirbagStatus, - VehicleInfo__UnsubscribeAirbagStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeEmergencyEvent__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeEmergencyEvent__request = { - "VehicleInfo", - "SubscribeEmergencyEvent", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeEmergencyEvent, - VehicleInfo__SubscribeEmergencyEvent__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeEmergencyEvent__response__parameter1 = { - {"emergencyEvent", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeEmergencyEvent__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeEmergencyEvent__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeEmergencyEvent__response = { - "VehicleInfo", - "SubscribeEmergencyEvent", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeEmergencyEvent, - VehicleInfo__SubscribeEmergencyEvent__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeEmergencyEvent__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeEmergencyEvent__request = { - "VehicleInfo", - "UnsubscribeEmergencyEvent", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeEmergencyEvent, - VehicleInfo__UnsubscribeEmergencyEvent__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeEmergencyEvent__response__parameter1 = { - {"emergencyEvent", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeEmergencyEvent__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeEmergencyEvent__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeEmergencyEvent__response = { - "VehicleInfo", - "UnsubscribeEmergencyEvent", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeEmergencyEvent, - VehicleInfo__UnsubscribeEmergencyEvent__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeClusterModeStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeClusterModeStatus__request = { - "VehicleInfo", - "SubscribeClusterModeStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeClusterModeStatus, - VehicleInfo__SubscribeClusterModeStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeClusterModeStatus__response__parameter1 = { - {"clusterModeStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeClusterModeStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeClusterModeStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeClusterModeStatus__response = { - "VehicleInfo", - "SubscribeClusterModeStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeClusterModeStatus, - VehicleInfo__SubscribeClusterModeStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeClusterModeStatus__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeClusterModeStatus__request = { - "VehicleInfo", - "UnsubscribeClusterModeStatus", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeClusterModeStatus, - VehicleInfo__UnsubscribeClusterModeStatus__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeClusterModeStatus__response__parameter1 = { - {"clusterModeStatus", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeClusterModeStatus__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeClusterModeStatus__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeClusterModeStatus__response = { - "VehicleInfo", - "UnsubscribeClusterModeStatus", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeClusterModeStatus, - VehicleInfo__UnsubscribeClusterModeStatus__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeMyKey__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeMyKey__request = { - "VehicleInfo", - "SubscribeMyKey", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_SubscribeMyKey, - VehicleInfo__SubscribeMyKey__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__SubscribeMyKey__response__parameter1 = { - {"myKey", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__SubscribeMyKey__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__SubscribeMyKey__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__SubscribeMyKey__response = { - "VehicleInfo", - "SubscribeMyKey", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_SubscribeMyKey, - VehicleInfo__SubscribeMyKey__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeMyKey__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeMyKey__request = { - "VehicleInfo", - "UnsubscribeMyKey", - hmi_apis::messageType::request, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeMyKey, - VehicleInfo__UnsubscribeMyKey__request__parameters}; - -const ford_message_descriptions::StructDescription - VehicleInfo__UnsubscribeMyKey__response__parameter1 = { - {"myKey", ford_message_descriptions::Struct, true}, - Structs::Common__VehicleDataResult__parameters}; -const ford_message_descriptions::ParameterDescription* - VehicleInfo__UnsubscribeMyKey__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&VehicleInfo__UnsubscribeMyKey__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - VehicleInfo__UnsubscribeMyKey__response = { - "VehicleInfo", - "UnsubscribeMyKey", - hmi_apis::messageType::response, - hmi_apis::FunctionID::VehicleInfo_UnsubscribeMyKey, - VehicleInfo__UnsubscribeMyKey__response__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__ActivateApp__request__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - SDL__ActivateApp__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription SDL__ActivateApp__request = - {"SDL", - "ActivateApp", - hmi_apis::messageType::request, - hmi_apis::FunctionID::SDL_ActivateApp, - SDL__ActivateApp__request__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__ActivateApp__response__parameter1 = { - "isSDLAllowed", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::StructDescription - SDL__ActivateApp__response__parameter2 = { - {"device", ford_message_descriptions::Struct, false}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription - SDL__ActivateApp__response__parameter3 = { - "isPermissionsConsentNeeded", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - SDL__ActivateApp__response__parameter4 = { - "isAppPermissionsRevoked", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::StructDescription - SDL__ActivateApp__response__parameter5_array = { - {"appRevokedPermissions", ford_message_descriptions::Struct, true}, - Structs::Common__PermissionItem__parameters}; -const ford_message_descriptions::ArrayDescription - SDL__ActivateApp__response__parameter5 = { - {"appRevokedPermissions", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter5_array, - "(si(bb))"}; -const ford_message_descriptions::ParameterDescription - SDL__ActivateApp__response__parameter6 = { - "isAppRevoked", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - SDL__ActivateApp__response__parameter7 = { - "priority", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - SDL__ActivateApp__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__ActivateApp__response__parameter7, - NULL}; -const ford_message_descriptions::MessageDescription SDL__ActivateApp__response = - {"SDL", - "ActivateApp", - hmi_apis::messageType::response, - hmi_apis::FunctionID::SDL_ActivateApp, - SDL__ActivateApp__response__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__GetUserFriendlyMessage__request__parameter1_array = { - "messageCodes", ford_message_descriptions::String, true}; -const ford_message_descriptions::ArrayDescription - SDL__GetUserFriendlyMessage__request__parameter1 = { - {"messageCodes", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetUserFriendlyMessage__request__parameter1_array, - "s"}; -const ford_message_descriptions::ParameterDescription - SDL__GetUserFriendlyMessage__request__parameter2 = { - "language", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - SDL__GetUserFriendlyMessage__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetUserFriendlyMessage__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetUserFriendlyMessage__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__GetUserFriendlyMessage__request = { - "SDL", - "GetUserFriendlyMessage", - hmi_apis::messageType::request, - hmi_apis::FunctionID::SDL_GetUserFriendlyMessage, - SDL__GetUserFriendlyMessage__request__parameters}; - -const ford_message_descriptions::StructDescription - SDL__GetUserFriendlyMessage__response__parameter1_array = { - {"messages", ford_message_descriptions::Struct, true}, - Structs::Common__UserFriendlyMessage__parameters}; -const ford_message_descriptions::ArrayDescription - SDL__GetUserFriendlyMessage__response__parameter1 = { - {"messages", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetUserFriendlyMessage__response__parameter1_array, - "(s(bs)(bs)(bs)(bs)(bs))"}; -const ford_message_descriptions::ParameterDescription* - SDL__GetUserFriendlyMessage__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetUserFriendlyMessage__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__GetUserFriendlyMessage__response = { - "SDL", - "GetUserFriendlyMessage", - hmi_apis::messageType::response, - hmi_apis::FunctionID::SDL_GetUserFriendlyMessage, - SDL__GetUserFriendlyMessage__response__parameters}; - -const ford_message_descriptions::StructDescription - SDL__OnAllowSDLFunctionality__notification__parameter1 = { - {"device", ford_message_descriptions::Struct, false}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription - SDL__OnAllowSDLFunctionality__notification__parameter2 = { - "allowed", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription - SDL__OnAllowSDLFunctionality__notification__parameter3 = { - "source", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__OnAllowSDLFunctionality__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAllowSDLFunctionality__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAllowSDLFunctionality__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAllowSDLFunctionality__notification__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnAllowSDLFunctionality__notification = { - "SDL", - "OnAllowSDLFunctionality", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnAllowSDLFunctionality, - SDL__OnAllowSDLFunctionality__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__OnReceivedPolicyUpdate__notification__parameter1 = { - "policyfile", ford_message_descriptions::String, true}; -const ford_message_descriptions::ParameterDescription* - SDL__OnReceivedPolicyUpdate__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnReceivedPolicyUpdate__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnReceivedPolicyUpdate__notification = { - "SDL", - "OnReceivedPolicyUpdate", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnReceivedPolicyUpdate, - SDL__OnReceivedPolicyUpdate__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - SDL__OnPolicyUpdate__notification__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnPolicyUpdate__notification = { - "SDL", - "OnPolicyUpdate", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnPolicyUpdate, - SDL__OnPolicyUpdate__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__GetListOfPermissions__request__parameter1 = { - "appID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::ParameterDescription* - SDL__GetListOfPermissions__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetListOfPermissions__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__GetListOfPermissions__request = { - "SDL", - "GetListOfPermissions", - hmi_apis::messageType::request, - hmi_apis::FunctionID::SDL_GetListOfPermissions, - SDL__GetListOfPermissions__request__parameters}; - -const ford_message_descriptions::StructDescription - SDL__GetListOfPermissions__response__parameter1_array = { - {"allowedFunctions", ford_message_descriptions::Struct, true}, - Structs::Common__PermissionItem__parameters}; -const ford_message_descriptions::ArrayDescription - SDL__GetListOfPermissions__response__parameter1 = { - {"allowedFunctions", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetListOfPermissions__response__parameter1_array, - "(si(bb))"}; -const ford_message_descriptions::ParameterDescription* - SDL__GetListOfPermissions__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetListOfPermissions__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__GetListOfPermissions__response = { - "SDL", - "GetListOfPermissions", - hmi_apis::messageType::response, - hmi_apis::FunctionID::SDL_GetListOfPermissions, - SDL__GetListOfPermissions__response__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionConsent__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, false}; -const ford_message_descriptions::StructDescription - SDL__OnAppPermissionConsent__notification__parameter2_array = { - {"consentedFunctions", ford_message_descriptions::Struct, true}, - Structs::Common__PermissionItem__parameters}; -const ford_message_descriptions::ArrayDescription - SDL__OnAppPermissionConsent__notification__parameter2 = { - {"consentedFunctions", ford_message_descriptions::Array, true}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionConsent__notification__parameter2_array, - "(si(bb))"}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionConsent__notification__parameter3 = { - "source", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__OnAppPermissionConsent__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionConsent__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionConsent__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionConsent__notification__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnAppPermissionConsent__notification = { - "SDL", - "OnAppPermissionConsent", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnAppPermissionConsent, - SDL__OnAppPermissionConsent__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter1 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter2 = { - "isAppPermissionsRevoked", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::StructDescription - SDL__OnAppPermissionChanged__notification__parameter3_array = { - {"appRevokedPermissions", ford_message_descriptions::Struct, true}, - Structs::Common__PermissionItem__parameters}; -const ford_message_descriptions::ArrayDescription - SDL__OnAppPermissionChanged__notification__parameter3 = { - {"appRevokedPermissions", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter3_array, - "(si(bb))"}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter4 = { - "appRevoked", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter5 = { - "appPermissionsConsentNeeded", - ford_message_descriptions::Boolean, - false}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter6 = { - "appUnauthorized", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter7 = { - "priority", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription - SDL__OnAppPermissionChanged__notification__parameter8_array = { - "requestType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ArrayDescription - SDL__OnAppPermissionChanged__notification__parameter8 = { - {"requestType", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter8_array, - "i"}; -const ford_message_descriptions::ParameterDescription* - SDL__OnAppPermissionChanged__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter3, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter4, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter5, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter6, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter7, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnAppPermissionChanged__notification__parameter8, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnAppPermissionChanged__notification = { - "SDL", - "OnAppPermissionChanged", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnAppPermissionChanged, - SDL__OnAppPermissionChanged__notification__parameters}; - -const ford_message_descriptions::StructDescription - SDL__OnSDLConsentNeeded__notification__parameter1 = { - {"device", ford_message_descriptions::Struct, true}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - SDL__OnSDLConsentNeeded__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnSDLConsentNeeded__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnSDLConsentNeeded__notification = { - "SDL", - "OnSDLConsentNeeded", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnSDLConsentNeeded, - SDL__OnSDLConsentNeeded__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - SDL__UpdateSDL__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription SDL__UpdateSDL__request = { - "SDL", - "UpdateSDL", - hmi_apis::messageType::request, - hmi_apis::FunctionID::SDL_UpdateSDL, - SDL__UpdateSDL__request__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__UpdateSDL__response__parameter1 = { - "result", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__UpdateSDL__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__UpdateSDL__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription SDL__UpdateSDL__response = { - "SDL", - "UpdateSDL", - hmi_apis::messageType::response, - hmi_apis::FunctionID::SDL_UpdateSDL, - SDL__UpdateSDL__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - SDL__GetStatusUpdate__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - SDL__GetStatusUpdate__request = {"SDL", - "GetStatusUpdate", - hmi_apis::messageType::request, - hmi_apis::FunctionID::SDL_GetStatusUpdate, - SDL__GetStatusUpdate__request__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__GetStatusUpdate__response__parameter1 = { - "status", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__GetStatusUpdate__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetStatusUpdate__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__GetStatusUpdate__response = { - "SDL", - "GetStatusUpdate", - hmi_apis::messageType::response, - hmi_apis::FunctionID::SDL_GetStatusUpdate, - SDL__GetStatusUpdate__response__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__OnStatusUpdate__notification__parameter1 = { - "status", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__OnStatusUpdate__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnStatusUpdate__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnStatusUpdate__notification = { - "SDL", - "OnStatusUpdate", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnStatusUpdate, - SDL__OnStatusUpdate__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__OnSystemError__notification__parameter1 = { - "error", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__OnSystemError__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnSystemError__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnSystemError__notification = { - "SDL", - "OnSystemError", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnSystemError, - SDL__OnSystemError__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__AddStatisticsInfo__notification__parameter1 = { - "statisticType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription* - SDL__AddStatisticsInfo__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__AddStatisticsInfo__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__AddStatisticsInfo__notification = { - "SDL", - "AddStatisticsInfo", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_AddStatisticsInfo, - SDL__AddStatisticsInfo__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__GetURLS__request__parameter1 = { - "service", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - SDL__GetURLS__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetURLS__request__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription SDL__GetURLS__request = { - "SDL", - "GetURLS", - hmi_apis::messageType::request, - hmi_apis::FunctionID::SDL_GetURLS, - SDL__GetURLS__request__parameters}; - -const ford_message_descriptions::StructDescription - SDL__GetURLS__response__parameter1_array = { - {"urls", ford_message_descriptions::Struct, true}, - Structs::Common__ServiceInfo__parameters}; -const ford_message_descriptions::ArrayDescription - SDL__GetURLS__response__parameter1 = { - {"urls", ford_message_descriptions::Array, false}, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetURLS__response__parameter1_array, - "(s(bs))"}; -const ford_message_descriptions::ParameterDescription* - SDL__GetURLS__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__GetURLS__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription SDL__GetURLS__response = { - "SDL", - "GetURLS", - hmi_apis::messageType::response, - hmi_apis::FunctionID::SDL_GetURLS, - SDL__GetURLS__response__parameters}; - -const ford_message_descriptions::ParameterDescription - SDL__OnDeviceStateChanged__notification__parameter1 = { - "deviceState", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - SDL__OnDeviceStateChanged__notification__parameter2 = { - "deviceInternalId", ford_message_descriptions::String, true}; -const ford_message_descriptions::StructDescription - SDL__OnDeviceStateChanged__notification__parameter3 = { - {"deviceId", ford_message_descriptions::Struct, false}, - Structs::Common__DeviceInfo__parameters}; -const ford_message_descriptions::ParameterDescription* - SDL__OnDeviceStateChanged__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnDeviceStateChanged__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnDeviceStateChanged__notification__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&SDL__OnDeviceStateChanged__notification__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - SDL__OnDeviceStateChanged__notification = { - "SDL", - "OnDeviceStateChanged", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::SDL_OnDeviceStateChanged, - SDL__OnDeviceStateChanged__notification__parameters}; - -const ford_message_descriptions::ParameterDescription* - RC__IsReady__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription RC__IsReady__request = { - "RC", - "IsReady", - hmi_apis::messageType::request, - hmi_apis::FunctionID::RC_IsReady, - RC__IsReady__request__parameters}; - -const ford_message_descriptions::ParameterDescription - RC__IsReady__response__parameter1 = { - "available", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - RC__IsReady__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__IsReady__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription RC__IsReady__response = { - "RC", - "IsReady", - hmi_apis::messageType::response, - hmi_apis::FunctionID::RC_IsReady, - RC__IsReady__response__parameters}; - -const ford_message_descriptions::ParameterDescription* - RC__GetCapabilities__request__parameters[] = {NULL}; -const ford_message_descriptions::MessageDescription - RC__GetCapabilities__request = {"RC", - "GetCapabilities", - hmi_apis::messageType::request, - hmi_apis::FunctionID::RC_GetCapabilities, - RC__GetCapabilities__request__parameters}; - -const ford_message_descriptions::StructDescription - RC__GetCapabilities__response__parameter1 = { - {"remoteControlCapability", ford_message_descriptions::Struct, false}, - Structs::Common__RemoteControlCapabilities__parameters}; -const ford_message_descriptions::ParameterDescription* - RC__GetCapabilities__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetCapabilities__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - RC__GetCapabilities__response = {"RC", - "GetCapabilities", - hmi_apis::messageType::response, - hmi_apis::FunctionID::RC_GetCapabilities, - RC__GetCapabilities__response__parameters}; - -const ford_message_descriptions::StructDescription - RC__SetInteriorVehicleData__request__parameter1 = { - {"moduleData", ford_message_descriptions::Struct, true}, - Structs::Common__ModuleData__parameters}; -const ford_message_descriptions::ParameterDescription - RC__SetInteriorVehicleData__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - RC__SetInteriorVehicleData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__SetInteriorVehicleData__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&RC__SetInteriorVehicleData__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - RC__SetInteriorVehicleData__request = { - "RC", - "SetInteriorVehicleData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::RC_SetInteriorVehicleData, - RC__SetInteriorVehicleData__request__parameters}; - -const ford_message_descriptions::StructDescription - RC__SetInteriorVehicleData__response__parameter1 = { - {"moduleData", ford_message_descriptions::Struct, true}, - Structs::Common__ModuleData__parameters}; -const ford_message_descriptions::ParameterDescription* - RC__SetInteriorVehicleData__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__SetInteriorVehicleData__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - RC__SetInteriorVehicleData__response = { - "RC", - "SetInteriorVehicleData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::RC_SetInteriorVehicleData, - RC__SetInteriorVehicleData__response__parameters}; - -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleData__request__parameter1 = { - "moduleType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleData__request__parameter2 = { - "subscribe", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleData__request__parameter3 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - RC__GetInteriorVehicleData__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleData__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleData__request__parameter2, - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleData__request__parameter3, - NULL}; -const ford_message_descriptions::MessageDescription - RC__GetInteriorVehicleData__request = { - "RC", - "GetInteriorVehicleData", - hmi_apis::messageType::request, - hmi_apis::FunctionID::RC_GetInteriorVehicleData, - RC__GetInteriorVehicleData__request__parameters}; - -const ford_message_descriptions::StructDescription - RC__GetInteriorVehicleData__response__parameter1 = { - {"moduleData", ford_message_descriptions::Struct, true}, - Structs::Common__ModuleData__parameters}; -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleData__response__parameter2 = { - "isSubscribed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription* - RC__GetInteriorVehicleData__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleData__response__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleData__response__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - RC__GetInteriorVehicleData__response = { - "RC", - "GetInteriorVehicleData", - hmi_apis::messageType::response, - hmi_apis::FunctionID::RC_GetInteriorVehicleData, - RC__GetInteriorVehicleData__response__parameters}; - -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleDataConsent__request__parameter1 = { - "moduleType", ford_message_descriptions::Enum, true}; -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleDataConsent__request__parameter2 = { - "appID", ford_message_descriptions::Integer, true}; -const ford_message_descriptions::ParameterDescription* - RC__GetInteriorVehicleDataConsent__request__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleDataConsent__request__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleDataConsent__request__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - RC__GetInteriorVehicleDataConsent__request = { - "RC", - "GetInteriorVehicleDataConsent", - hmi_apis::messageType::request, - hmi_apis::FunctionID::RC_GetInteriorVehicleDataConsent, - RC__GetInteriorVehicleDataConsent__request__parameters}; - -const ford_message_descriptions::ParameterDescription - RC__GetInteriorVehicleDataConsent__response__parameter1 = { - "allowed", ford_message_descriptions::Boolean, true}; -const ford_message_descriptions::ParameterDescription* - RC__GetInteriorVehicleDataConsent__response__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__GetInteriorVehicleDataConsent__response__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - RC__GetInteriorVehicleDataConsent__response = { - "RC", - "GetInteriorVehicleDataConsent", - hmi_apis::messageType::response, - hmi_apis::FunctionID::RC_GetInteriorVehicleDataConsent, - RC__GetInteriorVehicleDataConsent__response__parameters}; - -const ford_message_descriptions::StructDescription - RC__OnInteriorVehicleData__notification__parameter1 = { - {"moduleData", ford_message_descriptions::Struct, true}, - Structs::Common__ModuleData__parameters}; -const ford_message_descriptions::ParameterDescription* - RC__OnInteriorVehicleData__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__OnInteriorVehicleData__notification__parameter1, - NULL}; -const ford_message_descriptions::MessageDescription - RC__OnInteriorVehicleData__notification = { - "RC", - "OnInteriorVehicleData", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::RC_OnInteriorVehicleData, - RC__OnInteriorVehicleData__notification__parameters}; - -const ford_message_descriptions::ParameterDescription - RC__OnRemoteControlSettings__notification__parameter1 = { - "allowed", ford_message_descriptions::Boolean, false}; -const ford_message_descriptions::ParameterDescription - RC__OnRemoteControlSettings__notification__parameter2 = { - "accessMode", ford_message_descriptions::Enum, false}; -const ford_message_descriptions::ParameterDescription* - RC__OnRemoteControlSettings__notification__parameters[] = { - (const ford_message_descriptions:: - ParameterDescription*)&RC__OnRemoteControlSettings__notification__parameter1, - (const ford_message_descriptions:: - ParameterDescription*)&RC__OnRemoteControlSettings__notification__parameter2, - NULL}; -const ford_message_descriptions::MessageDescription - RC__OnRemoteControlSettings__notification = { - "RC", - "OnRemoteControlSettings", - hmi_apis::messageType::notification, - hmi_apis::FunctionID::RC_OnRemoteControlSettings, - RC__OnRemoteControlSettings__notification__parameters}; -} - -namespace ford_message_descriptions { - -const MessageDescription* message_descriptions[] = { - &Buttons__GetCapabilities__request, - &Buttons__GetCapabilities__response, - &Buttons__OnButtonEvent__notification, - &Buttons__OnButtonPress__notification, - &Buttons__OnButtonSubscription__notification, - &BasicCommunication__OnReady__notification, - &BasicCommunication__OnStartDeviceDiscovery__notification, - &BasicCommunication__OnUpdateDeviceList__notification, - &BasicCommunication__OnPhoneCall__notification, - &BasicCommunication__OnEmergencyEvent__notification, - &BasicCommunication__OnResumeAudioSource__notification, - &BasicCommunication__OnSDLPersistenceComplete__notification, - &BasicCommunication__UpdateAppList__request, - &BasicCommunication__UpdateAppList__response, - &BasicCommunication__UpdateDeviceList__request, - &BasicCommunication__UpdateDeviceList__response, - &BasicCommunication__OnFileRemoved__notification, - &BasicCommunication__AllowDeviceToConnect__request, - &BasicCommunication__AllowDeviceToConnect__response, - &BasicCommunication__OnDeviceChosen__notification, - &BasicCommunication__OnFindApplications__notification, - &BasicCommunication__ActivateApp__request, - &BasicCommunication__ActivateApp__response, - &BasicCommunication__OnAppActivated__notification, - &BasicCommunication__OnAppDeactivated__notification, - &BasicCommunication__OnAppRegistered__notification, - &BasicCommunication__OnAppUnregistered__notification, - &BasicCommunication__OnExitApplication__notification, - &BasicCommunication__OnExitAllApplications__notification, - &BasicCommunication__OnAwakeSDL__notification, - &BasicCommunication__MixingAudioSupported__request, - &BasicCommunication__MixingAudioSupported__response, - &BasicCommunication__PlayTone__notification, - &BasicCommunication__DialNumber__request, - &BasicCommunication__DialNumber__response, - &BasicCommunication__OnSystemRequest__notification, - &BasicCommunication__SystemRequest__request, - &BasicCommunication__SystemRequest__response, - &BasicCommunication__PolicyUpdate__request, - &BasicCommunication__PolicyUpdate__response, - &BasicCommunication__OnSDLClose__notification, - &BasicCommunication__OnPutFile__notification, - &BasicCommunication__GetSystemInfo__request, - &BasicCommunication__GetSystemInfo__response, - &BasicCommunication__OnSystemInfoChanged__notification, - &BasicCommunication__OnIgnitionCycleOver__notification, - &BasicCommunication__DecryptCertificate__request, - &BasicCommunication__DecryptCertificate__response, - &BasicCommunication__OnEventChanged__notification, - &VR__IsReady__request, - &VR__IsReady__response, - &VR__Started__notification, - &VR__Stopped__notification, - &VR__AddCommand__request, - &VR__AddCommand__response, - &VR__DeleteCommand__request, - &VR__DeleteCommand__response, - &VR__PerformInteraction__request, - &VR__PerformInteraction__response, - &VR__OnCommand__notification, - &VR__ChangeRegistration__request, - &VR__ChangeRegistration__response, - &VR__OnLanguageChange__notification, - &VR__GetSupportedLanguages__request, - &VR__GetSupportedLanguages__response, - &VR__GetLanguage__request, - &VR__GetLanguage__response, - &VR__GetCapabilities__request, - &VR__GetCapabilities__response, - &TTS__GetCapabilities__request, - &TTS__GetCapabilities__response, - &TTS__Started__notification, - &TTS__Stopped__notification, - &TTS__IsReady__request, - &TTS__IsReady__response, - &TTS__Speak__request, - &TTS__Speak__response, - &TTS__StopSpeaking__request, - &TTS__StopSpeaking__response, - &TTS__ChangeRegistration__request, - &TTS__ChangeRegistration__response, - &TTS__OnLanguageChange__notification, - &TTS__GetSupportedLanguages__request, - &TTS__GetSupportedLanguages__response, - &TTS__GetLanguage__request, - &TTS__GetLanguage__response, - &TTS__SetGlobalProperties__request, - &TTS__SetGlobalProperties__response, - &TTS__OnResetTimeout__notification, - &UI__Alert__request, - &UI__Alert__response, - &UI__Show__request, - &UI__Show__response, - &UI__AddCommand__request, - &UI__AddCommand__response, - &UI__DeleteCommand__request, - &UI__DeleteCommand__response, - &UI__AddSubMenu__request, - &UI__AddSubMenu__response, - &UI__DeleteSubMenu__request, - &UI__DeleteSubMenu__response, - &UI__PerformInteraction__request, - &UI__PerformInteraction__response, - &UI__SetMediaClockTimer__request, - &UI__SetMediaClockTimer__response, - &UI__SetGlobalProperties__request, - &UI__SetGlobalProperties__response, - &UI__OnCommand__notification, - &UI__OnSystemContext__notification, - &UI__GetCapabilities__request, - &UI__GetCapabilities__response, - &UI__ChangeRegistration__request, - &UI__ChangeRegistration__response, - &UI__OnLanguageChange__notification, - &UI__GetSupportedLanguages__request, - &UI__GetSupportedLanguages__response, - &UI__GetLanguage__request, - &UI__GetLanguage__response, - &UI__OnDriverDistraction__notification, - &UI__SetAppIcon__request, - &UI__SetAppIcon__response, - &UI__SetDisplayLayout__request, - &UI__SetDisplayLayout__response, - &UI__ShowCustomForm__request, - &UI__ShowCustomForm__response, - &UI__OnKeyboardInput__notification, - &UI__OnTouchEvent__notification, - &UI__Slider__request, - &UI__Slider__response, - &UI__ScrollableMessage__request, - &UI__ScrollableMessage__response, - &UI__PerformAudioPassThru__request, - &UI__PerformAudioPassThru__response, - &UI__EndAudioPassThru__request, - &UI__EndAudioPassThru__response, - &UI__IsReady__request, - &UI__IsReady__response, - &UI__ClosePopUp__request, - &UI__ClosePopUp__response, - &UI__OnResetTimeout__notification, - &UI__OnRecordStart__notification, - &UI__SendHapticData__request, - &UI__SendHapticData__response, - &Navigation__IsReady__request, - &Navigation__IsReady__response, - &Navigation__SendLocation__request, - &Navigation__SendLocation__response, - &Navigation__DialNumber__request, - &Navigation__DialNumber__response, - &Navigation__ShowConstantTBT__request, - &Navigation__ShowConstantTBT__response, - &Navigation__AlertManeuver__request, - &Navigation__AlertManeuver__response, - &Navigation__UpdateTurnList__request, - &Navigation__UpdateTurnList__response, - &Navigation__OnTBTClientState__notification, - &Navigation__SetVideoConfig__request, - &Navigation__SetVideoConfig__response, - &Navigation__StartStream__request, - &Navigation__StartStream__response, - &Navigation__StopStream__request, - &Navigation__StopStream__response, - &Navigation__StartAudioStream__request, - &Navigation__StartAudioStream__response, - &Navigation__StopAudioStream__request, - &Navigation__StopAudioStream__response, - &Navigation__OnAudioDataStreaming__notification, - &Navigation__OnVideoDataStreaming__notification, - &Navigation__GetWayPoints__request, - &Navigation__GetWayPoints__response, - &Navigation__OnWayPointChange__notification, - &Navigation__SubscribeWayPoints__request, - &Navigation__SubscribeWayPoints__response, - &Navigation__UnsubscribeWayPoints__request, - &Navigation__UnsubscribeWayPoints__response, - &VehicleInfo__IsReady__request, - &VehicleInfo__IsReady__response, - &VehicleInfo__GetVehicleType__request, - &VehicleInfo__GetVehicleType__response, - &VehicleInfo__ReadDID__request, - &VehicleInfo__ReadDID__response, - &VehicleInfo__GetDTCs__request, - &VehicleInfo__GetDTCs__response, - &VehicleInfo__DiagnosticMessage__request, - &VehicleInfo__DiagnosticMessage__response, - &VehicleInfo__SubscribeVehicleData__request, - &VehicleInfo__SubscribeVehicleData__response, - &VehicleInfo__UnsubscribeVehicleData__request, - &VehicleInfo__UnsubscribeVehicleData__response, - &VehicleInfo__GetVehicleData__request, - &VehicleInfo__GetVehicleData__response, - &VehicleInfo__OnVehicleData__notification, - &VehicleInfo__GetGpsData__request, - &VehicleInfo__GetGpsData__response, - &VehicleInfo__GetSpeed__request, - &VehicleInfo__GetSpeed__response, - &VehicleInfo__GetRpm__request, - &VehicleInfo__GetRpm__response, - &VehicleInfo__GetFuelLevel__request, - &VehicleInfo__GetFuelLevel__response, - &VehicleInfo__GetFuelLevelState__request, - &VehicleInfo__GetFuelLevelState__response, - &VehicleInfo__GetInstantFuelConsumption__request, - &VehicleInfo__GetInstantFuelConsumption__response, - &VehicleInfo__GetExternalTemperature__request, - &VehicleInfo__GetExternalTemperature__response, - &VehicleInfo__GetVin__request, - &VehicleInfo__GetVin__response, - &VehicleInfo__GetPrndl__request, - &VehicleInfo__GetPrndl__response, - &VehicleInfo__GetTirePressure__request, - &VehicleInfo__GetTirePressure__response, - &VehicleInfo__GetOdometer__request, - &VehicleInfo__GetOdometer__response, - &VehicleInfo__GetBeltStatus__request, - &VehicleInfo__GetBeltStatus__response, - &VehicleInfo__GetBodyInformation__request, - &VehicleInfo__GetBodyInformation__response, - &VehicleInfo__GetDeviceStatus__request, - &VehicleInfo__GetDeviceStatus__response, - &VehicleInfo__GetDriverBraking__request, - &VehicleInfo__GetDriverBraking__response, - &VehicleInfo__GetWiperStatus__request, - &VehicleInfo__GetWiperStatus__response, - &VehicleInfo__GetHeadLampStatus__request, - &VehicleInfo__GetHeadLampStatus__response, - &VehicleInfo__GetEngineTorque__request, - &VehicleInfo__GetEngineTorque__response, - &VehicleInfo__GetAccPedalPosition__request, - &VehicleInfo__GetAccPedalPosition__response, - &VehicleInfo__GetSteeringWheelAngle__request, - &VehicleInfo__GetSteeringWheelAngle__response, - &VehicleInfo__GetECallInfo__request, - &VehicleInfo__GetECallInfo__response, - &VehicleInfo__GetAirbagStatus__request, - &VehicleInfo__GetAirbagStatus__response, - &VehicleInfo__GetEmergencyEvent__request, - &VehicleInfo__GetEmergencyEvent__response, - &VehicleInfo__GetClusterModeStatus__request, - &VehicleInfo__GetClusterModeStatus__response, - &VehicleInfo__GetMyKey__request, - &VehicleInfo__GetMyKey__response, - &VehicleInfo__OnGpsData__notification, - &VehicleInfo__OnSpeed__notification, - &VehicleInfo__OnRpm__notification, - &VehicleInfo__OnFuelLevel__notification, - &VehicleInfo__OnFuelLevelState__notification, - &VehicleInfo__OnInstantFuelConsumption__notification, - &VehicleInfo__OnExternalTemperature__notification, - &VehicleInfo__OnVin__notification, - &VehicleInfo__OnPrndl__notification, - &VehicleInfo__OnTirePressure__notification, - &VehicleInfo__OnOdometer__notification, - &VehicleInfo__OnBeltStatus__notification, - &VehicleInfo__OnBodyInformation__notification, - &VehicleInfo__OnDeviceStatus__notification, - &VehicleInfo__OnDriverBraking__notification, - &VehicleInfo__OnWiperStatus__notification, - &VehicleInfo__OnHeadLampStatus__notification, - &VehicleInfo__OnEngineTorque__notification, - &VehicleInfo__OnAccPedalPosition__notification, - &VehicleInfo__OnSteeringWheelAngle__notification, - &VehicleInfo__OnECallInfo__notification, - &VehicleInfo__OnAirbagStatus__notification, - &VehicleInfo__OnEmergencyEvent__notification, - &VehicleInfo__OnClusterModeStatus__notification, - &VehicleInfo__OnMyKey__notification, - &VehicleInfo__SubscribeGps__request, - &VehicleInfo__SubscribeGps__response, - &VehicleInfo__UnsubscribeGps__request, - &VehicleInfo__UnsubscribeGps__response, - &VehicleInfo__SubscribeSpeed__request, - &VehicleInfo__SubscribeSpeed__response, - &VehicleInfo__UnsubscribeSpeed__request, - &VehicleInfo__UnsubscribeSpeed__response, - &VehicleInfo__SubscribeRpm__request, - &VehicleInfo__SubscribeRpm__response, - &VehicleInfo__UnsubscribeRpm__request, - &VehicleInfo__UnsubscribeRpm__response, - &VehicleInfo__SubscribeFuelLevel__request, - &VehicleInfo__SubscribeFuelLevel__response, - &VehicleInfo__UnsubscribeFuelLevel__request, - &VehicleInfo__UnsubscribeFuelLevel__response, - &VehicleInfo__SubscribeFuelLevel_State__request, - &VehicleInfo__SubscribeFuelLevel_State__response, - &VehicleInfo__UnsubscribeFuelLevel_State__request, - &VehicleInfo__UnsubscribeFuelLevel_State__response, - &VehicleInfo__SubscribeInstantFuelConsumption__request, - &VehicleInfo__SubscribeInstantFuelConsumption__response, - &VehicleInfo__UnsubscribeInstantFuelConsumption__request, - &VehicleInfo__UnsubscribeInstantFuelConsumption__response, - &VehicleInfo__SubscribeExternalTemperature__request, - &VehicleInfo__SubscribeExternalTemperature__response, - &VehicleInfo__UnsubscribeExternalTemperature__request, - &VehicleInfo__UnsubscribeExternalTemperature__response, - &VehicleInfo__SubscribePrndl__request, - &VehicleInfo__SubscribePrndl__response, - &VehicleInfo__UnsubscribePrndl__request, - &VehicleInfo__UnsubscribePrndl__response, - &VehicleInfo__SubscribeVin__request, - &VehicleInfo__SubscribeVin__response, - &VehicleInfo__UnsubscribeVin__request, - &VehicleInfo__UnsubscribeVin__response, - &VehicleInfo__SubscribeTirePressure__request, - &VehicleInfo__SubscribeTirePressure__response, - &VehicleInfo__UnsubscribeTirePressure__request, - &VehicleInfo__UnsubscribeTirePressure__response, - &VehicleInfo__SubscribeOdometer__request, - &VehicleInfo__SubscribeOdometer__response, - &VehicleInfo__UnsubscribeOdometer__request, - &VehicleInfo__UnsubscribeOdometer__response, - &VehicleInfo__SubscribeBeltStatus__request, - &VehicleInfo__SubscribeBeltStatus__response, - &VehicleInfo__UnsubscribeBeltStatus__request, - &VehicleInfo__UnsubscribeBeltStatus__response, - &VehicleInfo__SubscribeBodyInformation__request, - &VehicleInfo__SubscribeBodyInformation__response, - &VehicleInfo__UnsubscribeBodyInformation__request, - &VehicleInfo__UnsubscribeBodyInformation__response, - &VehicleInfo__SubscribeDeviceStatus__request, - &VehicleInfo__SubscribeDeviceStatus__response, - &VehicleInfo__UnsubscribeDeviceStatus__request, - &VehicleInfo__UnsubscribeDeviceStatus__response, - &VehicleInfo__SubscribeDriverBraking__request, - &VehicleInfo__SubscribeDriverBraking__response, - &VehicleInfo__UnsubscribeDriverBraking__request, - &VehicleInfo__UnsubscribeDriverBraking__response, - &VehicleInfo__SubscribeWiperStatus__request, - &VehicleInfo__SubscribeWiperStatus__response, - &VehicleInfo__UnsubscribeWiperStatus__request, - &VehicleInfo__UnsubscribeWiperStatus__response, - &VehicleInfo__SubscribeHeadLampStatus__request, - &VehicleInfo__SubscribeHeadLampStatus__response, - &VehicleInfo__UnsubscribeHeadLampStatus__request, - &VehicleInfo__UnsubscribeHeadLampStatus__response, - &VehicleInfo__SubscribeEngineTorque__request, - &VehicleInfo__SubscribeEngineTorque__response, - &VehicleInfo__UnsubscribeEngineTorque__request, - &VehicleInfo__UnsubscribeEngineTorque__response, - &VehicleInfo__SubscribeAccPedalPosition__request, - &VehicleInfo__SubscribeAccPedalPosition__response, - &VehicleInfo__UnsubscribeAccPedalPosition__request, - &VehicleInfo__UnsubscribeAccPedalPosition__response, - &VehicleInfo__SubscribeSteeringWheelAngle__request, - &VehicleInfo__SubscribeSteeringWheelAngle__response, - &VehicleInfo__UnsubscribeSteeringWheelAngle__request, - &VehicleInfo__UnsubscribeSteeringWheelAngle__response, - &VehicleInfo__SubscribeECallInfo__request, - &VehicleInfo__SubscribeECallInfo__response, - &VehicleInfo__UnsubscribeECallInfo__request, - &VehicleInfo__UnsubscribeECallInfo__response, - &VehicleInfo__SubscribeAirbagStatus__request, - &VehicleInfo__SubscribeAirbagStatus__response, - &VehicleInfo__UnsubscribeAirbagStatus__request, - &VehicleInfo__UnsubscribeAirbagStatus__response, - &VehicleInfo__SubscribeEmergencyEvent__request, - &VehicleInfo__SubscribeEmergencyEvent__response, - &VehicleInfo__UnsubscribeEmergencyEvent__request, - &VehicleInfo__UnsubscribeEmergencyEvent__response, - &VehicleInfo__SubscribeClusterModeStatus__request, - &VehicleInfo__SubscribeClusterModeStatus__response, - &VehicleInfo__UnsubscribeClusterModeStatus__request, - &VehicleInfo__UnsubscribeClusterModeStatus__response, - &VehicleInfo__SubscribeMyKey__request, - &VehicleInfo__SubscribeMyKey__response, - &VehicleInfo__UnsubscribeMyKey__request, - &VehicleInfo__UnsubscribeMyKey__response, - &SDL__ActivateApp__request, - &SDL__ActivateApp__response, - &SDL__GetUserFriendlyMessage__request, - &SDL__GetUserFriendlyMessage__response, - &SDL__OnAllowSDLFunctionality__notification, - &SDL__OnReceivedPolicyUpdate__notification, - &SDL__OnPolicyUpdate__notification, - &SDL__GetListOfPermissions__request, - &SDL__GetListOfPermissions__response, - &SDL__OnAppPermissionConsent__notification, - &SDL__OnAppPermissionChanged__notification, - &SDL__OnSDLConsentNeeded__notification, - &SDL__UpdateSDL__request, - &SDL__UpdateSDL__response, - &SDL__GetStatusUpdate__request, - &SDL__GetStatusUpdate__response, - &SDL__OnStatusUpdate__notification, - &SDL__OnSystemError__notification, - &SDL__AddStatisticsInfo__notification, - &SDL__GetURLS__request, - &SDL__GetURLS__response, - &SDL__OnDeviceStateChanged__notification, - &RC__IsReady__request, - &RC__IsReady__response, - &RC__GetCapabilities__request, - &RC__GetCapabilities__response, - &RC__SetInteriorVehicleData__request, - &RC__SetInteriorVehicleData__response, - &RC__GetInteriorVehicleData__request, - &RC__GetInteriorVehicleData__response, - &RC__GetInteriorVehicleDataConsent__request, - &RC__GetInteriorVehicleDataConsent__response, - &RC__OnInteriorVehicleData__notification, - &RC__OnRemoteControlSettings__notification, - NULL}; -} diff --git a/src/components/dbus/src/schema.cc b/src/components/dbus/src/schema.cc deleted file mode 100644 index 3107d9ce6c..0000000000 --- a/src/components/dbus/src/schema.cc +++ /dev/null @@ -1,145 +0,0 @@ -/* - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ -#include "dbus/schema.h" - -#include -#include - -namespace dbus { - -struct Description { - MessageId id; - MessageName name; - MessageType type; - ListArgs args; -}; - -struct IsId : public std::unary_function { - explicit IsId(MessageId id) : id_(id) {} - bool operator()(const Description* desc) { - return desc->id == id_; - } - - private: - MessageId id_; -}; - -struct IsName : public std::unary_function { - explicit IsName(const MessageName& name) : name_(name) {} - bool operator()(const Description* desc) { - return desc->name == name_; - } - - private: - MessageName name_; -}; - -struct IsIdType : public std::unary_function { - explicit IsIdType(const MessageId& id, const MessageType& type) - : id_(id), type_(type) {} - bool operator()(const Description* desc) { - return desc->id == id_ && desc->type == type_; - } - - private: - MessageId id_; - MessageType type_; -}; - -struct IsNameType : public std::unary_function { - explicit IsNameType(const MessageName& name, const MessageType& type) - : name_(name), type_(type) {} - bool operator()(const Description* desc) { - return desc->name == name_ && desc->type == type_; - } - - private: - MessageName name_; - MessageType type_; -}; - -DBusSchema::DBusSchema(const MessageDescription** array) { - const MessageDescription** msg = array; - while (*msg != NULL) { - Description* desc = new Description(); - desc->id = (*msg)->function_id; - desc->name = std::make_pair((*msg)->interface, (*msg)->name); - desc->type = (*msg)->message_type; - const ParameterDescription** param; - param = (*msg)->parameters; - while (*param != NULL) { - desc->args.push_back(*param); - param++; - } - msgs_.push_back(desc); - msg++; - } -} - -MessageName DBusSchema::getMessageName(MessageId id) const { - Messages::const_iterator it = - std::find_if(msgs_.begin(), msgs_.end(), IsId(id)); - if (msgs_.end() != it) { - return (*it)->name; - } - return MessageName(); -} - -MessageId DBusSchema::getMessageId(const MessageName& name) const { - Messages::const_iterator it = - std::find_if(msgs_.begin(), msgs_.end(), IsName(name)); - if (msgs_.end() != it) { - return (*it)->id; - } - return hmi_apis::FunctionID::eType::INVALID_ENUM; -} - -ListArgs DBusSchema::getListArgs(MessageId id, MessageType type) const { - Messages::const_iterator it = - std::find_if(msgs_.begin(), msgs_.end(), IsIdType(id, type)); - if (msgs_.end() != it) { - return (*it)->args; - } - return ListArgs(); -} - -ListArgs DBusSchema::getListArgs(const MessageName& name, - MessageType type) const { - Messages::const_iterator it = - std::find_if(msgs_.begin(), msgs_.end(), IsNameType(name, type)); - if (msgs_.end() != it) { - return (*it)->args; - } - return ListArgs(); -} - -} // namespace dbus_schema diff --git a/src/components/dbus/test/CMakeLists.txt b/src/components/dbus/test/CMakeLists.txt deleted file mode 100644 index 914bd2ca84..0000000000 --- a/src/components/dbus/test/CMakeLists.txt +++ /dev/null @@ -1,53 +0,0 @@ -# Copyright (c) 2014, Ford Motor Company -# All rights reserved. -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions are met: -# -# Redistributions of source code must retain the above copyright notice, this -# list of conditions and the following disclaimer. -# -# Redistributions in binary form must reproduce the above copyright notice, -# this list of conditions and the following -# disclaimer in the documentation and/or other materials provided with the -# distribution. -# -# Neither the name of the Ford Motor Company nor the names of its contributors -# may be used to endorse or promote products derived from this software -# without specific prior written permission. -# -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -# POSSIBILITY OF SUCH DAMAGE. - -include(${CMAKE_SOURCE_DIR}/tools/cmake/helpers/sources.cmake) - -include_directories ( - ${GMOCK_INCLUDE_DIRECTORY} - ${COMPONENTS_DIR}/dbus/include/ - ${COMPONENTS_DIR}/dbus/test/include/ -) - -#FIXME: exclude some tests -set (EXCLUDE_PATHS - dbus_message_controller_test.cc -) - -collect_sources(SOURCES "${CMAKE_CURRENT_SOURCE_DIR}" ${EXCLUDE_PATHS}) - -set (LIBRARIES - gmock - DBus - formatters - SmartObjects -) - -create_test(test_DBus_test "${SOURCES}" "${LIBRARIES}") diff --git a/src/components/dbus/test/dbus_adapter_test.cc b/src/components/dbus/test/dbus_adapter_test.cc deleted file mode 100644 index 74a6de1aa9..0000000000 --- a/src/components/dbus/test/dbus_adapter_test.cc +++ /dev/null @@ -1,59 +0,0 @@ -/* - * \file test_dbus_adapter.cc - * \brief - * - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#include "dbus/dbus_adapter.h" - -using ::dbus::DBusAdapter; - -namespace test { -namespace components { -namespace dbus { - -class DBusAdapterTest : public ::testing::Test {}; - -TEST_F(DBusAdapterTest, Initialization) { - const std::string kSdlServiceName = "test.ford.sdl.core"; - const std::string kSdlObjectPath = "/"; - const std::string kHmiServiceName = "test.ford.sdl.hmi"; - const std::string kHmiObjectPath = "/"; - ::dbus::DBusAdapter adapter( - kSdlServiceName, kSdlObjectPath, kHmiServiceName, kHmiObjectPath); - EXPECT_TRUE(adapter.Init()); -} - -} // namespace dbus -} // namespace components -} // namespace test diff --git a/src/components/dbus/test/dbus_message_controller_test.cc b/src/components/dbus/test/dbus_message_controller_test.cc deleted file mode 100644 index c06e144f9b..0000000000 --- a/src/components/dbus/test/dbus_message_controller_test.cc +++ /dev/null @@ -1,116 +0,0 @@ -/* - * \file test_dbus_adapter.cc - * \brief - * - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#include -#include -#include "dbus/mock_dbus_message_controller.h" -#include "dbus/mock_subscriber.h" - -using ::testing::_; - -namespace test { -namespace components { -namespace dbus { - -ACTION_P(SignalTest, test) { - if (test->thread_id != pthread_self()) { - pthread_mutex_lock(&test->test_mutex); - pthread_cond_signal(&test->test_cond); - pthread_mutex_unlock(&test->test_mutex); - } else { - test->one_thread = true; - } -} - -class DBusMessageControllerTest : public ::testing::Test { - public: - volatile bool one_thread; - pthread_t thread_id; - static pthread_mutex_t test_mutex; - static pthread_cond_t test_cond; - - protected: - MockDBusMessageController* controller_; - MockSubscriber* subscriber_; - - static void SetUpTestCase() {} - - static void TearDownTestCase() {} - - virtual void SetUp() { - const std::string kService = "sdl.core.test_api"; - const std::string kPath = "/dbus_test"; - controller_ = new MockDBusMessageController(kService, kPath); - subscriber_ = new MockSubscriber(kService, kPath); - ASSERT_TRUE(controller_->Init()); - ASSERT_TRUE(subscriber_->Start()); - } - - void TearDown() OVERRIDE { - delete controller_; - delete subscriber_; - } - - bool waitCond(int seconds) { - if (one_thread) - return true; - timespec elapsed; - clock_gettime(CLOCK_REALTIME, &elapsed); - elapsed.tv_sec += seconds; - return pthread_cond_timedwait(&test_cond, &test_mutex, &elapsed) != - ETIMEDOUT; - } -}; - -pthread_mutex_t DBusMessageControllerTest::test_mutex; -pthread_cond_t DBusMessageControllerTest::test_cond; - -TEST_F(DBusMessageControllerTest, Receive) { - std::string text = "Test message for call method DBus"; - EXPECT_CALL(*controller_, Recv(text)).Times(1).WillOnce(SignalTest(this)); - subscriber_->Send(text); - EXPECT_TRUE(waitCond(1)); -} - -TEST_F(DBusMessageControllerTest, DISABLED_Send) { - const std::string kText = "Test message for signal DBus"; - // EXPECT_CALL(*subscriber_, Receive(kText)).Times(1); - controller_->Send(kText); -} - -} // namespace dbus -} // namespace components -} // namespace test diff --git a/src/components/dbus/test/include/dbus/mock_dbus_message_controller.h b/src/components/dbus/test/include/dbus/mock_dbus_message_controller.h deleted file mode 100644 index 30410a6c7e..0000000000 --- a/src/components/dbus/test/include/dbus/mock_dbus_message_controller.h +++ /dev/null @@ -1,75 +0,0 @@ -/* -* Copyright (c) 2014, Ford Motor Company -* All rights reserved. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* -* Redistributions of source code must retain the above copyright notice, this -* list of conditions and the following disclaimer. -* -* Redistributions in binary form must reproduce the above copyright notice, -* this list of conditions and the following -* disclaimer in the documentation and/or other materials provided with the -* distribution. -* -* Neither the name of the Ford Motor Company nor the names of its contributors -* may be used to endorse or promote products derived from this software -* without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -* POSSIBILITY OF SUCH DAMAGE. -*/ - -#ifndef SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_DBUS_MESSAGE_CONTROLLER_H_ -#define SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_DBUS_MESSAGE_CONTROLLER_H_ - -#include -#include "dbus/dbus_message_controller.h" - -namespace test { -namespace components { -namespace dbus_test { - -class MockDBusMessageController : public ::dbus::DBusMessageController { - public: - MOCK_METHOD1(Recv, void(std::string&)); - - MockDBusMessageController(const std::string& serviceName, - const std::string& path) - : DBusMessageController(serviceName, path), thread_() {} - - virtual void processResponse(std::string method, Json::Value& root) {} - virtual void processRequest(Json::Value& root) {} - virtual void processNotification(Json::Value& root) {} - - bool Init() { - return ::hmi_message_handler::DBusMessageController::Init() && - pthread_create(&thread_, 0, &Run, this) == 0; - } - - private: - pthread_t thread_; - static void* Run(void* data) { - if (NULL != data) { - static_cast(data) - ->MethodForReceiverThread(nullptr); - } - return 0; - } -}; - -} // namespace dbus_test -} // namespace components -} // namespace test - -#endif // SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_DBUS_MESSAGE_CONTROLLER_H_ diff --git a/src/components/dbus/test/include/dbus/mock_subscriber.h b/src/components/dbus/test/include/dbus/mock_subscriber.h deleted file mode 100644 index b2a369e371..0000000000 --- a/src/components/dbus/test/include/dbus/mock_subscriber.h +++ /dev/null @@ -1,62 +0,0 @@ -/* -* Copyright (c) 2014, Ford Motor Company -* All rights reserved. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* -* Redistributions of source code must retain the above copyright notice, this -* list of conditions and the following disclaimer. -* -* Redistributions in binary form must reproduce the above copyright notice, -* this list of conditions and the following -* disclaimer in the documentation and/or other materials provided with the -* distribution. -* -* Neither the name of the Ford Motor Company nor the names of its contributors -* may be used to endorse or promote products derived from this software -* without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -* POSSIBILITY OF SUCH DAMAGE. -*/ - -#ifndef SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_SUBSCRIBER_H_ -#define SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_SUBSCRIBER_H_ - -#include - -struct DBusConnection; - -namespace test { -namespace components { -namespace dbus { - -class MockSubscriber { - public: - MockSubscriber(const std::string nameService, const std::string path); - virtual ~MockSubscriber(); - virtual void Receive(); - bool Start(); - void Send(const std::string& message); - - private: - std::string nameService_; - std::string path_; - DBusConnection* conn_; -}; - -} // namespace dbus -} // namespace components -} // namespace test - -#endif // SRC_COMPONENTS_DBUS_TEST_INCLUDE_DBUS_MOCK_SUBSCRIBER_H_ diff --git a/src/components/dbus/test/mock_subscriber.cc b/src/components/dbus/test/mock_subscriber.cc deleted file mode 100644 index 2c5dccaa50..0000000000 --- a/src/components/dbus/test/mock_subscriber.cc +++ /dev/null @@ -1,71 +0,0 @@ -/** -* Copyright (c) 2014, Ford Motor Company -* All rights reserved. -* -* Redistribution and use in source and binary forms, with or without -* modification, are permitted provided that the following conditions are met: -* -* Redistributions of source code must retain the above copyright notice, this -* list of conditions and the following disclaimer. -* -* Redistributions in binary form must reproduce the above copyright notice, -* this list of conditions and the following -* disclaimer in the documentation and/or other materials provided with the -* distribution. -* -* Neither the name of the Ford Motor Company nor the names of its contributors -* may be used to endorse or promote products derived from this software -* without specific prior written permission. -* -* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -* POSSIBILITY OF SUCH DAMAGE. -*/ - -#include "dbus/dbus.h" -#include "dbus/mock_subscriber.h" - -namespace test { -namespace components { -namespace dbus { - -MockSubscriber::MockSubscriber(const std::string nameService, - const std::string path) - : nameService_(nameService), path_(path), conn_(NULL) {} - -MockSubscriber::~MockSubscriber() {} - -void MockSubscriber::Receive() {} - -bool MockSubscriber::Start() { - DBusError err; - dbus_error_init(&err); - conn_ = dbus_bus_get(DBUS_BUS_SESSION, &err); - if (dbus_error_is_set(&err)) { - dbus_error_free(&err); - return false; - } - - std::string rule = "type='signal',interface='" + nameService_ + "'"; - dbus_bus_add_match(conn_, rule.c_str(), &err); - dbus_connection_flush(conn_); - if (dbus_error_is_set(&err)) { - dbus_error_free(&err); - return false; - } - return true; -} - -void MockSubscriber::Send(const std::string& message) {} - -} // namespace dbus -} // namespace components -} // namespace test diff --git a/src/components/dbus/test/schema_test.cc b/src/components/dbus/test/schema_test.cc deleted file mode 100644 index 37831279b9..0000000000 --- a/src/components/dbus/test/schema_test.cc +++ /dev/null @@ -1,118 +0,0 @@ -/* - * \file test_schema.cc - * \brief - * - * Copyright (c) 2013, Ford Motor Company - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are met: - * - * Redistributions of source code must retain the above copyright notice, this - * list of conditions and the following disclaimer. - * - * Redistributions in binary form must reproduce the above copyright notice, - * this list of conditions and the following - * disclaimer in the documentation and/or other materials provided with the - * distribution. - * - * Neither the name of the Ford Motor Company nor the names of its contributors - * may be used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" - * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#include "dbus/schema.h" - -using dbus::DBusSchema; -using dbus::MessageId; -using dbus::MessageName; -using dbus::MessageType; -using dbus::ListArgs; -using ford_message_descriptions::ParameterDescription; - -namespace test { -namespace components { -namespace dbus { - -class DBusSchemaTest : public ::testing::Test { - protected: - static void SetUpTestCase() { - schema_ = new DBusSchema(ford_message_descriptions::message_descriptions); - } - - static void TearDownTestCase() { - delete schema_; - } - - static const DBusSchema* schema_; - static const int test_negative_value = -3; -}; - -const DBusSchema* DBusSchemaTest::schema_ = 0; - -TEST_F(DBusSchemaTest, GetName) { - const MessageId kId = hmi_apis::FunctionID::Buttons_GetCapabilities; - const MessageName kExpName("Buttons", "GetCapabilities"); - MessageName name = schema_->getMessageName(kId); - EXPECT_EQ(kExpName, name); - - const MessageId kIdWrong = static_cast(test_negative_value); - const MessageName kExpNameWrong("", ""); - name = schema_->getMessageName(kIdWrong); - EXPECT_EQ(kExpNameWrong, name); -} - -TEST_F(DBusSchemaTest, GetId) { - const MessageName kName("Buttons", "GetCapabilities"); - const MessageId kExpId = hmi_apis::FunctionID::Buttons_GetCapabilities; - MessageId id = schema_->getMessageId(kName); - EXPECT_EQ(kExpId, id); - - const MessageName kNameWrong("TestInterface", "TestMessage"); - const MessageId kExpIdWrong = hmi_apis::FunctionID::INVALID_ENUM; - id = schema_->getMessageId(kNameWrong); - EXPECT_EQ(kExpIdWrong, id); -} - -TEST_F(DBusSchemaTest, GetListArg) { - const MessageName kName("Buttons", "GetCapabilities"); - const MessageType kType = hmi_apis::messageType::response; - const MessageId kId = hmi_apis::FunctionID::Buttons_GetCapabilities; - ListArgs argsName = schema_->getListArgs(kName, kType); - const ParameterDescription** params = - ford_message_descriptions::message_descriptions[1]->parameters; - EXPECT_EQ(params[0], argsName[0]); - EXPECT_EQ(params[1], argsName[1]); - - ListArgs argsId = schema_->getListArgs(kId, kType); - EXPECT_EQ(params[0], argsId[0]); - EXPECT_EQ(params[1], argsId[1]); - - const MessageId kIdWrong = static_cast(test_negative_value); - const MessageName kNameWrong("TestInterface", "TestMessage"); - const MessageType kTypeWrong = - static_cast(test_negative_value); - const ListArgs kExpListWrong; - argsName = schema_->getListArgs(kNameWrong, kTypeWrong); - EXPECT_EQ(kExpListWrong, argsName); - - argsId = schema_->getListArgs(kIdWrong, kTypeWrong); - EXPECT_EQ(kExpListWrong, argsId); -} - -} // namespace dbus -} // namespace components -} // namespace test -- cgit v1.2.1