summaryrefslogtreecommitdiff
path: root/docs/CAmCommandSender_8cpp_source.html
blob: 198708fa9c6d9615bf54cc0141ce68a3c03747fb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.11"/>
<title>AudioManager: AudioManagerCore/src/CAmCommandSender.cpp Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">AudioManager
   &#160;<span id="projectnumber">7.6.6</span>
   </div>
   <div id="projectbrief">Native Application Runtime Environment</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('CAmCommandSender_8cpp_source.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="headertitle">
<div class="title">CAmCommandSender.cpp</div>  </div>
</div><!--header-->
<div class="contents">
<a href="CAmCommandSender_8cpp.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno">    1</span>&#160;</div><div class="line"><a name="l00024"></a><span class="lineno">   24</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="CAmCommandSender_8h.html">CAmCommandSender.h</a>&quot;</span></div><div class="line"><a name="l00025"></a><span class="lineno">   25</span>&#160;<span class="preprocessor">#include &lt;dirent.h&gt;</span></div><div class="line"><a name="l00026"></a><span class="lineno">   26</span>&#160;<span class="preprocessor">#include &lt;errno.h&gt;</span></div><div class="line"><a name="l00027"></a><span class="lineno">   27</span>&#160;<span class="preprocessor">#include &lt;sys/stat.h&gt;</span></div><div class="line"><a name="l00028"></a><span class="lineno">   28</span>&#160;<span class="preprocessor">#include &lt;sys/types.h&gt;</span></div><div class="line"><a name="l00029"></a><span class="lineno">   29</span>&#160;<span class="preprocessor">#include &lt;sstream&gt;</span></div><div class="line"><a name="l00030"></a><span class="lineno">   30</span>&#160;<span class="preprocessor">#include &lt;string&gt;</span></div><div class="line"><a name="l00031"></a><span class="lineno">   31</span>&#160;<span class="preprocessor">#include &lt;cstring&gt;</span></div><div class="line"><a name="l00032"></a><span class="lineno">   32</span>&#160;<span class="preprocessor">#include &lt;stdexcept&gt;</span></div><div class="line"><a name="l00033"></a><span class="lineno">   33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="CAmCommandReceiver_8h.html">CAmCommandReceiver.h</a>&quot;</span></div><div class="line"><a name="l00034"></a><span class="lineno">   34</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="TAmPluginTemplate_8h.html">TAmPluginTemplate.h</a>&quot;</span></div><div class="line"><a name="l00035"></a><span class="lineno">   35</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="CAmDltWrapper_8h.html">CAmDltWrapper.h</a>&quot;</span></div><div class="line"><a name="l00036"></a><span class="lineno">   36</span>&#160;<span class="preprocessor">#include &quot;audiomanagerconfig.h&quot;</span></div><div class="line"><a name="l00037"></a><span class="lineno">   37</span>&#160;</div><div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">   38</a></span>&#160;<span class="preprocessor">#define __METHOD_NAME__ std::string (std::string(&quot;CAmCommandSender::&quot;) + __func__)</span></div><div class="line"><a name="l00039"></a><span class="lineno">   39</span>&#160;</div><div class="line"><a name="l00040"></a><span class="lineno">   40</span>&#160;<span class="keyword">namespace </span><a class="code" href="namespaceam.html">am</a></div><div class="line"><a name="l00041"></a><span class="lineno">   41</span>&#160;{</div><div class="line"><a name="l00042"></a><span class="lineno">   42</span>&#160;</div><div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">   46</a></span>&#160;<span class="preprocessor">#define CALL_ALL_INTERFACES(...)                                                         \</span></div><div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;<span class="preprocessor">        std::vector&lt;IAmCommandSend*&gt;::iterator iter = mListInterfaces.begin();           \</span></div><div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;<span class="preprocessor">        std::vector&lt;IAmCommandSend*&gt;::iterator iterEnd = mListInterfaces.end();          \</span></div><div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;<span class="preprocessor">        for (; iter&lt;iterEnd;++iter)                                                      \</span></div><div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;<span class="preprocessor">        {                                                                                \</span></div><div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;<span class="preprocessor">            (*iter)-&gt;__VA_ARGS__;                                                        \</span></div><div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;<span class="preprocessor">        }</span></div><div class="line"><a name="l00053"></a><span class="lineno">   53</span>&#160;</div><div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#adb321354cf3c1aaa3491a0f26743e8eb">   54</a></span>&#160;<a class="code" href="classam_1_1CAmCommandSender.html#adb321354cf3c1aaa3491a0f26743e8eb">CAmCommandSender::CAmCommandSender</a>(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; listOfPluginDirectories, <a class="code" href="classam_1_1CAmSocketHandler.html">CAmSocketHandler</a> *iSocketHandler) :</div><div class="line"><a name="l00055"></a><span class="lineno">   55</span>&#160;        <a class="code" href="classam_1_1CAmDatabaseHandlerMap.html">CAmDatabaseHandlerMap</a>::AmDatabaseObserverCallbacks(),</div><div class="line"><a name="l00056"></a><span class="lineno">   56</span>&#160;        mListInterfaces(), <span class="comment">//</span></div><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;        mListLibraryHandles(), <span class="comment">//</span></div><div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;        mListLibraryNames(), <span class="comment">//</span></div><div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;        mCommandReceiver(),</div><div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;        mSerializer(iSocketHandler)</div><div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;{</div><div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;    loadPlugins(listOfPluginDirectories);</div><div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;</div><div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a7245f709e570372dc89bb2fb0692eba9">dboNewMainConnection</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="structam_1_1am__MainConnectionType__s.html">am_MainConnectionType_s</a>&amp; mainConnection) {</div><div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a69ada9e19c65c1d078d8a5f473d08586">CAmCommandSender::cbNewMainConnection</a>, mainConnection);</div><div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160;    };</div><div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a9df052a957c49cae380549bf3dd73107">dboRemovedMainConnection</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am_mainConnectionID_t</a> mainConnection) {</div><div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#aa3b5906bcf682cff155fb24d402efd89">CAmCommandSender::cbRemovedMainConnection</a>, mainConnection);</div><div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;    };</div><div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a24c3785630219a10ce19d7cda7a540b8">dboNewSink</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="structam_1_1am__Sink__s.html">am_Sink_s</a>&amp; sink) {</div><div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <span class="keywordflow">if</span> (sink.visible)</div><div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;        {</div><div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;            <a class="code" href="structam_1_1am__SinkType__s.html">am_SinkType_s</a> s;</div><div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;            s.<a class="code" href="structam_1_1am__SinkType__s.html#a281aeb5a017aecb15957f0222f17927c">availability</a> = sink.available;</div><div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;            s.<a class="code" href="structam_1_1am__SinkType__s.html#a55f9813d5f9d3cfab81dc740d15ee53e">muteState</a> = sink.muteState;</div><div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160;            s.<a class="code" href="structam_1_1am__SinkType__s.html#aa23a69a5e0069804f3181f5d3141774a">name</a> = sink.name;</div><div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;            s.<a class="code" href="structam_1_1am__SinkType__s.html#a573880f00ed279120ded986e6b832235">sinkClassID</a> = sink.sinkClassID;</div><div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;            s.<a class="code" href="structam_1_1am__SinkType__s.html#a6455a141536f5b7b676c5a5caabf872d">sinkID</a> = sink.sinkID;</div><div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;            s.<a class="code" href="structam_1_1am__SinkType__s.html#a95273c6978fbef5be4a59b1534212495">volume</a> = sink.mainVolume;</div><div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160;            <span class="keyword">typedef</span> void(<a class="code" href="classam_1_1CAmCommandSender.html">CAmCommandSender</a>::*TMeth)(<a class="code" href="structam_1_1am__SinkType__s.html">am::am_SinkType_s</a>);</div><div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;            mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>&lt;<a class="code" href="classam_1_1CAmCommandSender.html#adb321354cf3c1aaa3491a0f26743e8eb">CAmCommandSender</a>, TMeth, <a class="code" href="structam_1_1am__SinkType__s.html">am::am_SinkType_s</a>&gt;(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#ace43c985fa6710585668ed67eb03d15e">CAmCommandSender::cbNewSink</a>, s);</div><div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160;        }</div><div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    };</div><div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a406c7e8f23d2845a657e2f7c2cbe41cc">dboNewSource</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="structam_1_1am__Source__s.html">am_Source_s</a>&amp; source) {</div><div class="line"><a name="l00085"></a><span class="lineno">   85</span>&#160;        <span class="keywordflow">if</span> (source.visible)</div><div class="line"><a name="l00086"></a><span class="lineno">   86</span>&#160;        {</div><div class="line"><a name="l00087"></a><span class="lineno">   87</span>&#160;            <a class="code" href="structam_1_1am__SourceType__s.html">am_SourceType_s</a> s;</div><div class="line"><a name="l00088"></a><span class="lineno">   88</span>&#160;            s.<a class="code" href="structam_1_1am__SourceType__s.html#aa127250ebad705fbca4d5f45eea6dbdd">availability</a> = source.available;</div><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;            s.<a class="code" href="structam_1_1am__SourceType__s.html#a352a80e94b72f7e9ea42c210b930e8ef">name</a> = source.name;</div><div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;            s.<a class="code" href="structam_1_1am__SourceType__s.html#a01a0cab789299dc80c5ce53457374172">sourceClassID</a> = source.sourceClassID;</div><div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;            s.<a class="code" href="structam_1_1am__SourceType__s.html#a6846851d58222147c2bd390fc572813f">sourceID</a> = source.sourceID;</div><div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160;            <span class="keyword">typedef</span> void(<a class="code" href="classam_1_1CAmCommandSender.html">CAmCommandSender</a>::*TMeth)(<a class="code" href="structam_1_1am__SourceType__s.html">am::am_SourceType_s</a>);</div><div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;            mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>&lt;<a class="code" href="classam_1_1CAmCommandSender.html#adb321354cf3c1aaa3491a0f26743e8eb">CAmCommandSender</a>, TMeth, <a class="code" href="structam_1_1am__SourceType__s.html">am::am_SourceType_s</a>&gt;(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a0e8ed46bf07df06d20bca89d9ad8afb1">CAmCommandSender::cbNewSource</a>, s);</div><div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        }</div><div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160;    };</div><div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;</div><div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#aa495d5e3016f968a8937356fa4baca2e">dboRemovedSink</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <span class="keywordtype">bool</span> visible) {</div><div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="keywordflow">if</span> (visible)</div><div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a58d3cb6594f2ec16bc8b70e318e5788c">CAmCommandSender::cbRemovedSink</a>, sinkID);</div><div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    };</div><div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#aebfece67d798cfaa6f3ec9744c93e358">dboRemovedSource</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <span class="keywordtype">bool</span> visible) {</div><div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;        <span class="keywordflow">if</span> (visible)</div><div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a47d32f19dfbba3d3af0e088bf018ade9">CAmCommandSender::cbRemovedSource</a>, sourceID);</div><div class="line"><a name="l00104"></a><span class="lineno">  104</span>&#160;    };</div><div class="line"><a name="l00105"></a><span class="lineno">  105</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a2e307c531b2b093eb27379a3b8a378d1">dboNumberOfSinkClassesChanged</a> = [&amp;]() {</div><div class="line"><a name="l00106"></a><span class="lineno">  106</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a29350475ef9e225de34b8a634bb39768">CAmCommandSender::cbNumberOfSinkClassesChanged</a>);</div><div class="line"><a name="l00107"></a><span class="lineno">  107</span>&#160;    };</div><div class="line"><a name="l00108"></a><span class="lineno">  108</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a3f3319ef501b27fb4ba526c04df781d0">dboNumberOfSourceClassesChanged</a> = [&amp;]() {</div><div class="line"><a name="l00109"></a><span class="lineno">  109</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a9f78d031dae6f65510f7ff9f39c7a705">CAmCommandSender::cbNumberOfSourceClassesChanged</a>);</div><div class="line"><a name="l00110"></a><span class="lineno">  110</span>&#160;    };</div><div class="line"><a name="l00111"></a><span class="lineno">  111</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a9725c1bd535f0960259e969c40b2ecb3">dboMainConnectionStateChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am_mainConnectionID_t</a> connectionID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a1b4df0ded5f6d6d07ae583dc9a074209">am_ConnectionState_e</a> connectionState) {</div><div class="line"><a name="l00112"></a><span class="lineno">  112</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a32aa8ab84632805a876e023a7aead810">CAmCommandSender::cbMainConnectionStateChanged</a>, connectionID, connectionState);</div><div class="line"><a name="l00113"></a><span class="lineno">  113</span>&#160;    };</div><div class="line"><a name="l00114"></a><span class="lineno">  114</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a5e8e458d05d56bda96cf934f03a339d5">dboMainSinkSoundPropertyChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__MainSoundProperty__s.html">am_MainSoundProperty_s</a>&amp; SoundProperty) {</div><div class="line"><a name="l00115"></a><span class="lineno">  115</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#adea8f5188fee5967bae000706f3bf1bc">CAmCommandSender::cbMainSinkSoundPropertyChanged</a>, sinkID, SoundProperty);</div><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;    };</div><div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ac8ab4c5be227c60f613b9f0bb4a86b1a">dboMainSourceSoundPropertyChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__MainSoundProperty__s.html">am_MainSoundProperty_s</a>&amp; SoundProperty) {</div><div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a538406cd89340f6601da5c477e933280">CAmCommandSender::cbMainSourceSoundPropertyChanged</a>, sourceID, SoundProperty);</div><div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    };</div><div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a88f77a09852735935c5373a3de7aa3e3">dboSinkAvailabilityChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__Availability__s.html">am_Availability_s</a> &amp; availability) {</div><div class="line"><a name="l00121"></a><span class="lineno">  121</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a86d8f96c39db1413893bb957ff761fa3">CAmCommandSender::cbSinkAvailabilityChanged</a>, sinkID, availability);</div><div class="line"><a name="l00122"></a><span class="lineno">  122</span>&#160;    };</div><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ae8ff4da2cbf3a0619b8f4f0d64d8ca21">dboSourceAvailabilityChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__Availability__s.html">am_Availability_s</a> &amp; availability) {</div><div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a8628d6332e139cb81712bc8336c14f20">CAmCommandSender::cbSourceAvailabilityChanged</a>, sourceID, availability);</div><div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;    };</div><div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a78f7a9c7ca0565fa8d90e22b74a59902">dboVolumeChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a834886e7c3e4a2d6745ef2b59b485b00">am_mainVolume_t</a> volume) {</div><div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a4494fdd835137e572f2cf4a3aceb6ae5">CAmCommandSender::cbVolumeChanged</a>, sinkID, volume);</div><div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;    };</div><div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ac2dee5b93adccfc98a0d73221b25271e">dboSinkMuteStateChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#af9d68f1f1b0553906df4c90e9a860ffa">am_MuteState_e</a> muteState) {</div><div class="line"><a name="l00130"></a><span class="lineno">  130</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a6068ce59089fbdc63aec81e778aba238">CAmCommandSender::cbSinkMuteStateChanged</a>, sinkID, muteState);</div><div class="line"><a name="l00131"></a><span class="lineno">  131</span>&#160;    };</div><div class="line"><a name="l00132"></a><span class="lineno">  132</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a37688a54a686caca7c18568bb6d3b91e">dboSystemPropertyChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="structam_1_1am__SystemProperty__s.html">am_SystemProperty_s</a>&amp; SystemProperty) {</div><div class="line"><a name="l00133"></a><span class="lineno">  133</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#adab076d8b8886a6dcf00c0291e440ee4">CAmCommandSender::cbSystemPropertyChanged</a>, SystemProperty);</div><div class="line"><a name="l00134"></a><span class="lineno">  134</span>&#160;    };</div><div class="line"><a name="l00135"></a><span class="lineno">  135</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a472f2e94e924561a02daaba90455d7bc">dboTimingInformationChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am_mainConnectionID_t</a> mainConnection, <span class="keyword">const</span> <a class="code" href="namespaceam.html#ad94ba90e3c8f6bd7e51a15a811755167">am_timeSync_t</a> time) {</div><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#acd974c4ccc79fe886932670e1de43097">CAmCommandSender::cbTimingInformationChanged</a>, mainConnection, time);</div><div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    };</div><div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ab5a3e035342aa1cc937e6f7b4f4fce9e">dboSinkUpdated</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a2aa2a1e9d9c5a5cc4cb48b5b9c9a222f">am_sinkClass_t</a> sinkClassID, <span class="keyword">const</span> std::vector&lt;am_MainSoundProperty_s&gt;&amp; listMainSoundProperties, <span class="keyword">const</span> <span class="keywordtype">bool</span> visible) {</div><div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;        <span class="keywordflow">if</span> (visible)</div><div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#acacdc9bccffed2e0ba12e1543f4ce2d0">CAmCommandSender::cbSinkUpdated</a>, sinkID, sinkClassID, listMainSoundProperties);</div><div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;    };</div><div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a85b8f794db68e230cb2ee611f81eee14">dboSourceUpdated</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a8b8fc2ab1ac4d427ca85fe8549e6afd0">am_sourceClass_t</a> sourceClassID, <span class="keyword">const</span> std::vector&lt;am_MainSoundProperty_s&gt;&amp; listMainSoundProperties, <span class="keyword">const</span> <span class="keywordtype">bool</span> visible) {</div><div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keywordflow">if</span> (visible)</div><div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#acacdc9bccffed2e0ba12e1543f4ce2d0">CAmCommandSender::cbSinkUpdated</a>, sourceID, sourceClassID, listMainSoundProperties);</div><div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    };</div><div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a468ff298f4daab677104946b5d39de8a">dboSinkMainNotificationConfigurationChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__NotificationConfiguration__s.html">am_NotificationConfiguration_s</a> mainNotificationConfiguration) {</div><div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#a2a7a6f147aabe6d4edfc57b03d675d35">CAmCommandSender::cbSinkMainNotificationConfigurationChanged</a>, sinkID, mainNotificationConfiguration);</div><div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;    };</div><div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <a class="code" href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a1cdf3d7dde1c495e7f2eade875de945f">dboSourceMainNotificationConfigurationChanged</a> = [&amp;](<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__NotificationConfiguration__s.html">am_NotificationConfiguration_s</a> mainNotificationConfiguration) {</div><div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160;        mSerializer.<a class="code" href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">asyncCall</a>(<span class="keyword">this</span>, &amp;<a class="code" href="classam_1_1CAmCommandSender.html#aad69cd2cb04fecaa22c008bf86d99740">CAmCommandSender::cbSourceMainNotificationConfigurationChanged</a>, sourceID, mainNotificationConfiguration);</div><div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    };</div><div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;}</div><div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;<span class="keywordtype">void</span> CAmCommandSender::loadPlugins(<span class="keyword">const</span> std::vector&lt;std::string&gt;&amp; listOfPluginDirectories)</div><div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;{</div><div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160;    <span class="keywordflow">if</span> (listOfPluginDirectories.empty())</div><div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    {</div><div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <a class="code" href="namespaceam.html#ab00ba22db19413e2040c2ab246f220c6">logError</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;List of commandplugins is empty&quot;</span>);</div><div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    }</div><div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;</div><div class="line"><a name="l00161"></a><span class="lineno">  161</span>&#160;    std::vector&lt;std::string&gt; sharedLibraryNameList;</div><div class="line"><a name="l00162"></a><span class="lineno">  162</span>&#160;    std::vector&lt;std::string&gt;::const_iterator dirIter = listOfPluginDirectories.begin();</div><div class="line"><a name="l00163"></a><span class="lineno">  163</span>&#160;    std::vector&lt;std::string&gt;::const_iterator dirIterEnd = listOfPluginDirectories.end();</div><div class="line"><a name="l00164"></a><span class="lineno">  164</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno">  165</span>&#160;    <span class="comment">// search communicator plugins in configured directories</span></div><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;    <span class="keywordflow">for</span> (; dirIter &lt; dirIterEnd; ++dirIter)</div><div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    {</div><div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;        <span class="keyword">const</span> <span class="keywordtype">char</span>* directoryName = dirIter-&gt;c_str();</div><div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160;        <a class="code" href="namespaceam.html#a47d650dc91db97c1f9323b4ed5cf4fd6">logInfo</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;Searching for CommandPlugins in&quot;</span>, *dirIter);</div><div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;        DIR *directory = opendir(directoryName);</div><div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;</div><div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;        <span class="keywordflow">if</span> (!directory)</div><div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;        {</div><div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;            <a class="code" href="namespaceam.html#ab00ba22db19413e2040c2ab246f220c6">logError</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;Error opening directory &quot;</span>, *dirIter);</div><div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;            <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        }</div><div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160;</div><div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;        <span class="comment">// iterate content of directory</span></div><div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;        <span class="keyword">struct </span>dirent *itemInDirectory = 0;</div><div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;        <span class="keywordflow">while</span> ((itemInDirectory = readdir(directory)))</div><div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;        {</div><div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;            <span class="keywordtype">unsigned</span> <span class="keywordtype">char</span> entryType = itemInDirectory-&gt;d_type;</div><div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160;            std::string entryName = itemInDirectory-&gt;d_name;</div><div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;            std::string fullName = *dirIter + <span class="stringliteral">&quot;/&quot;</span> + entryName;</div><div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;            <span class="keywordtype">bool</span> regularFile = (entryType == DT_REG || entryType == DT_LNK);</div><div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;            <span class="keywordtype">bool</span> sharedLibExtension = (<span class="stringliteral">&quot;so&quot;</span> == entryName.substr(entryName.find_last_of(<span class="stringliteral">&quot;.&quot;</span>) + 1));</div><div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;</div><div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;            <span class="comment">// Handle cases where readdir() could not determine the file type</span></div><div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;            <span class="keywordflow">if</span> (entryType == DT_UNKNOWN)</div><div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;            {</div><div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;                <span class="keyword">struct </span>stat buf;</div><div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160;</div><div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;                <span class="keywordflow">if</span> (stat(fullName.c_str(), &amp;buf))</div><div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;                {</div><div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;                    <a class="code" href="namespaceam.html#a47d650dc91db97c1f9323b4ed5cf4fd6">logInfo</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;Failed to stat file: &quot;</span>, entryName, errno);</div><div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;                    <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00198"></a><span class="lineno">  198</span>&#160;                }</div><div class="line"><a name="l00199"></a><span class="lineno">  199</span>&#160;</div><div class="line"><a name="l00200"></a><span class="lineno">  200</span>&#160;                regularFile = S_ISREG(buf.st_mode);</div><div class="line"><a name="l00201"></a><span class="lineno">  201</span>&#160;            }</div><div class="line"><a name="l00202"></a><span class="lineno">  202</span>&#160;</div><div class="line"><a name="l00203"></a><span class="lineno">  203</span>&#160;            <span class="keywordflow">if</span> (regularFile &amp;&amp; sharedLibExtension)</div><div class="line"><a name="l00204"></a><span class="lineno">  204</span>&#160;            {</div><div class="line"><a name="l00205"></a><span class="lineno">  205</span>&#160;                std::string name(directoryName);</div><div class="line"><a name="l00206"></a><span class="lineno">  206</span>&#160;                sharedLibraryNameList.push_back(name + <span class="stringliteral">&quot;/&quot;</span> + entryName);</div><div class="line"><a name="l00207"></a><span class="lineno">  207</span>&#160;            }</div><div class="line"><a name="l00208"></a><span class="lineno">  208</span>&#160;        }</div><div class="line"><a name="l00209"></a><span class="lineno">  209</span>&#160;        closedir(directory);</div><div class="line"><a name="l00210"></a><span class="lineno">  210</span>&#160;    }</div><div class="line"><a name="l00211"></a><span class="lineno">  211</span>&#160;</div><div class="line"><a name="l00212"></a><span class="lineno">  212</span>&#160;    <span class="comment">// iterate all communicator plugins and start them</span></div><div class="line"><a name="l00213"></a><span class="lineno">  213</span>&#160;    std::vector&lt;std::string&gt;::iterator iter = sharedLibraryNameList.begin();</div><div class="line"><a name="l00214"></a><span class="lineno">  214</span>&#160;    std::vector&lt;std::string&gt;::iterator iterEnd = sharedLibraryNameList.end();</div><div class="line"><a name="l00215"></a><span class="lineno">  215</span>&#160;</div><div class="line"><a name="l00216"></a><span class="lineno">  216</span>&#160;    <span class="keywordflow">for</span> (; iter &lt; iterEnd; ++iter)</div><div class="line"><a name="l00217"></a><span class="lineno">  217</span>&#160;    {</div><div class="line"><a name="l00218"></a><span class="lineno">  218</span>&#160;        <a class="code" href="namespaceam.html#a47d650dc91db97c1f9323b4ed5cf4fd6">logInfo</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;Loading CommandSender plugin&quot;</span>, *iter);</div><div class="line"><a name="l00219"></a><span class="lineno">  219</span>&#160;        <a class="code" href="classam_1_1IAmCommandSend.html">IAmCommandSend</a>* (*createFunc)();</div><div class="line"><a name="l00220"></a><span class="lineno">  220</span>&#160;        <span class="keywordtype">void</span>* tempLibHandle = NULL;</div><div class="line"><a name="l00221"></a><span class="lineno">  221</span>&#160;        createFunc = getCreateFunction&lt;IAmCommandSend*()&gt;(*iter, tempLibHandle);</div><div class="line"><a name="l00222"></a><span class="lineno">  222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno">  223</span>&#160;        <span class="keywordflow">if</span> (!createFunc)</div><div class="line"><a name="l00224"></a><span class="lineno">  224</span>&#160;        {</div><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;            <a class="code" href="namespaceam.html#a47d650dc91db97c1f9323b4ed5cf4fd6">logInfo</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;Entry point of CommandPlugin not found&quot;</span>, *iter);</div><div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;            <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160;        }</div><div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;</div><div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160;        <a class="code" href="classam_1_1IAmCommandSend.html">IAmCommandSend</a>* commander = createFunc();</div><div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;</div><div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;        <span class="keywordflow">if</span> (!commander)</div><div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;        {</div><div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;            <a class="code" href="namespaceam.html#a47d650dc91db97c1f9323b4ed5cf4fd6">logInfo</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;CommandPlugin initialization failed. Entry Function not callable&quot;</span>);</div><div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;            dlclose(tempLibHandle);</div><div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;            <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        }</div><div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;</div><div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160;        <span class="comment">//check libversion</span></div><div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;        std::string version, cVersion(<a class="code" href="IAmCommand_8h.html#a2ad3adf378d12d97878ef329b3829f76">CommandVersion</a>);</div><div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;        commander-&gt;<a class="code" href="classam_1_1IAmCommandSend.html#aeb3a61f532dc765cee0980b4b115cf0b">getInterfaceVersion</a>(version);</div><div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        uint16_t minorVersion, majorVersion, cMinorVersion, cMajorVersion;</div><div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;        std::istringstream(version.substr(0, 1)) &gt;&gt; majorVersion;</div><div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;        std::istringstream(version.substr(2, 1)) &gt;&gt; minorVersion;</div><div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;        std::istringstream(cVersion.substr(0, 1)) &gt;&gt; cMajorVersion;</div><div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;        std::istringstream(cVersion.substr(2, 1)) &gt;&gt; cMinorVersion;</div><div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;</div><div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;        <span class="keywordflow">if</span> (majorVersion &lt; cMajorVersion || ((majorVersion == cMajorVersion) &amp;&amp; (minorVersion &gt; cMinorVersion)))</div><div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;        {</div><div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;            <a class="code" href="namespaceam.html#ab00ba22db19413e2040c2ab246f220c6">logError</a>(<a class="code" href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a>,<span class="stringliteral">&quot;CommandInterface initialization failed. Version of Interface to old&quot;</span>);</div><div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;            dlclose(tempLibHandle);</div><div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160;            <span class="keywordflow">continue</span>;</div><div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;        }</div><div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;</div><div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        mListInterfaces.push_back(commander);</div><div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        mListLibraryHandles.push_back(tempLibHandle);</div><div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160;        mListLibraryNames.push_back(iter-&gt;c_str());</div><div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    }</div><div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;}</div><div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;</div><div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#ae9f595010ba8731fa8b62ac911d4a674">  260</a></span>&#160;<a class="code" href="classam_1_1CAmCommandSender.html#ae9f595010ba8731fa8b62ac911d4a674">CAmCommandSender::~CAmCommandSender</a>()</div><div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;{</div><div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    <span class="comment">//unloadLibraries();</span></div><div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;}</div><div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;</div><div class="line"><a name="l00265"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a2840ea18547bbbdbaad153ab61637990">  265</a></span>&#160;<a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4ce">am_Error_e</a> <a class="code" href="classam_1_1CAmCommandSender.html#a2840ea18547bbbdbaad153ab61637990">CAmCommandSender::startupInterfaces</a>(<a class="code" href="classam_1_1CAmCommandReceiver.html">CAmCommandReceiver</a> *iCommandReceiver)</div><div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;{</div><div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;    mCommandReceiver = iCommandReceiver;</div><div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;    <a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4ce">am_Error_e</a> returnError = <a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4cea796d4cc86cd1605f4307478c128eee36">E_OK</a>;</div><div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;</div><div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160;    std::vector&lt;IAmCommandSend*&gt;::iterator iter = mListInterfaces.begin();</div><div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    std::vector&lt;IAmCommandSend*&gt;::iterator iterEnd = mListInterfaces.end();</div><div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;    <span class="keywordflow">for</span> (; iter &lt; iterEnd; ++iter)</div><div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;    {</div><div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;        <a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4ce">am_Error_e</a> error = (*iter)-&gt;startupInterface(iCommandReceiver);</div><div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160;        <span class="keywordflow">if</span> (error != <a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4cea796d4cc86cd1605f4307478c128eee36">E_OK</a>)</div><div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;        {</div><div class="line"><a name="l00277"></a><span class="lineno">  277</span>&#160;            returnError = error;</div><div class="line"><a name="l00278"></a><span class="lineno">  278</span>&#160;        }</div><div class="line"><a name="l00279"></a><span class="lineno">  279</span>&#160;    }</div><div class="line"><a name="l00280"></a><span class="lineno">  280</span>&#160;    <span class="keywordflow">return</span> (returnError);</div><div class="line"><a name="l00281"></a><span class="lineno">  281</span>&#160;}</div><div class="line"><a name="l00282"></a><span class="lineno">  282</span>&#160;</div><div class="line"><a name="l00283"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a29350475ef9e225de34b8a634bb39768">  283</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a29350475ef9e225de34b8a634bb39768">CAmCommandSender::cbNumberOfSinkClassesChanged</a>()</div><div class="line"><a name="l00284"></a><span class="lineno">  284</span>&#160;{</div><div class="line"><a name="l00285"></a><span class="lineno">  285</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a29350475ef9e225de34b8a634bb39768">cbNumberOfSinkClassesChanged</a>())</div><div class="line"><a name="l00286"></a><span class="lineno">  286</span>&#160;}</div><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;</div><div class="line"><a name="l00288"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a9f78d031dae6f65510f7ff9f39c7a705">  288</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a9f78d031dae6f65510f7ff9f39c7a705">CAmCommandSender::cbNumberOfSourceClassesChanged</a>()</div><div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;{</div><div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a9f78d031dae6f65510f7ff9f39c7a705">cbNumberOfSourceClassesChanged</a>())</div><div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;}</div><div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a32aa8ab84632805a876e023a7aead810">  293</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a32aa8ab84632805a876e023a7aead810">CAmCommandSender::cbMainConnectionStateChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am_mainConnectionID_t</a> connectionID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a1b4df0ded5f6d6d07ae583dc9a074209">am_ConnectionState_e</a> connectionState)</div><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;{</div><div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a32aa8ab84632805a876e023a7aead810">cbMainConnectionStateChanged</a>(connectionID,connectionState))</div><div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;}</div><div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;</div><div class="line"><a name="l00298"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#adea8f5188fee5967bae000706f3bf1bc">  298</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#adea8f5188fee5967bae000706f3bf1bc">CAmCommandSender::cbMainSinkSoundPropertyChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__MainSoundProperty__s.html">am_MainSoundProperty_s</a>&amp; SoundProperty)</div><div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160;{</div><div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#adea8f5188fee5967bae000706f3bf1bc">cbMainSinkSoundPropertyChanged</a>(sinkID,SoundProperty))</div><div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160;}</div><div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;</div><div class="line"><a name="l00303"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a538406cd89340f6601da5c477e933280">  303</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a538406cd89340f6601da5c477e933280">CAmCommandSender::cbMainSourceSoundPropertyChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__MainSoundProperty__s.html">am_MainSoundProperty_s</a>&amp; SoundProperty)</div><div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;{</div><div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a538406cd89340f6601da5c477e933280">cbMainSourceSoundPropertyChanged</a>(sourceID,SoundProperty))</div><div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;}</div><div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;</div><div class="line"><a name="l00308"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a86d8f96c39db1413893bb957ff761fa3">  308</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a86d8f96c39db1413893bb957ff761fa3">CAmCommandSender::cbSinkAvailabilityChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__Availability__s.html">am_Availability_s</a> &amp; availability)</div><div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;{</div><div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a86d8f96c39db1413893bb957ff761fa3">cbSinkAvailabilityChanged</a>(sinkID,availability))</div><div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;}</div><div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;</div><div class="line"><a name="l00313"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a8628d6332e139cb81712bc8336c14f20">  313</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a8628d6332e139cb81712bc8336c14f20">CAmCommandSender::cbSourceAvailabilityChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__Availability__s.html">am_Availability_s</a> &amp; availability)</div><div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;{</div><div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a8628d6332e139cb81712bc8336c14f20">cbSourceAvailabilityChanged</a>(sourceID,availability))</div><div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;}</div><div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;</div><div class="line"><a name="l00318"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a4494fdd835137e572f2cf4a3aceb6ae5">  318</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a4494fdd835137e572f2cf4a3aceb6ae5">CAmCommandSender::cbVolumeChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a834886e7c3e4a2d6745ef2b59b485b00">am_mainVolume_t</a> volume)</div><div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;{</div><div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a4494fdd835137e572f2cf4a3aceb6ae5">cbVolumeChanged</a>(sinkID,volume))</div><div class="line"><a name="l00321"></a><span class="lineno">  321</span>&#160;}</div><div class="line"><a name="l00322"></a><span class="lineno">  322</span>&#160;</div><div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a6068ce59089fbdc63aec81e778aba238">  323</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a6068ce59089fbdc63aec81e778aba238">CAmCommandSender::cbSinkMuteStateChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#af9d68f1f1b0553906df4c90e9a860ffa">am_MuteState_e</a> muteState)</div><div class="line"><a name="l00324"></a><span class="lineno">  324</span>&#160;{</div><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a6068ce59089fbdc63aec81e778aba238">cbSinkMuteStateChanged</a>(sinkID,muteState))</div><div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;}</div><div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;</div><div class="line"><a name="l00328"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#adab076d8b8886a6dcf00c0291e440ee4">  328</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#adab076d8b8886a6dcf00c0291e440ee4">CAmCommandSender::cbSystemPropertyChanged</a>(<span class="keyword">const</span> <a class="code" href="structam_1_1am__SystemProperty__s.html">am_SystemProperty_s</a> &amp; SystemProperty)</div><div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;{</div><div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#adab076d8b8886a6dcf00c0291e440ee4">cbSystemPropertyChanged</a>(SystemProperty))</div><div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160;}</div><div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#acd974c4ccc79fe886932670e1de43097">  333</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#acd974c4ccc79fe886932670e1de43097">CAmCommandSender::cbTimingInformationChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am_mainConnectionID_t</a> mainConnection, <span class="keyword">const</span> <a class="code" href="namespaceam.html#ad94ba90e3c8f6bd7e51a15a811755167">am_timeSync_t</a> time)</div><div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;{</div><div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#acd974c4ccc79fe886932670e1de43097">cbTimingInformationChanged</a>(mainConnection,time))</div><div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;}</div><div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160;</div><div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a69ada9e19c65c1d078d8a5f473d08586">  338</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a69ada9e19c65c1d078d8a5f473d08586">CAmCommandSender::cbNewMainConnection</a>(<span class="keyword">const</span> <a class="code" href="structam_1_1am__MainConnectionType__s.html">am_MainConnectionType_s</a> mainConnection)</div><div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;{</div><div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a69ada9e19c65c1d078d8a5f473d08586">cbNewMainConnection</a>(mainConnection))</div><div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;}</div><div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#aa3b5906bcf682cff155fb24d402efd89">  343</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#aa3b5906bcf682cff155fb24d402efd89">CAmCommandSender::cbRemovedMainConnection</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am_mainConnectionID_t</a> mainConnection)</div><div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160;{</div><div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#aa3b5906bcf682cff155fb24d402efd89">cbRemovedMainConnection</a>(mainConnection))</div><div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;}</div><div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;</div><div class="line"><a name="l00348"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#ace43c985fa6710585668ed67eb03d15e">  348</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#ace43c985fa6710585668ed67eb03d15e">CAmCommandSender::cbNewSink</a>(<span class="keyword">const</span> <a class="code" href="structam_1_1am__SinkType__s.html">am_SinkType_s</a> sink)</div><div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;{</div><div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#ace43c985fa6710585668ed67eb03d15e">cbNewSink</a>(sink))</div><div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;}</div><div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;</div><div class="line"><a name="l00353"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a58d3cb6594f2ec16bc8b70e318e5788c">  353</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a58d3cb6594f2ec16bc8b70e318e5788c">CAmCommandSender::cbRemovedSink</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sink)</div><div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160;{</div><div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a58d3cb6594f2ec16bc8b70e318e5788c">cbRemovedSink</a>(sink))</div><div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160;}</div><div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;</div><div class="line"><a name="l00358"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a0e8ed46bf07df06d20bca89d9ad8afb1">  358</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a0e8ed46bf07df06d20bca89d9ad8afb1">CAmCommandSender::cbNewSource</a>(<span class="keyword">const</span> <a class="code" href="structam_1_1am__SourceType__s.html">am_SourceType_s</a> source)</div><div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;{</div><div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a0e8ed46bf07df06d20bca89d9ad8afb1">cbNewSource</a>(source))</div><div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;}</div><div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160;</div><div class="line"><a name="l00363"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a47d32f19dfbba3d3af0e088bf018ade9">  363</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a47d32f19dfbba3d3af0e088bf018ade9">CAmCommandSender::cbRemovedSource</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> source)</div><div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;{</div><div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a47d32f19dfbba3d3af0e088bf018ade9">cbRemovedSource</a>(source))</div><div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160;}</div><div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;</div><div class="line"><a name="l00368"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a45500383a20af593d7fbd17a7140a9ba">  368</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a45500383a20af593d7fbd17a7140a9ba">CAmCommandSender::setCommandReady</a>()</div><div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;{</div><div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;    mCommandReceiver-&gt;<a class="code" href="classam_1_1CAmCommandReceiver.html#ae29eaa1befc7c2d741920d567b89df9e">waitOnStartup</a>(<span class="keyword">false</span>);</div><div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;</div><div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160;    <span class="comment">//create a list of handles</span></div><div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;    std::vector&lt;uint16_t&gt; listStartupHandles;</div><div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; mListInterfaces.size(); i++)</div><div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160;    {</div><div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;        listStartupHandles.push_back(mCommandReceiver-&gt;<a class="code" href="classam_1_1CAmCommandReceiver.html#a125412a71cb384ae9ec4b37821f79513">getStartupHandle</a>());</div><div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;    }</div><div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;</div><div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160;    <span class="comment">//set the receiver ready to wait for replies</span></div><div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;    mCommandReceiver-&gt;<a class="code" href="classam_1_1CAmCommandReceiver.html#ae29eaa1befc7c2d741920d567b89df9e">waitOnStartup</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;</div><div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;    <span class="comment">//now do the calls</span></div><div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;    std::vector&lt;IAmCommandSend*&gt;::iterator iter = mListInterfaces.begin();</div><div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160;    std::vector&lt;IAmCommandSend*&gt;::iterator iterEnd = mListInterfaces.end();</div><div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;    std::vector&lt;uint16_t&gt;::const_iterator handleIter(listStartupHandles.begin());</div><div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;    <span class="keywordflow">for</span> (; iter &lt; iterEnd; ++iter)</div><div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;    {</div><div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;        (*iter)-&gt;setCommandReady(*(handleIter++));</div><div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;    }</div><div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160;}</div><div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;</div><div class="line"><a name="l00392"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a5c2b1f6c0a38f7e4f42eb6452bd56d57">  392</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a5c2b1f6c0a38f7e4f42eb6452bd56d57">CAmCommandSender::setCommandRundown</a>()</div><div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160;{</div><div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;    mCommandReceiver-&gt;<a class="code" href="classam_1_1CAmCommandReceiver.html#adcc5b296afe649aa9bec7c8e4af6eb49">waitOnRundown</a>(<span class="keyword">false</span>);</div><div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;    <span class="comment">//create a list of handles</span></div><div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;    std::vector&lt;uint16_t&gt; listStartupHandles;</div><div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;    <span class="keywordflow">for</span> (<span class="keywordtype">size_t</span> i = 0; i &lt; mListInterfaces.size(); i++)</div><div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;    {</div><div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;        listStartupHandles.push_back(mCommandReceiver-&gt;<a class="code" href="classam_1_1CAmCommandReceiver.html#abe0af0067c2f0db347ee8118362cb267">getRundownHandle</a>());</div><div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;    }</div><div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;</div><div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;    <span class="comment">//set the receiver ready to wait for replies</span></div><div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;    mCommandReceiver-&gt;<a class="code" href="classam_1_1CAmCommandReceiver.html#adcc5b296afe649aa9bec7c8e4af6eb49">waitOnRundown</a>(<span class="keyword">true</span>);</div><div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;</div><div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;    <span class="comment">//now do the calls</span></div><div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;    std::vector&lt;IAmCommandSend*&gt;::iterator iter = mListInterfaces.begin();</div><div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;    std::vector&lt;IAmCommandSend*&gt;::iterator iterEnd = mListInterfaces.end();</div><div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;    std::vector&lt;uint16_t&gt;::const_iterator handleIter(listStartupHandles.begin());</div><div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;    <span class="keywordflow">for</span> (; iter &lt; iterEnd; ++iter)</div><div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;    {</div><div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;        (*iter)-&gt;setCommandRundown(*(handleIter++));</div><div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160;    }</div><div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;}</div><div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;</div><div class="line"><a name="l00415"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a58becc25c94f97eaa8b27a1186dd5fc2">  415</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a58becc25c94f97eaa8b27a1186dd5fc2">CAmCommandSender::getInterfaceVersion</a>(std::string &amp; version)<span class="keyword"> const</span></div><div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;    version = <a class="code" href="IAmCommand_8h.html#a2ad3adf378d12d97878ef329b3829f76">CommandVersion</a>;</div><div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;}</div><div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;</div><div class="line"><a name="l00420"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a35f9beaf4376d3c9eb79dd5c567981b5">  420</a></span>&#160;<a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4ce">am_Error_e</a> <a class="code" href="classam_1_1CAmCommandSender.html#a35f9beaf4376d3c9eb79dd5c567981b5">am::CAmCommandSender::getListPlugins</a>(std::vector&lt;std::string&gt; &amp; interfaces)<span class="keyword"> const</span></div><div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;<span class="keyword"></span>{</div><div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;    interfaces = mListLibraryNames;</div><div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4cea796d4cc86cd1605f4307478c128eee36">E_OK</a>);</div><div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;}</div><div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;</div><div class="line"><a name="l00426"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#acacdc9bccffed2e0ba12e1543f4ce2d0">  426</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#acacdc9bccffed2e0ba12e1543f4ce2d0">CAmCommandSender::cbSinkUpdated</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a2aa2a1e9d9c5a5cc4cb48b5b9c9a222f">am_sinkClass_t</a> sinkClassID, <span class="keyword">const</span> std::vector&lt;am_MainSoundProperty_s&gt;&amp; listMainSoundProperties)</div><div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160;{</div><div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#acacdc9bccffed2e0ba12e1543f4ce2d0">cbSinkUpdated</a>(sinkID,sinkClassID,listMainSoundProperties));</div><div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;}</div><div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;</div><div class="line"><a name="l00431"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#adccdfdbf64fd3a93dfbf9499c0f4f6dd">  431</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#adccdfdbf64fd3a93dfbf9499c0f4f6dd">CAmCommandSender::cbSourceUpdated</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="namespaceam.html#a8b8fc2ab1ac4d427ca85fe8549e6afd0">am_sourceClass_t</a> sourceClassID, <span class="keyword">const</span> std::vector&lt;am_MainSoundProperty_s&gt;&amp; listMainSoundProperties)</div><div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;{</div><div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#adccdfdbf64fd3a93dfbf9499c0f4f6dd">cbSourceUpdated</a>(sourceID,sourceClassID,listMainSoundProperties));</div><div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;}</div><div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;</div><div class="line"><a name="l00436"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#ac4fae1baa0aaab24fb74ba55b9b777de">  436</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#ac4fae1baa0aaab24fb74ba55b9b777de">CAmCommandSender::cbSinkNotification</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__NotificationPayload__s.html">am_NotificationPayload_s</a>&amp; notification)</div><div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160;{</div><div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#ac4fae1baa0aaab24fb74ba55b9b777de">cbSinkNotification</a>(sinkID,notification));</div><div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;}</div><div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160;</div><div class="line"><a name="l00441"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a65d3283c678d793edbe1d4553766b059">  441</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a65d3283c678d793edbe1d4553766b059">CAmCommandSender::cbSourceNotification</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__NotificationPayload__s.html">am_NotificationPayload_s</a>&amp; notification)</div><div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;{</div><div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(<a class="code" href="classam_1_1CAmCommandSender.html#a65d3283c678d793edbe1d4553766b059">cbSourceNotification</a>(sourceID,notification));</div><div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;}</div><div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;</div><div class="line"><a name="l00446"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#a2a7a6f147aabe6d4edfc57b03d675d35">  446</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#a2a7a6f147aabe6d4edfc57b03d675d35">CAmCommandSender::cbSinkMainNotificationConfigurationChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am_sinkID_t</a> sinkID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__NotificationConfiguration__s.html">am_NotificationConfiguration_s</a>&amp; mainNotificationConfiguration)</div><div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;{</div><div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(cbMainSinkNotificationConfigurationChanged(sinkID,mainNotificationConfiguration));</div><div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;}</div><div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;</div><div class="line"><a name="l00451"></a><span class="lineno"><a class="line" href="classam_1_1CAmCommandSender.html#aad69cd2cb04fecaa22c008bf86d99740">  451</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="classam_1_1CAmCommandSender.html#aad69cd2cb04fecaa22c008bf86d99740">CAmCommandSender::cbSourceMainNotificationConfigurationChanged</a>(<span class="keyword">const</span> <a class="code" href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am_sourceID_t</a> sourceID, <span class="keyword">const</span> <a class="code" href="structam_1_1am__NotificationConfiguration__s.html">am_NotificationConfiguration_s</a>&amp; mainNotificationConfiguration)</div><div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;{</div><div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;    <a class="code" href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a>(cbMainSourceNotificationConfigurationChanged(sourceID,mainNotificationConfiguration));</div><div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160;}</div><div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;</div><div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;<span class="keywordtype">void</span> CAmCommandSender::unloadLibraries(<span class="keywordtype">void</span>)</div><div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160;{</div><div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;    std::vector&lt;void*&gt;::iterator iterator = mListLibraryHandles.begin();</div><div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;    <span class="keywordflow">for</span> (; iterator &lt; mListLibraryHandles.end(); ++iterator)</div><div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;    {</div><div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;        dlclose(*iterator);</div><div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;    }</div><div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;    mListLibraryHandles.clear();</div><div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;}</div><div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;</div><div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;}</div><div class="ttc" id="classam_1_1CAmCommandSender_html_a35f9beaf4376d3c9eb79dd5c567981b5"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a35f9beaf4376d3c9eb79dd5c567981b5">am::CAmCommandSender::getListPlugins</a></div><div class="ttdeci">am_Error_e getListPlugins(std::vector&lt; std::string &gt; &amp;interfaces) const </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00420">CAmCommandSender.cpp:420</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a9f78d031dae6f65510f7ff9f39c7a705"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a9f78d031dae6f65510f7ff9f39c7a705">am::CAmCommandSender::cbNumberOfSourceClassesChanged</a></div><div class="ttdeci">void cbNumberOfSourceClassesChanged()</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00288">CAmCommandSender.cpp:288</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_ace43c985fa6710585668ed67eb03d15e"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#ace43c985fa6710585668ed67eb03d15e">am::CAmCommandSender::cbNewSink</a></div><div class="ttdeci">void cbNewSink(am_SinkType_s sink)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00348">CAmCommandSender.cpp:348</a></div></div>
<div class="ttc" id="TAmPluginTemplate_8h_html"><div class="ttname"><a href="TAmPluginTemplate_8h.html">TAmPluginTemplate.h</a></div><div class="ttdoc">SPDX license identifier: MPL-2.0. </div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_aebfece67d798cfaa6f3ec9744c93e358"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#aebfece67d798cfaa6f3ec9744c93e358">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboRemovedSource</a></div><div class="ttdeci">std::function&lt; void(const am_sourceID_t, const bool)&gt; dboRemovedSource</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00095">CAmDatabaseHandlerMap.h:95</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandReceiver_html"><div class="ttname"><a href="classam_1_1CAmCommandReceiver.html">am::CAmCommandReceiver</a></div><div class="ttdoc">This class realizes the command Interface. </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandReceiver_8h_source.html#l00040">CAmCommandReceiver.h:40</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandReceiver_html_abe0af0067c2f0db347ee8118362cb267"><div class="ttname"><a href="classam_1_1CAmCommandReceiver.html#abe0af0067c2f0db347ee8118362cb267">am::CAmCommandReceiver::getRundownHandle</a></div><div class="ttdeci">uint16_t getRundownHandle()</div><div class="ttdoc">returns a rundown handle </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandReceiver_8cpp_source.html#l00224">CAmCommandReceiver.cpp:224</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a24c3785630219a10ce19d7cda7a540b8"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a24c3785630219a10ce19d7cda7a540b8">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboNewSink</a></div><div class="ttdeci">std::function&lt; void(const am_Sink_s &amp;)&gt; dboNewSink</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00086">CAmDatabaseHandlerMap.h:86</a></div></div>
<div class="ttc" id="IAmCommand_8h_html_a2ad3adf378d12d97878ef329b3829f76"><div class="ttname"><a href="IAmCommand_8h.html#a2ad3adf378d12d97878ef329b3829f76">CommandVersion</a></div><div class="ttdeci">#define CommandVersion</div><div class="ttdef"><b>Definition:</b> <a href="IAmCommand_8h_source.html#l00037">IAmCommand.h:37</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a37688a54a686caca7c18568bb6d3b91e"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a37688a54a686caca7c18568bb6d3b91e">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSystemPropertyChanged</a></div><div class="ttdeci">std::function&lt; void(const am_SystemProperty_s &amp;)&gt; dboSystemPropertyChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00107">CAmDatabaseHandlerMap.h:107</a></div></div>
<div class="ttc" id="namespaceam_html"><div class="ttname"><a href="namespaceam.html">am</a></div><div class="ttdoc">A Common-API wrapper class, which loads the common-api runtime and instantiates all necessary objects...</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandReceiver_8h_source.html#l00029">CAmCommandReceiver.h:29</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a2840ea18547bbbdbaad153ab61637990"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a2840ea18547bbbdbaad153ab61637990">am::CAmCommandSender::startupInterfaces</a></div><div class="ttdeci">am_Error_e startupInterfaces(CAmCommandReceiver *iCommandReceiver)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00265">CAmCommandSender.cpp:265</a></div></div>
<div class="ttc" id="CAmCommandSender_8cpp_html_a60dca3177fb9cb5256609adc7af55168"><div class="ttname"><a href="CAmCommandSender_8cpp.html#a60dca3177fb9cb5256609adc7af55168">__METHOD_NAME__</a></div><div class="ttdeci">#define __METHOD_NAME__</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00038">CAmCommandSender.cpp:38</a></div></div>
<div class="ttc" id="namespaceam_html_a2aa2a1e9d9c5a5cc4cb48b5b9c9a222f"><div class="ttname"><a href="namespaceam.html#a2aa2a1e9d9c5a5cc4cb48b5b9c9a222f">am::am_sinkClass_t</a></div><div class="ttdeci">uint16_t am_sinkClass_t</div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00104">audiomanagertypes.h:104</a></div></div>
<div class="ttc" id="namespaceam_html_aa3dcb70029da317d661b6f422de1b4ce"><div class="ttname"><a href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4ce">am::am_Error_e</a></div><div class="ttdeci">am_Error_e</div><div class="ttdoc">the errors of the audiomanager. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00337">audiomanagertypes.h:337</a></div></div>
<div class="ttc" id="structam_1_1am__NotificationConfiguration__s_html"><div class="ttname"><a href="structam_1_1am__NotificationConfiguration__s.html">am::am_NotificationConfiguration_s</a></div><div class="ttdoc">This struct holds information about the configuration for notifications. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l01109">audiomanagertypes.h:1109</a></div></div>
<div class="ttc" id="namespaceam_html_a47d650dc91db97c1f9323b4ed5cf4fd6"><div class="ttname"><a href="namespaceam.html#a47d650dc91db97c1f9323b4ed5cf4fd6">am::logInfo</a></div><div class="ttdeci">void logInfo(T value, TArgs...args)</div><div class="ttdoc">logs given values with infolevel with the default context </div><div class="ttdef"><b>Definition:</b> <a href="CAmDltWrapper_8h_source.html#l00420">CAmDltWrapper.h:420</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_ab5a3e035342aa1cc937e6f7b4f4fce9e"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ab5a3e035342aa1cc937e6f7b4f4fce9e">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSinkUpdated</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const am_sinkClass_t, const std::vector&lt; am_MainSoundProperty_s &gt; &amp;, const bool)&gt; dboSinkUpdated</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00109">CAmDatabaseHandlerMap.h:109</a></div></div>
<div class="ttc" id="namespaceam_html_af9d68f1f1b0553906df4c90e9a860ffa"><div class="ttname"><a href="namespaceam.html#af9d68f1f1b0553906df4c90e9a860ffa">am::am_MuteState_e</a></div><div class="ttdeci">am_MuteState_e</div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00392">audiomanagertypes.h:392</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_adab076d8b8886a6dcf00c0291e440ee4"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#adab076d8b8886a6dcf00c0291e440ee4">am::CAmCommandSender::cbSystemPropertyChanged</a></div><div class="ttdeci">void cbSystemPropertyChanged(const am_SystemProperty_s &amp;systemProperty)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00328">CAmCommandSender.cpp:328</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_acacdc9bccffed2e0ba12e1543f4ce2d0"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#acacdc9bccffed2e0ba12e1543f4ce2d0">am::CAmCommandSender::cbSinkUpdated</a></div><div class="ttdeci">void cbSinkUpdated(const am_sinkID_t sinkID, const am_sinkClass_t sinkClassID, const std::vector&lt; am_MainSoundProperty_s &gt; &amp;listMainSoundProperties)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00426">CAmCommandSender.cpp:426</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_aa495d5e3016f968a8937356fa4baca2e"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#aa495d5e3016f968a8937356fa4baca2e">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboRemovedSink</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const bool)&gt; dboRemovedSink</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00094">CAmDatabaseHandlerMap.h:94</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a69ada9e19c65c1d078d8a5f473d08586"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a69ada9e19c65c1d078d8a5f473d08586">am::CAmCommandSender::cbNewMainConnection</a></div><div class="ttdeci">void cbNewMainConnection(const am_MainConnectionType_s mainConnection)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00338">CAmCommandSender.cpp:338</a></div></div>
<div class="ttc" id="structam_1_1am__Sink__s_html"><div class="ttname"><a href="structam_1_1am__Sink__s.html">am::am_Sink_s</a></div><div class="ttdoc">This struct describes the attribiutes of a sink. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l01137">audiomanagertypes.h:1137</a></div></div>
<div class="ttc" id="structam_1_1am__NotificationPayload__s_html"><div class="ttname"><a href="structam_1_1am__NotificationPayload__s.html">am::am_NotificationPayload_s</a></div><div class="ttdoc">This struct holds the payload of a notification. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l01090">audiomanagertypes.h:1090</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a472f2e94e924561a02daaba90455d7bc"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a472f2e94e924561a02daaba90455d7bc">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboTimingInformationChanged</a></div><div class="ttdeci">std::function&lt; void(const am_mainConnectionID_t, const am_timeSync_t)&gt; dboTimingInformationChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00108">CAmDatabaseHandlerMap.h:108</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_ac8ab4c5be227c60f613b9f0bb4a86b1a"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ac8ab4c5be227c60f613b9f0bb4a86b1a">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboMainSourceSoundPropertyChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sourceID_t, const am_MainSoundProperty_s &amp;)&gt; dboMainSourceSoundPropertyChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00102">CAmDatabaseHandlerMap.h:102</a></div></div>
<div class="ttc" id="classam_1_1IAmCommandSend_html_aeb3a61f532dc765cee0980b4b115cf0b"><div class="ttname"><a href="classam_1_1IAmCommandSend.html#aeb3a61f532dc765cee0980b4b115cf0b">am::IAmCommandSend::getInterfaceVersion</a></div><div class="ttdeci">virtual void getInterfaceVersion(std::string &amp;version) const =0</div><div class="ttdoc">returns the interface version as string. </div></div>
<div class="ttc" id="CAmCommandSender_8cpp_html_adca3a681410c497e0cd3e2b28680aa0b"><div class="ttname"><a href="CAmCommandSender_8cpp.html#adca3a681410c497e0cd3e2b28680aa0b">CALL_ALL_INTERFACES</a></div><div class="ttdeci">#define CALL_ALL_INTERFACES(...)</div><div class="ttdoc">macro to call all interfaces </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00046">CAmCommandSender.cpp:46</a></div></div>
<div class="ttc" id="structam_1_1am__SourceType__s_html_a352a80e94b72f7e9ea42c210b930e8ef"><div class="ttname"><a href="structam_1_1am__SourceType__s.html#a352a80e94b72f7e9ea42c210b930e8ef">am::am_SourceType_s::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">The name of the source. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00928">audiomanagertypes.h:928</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a45500383a20af593d7fbd17a7140a9ba"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a45500383a20af593d7fbd17a7140a9ba">am::CAmCommandSender::setCommandReady</a></div><div class="ttdeci">void setCommandReady()</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00368">CAmCommandSender.cpp:368</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a65d3283c678d793edbe1d4553766b059"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a65d3283c678d793edbe1d4553766b059">am::CAmCommandSender::cbSourceNotification</a></div><div class="ttdeci">void cbSourceNotification(const am_sourceID_t sourceID, const am_NotificationPayload_s &amp;notification)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00441">CAmCommandSender.cpp:441</a></div></div>
<div class="ttc" id="classam_1_1CAmSocketHandler_html"><div class="ttname"><a href="classam_1_1CAmSocketHandler.html">am::CAmSocketHandler</a></div><div class="ttdoc">The am::CAmSocketHandler implements a mainloop for the AudioManager. </div><div class="ttdef"><b>Definition:</b> <a href="CAmSocketHandler_8h_source.html#l00216">CAmSocketHandler.h:216</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a9df052a957c49cae380549bf3dd73107"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a9df052a957c49cae380549bf3dd73107">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboRemovedMainConnection</a></div><div class="ttdeci">std::function&lt; void(const am_mainConnectionID_t)&gt; dboRemovedMainConnection</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00093">CAmDatabaseHandlerMap.h:93</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a88f77a09852735935c5373a3de7aa3e3"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a88f77a09852735935c5373a3de7aa3e3">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSinkAvailabilityChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const am_Availability_s &amp;)&gt; dboSinkAvailabilityChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00103">CAmDatabaseHandlerMap.h:103</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html"><div class="ttname"><a href="structam_1_1am__SinkType__s.html">am::am_SinkType_s</a></div><div class="ttdoc">this type holds all information of sinks relevant to the HMI </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00945">audiomanagertypes.h:945</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a9725c1bd535f0960259e969c40b2ecb3"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a9725c1bd535f0960259e969c40b2ecb3">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboMainConnectionStateChanged</a></div><div class="ttdeci">std::function&lt; void(const am_mainConnectionID_t, const am_ConnectionState_e)&gt; dboMainConnectionStateChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00100">CAmDatabaseHandlerMap.h:100</a></div></div>
<div class="ttc" id="namespaceam_html_ad94ba90e3c8f6bd7e51a15a811755167"><div class="ttname"><a href="namespaceam.html#ad94ba90e3c8f6bd7e51a15a811755167">am::am_timeSync_t</a></div><div class="ttdeci">int16_t am_timeSync_t</div><div class="ttdoc">offset time that is introduced in milli seconds. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00114">audiomanagertypes.h:114</a></div></div>
<div class="ttc" id="structam_1_1am__SourceType__s_html_aa127250ebad705fbca4d5f45eea6dbdd"><div class="ttname"><a href="structam_1_1am__SourceType__s.html#aa127250ebad705fbca4d5f45eea6dbdd">am::am_SourceType_s::availability</a></div><div class="ttdeci">am_Availability_s availability</div><div class="ttdoc">the availability of the source </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00932">audiomanagertypes.h:932</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a1cdf3d7dde1c495e7f2eade875de945f"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a1cdf3d7dde1c495e7f2eade875de945f">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSourceMainNotificationConfigurationChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sourceID_t, const am_NotificationConfiguration_s)&gt; dboSourceMainNotificationConfigurationChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00112">CAmDatabaseHandlerMap.h:112</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_adea8f5188fee5967bae000706f3bf1bc"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#adea8f5188fee5967bae000706f3bf1bc">am::CAmCommandSender::cbMainSinkSoundPropertyChanged</a></div><div class="ttdeci">void cbMainSinkSoundPropertyChanged(const am_sinkID_t sinkID, const am_MainSoundProperty_s &amp;soundProperty)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00298">CAmCommandSender.cpp:298</a></div></div>
<div class="ttc" id="CAmDltWrapper_8h_html"><div class="ttname"><a href="CAmDltWrapper_8h.html">CAmDltWrapper.h</a></div><div class="ttdoc">SPDX license identifier: MPL-2.0. </div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a406c7e8f23d2845a657e2f7c2cbe41cc"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a406c7e8f23d2845a657e2f7c2cbe41cc">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboNewSource</a></div><div class="ttdeci">std::function&lt; void(const am_Source_s &amp;)&gt; dboNewSource</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00087">CAmDatabaseHandlerMap.h:87</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_ae9f595010ba8731fa8b62ac911d4a674"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#ae9f595010ba8731fa8b62ac911d4a674">am::CAmCommandSender::~CAmCommandSender</a></div><div class="ttdeci">~CAmCommandSender()</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00260">CAmCommandSender.cpp:260</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a3f3319ef501b27fb4ba526c04df781d0"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a3f3319ef501b27fb4ba526c04df781d0">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboNumberOfSourceClassesChanged</a></div><div class="ttdeci">std::function&lt; void()&gt; dboNumberOfSourceClassesChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00085">CAmDatabaseHandlerMap.h:85</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a538406cd89340f6601da5c477e933280"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a538406cd89340f6601da5c477e933280">am::CAmCommandSender::cbMainSourceSoundPropertyChanged</a></div><div class="ttdeci">void cbMainSourceSoundPropertyChanged(const am_sourceID_t sourceID, const am_MainSoundProperty_s &amp;soundProperty)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00303">CAmCommandSender.cpp:303</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a47d32f19dfbba3d3af0e088bf018ade9"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a47d32f19dfbba3d3af0e088bf018ade9">am::CAmCommandSender::cbRemovedSource</a></div><div class="ttdeci">void cbRemovedSource(const am_sourceID_t source)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00363">CAmCommandSender.cpp:363</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_acd974c4ccc79fe886932670e1de43097"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#acd974c4ccc79fe886932670e1de43097">am::CAmCommandSender::cbTimingInformationChanged</a></div><div class="ttdeci">void cbTimingInformationChanged(const am_mainConnectionID_t mainConnectionID, const am_timeSync_t time)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00333">CAmCommandSender.cpp:333</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a0e8ed46bf07df06d20bca89d9ad8afb1"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a0e8ed46bf07df06d20bca89d9ad8afb1">am::CAmCommandSender::cbNewSource</a></div><div class="ttdeci">void cbNewSource(const am_SourceType_s source)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00358">CAmCommandSender.cpp:358</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_ae8ff4da2cbf3a0619b8f4f0d64d8ca21"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ae8ff4da2cbf3a0619b8f4f0d64d8ca21">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSourceAvailabilityChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sourceID_t, const am_Availability_s &amp;)&gt; dboSourceAvailabilityChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00104">CAmDatabaseHandlerMap.h:104</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_adb321354cf3c1aaa3491a0f26743e8eb"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#adb321354cf3c1aaa3491a0f26743e8eb">am::CAmCommandSender::CAmCommandSender</a></div><div class="ttdeci">CAmCommandSender(const std::vector&lt; std::string &gt; &amp;listOfPluginDirectories, CAmSocketHandler *iSocketHandler)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00054">CAmCommandSender.cpp:54</a></div></div>
<div class="ttc" id="structam_1_1am__SystemProperty__s_html"><div class="ttname"><a href="structam_1_1am__SystemProperty__s.html">am::am_SystemProperty_s</a></div><div class="ttdoc">struct describing system properties </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00850">audiomanagertypes.h:850</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandReceiver_html_adcc5b296afe649aa9bec7c8e4af6eb49"><div class="ttname"><a href="classam_1_1CAmCommandReceiver.html#adcc5b296afe649aa9bec7c8e4af6eb49">am::CAmCommandReceiver::waitOnRundown</a></div><div class="ttdeci">void waitOnRundown(bool rundown)</div><div class="ttdoc">tells the ComandReceiver to start waiting for all handles to be confirmed </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandReceiver_8cpp_source.html#l00259">CAmCommandReceiver.cpp:259</a></div></div>
<div class="ttc" id="CAmCommandReceiver_8h_html"><div class="ttname"><a href="CAmCommandReceiver_8h.html">CAmCommandReceiver.h</a></div><div class="ttdoc">SPDX license identifier: MPL-2.0. </div></div>
<div class="ttc" id="structam_1_1am__SourceType__s_html_a6846851d58222147c2bd390fc572813f"><div class="ttname"><a href="structam_1_1am__SourceType__s.html#a6846851d58222147c2bd390fc572813f">am::am_SourceType_s::sourceID</a></div><div class="ttdeci">am_sourceID_t sourceID</div><div class="ttdoc">This is the ID of the source, it is unique in the system. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00924">audiomanagertypes.h:924</a></div></div>
<div class="ttc" id="structam_1_1am__MainSoundProperty__s_html"><div class="ttname"><a href="structam_1_1am__MainSoundProperty__s.html">am::am_MainSoundProperty_s</a></div><div class="ttdoc">struct describung mainsound property </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l01008">audiomanagertypes.h:1008</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html_a281aeb5a017aecb15957f0222f17927c"><div class="ttname"><a href="structam_1_1am__SinkType__s.html#a281aeb5a017aecb15957f0222f17927c">am::am_SinkType_s::availability</a></div><div class="ttdeci">am_Availability_s availability</div><div class="ttdoc">This attribute reflects the availability of the sink. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00971">audiomanagertypes.h:971</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a85b8f794db68e230cb2ee611f81eee14"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a85b8f794db68e230cb2ee611f81eee14">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSourceUpdated</a></div><div class="ttdeci">std::function&lt; void(const am_sourceID_t, const am_sourceClass_t, const std::vector&lt; am_MainSoundProperty_s &gt; &amp;, const bool)&gt; dboSourceUpdated</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00110">CAmDatabaseHandlerMap.h:110</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a58becc25c94f97eaa8b27a1186dd5fc2"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a58becc25c94f97eaa8b27a1186dd5fc2">am::CAmCommandSender::getInterfaceVersion</a></div><div class="ttdeci">void getInterfaceVersion(std::string &amp;version) const </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00415">CAmCommandSender.cpp:415</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a2e307c531b2b093eb27379a3b8a378d1"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a2e307c531b2b093eb27379a3b8a378d1">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboNumberOfSinkClassesChanged</a></div><div class="ttdeci">std::function&lt; void()&gt; dboNumberOfSinkClassesChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00084">CAmDatabaseHandlerMap.h:84</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a29350475ef9e225de34b8a634bb39768"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a29350475ef9e225de34b8a634bb39768">am::CAmCommandSender::cbNumberOfSinkClassesChanged</a></div><div class="ttdeci">void cbNumberOfSinkClassesChanged()</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00283">CAmCommandSender.cpp:283</a></div></div>
<div class="ttc" id="namespaceam_html_a2711516b1392ea02a7ed25fcd540a16a"><div class="ttname"><a href="namespaceam.html#a2711516b1392ea02a7ed25fcd540a16a">am::am_sourceID_t</a></div><div class="ttdeci">uint16_t am_sourceID_t</div><div class="ttdoc">a source ID </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00060">audiomanagertypes.h:60</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_ac4fae1baa0aaab24fb74ba55b9b777de"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#ac4fae1baa0aaab24fb74ba55b9b777de">am::CAmCommandSender::cbSinkNotification</a></div><div class="ttdeci">void cbSinkNotification(const am_sinkID_t sinkID, const am_NotificationPayload_s &amp;notification)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00436">CAmCommandSender.cpp:436</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html_a6455a141536f5b7b676c5a5caabf872d"><div class="ttname"><a href="structam_1_1am__SinkType__s.html#a6455a141536f5b7b676c5a5caabf872d">am::am_SinkType_s::sinkID</a></div><div class="ttdeci">am_sinkID_t sinkID</div><div class="ttdoc">This is the ID of the sink, it is unique in the system. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00955">audiomanagertypes.h:955</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_ac2dee5b93adccfc98a0d73221b25271e"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#ac2dee5b93adccfc98a0d73221b25271e">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSinkMuteStateChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const am_MuteState_e)&gt; dboSinkMuteStateChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00106">CAmDatabaseHandlerMap.h:106</a></div></div>
<div class="ttc" id="structam_1_1am__SourceType__s_html_a01a0cab789299dc80c5ce53457374172"><div class="ttname"><a href="structam_1_1am__SourceType__s.html#a01a0cab789299dc80c5ce53457374172">am::am_SourceType_s::sourceClassID</a></div><div class="ttdeci">am_sourceClass_t sourceClassID</div><div class="ttdoc">the sourceClassID, indicates the class the source is in. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00938">audiomanagertypes.h:938</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a5e8e458d05d56bda96cf934f03a339d5"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a5e8e458d05d56bda96cf934f03a339d5">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboMainSinkSoundPropertyChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const am_MainSoundProperty_s &amp;)&gt; dboMainSinkSoundPropertyChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00101">CAmDatabaseHandlerMap.h:101</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a5c2b1f6c0a38f7e4f42eb6452bd56d57"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a5c2b1f6c0a38f7e4f42eb6452bd56d57">am::CAmCommandSender::setCommandRundown</a></div><div class="ttdeci">void setCommandRundown()</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00392">CAmCommandSender.cpp:392</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a468ff298f4daab677104946b5d39de8a"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a468ff298f4daab677104946b5d39de8a">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboSinkMainNotificationConfigurationChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const am_NotificationConfiguration_s)&gt; dboSinkMainNotificationConfigurationChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00111">CAmDatabaseHandlerMap.h:111</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html_a95273c6978fbef5be4a59b1534212495"><div class="ttname"><a href="structam_1_1am__SinkType__s.html#a95273c6978fbef5be4a59b1534212495">am::am_SinkType_s::volume</a></div><div class="ttdeci">am_mainVolume_t volume</div><div class="ttdoc">This is the representation of the Volume for the commandInterface. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00977">audiomanagertypes.h:977</a></div></div>
<div class="ttc" id="namespaceam_html_a1b4df0ded5f6d6d07ae583dc9a074209"><div class="ttname"><a href="namespaceam.html#a1b4df0ded5f6d6d07ae583dc9a074209">am::am_ConnectionState_e</a></div><div class="ttdeci">am_ConnectionState_e</div><div class="ttdoc">represents the connection state </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00253">audiomanagertypes.h:253</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_aad69cd2cb04fecaa22c008bf86d99740"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#aad69cd2cb04fecaa22c008bf86d99740">am::CAmCommandSender::cbSourceMainNotificationConfigurationChanged</a></div><div class="ttdeci">void cbSourceMainNotificationConfigurationChanged(const am_sourceID_t sourceID, const am_NotificationConfiguration_s &amp;mainNotificationConfiguration)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00451">CAmCommandSender.cpp:451</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html_a55f9813d5f9d3cfab81dc740d15ee53e"><div class="ttname"><a href="structam_1_1am__SinkType__s.html#a55f9813d5f9d3cfab81dc740d15ee53e">am::am_SinkType_s::muteState</a></div><div class="ttdeci">am_MuteState_e muteState</div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00978">audiomanagertypes.h:978</a></div></div>
<div class="ttc" id="structam_1_1am__MainConnectionType__s_html"><div class="ttname"><a href="structam_1_1am__MainConnectionType__s.html">am::am_MainConnectionType_s</a></div><div class="ttdoc">this type holds all information of connections relevant to the HMI </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l01026">audiomanagertypes.h:1026</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_adccdfdbf64fd3a93dfbf9499c0f4f6dd"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#adccdfdbf64fd3a93dfbf9499c0f4f6dd">am::CAmCommandSender::cbSourceUpdated</a></div><div class="ttdeci">void cbSourceUpdated(const am_sourceID_t sourceID, const am_sourceClass_t sourceClassID, const std::vector&lt; am_MainSoundProperty_s &gt; &amp;listMainSoundProperties)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00431">CAmCommandSender.cpp:431</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a6068ce59089fbdc63aec81e778aba238"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a6068ce59089fbdc63aec81e778aba238">am::CAmCommandSender::cbSinkMuteStateChanged</a></div><div class="ttdeci">void cbSinkMuteStateChanged(const am_sinkID_t sinkID, const am_MuteState_e muteState)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00323">CAmCommandSender.cpp:323</a></div></div>
<div class="ttc" id="namespaceam_html_a8b8fc2ab1ac4d427ca85fe8549e6afd0"><div class="ttname"><a href="namespaceam.html#a8b8fc2ab1ac4d427ca85fe8549e6afd0">am::am_sourceClass_t</a></div><div class="ttdeci">uint16_t am_sourceClass_t</div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00102">audiomanagertypes.h:102</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_aa3b5906bcf682cff155fb24d402efd89"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#aa3b5906bcf682cff155fb24d402efd89">am::CAmCommandSender::cbRemovedMainConnection</a></div><div class="ttdeci">void cbRemovedMainConnection(const am_mainConnectionID_t mainConnection)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00343">CAmCommandSender.cpp:343</a></div></div>
<div class="ttc" id="structam_1_1am__Availability__s_html"><div class="ttname"><a href="structam_1_1am__Availability__s.html">am::am_Availability_s</a></div><div class="ttdoc">this describes the availability of a sink or a source together with the latest change ...</div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00523">audiomanagertypes.h:523</a></div></div>
<div class="ttc" id="namespaceam_html_ab00ba22db19413e2040c2ab246f220c6"><div class="ttname"><a href="namespaceam.html#ab00ba22db19413e2040c2ab246f220c6">am::logError</a></div><div class="ttdeci">void logError(T value, TArgs...args)</div><div class="ttdoc">logs given values with errorlevel with the default context </div><div class="ttdef"><b>Definition:</b> <a href="CAmDltWrapper_8h_source.html#l00431">CAmDltWrapper.h:431</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a86d8f96c39db1413893bb957ff761fa3"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a86d8f96c39db1413893bb957ff761fa3">am::CAmCommandSender::cbSinkAvailabilityChanged</a></div><div class="ttdeci">void cbSinkAvailabilityChanged(const am_sinkID_t sinkID, const am_Availability_s &amp;availability)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00308">CAmCommandSender.cpp:308</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandReceiver_html_ae29eaa1befc7c2d741920d567b89df9e"><div class="ttname"><a href="classam_1_1CAmCommandReceiver.html#ae29eaa1befc7c2d741920d567b89df9e">am::CAmCommandReceiver::waitOnStartup</a></div><div class="ttdeci">void waitOnStartup(bool startup)</div><div class="ttdoc">tells the ComandReceiver to start waiting for all handles to be confirmed </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandReceiver_8cpp_source.html#l00231">CAmCommandReceiver.cpp:231</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a4494fdd835137e572f2cf4a3aceb6ae5"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a4494fdd835137e572f2cf4a3aceb6ae5">am::CAmCommandSender::cbVolumeChanged</a></div><div class="ttdeci">void cbVolumeChanged(const am_sinkID_t sinkID, const am_mainVolume_t volume)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00318">CAmCommandSender.cpp:318</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a2a7a6f147aabe6d4edfc57b03d675d35"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a2a7a6f147aabe6d4edfc57b03d675d35">am::CAmCommandSender::cbSinkMainNotificationConfigurationChanged</a></div><div class="ttdeci">void cbSinkMainNotificationConfigurationChanged(const am_sinkID_t sinkID, const am_NotificationConfiguration_s &amp;mainNotificationConfiguration)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00446">CAmCommandSender.cpp:446</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a32aa8ab84632805a876e023a7aead810"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a32aa8ab84632805a876e023a7aead810">am::CAmCommandSender::cbMainConnectionStateChanged</a></div><div class="ttdeci">void cbMainConnectionStateChanged(const am_mainConnectionID_t connectionID, const am_ConnectionState_e connectionState)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00293">CAmCommandSender.cpp:293</a></div></div>
<div class="ttc" id="CAmCommandSender_8h_html"><div class="ttname"><a href="CAmCommandSender_8h.html">CAmCommandSender.h</a></div><div class="ttdoc">SPDX license identifier: MPL-2.0. </div></div>
<div class="ttc" id="namespaceam_html_a834886e7c3e4a2d6745ef2b59b485b00"><div class="ttname"><a href="namespaceam.html#a834886e7c3e4a2d6745ef2b59b485b00">am::am_mainVolume_t</a></div><div class="ttdeci">int16_t am_mainVolume_t</div><div class="ttdoc">This is the volume presented on the command interface. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00100">audiomanagertypes.h:100</a></div></div>
<div class="ttc" id="namespaceam_html_aa3dcb70029da317d661b6f422de1b4cea796d4cc86cd1605f4307478c128eee36"><div class="ttname"><a href="namespaceam.html#aa3dcb70029da317d661b6f422de1b4cea796d4cc86cd1605f4307478c128eee36">am::E_OK</a></div><div class="ttdoc">no error - positive reply </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00342">audiomanagertypes.h:342</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a8628d6332e139cb81712bc8336c14f20"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a8628d6332e139cb81712bc8336c14f20">am::CAmCommandSender::cbSourceAvailabilityChanged</a></div><div class="ttdeci">void cbSourceAvailabilityChanged(const am_sourceID_t sourceID, const am_Availability_s &amp;availability)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00313">CAmCommandSender.cpp:313</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandReceiver_html_a125412a71cb384ae9ec4b37821f79513"><div class="ttname"><a href="classam_1_1CAmCommandReceiver.html#a125412a71cb384ae9ec4b37821f79513">am::CAmCommandReceiver::getStartupHandle</a></div><div class="ttdeci">uint16_t getStartupHandle()</div><div class="ttdoc">returns a startup handle </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandReceiver_8cpp_source.html#l00217">CAmCommandReceiver.cpp:217</a></div></div>
<div class="ttc" id="structam_1_1am__SourceType__s_html"><div class="ttname"><a href="structam_1_1am__SourceType__s.html">am::am_SourceType_s</a></div><div class="ttdoc">this type holds all information of sources relevant to the HMI </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00914">audiomanagertypes.h:914</a></div></div>
<div class="ttc" id="structam_1_1am__Source__s_html"><div class="ttname"><a href="structam_1_1am__Source__s.html">am::am_Source_s</a></div><div class="ttdoc">This struct describes the attribiutes of a source. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l01232">audiomanagertypes.h:1232</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html_aa23a69a5e0069804f3181f5d3141774a"><div class="ttname"><a href="structam_1_1am__SinkType__s.html#aa23a69a5e0069804f3181f5d3141774a">am::am_SinkType_s::name</a></div><div class="ttdeci">std::string name</div><div class="ttdoc">The name of the sink. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00959">audiomanagertypes.h:959</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html"><div class="ttname"><a href="classam_1_1CAmCommandSender.html">am::CAmCommandSender</a></div><div class="ttdoc">This class is used to send data to the CommandInterface. </div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8h_source.html#l00046">CAmCommandSender.h:46</a></div></div>
<div class="ttc" id="namespaceam_html_aac2b901ff83ee381fbe99913753e2416"><div class="ttname"><a href="namespaceam.html#aac2b901ff83ee381fbe99913753e2416">am::am_sinkID_t</a></div><div class="ttdeci">uint16_t am_sinkID_t</div><div class="ttdoc">a sink ID </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00065">audiomanagertypes.h:65</a></div></div>
<div class="ttc" id="namespaceam_html_a33a5bb7641f58ab3a5f3b86400ad804c"><div class="ttname"><a href="namespaceam.html#a33a5bb7641f58ab3a5f3b86400ad804c">am::am_mainConnectionID_t</a></div><div class="ttdeci">uint16_t am_mainConnectionID_t</div><div class="ttdoc">a mainConnection ID </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00080">audiomanagertypes.h:80</a></div></div>
<div class="ttc" id="classam_1_1CAmDatabaseHandlerMap_html"><div class="ttname"><a href="classam_1_1CAmDatabaseHandlerMap.html">am::CAmDatabaseHandlerMap</a></div><div class="ttdoc">This class handles and abstracts the database. </div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00064">CAmDatabaseHandlerMap.h:64</a></div></div>
<div class="ttc" id="classam_1_1V2_1_1CAmSerializer_html_a019f095ad83834499eb5b0bfb251b2ba"><div class="ttname"><a href="classam_1_1V2_1_1CAmSerializer.html#a019f095ad83834499eb5b0bfb251b2ba">am::V2::CAmSerializer::asyncCall</a></div><div class="ttdeci">void asyncCall(TClass *instance, TMeth method, TArgs &amp;&amp;...arguments)</div><div class="ttdoc">calls a function with variadic arguments threadsafe </div><div class="ttdef"><b>Definition:</b> <a href="CAmSerializer_8h_source.html#l01028">CAmSerializer.h:1028</a></div></div>
<div class="ttc" id="structam_1_1am__SinkType__s_html_a573880f00ed279120ded986e6b832235"><div class="ttname"><a href="structam_1_1am__SinkType__s.html#a573880f00ed279120ded986e6b832235">am::am_SinkType_s::sinkClassID</a></div><div class="ttdeci">am_sinkClass_t sinkClassID</div><div class="ttdoc">The sinkClassID references to a sinkClass. </div><div class="ttdef"><b>Definition:</b> <a href="audiomanagertypes_8h_source.html#l00983">audiomanagertypes.h:983</a></div></div>
<div class="ttc" id="classam_1_1IAmCommandSend_html"><div class="ttname"><a href="classam_1_1IAmCommandSend.html">am::IAmCommandSend</a></div><div class="ttdoc">This interface handles all communication from the AudioManagerDaemon towards the system. </div><div class="ttdef"><b>Definition:</b> <a href="IAmCommand_8h_source.html#l00243">IAmCommand.h:243</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a78f7a9c7ca0565fa8d90e22b74a59902"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a78f7a9c7ca0565fa8d90e22b74a59902">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboVolumeChanged</a></div><div class="ttdeci">std::function&lt; void(const am_sinkID_t, const am_mainVolume_t)&gt; dboVolumeChanged</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00105">CAmDatabaseHandlerMap.h:105</a></div></div>
<div class="ttc" id="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks_html_a7245f709e570372dc89bb2fb0692eba9"><div class="ttname"><a href="structam_1_1CAmDatabaseHandlerMap_1_1AmDatabaseObserverCallbacks.html#a7245f709e570372dc89bb2fb0692eba9">am::CAmDatabaseHandlerMap::AmDatabaseObserverCallbacks::dboNewMainConnection</a></div><div class="ttdeci">std::function&lt; void(const am_MainConnectionType_s &amp;)&gt; dboNewMainConnection</div><div class="ttdef"><b>Definition:</b> <a href="CAmDatabaseHandlerMap_8h_source.html#l00092">CAmDatabaseHandlerMap.h:92</a></div></div>
<div class="ttc" id="classam_1_1CAmCommandSender_html_a58d3cb6594f2ec16bc8b70e318e5788c"><div class="ttname"><a href="classam_1_1CAmCommandSender.html#a58d3cb6594f2ec16bc8b70e318e5788c">am::CAmCommandSender::cbRemovedSink</a></div><div class="ttdeci">void cbRemovedSink(const am_sinkID_t sink)</div><div class="ttdef"><b>Definition:</b> <a href="CAmCommandSender_8cpp_source.html#l00353">CAmCommandSender.cpp:353</a></div></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_73840c26962c025d9d91b16130beda5a.html">AudioManagerCore</a></li><li class="navelem"><a class="el" href="dir_218adc744edff50228af3539b32b7808.html">src</a></li><li class="navelem"><a class="el" href="CAmCommandSender_8cpp.html">CAmCommandSender.cpp</a></li>
    <li class="footer">Generated on Fri Feb 9 2018 14:50:29 for AudioManager by
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.11 </li>
  </ul>
</div>
</body>
</html>