From 82dc093296c2f2f89d14350e8710b18061af2e01 Mon Sep 17 00:00:00 2001 From: christian mueller Date: Thu, 24 May 2012 12:36:43 +0200 Subject: * [GAM-8] documentation of communication between routing plugins & sources / sinks [GAM-9] document in EA Signed-off-by: christian mueller --- AudioManagerDaemon/docx/04_x_elements.dox | 6 ++ .../docx/04_y_audiomanager_and_sources.dox | 92 +++++++++++++++++++++ .../docx/images/AvailabilityofSinks.png | Bin 0 -> 37630 bytes .../docx/images/AvailabilityofSources.png | Bin 0 -> 37577 bytes AudioManagerDaemon/docx/images/ClassDiagramm.png | Bin 0 -> 211194 bytes .../docx/images/Interaction_with_sourcessinks.png | Bin 0 -> 19385 bytes .../docx/images/InterruptStatusChange.png | Bin 0 -> 22021 bytes .../docx/images/SettingConnectionFormats.png | Bin 0 -> 26690 bytes .../docx/images/SoundPropertyChangeofSink.png | Bin 0 -> 34583 bytes .../docx/images/SoundPropertyChangeofSource.png | Bin 0 -> 32592 bytes AudioManagerDaemon/docx/images/SourceStates.png | Bin 0 -> 32217 bytes .../docx/images/VolumeChangesofSinks.png | Bin 0 -> 47122 bytes .../docx/images/VolumeChangesofSources.png | Bin 0 -> 41243 bytes 13 files changed, 98 insertions(+) create mode 100644 AudioManagerDaemon/docx/04_y_audiomanager_and_sources.dox create mode 100644 AudioManagerDaemon/docx/images/AvailabilityofSinks.png create mode 100644 AudioManagerDaemon/docx/images/AvailabilityofSources.png create mode 100755 AudioManagerDaemon/docx/images/ClassDiagramm.png create mode 100644 AudioManagerDaemon/docx/images/Interaction_with_sourcessinks.png create mode 100755 AudioManagerDaemon/docx/images/InterruptStatusChange.png create mode 100755 AudioManagerDaemon/docx/images/SettingConnectionFormats.png create mode 100644 AudioManagerDaemon/docx/images/SoundPropertyChangeofSink.png create mode 100644 AudioManagerDaemon/docx/images/SoundPropertyChangeofSource.png create mode 100755 AudioManagerDaemon/docx/images/SourceStates.png create mode 100755 AudioManagerDaemon/docx/images/VolumeChangesofSinks.png create mode 100644 AudioManagerDaemon/docx/images/VolumeChangesofSources.png diff --git a/AudioManagerDaemon/docx/04_x_elements.dox b/AudioManagerDaemon/docx/04_x_elements.dox index 7098297..4afdd35 100644 --- a/AudioManagerDaemon/docx/04_x_elements.dox +++ b/AudioManagerDaemon/docx/04_x_elements.dox @@ -18,6 +18,10 @@ /*! \page elementspage Elements of the AudioManagement + \section cDiag Overview Class Diagram + This class diagram shows a logical overview of the relevant elements in the AudioManager with their relations. + \image html ClassDiagramm.png + The audiomanagement in principle consists of the following elements: \section source Sources @@ -54,4 +58,6 @@ at registration time.\n \subsection cfattributes Attributes - am::am_Crossfader_s describes the attribiutes of a Crossfader + + */ \ No newline at end of file diff --git a/AudioManagerDaemon/docx/04_y_audiomanager_and_sources.dox b/AudioManagerDaemon/docx/04_y_audiomanager_and_sources.dox new file mode 100644 index 0000000..a333141 --- /dev/null +++ b/AudioManagerDaemon/docx/04_y_audiomanager_and_sources.dox @@ -0,0 +1,92 @@ + /* + * 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) + * + */ + +/*! +\page sourcesink The relation of sources & sinks with the AudioManager + +\section claDi Class diagramm of the relation between sources, sinks and the AudioManager +In general, the relationship is defined as well as the interfaces that are used to communicate the informations back and forth. But since the +exchange of these informations is abstracted by the RoutingPlugins, the architecture cannot define explicit mechanisms here.\n +A lot of attributes that are part of sources and sinks belong logical to them and might be implemented by the RoutingPlugin. The relation between +sources, sinks and the AudioManagerDaemon is shown in this \ref cDiag . + +\section boil The REAL interaction +A lot of information is related to sources and sinks as can be seen here: \ref cDiag . But not all informations are actually communicated to the +sources and sinks since the routing adaptor will take care of handling some of these informations.\n +Here are some informations that is believed to be actually communicated to the sources and sinks: + + \section conFormats Connection Formats + The am::am_ConnectionFormat_e formats for a connection are chosen when the connection is build up. So if there are more than one possbilities + that can be used for a connection (am::am_Sink_s::listConnectionFormats and am::am_Source_s::listConnectionFormats) the correct one is chosen + upon a connect. If this is relevant to the sources and sinks, the routingAdaptor must communicate to the sources and sinks accordingly. + \image html SettingConnectionFormats.png + + + \section sstates Source States + This diagrams shows the sequence that is used to set the sources states am::am_SourceState_e. Since the source states are set by the + AudioManagerController, the exact behavior is product specific. + \image html SourceStates.png + + \section avail Availability + This diagram shows the sequence that is used to communicate the availability am::am_Availability_s. from the sources. Please note that the availability reasons + am::am_AvailabilityReason_e are product specific. + \image html AvailabilityofSources.png + Here is the same for the sinks: + \image html AvailabilityofSinks.png + + \section vol Volumes + Volumes am::am_volume_t are set to the sinks, mainly, but depending on the used audio routing system it might be that they can be set on the source level as well. + If this is not the case, proper measures must be taken to do this. + Changes of a source: + \image html VolumeChangesofSources.png + Changes of a sink: + \image html VolumeChangesofSinks.png + + \section SoundProperties + The am::am_SoundProperty_s are set to the sources and sinks. More information about SoundProperties can be found here: \ref prop. + Changes of a sink: + \image html SoundPropertyChangeofSink.png + Changes of a source: + \image html SoundPropertyChangeofSource.png + + \section in Interrupt States + The am::am_InterruptState_e are reported by low level interrupts from the sources to the AudioManagement. More details here: \ref interrupts . + \image html InterruptStatusChange.png + + + + + + + + + + + + + + + + + + + + + + + +*/ \ No newline at end of file diff --git a/AudioManagerDaemon/docx/images/AvailabilityofSinks.png b/AudioManagerDaemon/docx/images/AvailabilityofSinks.png new file mode 100644 index 0000000..c912cdf Binary files /dev/null and b/AudioManagerDaemon/docx/images/AvailabilityofSinks.png differ diff --git a/AudioManagerDaemon/docx/images/AvailabilityofSources.png b/AudioManagerDaemon/docx/images/AvailabilityofSources.png new file mode 100644 index 0000000..543a9f7 Binary files /dev/null and b/AudioManagerDaemon/docx/images/AvailabilityofSources.png differ diff --git a/AudioManagerDaemon/docx/images/ClassDiagramm.png b/AudioManagerDaemon/docx/images/ClassDiagramm.png new file mode 100755 index 0000000..7e75568 Binary files /dev/null and b/AudioManagerDaemon/docx/images/ClassDiagramm.png differ diff --git a/AudioManagerDaemon/docx/images/Interaction_with_sourcessinks.png b/AudioManagerDaemon/docx/images/Interaction_with_sourcessinks.png new file mode 100644 index 0000000..653da90 Binary files /dev/null and b/AudioManagerDaemon/docx/images/Interaction_with_sourcessinks.png differ diff --git a/AudioManagerDaemon/docx/images/InterruptStatusChange.png b/AudioManagerDaemon/docx/images/InterruptStatusChange.png new file mode 100755 index 0000000..b38cf21 Binary files /dev/null and b/AudioManagerDaemon/docx/images/InterruptStatusChange.png differ diff --git a/AudioManagerDaemon/docx/images/SettingConnectionFormats.png b/AudioManagerDaemon/docx/images/SettingConnectionFormats.png new file mode 100755 index 0000000..7e52c66 Binary files /dev/null and b/AudioManagerDaemon/docx/images/SettingConnectionFormats.png differ diff --git a/AudioManagerDaemon/docx/images/SoundPropertyChangeofSink.png b/AudioManagerDaemon/docx/images/SoundPropertyChangeofSink.png new file mode 100644 index 0000000..5381bdc Binary files /dev/null and b/AudioManagerDaemon/docx/images/SoundPropertyChangeofSink.png differ diff --git a/AudioManagerDaemon/docx/images/SoundPropertyChangeofSource.png b/AudioManagerDaemon/docx/images/SoundPropertyChangeofSource.png new file mode 100644 index 0000000..6dd8328 Binary files /dev/null and b/AudioManagerDaemon/docx/images/SoundPropertyChangeofSource.png differ diff --git a/AudioManagerDaemon/docx/images/SourceStates.png b/AudioManagerDaemon/docx/images/SourceStates.png new file mode 100755 index 0000000..bf4a6ec Binary files /dev/null and b/AudioManagerDaemon/docx/images/SourceStates.png differ diff --git a/AudioManagerDaemon/docx/images/VolumeChangesofSinks.png b/AudioManagerDaemon/docx/images/VolumeChangesofSinks.png new file mode 100755 index 0000000..5870a80 Binary files /dev/null and b/AudioManagerDaemon/docx/images/VolumeChangesofSinks.png differ diff --git a/AudioManagerDaemon/docx/images/VolumeChangesofSources.png b/AudioManagerDaemon/docx/images/VolumeChangesofSources.png new file mode 100644 index 0000000..b8cf682 Binary files /dev/null and b/AudioManagerDaemon/docx/images/VolumeChangesofSources.png differ -- cgit v1.2.1