Add documentation about Sound Manager and Audio Manager architecture
[staging/soundmanager.git] / doc / api-ref / html / class_lib_soundmanager.html
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
6 <meta name="generator" content="Doxygen 1.8.13"/>
7 <meta name="viewport" content="width=device-width, initial-scale=1"/>
8 <title>Sound Manager: LibSoundmanager Class Reference</title>
9 <link href="tabs.css" rel="stylesheet" type="text/css"/>
10 <script type="text/javascript" src="jquery.js"></script>
11 <script type="text/javascript" src="dynsections.js"></script>
12 <link href="navtree.css" rel="stylesheet" type="text/css"/>
13 <script type="text/javascript" src="resize.js"></script>
14 <script type="text/javascript" src="navtreedata.js"></script>
15 <script type="text/javascript" src="navtree.js"></script>
16 <script type="text/javascript">
17   $(document).ready(initResizable);
18 </script>
19 <link href="search/search.css" rel="stylesheet" type="text/css"/>
20 <script type="text/javascript" src="search/searchdata.js"></script>
21 <script type="text/javascript" src="search/search.js"></script>
22 <link href="doxygen.css" rel="stylesheet" type="text/css" />
23 </head>
24 <body>
25 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
26 <div id="titlearea">
27 <table cellspacing="0" cellpadding="0">
28  <tbody>
29  <tr style="height: 56px;">
30   <td id="projectalign" style="padding-left: 0.5em;">
31    <div id="projectname">Sound Manager
32    </div>
33   </td>
34  </tr>
35  </tbody>
36 </table>
37 </div>
38 <!-- end header part -->
39 <!-- Generated by Doxygen 1.8.13 -->
40 <script type="text/javascript">
41 var searchBox = new SearchBox("searchBox", "search",false,'Search');
42 </script>
43 <script type="text/javascript" src="menudata.js"></script>
44 <script type="text/javascript" src="menu.js"></script>
45 <script type="text/javascript">
46 $(function() {
47   initMenu('',true,false,'search.php','Search');
48   $(document).ready(function() { init_search(); });
49 });
50 </script>
51 <div id="main-nav"></div>
52 </div><!-- top -->
53 <div id="side-nav" class="ui-resizable side-nav-resizable">
54   <div id="nav-tree">
55     <div id="nav-tree-contents">
56       <div id="nav-sync" class="sync"></div>
57     </div>
58   </div>
59   <div id="splitbar" style="-moz-user-select:none;" 
60        class="ui-resizable-handle">
61   </div>
62 </div>
63 <script type="text/javascript">
64 $(document).ready(function(){initNavTree('class_lib_soundmanager.html','');});
65 </script>
66 <div id="doc-content">
67 <!-- window showing the filter options -->
68 <div id="MSearchSelectWindow"
69      onmouseover="return searchBox.OnSearchSelectShow()"
70      onmouseout="return searchBox.OnSearchSelectHide()"
71      onkeydown="return searchBox.OnSearchSelectKey(event)">
72 </div>
73
74 <!-- iframe showing the search results (closed by default) -->
75 <div id="MSearchResultsWindow">
76 <iframe src="javascript:void(0)" frameborder="0" 
77         name="MSearchResults" id="MSearchResults">
78 </iframe>
79 </div>
80
81 <div class="header">
82   <div class="summary">
83 <a href="#pub-methods">Public Member Functions</a>  </div>
84   <div class="headertitle">
85 <div class="title">LibSoundmanager Class Reference</div>  </div>
86 </div><!--header-->
87 <div class="contents">
88
89 <p><code>#include &lt;<a class="el" href="libsoundmanager_8hpp_source.html">libsoundmanager.hpp</a>&gt;</code></p>
90 <table class="memberdecls">
91 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
92 Public Member Functions</h2></td></tr>
93 <tr class="memitem:a289a9d6ff8be95ae78660f239d962d79"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a289a9d6ff8be95ae78660f239d962d79">LibSoundmanager</a> (const int port, const std::string &amp;token)</td></tr>
94 <tr class="separator:a289a9d6ff8be95ae78660f239d962d79"><td class="memSeparator" colspan="2">&#160;</td></tr>
95 <tr class="memitem:abf861908e3d6d85d2b3c08683b08f934"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#abf861908e3d6d85d2b3c08683b08f934">~LibSoundmanager</a> ()</td></tr>
96 <tr class="separator:abf861908e3d6d85d2b3c08683b08f934"><td class="memSeparator" colspan="2">&#160;</td></tr>
97 <tr class="memitem:a560edf9ae3b1e367ad4cbb31c7021d74"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a560edf9ae3b1e367ad4cbb31c7021d74">register_callback</a> (void(*event_cb)(const std::string &amp;<a class="el" href="structevent.html">event</a>, struct json_object *event_contents), void(*reply_cb)(struct json_object *reply_contents))</td></tr>
98 <tr class="separator:a560edf9ae3b1e367ad4cbb31c7021d74"><td class="memSeparator" colspan="2">&#160;</td></tr>
99 <tr class="memitem:abe71d3531e7888f47185a601b284e729"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#abe71d3531e7888f47185a601b284e729">run_eventloop</a> ()</td></tr>
100 <tr class="separator:abe71d3531e7888f47185a601b284e729"><td class="memSeparator" colspan="2">&#160;</td></tr>
101 <tr class="memitem:a1fe952a4dabbab6126cc23e36c79c773"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a1fe952a4dabbab6126cc23e36c79c773">call</a> (const std::string &amp;verb, struct json_object *arg)</td></tr>
102 <tr class="separator:a1fe952a4dabbab6126cc23e36c79c773"><td class="memSeparator" colspan="2">&#160;</td></tr>
103 <tr class="memitem:ae5b83ce661b1d785de2518ca10113956"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#ae5b83ce661b1d785de2518ca10113956">call_sync</a> (const std::string &amp;verb, struct json_object *arg, struct json_object *ret)</td></tr>
104 <tr class="separator:ae5b83ce661b1d785de2518ca10113956"><td class="memSeparator" colspan="2">&#160;</td></tr>
105 <tr class="memitem:a9cd7c5470cb135f9b1aa56d790c7e91e"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a9cd7c5470cb135f9b1aa56d790c7e91e">subscribe</a> (const std::string &amp;event_name)</td></tr>
106 <tr class="separator:a9cd7c5470cb135f9b1aa56d790c7e91e"><td class="memSeparator" colspan="2">&#160;</td></tr>
107 <tr class="memitem:a21060844aa7efad6473b6104546afb06"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a21060844aa7efad6473b6104546afb06">unsubscribe</a> (const std::string &amp;event_name)</td></tr>
108 <tr class="separator:a21060844aa7efad6473b6104546afb06"><td class="memSeparator" colspan="2">&#160;</td></tr>
109 <tr class="memitem:a71a8165cb15c7815aa95a8955f5cd7f6"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a71a8165cb15c7815aa95a8955f5cd7f6">on_hangup</a> (void *closure, struct afb_wsj1 *wsj)</td></tr>
110 <tr class="separator:a71a8165cb15c7815aa95a8955f5cd7f6"><td class="memSeparator" colspan="2">&#160;</td></tr>
111 <tr class="memitem:a3ba2255cb1d29c77c4c6a2267949eda0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a3ba2255cb1d29c77c4c6a2267949eda0">on_call</a> (void *closure, const char *api, const char *verb, struct afb_wsj1_msg *msg)</td></tr>
112 <tr class="separator:a3ba2255cb1d29c77c4c6a2267949eda0"><td class="memSeparator" colspan="2">&#160;</td></tr>
113 <tr class="memitem:a86ef62e7847cd20e9cafbc1f6c017b3e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a86ef62e7847cd20e9cafbc1f6c017b3e">on_event</a> (void *closure, const char *<a class="el" href="structevent.html">event</a>, struct afb_wsj1_msg *msg)</td></tr>
114 <tr class="separator:a86ef62e7847cd20e9cafbc1f6c017b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
115 <tr class="memitem:a69b4f10e509605a570cc52c795bc9d51"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_lib_soundmanager.html#a69b4f10e509605a570cc52c795bc9d51">on_reply</a> (void *closure, struct afb_wsj1_msg *msg)</td></tr>
116 <tr class="separator:a69b4f10e509605a570cc52c795bc9d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
117 </table>
118 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
119 <div class="textblock">
120 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8hpp_source.html#l00062">62</a> of file <a class="el" href="libsoundmanager_8hpp_source.html">libsoundmanager.hpp</a>.</p>
121 </div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
122 <a id="a289a9d6ff8be95ae78660f239d962d79"></a>
123 <h2 class="memtitle"><span class="permalink"><a href="#a289a9d6ff8be95ae78660f239d962d79">&#9670;&nbsp;</a></span>LibSoundmanager()</h2>
124
125 <div class="memitem">
126 <div class="memproto">
127       <table class="memname">
128         <tr>
129           <td class="memname">LibSoundmanager::LibSoundmanager </td>
130           <td>(</td>
131           <td class="paramtype">const int&#160;</td>
132           <td class="paramname"><em>port</em>, </td>
133         </tr>
134         <tr>
135           <td class="paramkey"></td>
136           <td></td>
137           <td class="paramtype">const std::string &amp;&#160;</td>
138           <td class="paramname"><em>token</em>&#160;</td>
139         </tr>
140         <tr>
141           <td></td>
142           <td>)</td>
143           <td></td><td></td>
144         </tr>
145       </table>
146 </div><div class="memdoc">
147
148 </div>
149 </div>
150 <a id="abf861908e3d6d85d2b3c08683b08f934"></a>
151 <h2 class="memtitle"><span class="permalink"><a href="#abf861908e3d6d85d2b3c08683b08f934">&#9670;&nbsp;</a></span>~LibSoundmanager()</h2>
152
153 <div class="memitem">
154 <div class="memproto">
155       <table class="memname">
156         <tr>
157           <td class="memname">LibSoundmanager::~LibSoundmanager </td>
158           <td>(</td>
159           <td class="paramname"></td><td>)</td>
160           <td></td>
161         </tr>
162       </table>
163 </div><div class="memdoc">
164
165 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00093">93</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
166
167 </div>
168 </div>
169 <h2 class="groupheader">Member Function Documentation</h2>
170 <a id="a1fe952a4dabbab6126cc23e36c79c773"></a>
171 <h2 class="memtitle"><span class="permalink"><a href="#a1fe952a4dabbab6126cc23e36c79c773">&#9670;&nbsp;</a></span>call()</h2>
172
173 <div class="memitem">
174 <div class="memproto">
175       <table class="memname">
176         <tr>
177           <td class="memname">int LibSoundmanager::call </td>
178           <td>(</td>
179           <td class="paramtype">const std::string &amp;&#160;</td>
180           <td class="paramname"><em>verb</em>, </td>
181         </tr>
182         <tr>
183           <td class="paramkey"></td>
184           <td></td>
185           <td class="paramtype">struct json_object *&#160;</td>
186           <td class="paramname"><em>arg</em>&#160;</td>
187         </tr>
188         <tr>
189           <td></td>
190           <td>)</td>
191           <td></td><td></td>
192         </tr>
193       </table>
194 </div><div class="memdoc">
195 <p>This function calls the API of Audio Manager via WebSocket</p>
196 <h4>Parameters</h4>
197 <ul>
198 <li>verb [in] : This argument should be specified to the API name (e.g. "connect")</li>
199 <li>arg [in] : This argument should be specified to the argument of API. And this argument expects JSON object</li>
200 </ul>
201 <h4>Rreturn</h4>
202 <ul>
203 <li>Returns 0 on success or -1 in case of error.</li>
204 </ul>
205 <h4>Note</h4>
206 <p>To call Audio Manager's APIs, the application should set its function name, arguments to JSON format. </p>
207
208 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00217">217</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
209
210 </div>
211 </div>
212 <a id="ae5b83ce661b1d785de2518ca10113956"></a>
213 <h2 class="memtitle"><span class="permalink"><a href="#ae5b83ce661b1d785de2518ca10113956">&#9670;&nbsp;</a></span>call_sync()</h2>
214
215 <div class="memitem">
216 <div class="memproto">
217       <table class="memname">
218         <tr>
219           <td class="memname">int LibSoundmanager::call_sync </td>
220           <td>(</td>
221           <td class="paramtype">const std::string &amp;&#160;</td>
222           <td class="paramname"><em>verb</em>, </td>
223         </tr>
224         <tr>
225           <td class="paramkey"></td>
226           <td></td>
227           <td class="paramtype">struct json_object *&#160;</td>
228           <td class="paramname"><em>arg</em>, </td>
229         </tr>
230         <tr>
231           <td class="paramkey"></td>
232           <td></td>
233           <td class="paramtype">struct json_object *&#160;</td>
234           <td class="paramname"><em>ret</em>&#160;</td>
235         </tr>
236         <tr>
237           <td></td>
238           <td>)</td>
239           <td></td><td></td>
240         </tr>
241       </table>
242 </div><div class="memdoc">
243
244 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00236">236</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
245
246 </div>
247 </div>
248 <a id="a3ba2255cb1d29c77c4c6a2267949eda0"></a>
249 <h2 class="memtitle"><span class="permalink"><a href="#a3ba2255cb1d29c77c4c6a2267949eda0">&#9670;&nbsp;</a></span>on_call()</h2>
250
251 <div class="memitem">
252 <div class="memproto">
253       <table class="memname">
254         <tr>
255           <td class="memname">void LibSoundmanager::on_call </td>
256           <td>(</td>
257           <td class="paramtype">void *&#160;</td>
258           <td class="paramname"><em>closure</em>, </td>
259         </tr>
260         <tr>
261           <td class="paramkey"></td>
262           <td></td>
263           <td class="paramtype">const char *&#160;</td>
264           <td class="paramname"><em>api</em>, </td>
265         </tr>
266         <tr>
267           <td class="paramkey"></td>
268           <td></td>
269           <td class="paramtype">const char *&#160;</td>
270           <td class="paramname"><em>verb</em>, </td>
271         </tr>
272         <tr>
273           <td class="paramkey"></td>
274           <td></td>
275           <td class="paramtype">struct afb_wsj1_msg *&#160;</td>
276           <td class="paramname"><em>msg</em>&#160;</td>
277         </tr>
278         <tr>
279           <td></td>
280           <td>)</td>
281           <td></td><td></td>
282         </tr>
283       </table>
284 </div><div class="memdoc">
285
286 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00347">347</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
287
288 </div>
289 </div>
290 <a id="a86ef62e7847cd20e9cafbc1f6c017b3e"></a>
291 <h2 class="memtitle"><span class="permalink"><a href="#a86ef62e7847cd20e9cafbc1f6c017b3e">&#9670;&nbsp;</a></span>on_event()</h2>
292
293 <div class="memitem">
294 <div class="memproto">
295       <table class="memname">
296         <tr>
297           <td class="memname">void LibSoundmanager::on_event </td>
298           <td>(</td>
299           <td class="paramtype">void *&#160;</td>
300           <td class="paramname"><em>closure</em>, </td>
301         </tr>
302         <tr>
303           <td class="paramkey"></td>
304           <td></td>
305           <td class="paramtype">const char *&#160;</td>
306           <td class="paramname"><em>event</em>, </td>
307         </tr>
308         <tr>
309           <td class="paramkey"></td>
310           <td></td>
311           <td class="paramtype">struct afb_wsj1_msg *&#160;</td>
312           <td class="paramname"><em>msg</em>&#160;</td>
313         </tr>
314         <tr>
315           <td></td>
316           <td>)</td>
317           <td></td><td></td>
318         </tr>
319       </table>
320 </div><div class="memdoc">
321
322 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00358">358</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
323
324 </div>
325 </div>
326 <a id="a71a8165cb15c7815aa95a8955f5cd7f6"></a>
327 <h2 class="memtitle"><span class="permalink"><a href="#a71a8165cb15c7815aa95a8955f5cd7f6">&#9670;&nbsp;</a></span>on_hangup()</h2>
328
329 <div class="memitem">
330 <div class="memproto">
331       <table class="memname">
332         <tr>
333           <td class="memname">void LibSoundmanager::on_hangup </td>
334           <td>(</td>
335           <td class="paramtype">void *&#160;</td>
336           <td class="paramname"><em>closure</em>, </td>
337         </tr>
338         <tr>
339           <td class="paramkey"></td>
340           <td></td>
341           <td class="paramtype">struct afb_wsj1 *&#160;</td>
342           <td class="paramname"><em>wsj</em>&#160;</td>
343         </tr>
344         <tr>
345           <td></td>
346           <td>)</td>
347           <td></td><td></td>
348         </tr>
349       </table>
350 </div><div class="memdoc">
351
352 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00342">342</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
353
354 </div>
355 </div>
356 <a id="a69b4f10e509605a570cc52c795bc9d51"></a>
357 <h2 class="memtitle"><span class="permalink"><a href="#a69b4f10e509605a570cc52c795bc9d51">&#9670;&nbsp;</a></span>on_reply()</h2>
358
359 <div class="memitem">
360 <div class="memproto">
361       <table class="memname">
362         <tr>
363           <td class="memname">void LibSoundmanager::on_reply </td>
364           <td>(</td>
365           <td class="paramtype">void *&#160;</td>
366           <td class="paramname"><em>closure</em>, </td>
367         </tr>
368         <tr>
369           <td class="paramkey"></td>
370           <td></td>
371           <td class="paramtype">struct afb_wsj1_msg *&#160;</td>
372           <td class="paramname"><em>msg</em>&#160;</td>
373         </tr>
374         <tr>
375           <td></td>
376           <td>)</td>
377           <td></td><td></td>
378         </tr>
379       </table>
380 </div><div class="memdoc">
381
382 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00369">369</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
383
384 </div>
385 </div>
386 <a id="a560edf9ae3b1e367ad4cbb31c7021d74"></a>
387 <h2 class="memtitle"><span class="permalink"><a href="#a560edf9ae3b1e367ad4cbb31c7021d74">&#9670;&nbsp;</a></span>register_callback()</h2>
388
389 <div class="memitem">
390 <div class="memproto">
391       <table class="memname">
392         <tr>
393           <td class="memname">void LibSoundmanager::register_callback </td>
394           <td>(</td>
395           <td class="paramtype">void(*)(const std::string &amp;<a class="el" href="structevent.html">event</a>, struct json_object *event_contents)&#160;</td>
396           <td class="paramname"><em>event_cb</em>, </td>
397         </tr>
398         <tr>
399           <td class="paramkey"></td>
400           <td></td>
401           <td class="paramtype">void(*)(struct json_object *reply_contents)&#160;</td>
402           <td class="paramname"><em>reply_cb</em>&#160;</td>
403         </tr>
404         <tr>
405           <td></td>
406           <td>)</td>
407           <td></td><td></td>
408         </tr>
409       </table>
410 </div><div class="memdoc">
411 <p>This function register callback function for reply/event message from sound manager</p>
412 <h4>Parameters</h4>
413 <ul>
414 <li>event_cb [in] : This argument should be specified to the callback for subscribed event</li>
415 <li>reply_cb [in] : This argument should be specified to the reply callback for call function</li>
416 </ul>
417 <h4>Rreturn</h4>
418 <ul>
419 <li>Returns 0 on success or -1 in case of error.</li>
420 </ul>
421 <h4>Note</h4>
422 <p>Event callback is invoked by sound manager for event you subscribed. If you would like to get event, please call subscribe function before/after this function </p>
423
424 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00119">119</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
425
426 </div>
427 </div>
428 <a id="abe71d3531e7888f47185a601b284e729"></a>
429 <h2 class="memtitle"><span class="permalink"><a href="#abe71d3531e7888f47185a601b284e729">&#9670;&nbsp;</a></span>run_eventloop()</h2>
430
431 <div class="memitem">
432 <div class="memproto">
433       <table class="memname">
434         <tr>
435           <td class="memname">int LibSoundmanager::run_eventloop </td>
436           <td>(</td>
437           <td class="paramname"></td><td>)</td>
438           <td></td>
439         </tr>
440       </table>
441 </div><div class="memdoc">
442 <p>This function start receiving the reply/event message from sound manager</p>
443 <h4>Parameters</h4>
444 <p>Nothing </p><h4>Rreturn</h4>
445 <ul>
446 <li>Returns thread_id on success or -1 in case of error.</li>
447 </ul>
448 <h4>Note</h4>
449
450 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00182">182</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
451
452 </div>
453 </div>
454 <a id="a9cd7c5470cb135f9b1aa56d790c7e91e"></a>
455 <h2 class="memtitle"><span class="permalink"><a href="#a9cd7c5470cb135f9b1aa56d790c7e91e">&#9670;&nbsp;</a></span>subscribe()</h2>
456
457 <div class="memitem">
458 <div class="memproto">
459       <table class="memname">
460         <tr>
461           <td class="memname">int LibSoundmanager::subscribe </td>
462           <td>(</td>
463           <td class="paramtype">const std::string &amp;&#160;</td>
464           <td class="paramname"><em>event_name</em></td><td>)</td>
465           <td></td>
466         </tr>
467       </table>
468 </div><div class="memdoc">
469 <p>Register callback function for each event</p>
470 <h4>Parameters</h4>
471 <ul>
472 <li>event_name [in] : This argument should be specified to the event name</li>
473 </ul>
474 <h4>Rreturn</h4>
475 <ul>
476 <li>Returns 0 on success or -1 in case of error.</li>
477 </ul>
478 <h4>Note</h4>
479 <p>This function enables to get an event to your callback function. Regarding the list of event name, please refer to CommandSender API and RountingSender API. </p>
480
481 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00255">255</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
482
483 </div>
484 </div>
485 <a id="a21060844aa7efad6473b6104546afb06"></a>
486 <h2 class="memtitle"><span class="permalink"><a href="#a21060844aa7efad6473b6104546afb06">&#9670;&nbsp;</a></span>unsubscribe()</h2>
487
488 <div class="memitem">
489 <div class="memproto">
490       <table class="memname">
491         <tr>
492           <td class="memname">int LibSoundmanager::unsubscribe </td>
493           <td>(</td>
494           <td class="paramtype">const std::string &amp;&#160;</td>
495           <td class="paramname"><em>event_name</em></td><td>)</td>
496           <td></td>
497         </tr>
498       </table>
499 </div><div class="memdoc">
500 <p>Unregister callback function for each event</p>
501 <h4>Parameters</h4>
502 <ul>
503 <li>event_name [in] : This argument should be specified to the event name</li>
504 </ul>
505 <h4>Rreturn</h4>
506 <ul>
507 <li>Returns 0 on success or -1 in case of error.</li>
508 </ul>
509 <h4>Note</h4>
510 <p>This function disables to get an event to your callback function. </p>
511
512 <p class="definition">Definition at line <a class="el" href="libsoundmanager_8cpp_source.html#l00284">284</a> of file <a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a>.</p>
513
514 </div>
515 </div>
516 <hr/>The documentation for this class was generated from the following files:<ul>
517 <li>SoundManagerBinding/include/libsoundmanager/<a class="el" href="libsoundmanager_8hpp_source.html">libsoundmanager.hpp</a></li>
518 <li>SoundManagerBinding/libsoundmanager/<a class="el" href="libsoundmanager_8cpp_source.html">libsoundmanager.cpp</a></li>
519 </ul>
520 </div><!-- contents -->
521 </div><!-- doc-content -->
522 <!-- start footer part -->
523 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
524   <ul>
525     <li class="navelem"><a class="el" href="class_lib_soundmanager.html">LibSoundmanager</a></li>
526     <li class="footer">Generated by
527     <a href="http://www.doxygen.org/index.html">
528     <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li>
529   </ul>
530 </div>
531 </body>
532 </html>