summaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
authorChristian Linke <christian.linke@bmw.de>2015-03-12 13:43:48 +0100
committerChristian Linke <christian.linke@bmw.de>2015-03-12 13:43:48 +0100
commit6ffbf25bacf589879198e49ac227cb56e261b7c9 (patch)
treee6b3ca48d22d06d43da638b1998ab1220ec7ab08 /cmake
parentc628fa5304171cd827f56aa475668d99d26ad28a (diff)
downloadaudiomanager-6ffbf25bacf589879198e49ac227cb56e261b7c9.tar.gz
* fully rework. Plugins have now a new own git repository
* building out of source of plugins without AM workss * build system cmake contructions is different now Signed-off-by: Christian Linke <christian.linke@bmw.de>
Diffstat (limited to 'cmake')
-rw-r--r--cmake/AudioManagerCodestyle.xml155
-rwxr-xr-xcmake/CommonAPIGenerator.cmake2
-rwxr-xr-xcmake/EA_Code_GEN_templates_AM_v6.xml112
-rw-r--r--cmake/FindNSM.cmake22
-rw-r--r--cmake/LifecycleConsumer.xml23
-rw-r--r--cmake/MacroInterfaceVersions.cmake24
-rw-r--r--cmake/MacroVersionFromGit.cmake23
-rwxr-xr-xcmake/add_package_dependencies.sh27
-rw-r--r--cmake/audiomanagerConfig.cmake.in44
-rwxr-xr-xcmake/cmake_uninstall.cmake.in43
-rw-r--r--cmake/config.cmake.in (renamed from cmake/config.cmake)0
-rw-r--r--cmake/genivi.audiomanager.service34
12 files changed, 104 insertions, 405 deletions
diff --git a/cmake/AudioManagerCodestyle.xml b/cmake/AudioManagerCodestyle.xml
deleted file mode 100644
index 0ecdb53..0000000
--- a/cmake/AudioManagerCodestyle.xml
+++ /dev/null
@@ -1,155 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<profiles version="1">
-<profile kind="CodeFormatterProfile" name="AudioManager" version="1">
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_in_empty_block" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.lineSplit" value="800"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_base_types" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_switchstatements_compare_to_switch" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_exception_specification" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_base_types" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_body_declarations_compare_to_access_specifier" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_exception_specification" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_template_arguments" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_declarator_list" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_bracket" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.tabulation.size" value="4"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_before_else_in_if_statement" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_enumerator_list" value="48"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_declarator_list" value="16"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_empty_lines" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_method_declaration" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_closing_angle_bracket_in_template_arguments" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_colon_in_base_clause" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_declarator_list" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_between_empty_brackets" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_bracket" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_block" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_type_declaration" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_angle_bracket_in_template_arguments" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_expression_list" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_angle_bracket_in_template_parameters" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.continuation_indentation" value="2"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_expression_list" value="0"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_template_parameters" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_binary_operator" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_conditional_expression" value="80"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_access_specifier_compare_to_type_header" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_body_declarations_compare_to_namespace_header" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_compact_if" value="0"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_template_parameters" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_expression_list" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_exception_specification" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_binary_operator" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_before_identifier_in_function_declaration" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_base_clause_in_type_declaration" value="80"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_between_empty_parens_in_exception_specification" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_declaration_compare_to_template_header" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_statements_compare_to_body" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indent_statements_compare_to_block" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_template_arguments" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_angle_bracket_in_template_parameters" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.tabulation.char" value="space"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_angle_bracket_in_template_parameters" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_block_in_case" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.compact_else_if" value="true"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_colon_in_base_clause" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_after_template_declaration" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_switch" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.indentation.size" value="4"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_namespace_declaration" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_angle_bracket_in_template_arguments" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.brace_position_for_array_initializer" value="next_line"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_brace_in_namespace_declaration" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_closing_bracket" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_closing_angle_bracket_in_template_parameters" value="insert"/>
-<setting id="org.eclipse.cdt.core.formatter.insert_space_after_opening_angle_bracket_in_template_arguments" value="do not insert"/>
-</profile>
-</profiles>
diff --git a/cmake/CommonAPIGenerator.cmake b/cmake/CommonAPIGenerator.cmake
index e828f09..332f9e6 100755
--- a/cmake/CommonAPIGenerator.cmake
+++ b/cmake/CommonAPIGenerator.cmake
@@ -119,7 +119,7 @@ IF(COMMON_API_FOUND AND COMMON_API_DBUS_FOUND)
# execute the generate command ...
execute_process(COMMAND ${COMMONAPI_GENERATOR_EXE}/commonapi_generator -dest ${PARAMS_DESTINATION} ${ARGS} ${FIDLS}
- WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
RESULT_VARIABLE EXIT_CODE
OUTPUT_VARIABLE GENERATOR_OUTPUT
ERROR_VARIABLE GENERATOR_OUTPUT
diff --git a/cmake/EA_Code_GEN_templates_AM_v6.xml b/cmake/EA_Code_GEN_templates_AM_v6.xml
deleted file mode 100755
index 51d6b25..0000000
--- a/cmake/EA_Code_GEN_templates_AM_v6.xml
+++ /dev/null
@@ -1,112 +0,0 @@
-<?xml version="1.0" encoding="windows-1252"?>
-<RefData version="1.0" exporter="EA.25">
- <DataSet name="C++_Code_Template" table="t_template" filter="TemplateType='#TemplateType#' and TemplateName='#TemplateName#' and Style='#Style#'" stoplist=";TemplateID;">
- <DataRow>
- <Column name="TemplateID" value="{D4AF302D-5FE1-4495-9514-0A42B22246BD}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="File Impl"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{9132549E-3DB8-4f57-A4CE-6E058F4BFEF6}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Class"/>
- <Column name="Template" value="%list=&quot;Attribute&quot; @separator=&quot;\n&quot; @indent=&quot;&quot; classScope==&quot;Public&quot; and classStereotype == &quot;typedef&quot; and attStereotype==&quot;define&quot;%&#xA;%ClassNotes%&#xA;%ClassDeclaration%&#xA;%if classStereotype == &quot;typedef&quot;%&#xA;%list=&quot;Attribute&quot; @separator=&quot;\n&quot; @indent=&quot;&quot; classScope==&quot;Public&quot; and attConst==&quot;T&quot; and attStatic==&quot;T&quot; and attInitial != &quot;&quot;%&#xA;%endTemplate%&#xA;%ClassBody%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{126136FA-3C08-43f1-A9CF-8FF9F79220AA}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Import Section"/>
- <Column name="Template" value="$COMMENT=&quot;WARNING: THIS IS AN ADVANCED TEMPLATE&quot;&#xA;$COMMENT=&quot;DO NOT MODIFY UNLESS YOU ARE AN&quot;&#xA;$COMMENT=&quot;ADVANCED USER!&quot;&#xA;%fileImports%&#xA;%if classTag:&quot;versionName&quot;!=&quot;&quot;%&#xA;#define %classTag:&quot;versionName&quot; ? value% %classTag:&quot;version&quot; ? value% "/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{16BF5D4D-A658-4823-ADBA-1BC01F5A94A0}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Class Body"/>
- <Column name="Template" value="%if classIsInstantiated==&quot;T&quot;%&#xA;%endTemplate%&#xA;&#xA;$pubFeatures = %list=&quot;InnerClass&quot; @separator=&quot;\n\n&quot; @indent=&quot;\t&quot; classScope==&quot;Public&quot; or classScope==&quot;Package&quot;% + &quot;\n\n&quot;&#xA;$protFeatures = %list=&quot;InnerClass&quot; @separator=&quot;\n\n&quot; @indent=&quot;\t&quot; classScope==&quot;Protected&quot;% + &quot;\n\n&quot;&#xA;$privFeatures = %list=&quot;InnerClass&quot; @separator=&quot;\n\n&quot; @indent=&quot;\t&quot; classScope==&quot;Private&quot;% + &quot;\n\n&quot;&#xA;$templateArgs=%list=&quot;ClassParameter&quot; @separator=&quot;, &quot;%&#xA;&#xA;&#xA;%if classStereotype != &quot;struct&quot; and classStereotype != &quot;union&quot;%&#xA;&#xA;%if genOptGenConstructor == &quot;T&quot; and classHasConstructor != &quot;T&quot;%&#xA;$cons = &quot;\n\t&quot; + %genOptGenConstructorInline == &quot;T&quot;?&quot;inline &quot;:&quot;&quot;%&#xA;$cons += %className%+&quot;()&quot;&#xA;%if genOptGenConstructorInline == &quot;T&quot; or elemType == &quot;Interface&quot; or $templateArgs!=&quot;&quot;%&#xA;$cons += &quot; {\n\n\t}\n&quot;&#xA;%else%&#xA;$cons += &quot;;&quot;&#xA;%endIf%&#xA;%if genOptDefaultConstructorScope == &quot;Public&quot; or genOptDefaultConstructorScope==&quot;Package&quot;%&#xA;$pubFeatures += $cons&#xA;%elseIf genOptDefaultConstructorScope == &quot;Protected&quot;%&#xA;$protFeatures += $cons&#xA;%else%&#xA;$privFeatures += $cons&#xA;%endIf%&#xA;%endIf%&#xA;&#xA;%if genOptGenDestructor == &quot;T&quot; and classHasDestructor != &quot;T&quot;%&#xA;$cons = &quot;\n\t&quot;&#xA;%if genOptGenDestructorVirtual==&quot;T&quot; or elemType == &quot;Interface&quot; or classStereotype == &quot;interface&quot;%&#xA;$cons += &quot;virtual &quot;&#xA;%endIf%&#xA;$cons += %genOptGenDestructorInline == &quot;T&quot;?&quot;inline &quot;:&quot;&quot;%&#xA;$cons += &quot;~&quot;+%className%+&quot;()&quot;&#xA;%if genOptGenDestructorInline == &quot;T&quot; or elemType == &quot;Interface&quot; or $templateArgs!=&quot;&quot;%&#xA;$cons += &quot; {\n\n\t}\n&quot;&#xA;%else%&#xA;$cons += &quot;;&quot;&#xA;%endIf%&#xA;%if genOptDefaultDestructorScope == &quot;Public&quot; or genOptDefaultDestructorScope==&quot;Package&quot;%&#xA;$pubFeatures += $cons&#xA;%elseIf genOptDefaultDestructorScope == &quot;Protected&quot;%&#xA;$protFeatures += $cons&#xA;%else%&#xA;$privFeatures += $cons&#xA;%endIf%&#xA;%endIf%&#xA;&#xA;&#xA;%if genOptGenCopyConstructor == &quot;T&quot; and classHasCopyConstructor != &quot;T&quot;%&#xA;$cons = &quot;\n\t&quot; + %genOptGenCopyConstructorInline == &quot;T&quot;?&quot;inline &quot;:&quot;&quot;%&#xA;$cons += %className%+&quot;(const &quot;+%className%+&quot;&amp; the&quot;+%className%+&quot;)&quot;&#xA;%if genOptGenCopyConstructorInline == &quot;T&quot; or elemType == &quot;Interface&quot; or $templateArgs!=&quot;&quot;%&#xA;$cons += &quot; {\n\n\t}\n&quot;&#xA;%else%&#xA;$cons += &quot;;&quot;&#xA;%endIf%&#xA;%if genOptDefaultCopyConstructorScope == &quot;Public&quot; or genOptDefaultCopyConstructorScope==&quot;Package&quot;%&#xA;$pubFeatures += $cons&#xA;%elseIf genOptDefaultCopyConstructorScope == &quot;Protected&quot;%&#xA;$protFeatures += $cons&#xA;%else%&#xA;$privFeatures += $cons&#xA;%endIf%&#xA;%endIf%&#xA;&#xA;%endIf%&#xA;&#xA;%PI=&quot;\n\n&quot;%&#xA;{&#xA;$pubFeatures = %TRIM($pubFeatures, &quot;\n&quot;)%&#xA;$pubFeatures += &quot;\n&quot; + %list=&quot;Attribute&quot; @separator=&quot;\n&quot; @indent=&quot;\t&quot; attScope==&quot;Public&quot; or linkAttAccess==&quot;Public&quot; or attScope==&quot;Package&quot; or linkAttAccess==&quot;Package&quot;%&#xA;$pubFeatures = %TRIM($pubFeatures, &quot;\n&quot;)%&#xA;$pubFeatures += &quot;\n&quot; + %list=&quot;Operation&quot; @separator=&quot;\n&quot; @indent=&quot;\t&quot; opScope==&quot;Public&quot; or opScope==&quot;Package&quot;%&#xA;$pubFeatures = %TRIM($pubFeatures, &quot;\n&quot;)%&#xA;%if $pubFeatures != &quot;&quot;%&#xA;public:\n$pubFeatures&#xA;%endIf%&#xA;&#xA;$protFeatures = %TRIM($protFeatures, &quot;\n&quot;)%&#xA;$protFeatures += &quot;\n&quot; + %list=&quot;Attribute&quot; @separator=&quot;\n&quot; @indent=&quot;\t&quot; attScope==&quot;Protected&quot; or linkAttAccess==&quot;Protected&quot;%&#xA;$protFeatures = %TRIM($protFeatures, &quot;\n&quot;)%&#xA;$protFeatures += &quot;\n&quot; + %list=&quot;Operation&quot; @separator=&quot;\n&quot; @indent=&quot;\t&quot; opScope==&quot;Protected&quot;%&#xA;$protFeatures = %TRIM($protFeatures, &quot;\n&quot;)%&#xA;%if $protFeatures != &quot;&quot;%&#xA;protected:\n$protFeatures&#xA;%endIf%&#xA;&#xA;$privFeatures = %TRIM($privFeatures, &quot;\n&quot;)%&#xA;$privFeatures += &quot;\n&quot; + %list=&quot;Attribute&quot; @separator=&quot;\n&quot; @indent=&quot;\t&quot; attScope==&quot;Private&quot; or linkAttAccess==&quot;Private&quot;%&#xA;$privFeatures = %TRIM($privFeatures, &quot;\n&quot;)%&#xA;$privFeatures += &quot;\n&quot; + %list=&quot;Operation&quot; @separator=&quot;\n&quot; @indent=&quot;\t&quot; opScope==&quot;Private&quot;%&#xA;$privFeatures = %TRIM($privFeatures, &quot;\n&quot;)%&#xA;%if $privFeatures != &quot;&quot;%&#xA;private:\n$privFeatures&#xA;%endIf%&#xA;%PI=&quot;&quot;%&#xA;}&#xA;%if classTag:&quot;anonymous&quot; == &quot;true&quot;%&#xA; %className%&#xA;%classTag:&quot;typeSynonyms&quot;? &quot;,&quot;%&#xA;%endIf%&#xA;%classTag:&quot;typeSynonyms&quot;==&quot;&quot; ? &quot;&quot; : &quot; &quot; value%&#xA;;"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{33CF5224-DA22-4c3e-B3EE-22C196E5A3BA}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Attribute Notes"/>
- <Column name="Template" value="%if genOptGenComments != &quot;T&quot;%&#xA;%endTemplate%&#xA;&#xA;%PI=&quot;&quot;%&#xA;$wrapLen = %genOptWrapComment%&#xA;$style = %genOptCPPCommentStyle%&#xA;&#xA;%if $style == &quot;XML.NET&quot;%&#xA;%XML_COMMENT($wrapLen)%&#xA;%elseIf $style == &quot;JavaDoc&quot;%&#xA;%JAVADOC_COMMENT($wrapLen)%&#xA;%elseIf classStereotype == &quot;typedef&quot;%&#xA;%if attNotes != &quot;&quot;%&#xA;$line = &quot;/** &quot; + %attNotes% + &quot; */&quot;&#xA;%WRAP_LINES($line, $wrapLen, &quot;&quot;)%&#xA;%endIf%&#xA;%else%&#xA;%CSTYLE_COMMENT($wrapLen)%&#xA;%endIf%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{508D1A79-7C13-4ea3-AA6C-592F51E6FBE2}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Attribute"/>
- <Column name="Template" value="%if classStereotype == &quot;typedef&quot; and attStereotype == &quot;define&quot;%&#xA;$wrapLen = %genOptWrapComment%&#xA;$line = %AttributeDeclaration%&#xA;%if attNotes != &quot;&quot;%&#xA;$line += &quot;\t// &quot; + %attNotes%&#xA;%endIf%&#xA;%WRAP_LINES($line, $wrapLen, &quot;&quot;)%&#xA;%else%&#xA;%AttributeNotes%&#xA;%AttributeDeclaration%&#xA;%endTemplate%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{A715E4AD-F3B8-416b-9A9A-14187198C2CC}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Operation"/>
- <Column name="Template" value="%OperationNotes%&#xA;%PI=&quot;&quot;%&#xA;%OperationDeclaration%&#xA;%if opPure==&quot;T&quot;%&#xA;%endTemplate%&#xA;&#xA;$classParams = %list=&quot;ClassParameter&quot; @separator=&quot;, &quot;%&#xA;$bodyLoc = %opTag:&quot;bodyLocation&quot;%&#xA;%if opTag:&quot;inline&quot; == &quot;true&quot; or $bodyLoc == &quot;header&quot; or $bodyLoc == &quot;classDec&quot; or $classParams!=&quot;&quot;%&#xA;%OperationBody%&#xA;%endIf%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{3DBBFDE6-71E8-4ac9-B42C-9231E97C614C}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Operation Notes"/>
- <Column name="Template" value="%if genOptGenComments != &quot;T&quot; or genOptCPPGenMethodNotesInHeader != &quot;T&quot;%&#xA;%endTemplate%&#xA;&#xA;%PI=&quot;&quot;%&#xA;$wrapLen = %genOptWrapComment%&#xA;$style = %genOptCPPCommentStyle%&#xA;&#xA;%if $style == &quot;XML.NET&quot;%&#xA;%XML_COMMENT($wrapLen)%&#xA;%elseIf $style == &quot;JavaDoc&quot;%&#xA;%JAVADOC_COMMENT($wrapLen)%&#xA;%else%&#xA;%CSTYLE_COMMENT($wrapLen)%&#xA;%endIf%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{A94EB6AE-865B-43a3-9658-300711A61B88}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="File"/>
- <Column name="Template" value="%synchNewClassNotesSpace=&quot;\n&quot;%&#xA;%synchNewOperationNotesSpace=&quot;\n&quot;%&#xA;%synchNewOperationBodySpace=&quot;\n&quot;%&#xA;%synchNewAttributeNotesSpace=&quot;\n&quot;%&#xA;&#xA;/**&#xA; * Copyright (C) 2012 - 2014, BMW AG&#xA; *&#xA; * This file is part of GENIVI Project AudioManager.&#xA; *&#xA; * Contributions are licensed to the GENIVI Alliance under one or more&#xA; * Contribution License Agreements.&#xA; *&#xA; * \copyright&#xA; * This Source Code Form is subject to the terms of the&#xA; * Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with&#xA; * this file, You can obtain one at http://mozilla.org/MPL/2.0/.&#xA; *&#xA; *&#xA; * \author Christian Linke, christian.linke@bmw.de BMW 2011 - 2014&#xA; *&#xA; * \file&#xA; * For further information see http://projects.genivi.org/audio-manager&#xA; *&#xA; * THIS CODE HAS BEEN GENERATED BY ENTERPRISE ARCHITECT GENIVI MODEL. &#xA; * PLEASE CHANGE ONLY IN ENTERPRISE ARCHITECT AND GENERATE AGAIN.&#xA; */&#xA;&#xA;$COMMENT=&quot;WARNING: DO NOT MODIFY THIS TEMPLATE BELOW THIS POINT&quot;&#xA;$guid = &quot;EA_&quot; + %TRIM(eaGUID,&quot;{}&quot;)%&#xA;$guid = %REPLACE($guid,&quot;-&quot;,&quot;_&quot;)%&#xA;$guid += &quot;__INCLUDED_&quot;&#xA;#if !defined($guid)&#xA;#define $guid\n&#xA;%ImportSection%&#xA;namespace am {\n&#xA;%list=&quot;Namespace&quot; @separator=&quot;\n\n&quot; @indent=&quot;&quot;%&#xA;}&#xA;#endif // !defined($guid)\n"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{0BA5ABF5-6E2B-4884-831A-79061BA7F559}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Parameter"/>
- <Column name="Template" value="%PI=&quot; &quot;%&#xA;%paramFixed==&quot;T&quot; ? &quot;const&quot; : &quot;&quot;%&#xA;%paramIsEnum==&quot;T&quot; ? &quot;enum&quot; : &quot;&quot; %&#xA;%if paramKind ==&quot;out&quot; or paramKind==&quot;inout&quot; or paramTag:&quot;byRef&quot;==&quot;true&quot;%&#xA;%PI=&quot;&quot;%&#xA;%endIf%&#xA;%RESOLVE_QUALIFIED_TYPE(&quot;::&quot;, &quot;int&quot;)%&#xA;%if paramKind ==&quot;out&quot;%&#xA;%PI=&quot; &quot;%&#xA;&amp;&#xA;%endIf%&#xA;%PI=&quot;&quot;%&#xA;%if paramKind ==&quot;inout&quot;%&#xA;%PI=&quot; &quot;%&#xA;*&#xA;%endIf%&#xA;%if paramKind ==&quot;in&quot; and paramTag:&quot;byRef&quot;==&quot;true&quot;%&#xA;%PI=&quot; &quot;%&#xA;&amp;&#xA;%endIf%&#xA;%if paramType != &quot;void&quot;%&#xA;%paramName%&#xA;%endIf%&#xA;%PI=&quot;&quot;%&#xA;%if paramDefault != &quot;&quot; and paramDefault != &quot;&lt;none&gt;&quot;%&#xA; = %paramDefault%&#xA;%endIf%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{A8583536-013F-4e3d-8EFF-38D2B36A8C66}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Operation Declaration Impl"/>
- <Column name="Template" value="$templateArgs=%list=&quot;ClassParameter&quot; @separator=&quot;, &quot;%&#xA;%if $templateArgs != &quot;&quot;%&#xA;$templateArgs=&quot;&lt;&quot; + $templateArgs + &quot;&gt;&quot;&#xA;template$templateArgs&#xA;%endIf%&#xA;%PI=&quot; &quot;%&#xA;%opConst==&quot;T&quot; ? &quot;const&quot; : &quot;&quot;%&#xA;%RESOLVE_QUALIFIED_TYPE(&quot;::&quot;)%&#xA;%opTag:&quot;callback&quot;==&quot;true&quot; ? &quot;CALLBACK&quot; : &quot;&quot;%&#xA;%opImplMacros%&#xA;%PI=&quot;&quot;%&#xA;%classQualName%::&#xA;%opName%(%list=&quot;ParameterImpl&quot; @separator=&quot;, &quot;%)&#xA;%if opIsQuery==&quot;T&quot; or opStereotype==&quot;const&quot;%&#xA; const &#xA;%endIf%&#xA;%opTag:&quot;throws&quot;==&quot;&quot; ? &quot;&quot; : &quot; throw &quot; value%&#xA;%opTag:&quot;initializer&quot; == &quot;&quot;? &quot;&quot; : &quot;\n : &quot; value%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{39F77F91-1C8B-48b0-9B39-1A30CCD4DEC4}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Namespace Declaration"/>
- <Column name="Template" value="%if packagePath == &quot;&quot; or genOptCPPGenNamespace != &quot;T&quot;%&#xA;%endTemplate%&#xA;&#xA;namespace %packageName%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{56DD0500-1B96-4f75-8440-6DA68E5E8340}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Attribute Declaration"/>
- <Column name="Template" value="%if classStereotype == &quot;enumeration&quot;%&#xA;%PI=&quot; = &quot;%&#xA;%attName%&#xA;%attInitial ? value%&#xA;%endTemplate%&#xA;&#xA;%if classStereotype == &quot;typedef&quot; and attStereotype == &quot;define&quot;%&#xA;%PI=&quot; &quot;%&#xA;#define %attName%&#xA;%attInitial ? value%&#xA;%endTemplate%&#xA;&#xA;%PI=&quot; &quot;%&#xA;%attStatic==&quot;T&quot; ? &quot;static&quot; : &quot;&quot;%&#xA;%attConst==&quot;T&quot; ? &quot;const&quot; : &quot;&quot;%&#xA;%attVolatile==&quot;T&quot; ? &quot;volatile&quot; : &quot;&quot;%&#xA;%attTag:&quot;mutable&quot;==&quot;true&quot; ? &quot;mutable&quot; : &quot;&quot;%&#xA;%attStereotype==&quot;struct&quot; ? &quot;struct&quot; : &quot;&quot;%&#xA;$ptr = %attContainment==&quot;By Reference&quot; ? &quot;*&quot; : &quot;&quot;%&#xA;%RESOLVE_QUALIFIED_TYPE(&quot;::&quot;, &quot;int&quot;)%$ptr&#xA;%PI=&quot;&quot;%&#xA;%attName%&#xA;%if attCollection == &quot;T&quot; and attContainerType != &quot;&quot;%&#xA;%attContainerType%&#xA;%endIf%&#xA;%attTag:&quot;bitfield&quot; ? &quot;:&quot; value%&#xA;%if attStatic==&quot;T&quot; and attConst==&quot;T&quot; and attInitial != &quot;&quot;%&#xA; = %attInitial%&#xA;%endIf%&#xA;;"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{B9BF98C9-C0B9-4f1e-986D-710ED8425EF9}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Namespace Body"/>
- <Column name="Template" value="%if packagePath == &quot;&quot; or genOptCPPGenNamespace != &quot;T&quot;%&#xA;%PI=&quot;\n\n&quot;%&#xA;%list=&quot;Namespace&quot; @separator=&quot;\n\n&quot; @indent=&quot;&quot;%&#xA;%list=&quot;Class&quot; @separator=&quot;\n\n&quot; @indent=&quot;&quot;%&#xA;%endTemplate%&#xA;{&#xA;%PI=&quot;\n\n&quot;%&#xA;%list=&quot;Namespace&quot; @separator=&quot;\n\n&quot; @indent=&quot;&quot;%&#xA;%list=&quot;Class&quot; @separator=&quot;\n\n&quot; @indent=&quot;&quot;%&#xA;}"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{7E7AACEC-3B6A-42fa-B9BD-E2DC251949C2}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Namespace Body Impl"/>
- <Column name="Template" value="$COMMENT=&quot;WARNING: THIS IS AN ADVANCED TEMPLATE&quot;&#xA;$COMMENT=&quot;DO NOT MODIFY UNLESS YOU ARE AN&quot;&#xA;$COMMENT=&quot;ADVANCED USER!&quot;&#xA;%list=&quot;NamespaceImpl&quot; @separator=&quot;\n\n\n&quot;%&#xA;%list=&quot;ClassImpl&quot; @separator=&quot;\n\n\n&quot;%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{72D98AD2-8DC9-407f-BB74-E8DBFFD76791}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Namespace Impl"/>
- <Column name="Template" value="$COMMENT=&quot;WARNING: THIS IS AN ADVANCED TEMPLATE&quot;&#xA;$COMMENT=&quot;DO NOT MODIFY UNLESS YOU ARE AN&quot;&#xA;$COMMENT=&quot;ADVANCED USER!&quot;&#xA;"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{FB2A096A-5AEC-40c6-B787-A40D4294AE82}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Operation Declaration"/>
- <Column name="Template" value="%PI=&quot; &quot;%&#xA;%opTag:&quot;afx_msg&quot;==&quot;true&quot; ? &quot;afx_msg&quot; : &quot;&quot;%&#xA;%opTag:&quot;inline&quot;==&quot;true&quot; ? &quot;inline&quot; : &quot;&quot;%&#xA;%opTag:&quot;explicit&quot;==&quot;true&quot; ? &quot;explicit&quot; : &quot;&quot;%&#xA;%opStereotype==&quot;friend&quot; ? &quot;friend&quot; : &quot;&quot;%&#xA;%opAbstract==&quot;T&quot; ? &quot;virtual&quot; : &quot;&quot;%&#xA;%opStatic==&quot;T&quot; ? &quot;static&quot; : &quot;&quot;%&#xA;%opConst==&quot;T&quot; ? &quot;const&quot; : &quot;&quot;%&#xA;%RESOLVE_QUALIFIED_TYPE(&quot;::&quot;)%&#xA;%opTag:&quot;callback&quot;==&quot;true&quot; ? &quot;CALLBACK&quot; : &quot;&quot;%&#xA;%opMacros%&#xA;%PI=&quot;&quot;%&#xA;%opName%(%list=&quot;Parameter&quot; @separator=&quot;, &quot;%)&#xA;%if opIsQuery==&quot;T&quot; or opStereotype==&quot;const&quot;%&#xA; const&#xA;%endIf%&#xA;%opTag:&quot;volatile&quot;==&quot;true&quot; ? &quot; volatile&quot; : &quot;&quot;%&#xA;%opTag:&quot;throws&quot;==&quot;&quot; ? &quot;&quot; : &quot; throw &quot; value%&#xA;%if opTag:&quot;ObjectConst&quot;==&quot;true&quot;%&#xA; const&#xA;%endIf%&#xA;%if opPure==&quot;T&quot;%&#xA; =0;&#xA;%endTemplate%&#xA;&#xA;$classParams = %list=&quot;ClassParameter&quot; @separator=&quot;, &quot;%&#xA;%if opTag:&quot;inline&quot; != &quot;true&quot; and opTag:&quot;bodyLocation&quot; != &quot;classDec&quot; and $classParams==&quot;&quot;%&#xA;;&#xA;%elseIf opTag:&quot;initializer&quot; != &quot;&quot;%&#xA;\n : %opTag:&quot;initializer&quot;%\n&#xA;%endIf%"/>
- </DataRow>
- <DataRow>
- <Column name="TemplateID" value="{C56F7CAF-41B4-4c5e-ACA1-A9B0951F338F}"/>
- <Column name="TemplateType" value="C++_Code_Template"/>
- <Column name="TemplateName" value="Class Impl"/>
- <Column name="Template" value="$COMMENT=&quot;WARNING: THIS IS AN ADVANCED TEMPLATE&quot;&#xA;$COMMENT=&quot;DO NOT MODIFY UNLESS YOU ARE AN&quot;&#xA;$COMMENT=&quot;ADVANCED USER!&quot;&#xA;%fileImports%&#xA;%if classTag:&quot;versionName&quot;!=&quot;&quot;%&#xA;#define %classTag:&quot;versionName&quot; ? value% %classTag:&quot;version&quot; ? &quot;value%&quot;"/>
- </DataRow>
- </DataSet>
-</RefData>
diff --git a/cmake/FindNSM.cmake b/cmake/FindNSM.cmake
index df7b11e..1b34c45 100644
--- a/cmake/FindNSM.cmake
+++ b/cmake/FindNSM.cmake
@@ -16,17 +16,19 @@
#
FIND_PATH (NSM_INCLUDE_DIR NodeStateManager.h
- DOC "The nodestatemanager include directory"
-)
+ PATHS
+ ${CMAKE_INSTALL_PATH}
+ "/usr/include"
+ "/usr/local/include"
+ DOC "The nodestatemanager include directory")
-IF(NSM_INCLUDE_DIR)
+if(NSM_INCLUDE_DIR)
+ set (NSM_FOUND "YES")
message(STATUS "Found NSM include: ${NSM_INCLUDE_DIR}")
-ELSE(NSM_INCLUDE_DIR)
- SET(NSM_FOUND "YES")
- SET (NSM_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/nodeStateManagerIncludes")
+else(NSM_INCLUDE_DIR)
+ set (NSM_FOUND "YES")
+ set (NSM_INCLUDE_DIR "${CMAKE_SOURCE_DIR}/nodeStateManagerIncludes")
message(STATUS "Did not find NSM include, using own include dir: ${NSM_INCLUDE_DIR}")
-ENDIF(NSM_INCLUDE_DIR)
+endif(NSM_INCLUDE_DIR)
-MARK_AS_ADVANCED(
- NSM_INCLUDE_DIR
-) \ No newline at end of file
+ mark_as_advanced(NSM_INCLUDE_DIR) \ No newline at end of file
diff --git a/cmake/LifecycleConsumer.xml b/cmake/LifecycleConsumer.xml
deleted file mode 100644
index ec1162b..0000000
--- a/cmake/LifecycleConsumer.xml
+++ /dev/null
@@ -1,23 +0,0 @@
-<node>
- <!--
- org.genivi.NodeStateManager.LifeCycleConsumer:
- @short_description: Interface of a life cycle client.
-
- This interface contains functions, which need to be implemented by life cycle clients, to be able to receive life cycle requests.
- -->
- <interface name="org.genivi.NodeStateManager.LifeCycleConsumer">
- <!--
- LifecycleRequest:
- @Request: The type of the life cycle request. Can be NSM_SHUTDOWNTYPE_RUNUP, NSM_SHUTDOWNTYPE_NORMAL or NSM_SHUTDOWNTYPE_FAST.
- @RequestId: The Id of the client (current request). This Id needs to be passed to the NSM again via the interface "LifecycleRequestComplete", when the client has processed the "LifecycleRequest".
- @ErrorCode: Client's return value, passed to the NodeStateManager. Based upon NsmErrorStatus_e. NsmErrorStatus_Ok: Request was successfully processed. NsmErrorStatus_ResponsePending: Processing of request started. LifecycleRequestComplete will be called to pass the status after completion. NsmErrorStatus_Error: An error occured, the request could not be processed.
-
- The method has to be implemented by every life cycle client and is called by the NodeStateManager, when the node is shutting down (fast or normal) or an ongoing shutdown is cancelled (run up).
- -->
- <method name="LifecycleRequest">
- <arg name="Request" direction="in" type="u"/>
- <arg name="RequestId" direction="in" type="u"/>
- <arg name="ErrorCode" direction="out" type="i"/>
- </method>
- </interface>
-</node>
diff --git a/cmake/MacroInterfaceVersions.cmake b/cmake/MacroInterfaceVersions.cmake
new file mode 100644
index 0000000..eb64c75
--- /dev/null
+++ b/cmake/MacroInterfaceVersions.cmake
@@ -0,0 +1,24 @@
+
+ macro(GET_COMMAND_INTERFACE_VERSION INCLUDE_FOLDER)
+
+ FILE(READ "${INCLUDE_FOLDER}/command/IAmCommandSend.h" VERSION_BUFFER LIMIT 6000)
+ STRING(REGEX MATCH "CommandSendVersion*.[^0-9]*[0-9].[0-9]*[0-9]" LIB_COMMAND_INTERFACE_VERSION ${VERSION_BUFFER})
+ STRING(REGEX REPLACE "CommandSendVersion*.." "" LIB_COMMAND_INTERFACE_VERSION ${LIB_COMMAND_INTERFACE_VERSION})
+
+ endmacro(GET_COMMAND_INTERFACE_VERSION INCLUDE_FOLDER)
+
+ macro(GET_ROUTING_INTERFACE_VERSION INCLUDE_FOLDER)
+
+ FILE(READ "${INCLUDE_FOLDER}/routing/IAmRoutingSend.h" VERSION_BUFFER LIMIT 6000)
+ STRING(REGEX MATCH "RoutingSendVersion*.[^0-9]*[0-9].[0-9]*[0-9]" LIB_ROUTING_INTERFACE_VERSION ${VERSION_BUFFER})
+ STRING(REGEX REPLACE "RoutingSendVersion*.." "" LIB_ROUTING_INTERFACE_VERSION ${LIB_ROUTING_INTERFACE_VERSION})
+
+ endmacro(GET_ROUTING_INTERFACE_VERSION INCLUDE_FOLDER)
+
+ macro(GET_CONTROL_INTERFACE_VERSION INCLUDE_FOLDER)
+
+ FILE(READ "${INCLUDE_FOLDER}/control/IAmControlSend.h" VERSION_BUFFER LIMIT 6000)
+ STRING(REGEX MATCH "ControlSendVersion*.[^0-9]*[0-9].[0-9]*[0-9]" LIB_CONTROL_INTERFACE_VERSION ${VERSION_BUFFER})
+ STRING(REGEX REPLACE "ControlSendVersion*.." "" LIB_CONTROL_INTERFACE_VERSION ${LIB_CONTROL_INTERFACE_VERSION})
+
+ endmacro(GET_CONTROL_INTERFACE_VERSION INCLUDE_FOLDER) \ No newline at end of file
diff --git a/cmake/MacroVersionFromGit.cmake b/cmake/MacroVersionFromGit.cmake
new file mode 100644
index 0000000..1687443
--- /dev/null
+++ b/cmake/MacroVersionFromGit.cmake
@@ -0,0 +1,23 @@
+# get the current git version
+execute_process(COMMAND git describe --tags WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_VARIABLE DAEMONVERSION
+ OUTPUT_STRIP_TRAILING_WHITESPACE)
+
+if (NOT DAEMONVERSION)
+ #Can be changed via passing -DVERSION="XXX" to cmake
+ if(NOT DEFINED VERSION)
+ set( DAEMONVERSION "homebrew-${CMAKE_SOURCE_DIR}" )
+ else (NOT DEFINED VERSION)
+ set( DAEMONVERSION "${VERSION}" )
+ endif(NOT DEFINED VERSION)
+else (NOT DAEMONVERSION)
+ STRING(REGEX REPLACE "(-)[^-]+$" "" DAEMONVERSION ${DAEMONVERSION})
+ STRING(REGEX REPLACE "-" "." DAEMONVERSION ${DAEMONVERSION})
+endif(NOT DAEMONVERSION)
+
+message(STATUS "Build Version ${DAEMONVERSION}")
+
+
+execute_process(COMMAND git log --pretty=short WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ OUTPUT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/CHANGELOG)
+
diff --git a/cmake/add_package_dependencies.sh b/cmake/add_package_dependencies.sh
deleted file mode 100755
index 773528c..0000000
--- a/cmake/add_package_dependencies.sh
+++ /dev/null
@@ -1,27 +0,0 @@
-# Copyright (C) 2012, BMW AG
-#
-# This file is part of GENIVI Project AudioManager.
-#
-# Contributions are licensed to the GENIVI Alliance under one or more
-# Contribution License Agreements.
-#
-# copyright
-# This Source Code Form is subject to the terms of the
-# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
-# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# author Christian Mueller, christian.ei.mueller@bmw.de BMW 2011,2012
-#
-# For further information see http://www.genivi.org/.
-#
-
-PACKAGE_NAME=$1
-PACKAGE_NAME_PATH=$2/$PACKAGE_NAME
-TMPDIR=`mktemp -d /tmp/gen.XXXXXXXXXX` || exit 1
-dpkg-deb -x "$PACKAGE_NAME_PATH" "$TMPDIR"
-dpkg-deb --control "$PACKAGE_NAME_PATH" "$TMPDIR"/DEBIAN
-cat "$TMPDIR"/DEBIAN/control | sed -e "s/Depends.*$/Depends: $3/" > "$TMPDIR"/DEBIAN/control_
-cp "$TMPDIR"/DEBIAN/control_ "$TMPDIR"/DEBIAN/control
-dpkg -b "$TMPDIR" "$PACKAGE_NAME_PATH"
-rm -r "$TMPDIR"
-
diff --git a/cmake/audiomanagerConfig.cmake.in b/cmake/audiomanagerConfig.cmake.in
new file mode 100644
index 0000000..d27ec98
--- /dev/null
+++ b/cmake/audiomanagerConfig.cmake.in
@@ -0,0 +1,44 @@
+set(AudioManagerVersion @DAEMONVERSION@ )
+
+@PACKAGE_INIT@
+
+
+set_and_check(CMAKE_MODULE_PATH "@CMAKE_MODULE_PATH@")
+set(NSM_INCLUDE_DIR "@NSM_INCLUDE_DIR@")
+set(TEST_EXECUTABLE_OUTPUT_PATH "@TEST_EXECUTABLE_OUTPUT_PATH@")
+set(TEST_EXECUTABLE_INSTALL_PATH "@TEST_EXECUTABLE_INSTALL_PATH@")
+set(AM_SHARE_FOLDER "@AM_SHARE_FOLDER@")
+set(WITH_TESTS "@WITH_TESTS@")
+set(AUDIOMANAGER_DAEMON_FOLDER "@AUDIOMANAGER_DAEMON_FOLDER@")
+set(WITH_DOCUMENTATION "@WITH_DOCUMENTATION@")
+set(WITH_DLT "@WITH_DLT@")
+set(WITH_ENABLED_IPC "@WITH_ENABLED_IPC@")
+set(DBUS_SERVICE_PREFIX "@DBUS_SERVICE_PREFIX@")
+set(DBUS_SERVICE_OBJECT_PATH "@DBUS_SERVICE_OBJECT_PATH@")
+set(DYNAMIC_ID_BOUNDARY "@DYNAMIC_ID_BOUNDARY@")
+set(DEFAULT_PLUGIN_COMMAND_DIR "@DEFAULT_PLUGIN_COMMAND_DIR@")
+set(DEFAULT_PLUGIN_ROUTING_DIR "@DEFAULT_PLUGIN_ROUTING_DIR@")
+set(CONTROLLER_PLUGIN "@CONTROLLER_PLUGIN@")
+set(LIB_INSTALL_SUFFIX "@LIB_INSTALL_SUFFIX@")
+set(COMMONAPI_DBUS_CONFIGURATIONS "@COMMONAPI_DBUS_CONFIGURATIONS")
+set(LIB_CONTROL_INTERFACE_VERSION "@LIB_CONTROL_INTERFACE_VERSION")
+set(LIB_ROUTING_INTERFACE_VERSION "@LIB_ROUTING_INTERFACE_VERSION")
+set(LIB_COMMAND_INTERFACE_VERSION "@LIB_COMMAND_INTERFACE_VERSION")
+set(CMAKE_CXX_FLAGS "@CMAKE_CXX_FLAGS@")
+set(CMAKE_CXX_FLAGS_DEBUG "@CMAKE_CXX_FLAGS_DEBUG@")
+set(CMAKE_CXX_FLAGS_RELEASE "@CMAKE_CXX_FLAGS_RELEASE@")
+set(AUDIOMANAGER_UTILITIES_SRC "@AUDIOMANAGER_UTILITIES_SRC@")
+set(WITH_COMMON_API_GEN "@WITH_COMMON_API_GEN@")
+set(WRITE_COMMONAPI_DBUS_CONFIG_FILE "@WRITE_COMMONAPI_DBUS_CONFIG_FILE@")
+
+
+IF(WITH_TESTS)
+ set_and_check(GOOGLE_MOCK_PROJECT_FOLDER "@GOOGLE_MOCK_PROJECT_FOLDER@")
+ set_and_check(GMOCK_INCLUDE_DIR "@GMOCK_INCLUDE_DIR@")
+ set_and_check(GOOGLE_TEST_INCLUDE_DIR "@GOOGLE_TEST_INCLUDE_DIR@")
+ENDIF(WITH_TESTS)
+
+check_required_components(AudioManagerDaemon)
+
+
+
diff --git a/cmake/cmake_uninstall.cmake.in b/cmake/cmake_uninstall.cmake.in
deleted file mode 100755
index 648ad51..0000000
--- a/cmake/cmake_uninstall.cmake.in
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright (C) 2012, GENIVI Alliance, Inc.
-# Copyright (C) 2012, BMW AG
-#
-# This file is part of GENIVI Project AudioManager.
-#
-# Contributions are licensed to the GENIVI Alliance under one or more
-# Contribution License Agreements.
-#
-# copyright
-# This Source Code Form is subject to the terms of the
-# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
-# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# author Christian Mueller, christian.ei.mueller@bmw.de BMW 2011,2012
-#
-# For further information see http://www.genivi.org/.
-#
-
-IF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
- MESSAGE(FATAL_ERROR "Cannot find install manifest: \"@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt\"")
-ENDIF(NOT EXISTS "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt")
-
-FILE(READ "@CMAKE_CURRENT_BINARY_DIR@/install_manifest.txt" files)
-STRING(REGEX REPLACE "\n" ";" files "${files}")
-FOREACH(file ${files})
- MESSAGE(STATUS "Uninstalling \"$ENV{DESTDIR}${file}\"")
- IF(EXISTS "$ENV{DESTDIR}${file}")
- EXEC_PROGRAM(
- "@CMAKE_COMMAND@" ARGS "-E remove \"$ENV{DESTDIR}${file}\""
- OUTPUT_VARIABLE rm_out
- RETURN_VALUE rm_retval
- )
- IF(NOT "${rm_retval}" STREQUAL 0)
- MESSAGE(FATAL_ERROR "Problem when removing \"$ENV{DESTDIR}${file}\"")
- ENDIF(NOT "${rm_retval}" STREQUAL 0)
- ELSE(EXISTS "$ENV{DESTDIR}${file}")
- MESSAGE(STATUS "File \"$ENV{DESTDIR}${file}\" does not exist.")
- ENDIF(EXISTS "$ENV{DESTDIR}${file}")
-ENDFOREACH(file)
-
-#remove the libraries in lib
-MESSAGE(STATUS "Removing libs")
-execute_process(COMMAND rm -R "@CMAKE_INSTALL_PREFIX@/lib/@LIB_INSTALL_SUFFIX@")
diff --git a/cmake/config.cmake b/cmake/config.cmake.in
index fcfdc7f..fcfdc7f 100644
--- a/cmake/config.cmake
+++ b/cmake/config.cmake.in
diff --git a/cmake/genivi.audiomanager.service b/cmake/genivi.audiomanager.service
deleted file mode 100644
index a543fe7..0000000
--- a/cmake/genivi.audiomanager.service
+++ /dev/null
@@ -1,34 +0,0 @@
-# Copyright (C) 2012, BMW AG
-#
-# This file is part of GENIVI Project AudioManager.
-#
-# Contributions are licensed to the GENIVI Alliance under one or more
-# Contribution License Agreements.
-#
-# copyright
-# This Source Code Form is subject to the terms of the
-# Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with
-# this file, You can obtain one at http://mozilla.org/MPL/2.0/.
-#
-# author Christian Mueller, christian.ei.mueller@bmw.de BMW 2011,2012
-#
-# For further information see http://www.genivi.org/.
-#
-
-# This is a sample unit file that utilized the watchdog functionality of the AudioManager.
-# If the time WatchdogSec equals 0, no watchdog function will be used.
-
-
-[Unit]
-Description=The GENIVI AudioManager
-
-[Service]
-Type=notify
-User=root
-ExecStart=/usr/bin/AudioManager
-Restart=always
-WatchdogSec=2
-NotifyAccess=main
-
-[Install]
-WantedBy=multi-user.target