316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
|
<!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.13"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>HomeScreenBinding: src/hs-helper.c File Reference</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="../../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>
<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">HomeScreenBinding
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.13 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "../../search",false,'Search');
</script>
<script type="text/javascript" src="../../menudata.js"></script>
<script type="text/javascript" src="../../menu.js"></script>
<script type="text/javascript">
$(function() {
initMenu('../../',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
</script>
<div id="main-nav"></div>
<!-- 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 id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="../../dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">hs-helper.c File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include "<a class="el" href="../../d3/d3d/hs-helper_8h_source.html">hs-helper.h</a>"</code><br />
<code>#include <stdlib.h></code><br />
<code>#include <string.h></code><br />
<code>#include <limits.h></code><br />
<code>#include <json-c/json.h></code><br />
<code>#include <stdarg.h></code><br />
</div>
<p><a href="../../dd/d1d/hs-helper_8c_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:a649900645417f2df3a70b9ad67529f53"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899">REQ_ERROR</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#a649900645417f2df3a70b9ad67529f53">get_value_uint16</a> (const struct afb_req request, const char *source, uint16_t *out_id)</td></tr>
<tr class="separator:a649900645417f2df3a70b9ad67529f53"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2e62366684e39ea94436bf017e416827"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899">REQ_ERROR</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#a2e62366684e39ea94436bf017e416827">get_value_int16</a> (const struct afb_req request, const char *source, int16_t *out_id)</td></tr>
<tr class="separator:a2e62366684e39ea94436bf017e416827"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ac5b0370643c520377afd3fd4891918d2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899">REQ_ERROR</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#ac5b0370643c520377afd3fd4891918d2">get_value_int32</a> (const struct afb_req request, const char *source, int32_t *out_id)</td></tr>
<tr class="separator:ac5b0370643c520377afd3fd4891918d2"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a1ba31a6a94515ff1730ba0043a67d59e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#a1ba31a6a94515ff1730ba0043a67d59e">hs_add_object_to_json_object</a> (struct json_object *j_obj, int count,...)</td></tr>
<tr class="separator:a1ba31a6a94515ff1730ba0043a67d59e"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a8777c53f1d4d5412f19b134ad85ffedf"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#a8777c53f1d4d5412f19b134ad85ffedf">hs_add_object_to_json_object_str</a> (struct json_object *j_obj, int count,...)</td></tr>
<tr class="separator:a8777c53f1d4d5412f19b134ad85ffedf"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:ae83604a37134e7bdee3ce4f10bb0b47a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#ae83604a37134e7bdee3ce4f10bb0b47a">hs_add_object_to_json_object_func</a> (struct json_object *j_obj, const char *verb_name, int count,...)</td></tr>
<tr class="separator:ae83604a37134e7bdee3ce4f10bb0b47a"><td class="memSeparator" colspan="2"> </td></tr>
<tr class="memitem:a2ff1b894941c3b461ca8119079c4146a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="../../dd/d1d/hs-helper_8c.html#a2ff1b894941c3b461ca8119079c4146a">hs_search_event_name_index</a> (const char *value)</td></tr>
<tr class="separator:a2ff1b894941c3b461ca8119079c4146a"><td class="memSeparator" colspan="2"> </td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="a2e62366684e39ea94436bf017e416827"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2e62366684e39ea94436bf017e416827">◆ </a></span>get_value_int16()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899">REQ_ERROR</a> get_value_int16 </td>
<td>(</td>
<td class="paramtype">const struct afb_req </td>
<td class="paramname"><em>request</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>source</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int16_t * </td>
<td class="paramname"><em>out_id</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00048">48</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno"> 49</span> {</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keywordtype">char</span>* endptr;</div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* tmp = afb_req_value (request, source);</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  <span class="keywordflow">if</span>(!tmp)</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  {</div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1">REQ_FAIL</a>;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  }</div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordtype">long</span> tmp_id = strtol(tmp,&endptr,10);</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  <span class="comment">/* error check of range */</span></div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  <span class="keywordflow">if</span>( (tmp_id > INT16_MAX) || (tmp_id < INT16_MIN) )</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  {</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b">OUT_RANGE</a>;</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  }</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordflow">if</span>(*endptr != <span class="charliteral">'\0'</span>)</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  {</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a">NOT_NUMBER</a>;</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  }</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span>  *out_id = (int16_t)tmp_id;</div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee">REQ_OK</a>;</div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div><div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1">REQ_FAIL</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00028">hs-helper.h:28</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b">OUT_RANGE</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00031">hs-helper.h:31</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a">NOT_NUMBER</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00030">hs-helper.h:30</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee">REQ_OK</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00029">hs-helper.h:29</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="ac5b0370643c520377afd3fd4891918d2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac5b0370643c520377afd3fd4891918d2">◆ </a></span>get_value_int32()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899">REQ_ERROR</a> get_value_int32 </td>
<td>(</td>
<td class="paramtype">const struct afb_req </td>
<td class="paramname"><em>request</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>source</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int32_t * </td>
<td class="paramname"><em>out_id</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00072">72</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00073"></a><span class="lineno"> 73</span> {</div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  <span class="keywordtype">char</span>* endptr;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* tmp = afb_req_value (request, source);</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">if</span>(!tmp)</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  {</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1">REQ_FAIL</a>;</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  }</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  <span class="keywordtype">long</span> tmp_id = strtol(tmp,&endptr,10);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span>  <span class="comment">/* error check of range */</span></div><div class="line"><a name="l00083"></a><span class="lineno"> 83</span>  <span class="keywordflow">if</span>( (tmp_id > INT32_MAX) || (tmp_id < INT32_MIN) )</div><div class="line"><a name="l00084"></a><span class="lineno"> 84</span>  {</div><div class="line"><a name="l00085"></a><span class="lineno"> 85</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b">OUT_RANGE</a>;</div><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>  }</div><div class="line"><a name="l00087"></a><span class="lineno"> 87</span>  <span class="keywordflow">if</span>(*endptr != <span class="charliteral">'\0'</span>)</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>  {</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a">NOT_NUMBER</a>;</div><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>  }</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>  *out_id = (int32_t)tmp_id;</div><div class="line"><a name="l00093"></a><span class="lineno"> 93</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee">REQ_OK</a>;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div><div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1">REQ_FAIL</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00028">hs-helper.h:28</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b">OUT_RANGE</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00031">hs-helper.h:31</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a">NOT_NUMBER</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00030">hs-helper.h:30</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee">REQ_OK</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00029">hs-helper.h:29</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a649900645417f2df3a70b9ad67529f53"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a649900645417f2df3a70b9ad67529f53">◆ </a></span>get_value_uint16()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899">REQ_ERROR</a> get_value_uint16 </td>
<td>(</td>
<td class="paramtype">const struct afb_req </td>
<td class="paramname"><em>request</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>source</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint16_t * </td>
<td class="paramname"><em>out_id</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00024">24</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00025"></a><span class="lineno"> 25</span> {</div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>  <span class="keywordtype">char</span>* endptr;</div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>  <span class="keyword">const</span> <span class="keywordtype">char</span>* tmp = afb_req_value (request, source);</div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>  <span class="keywordflow">if</span>(!tmp)</div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>  {</div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1">REQ_FAIL</a>;</div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>  }</div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>  <span class="keywordtype">long</span> tmp_id = strtol(tmp,&endptr,10);</div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  <span class="comment">/* error check of range */</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>  <span class="keywordflow">if</span>( (tmp_id > UINT16_MAX) || (tmp_id < 0) )</div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  {</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b">OUT_RANGE</a>;</div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  }</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <span class="keywordflow">if</span>(*endptr != <span class="charliteral">'\0'</span>)</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  {</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a">NOT_NUMBER</a>;</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>  }</div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  *out_id = (uint16_t)tmp_id;</div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  <span class="keywordflow">return</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee">REQ_OK</a>;</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div><div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899a96a855966bc63045222b3dcac524cee1">REQ_FAIL</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00028">hs-helper.h:28</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899add1c84bf80c5f80741ee8f37fef1e12b">OUT_RANGE</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00031">hs-helper.h:31</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899aa223eed65c9bee2bf1f4cdecaf90d66a">NOT_NUMBER</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00030">hs-helper.h:30</a></div></div>
<div class="ttc" id="hs-helper_8h_html_aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#aa49f1dbbf26f01627a5737cf43aad899ab093abb14c097b3b7719debb04d5e8ee">REQ_OK</a></div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00029">hs-helper.h:29</a></div></div>
</div><!-- fragment -->
</div>
</div>
<a id="a1ba31a6a94515ff1730ba0043a67d59e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1ba31a6a94515ff1730ba0043a67d59e">◆ </a></span>hs_add_object_to_json_object()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void hs_add_object_to_json_object </td>
<td>(</td>
<td class="paramtype">struct json_object * </td>
<td class="paramname"><em>j_obj</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"><em>count</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
<td class="paramname"><em>...</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00096">96</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00097"></a><span class="lineno"> 97</span> {</div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  va_list args;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span>  va_start(args, count);</div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i < count; ++i )</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keywordtype">char</span> *key = va_arg(args, <span class="keywordtype">char</span>*);</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  <span class="keywordtype">int</span> value = va_arg(args, <span class="keywordtype">int</span>);</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  json_object_object_add(j_obj, key, json_object_new_int((int32_t)value));</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  ++i;</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>  }</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>  va_end(args);</div><div class="line"><a name="l00108"></a><span class="lineno"> 108</span> }</div></div><!-- fragment -->
</div>
</div>
<a id="ae83604a37134e7bdee3ce4f10bb0b47a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae83604a37134e7bdee3ce4f10bb0b47a">◆ </a></span>hs_add_object_to_json_object_func()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void hs_add_object_to_json_object_func </td>
<td>(</td>
<td class="paramtype">struct json_object * </td>
<td class="paramname"><em>j_obj</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>verb_name</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"><em>count</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
<td class="paramname"><em>...</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00125">125</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00126"></a><span class="lineno"> 126</span> {</div><div class="line"><a name="l00127"></a><span class="lineno"> 127</span>  va_list args;</div><div class="line"><a name="l00128"></a><span class="lineno"> 128</span>  va_start(args, count);</div><div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div><div class="line"><a name="l00130"></a><span class="lineno"> 130</span>  json_object_object_add(j_obj,<span class="stringliteral">"verb"</span>, json_object_new_string(verb_name));</div><div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div><div class="line"><a name="l00132"></a><span class="lineno"> 132</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i < count; ++i )</div><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  <span class="keywordtype">char</span> *key = va_arg(args, <span class="keywordtype">char</span>*);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="keywordtype">int</span> value = va_arg(args, <span class="keywordtype">int</span>);</div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  json_object_object_add(j_obj, key, json_object_new_int((int32_t)value));</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  ++i;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  }</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  va_end(args);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div></div><!-- fragment -->
</div>
</div>
<a id="a8777c53f1d4d5412f19b134ad85ffedf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8777c53f1d4d5412f19b134ad85ffedf">◆ </a></span>hs_add_object_to_json_object_str()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void hs_add_object_to_json_object_str </td>
<td>(</td>
<td class="paramtype">struct json_object * </td>
<td class="paramname"><em>j_obj</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">int </td>
<td class="paramname"><em>count</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype"> </td>
<td class="paramname"><em>...</em> </td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00110">110</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00111"></a><span class="lineno"> 111</span> {</div><div class="line"><a name="l00112"></a><span class="lineno"> 112</span>  va_list args;</div><div class="line"><a name="l00113"></a><span class="lineno"> 113</span>  va_start(args, count);</div><div class="line"><a name="l00114"></a><span class="lineno"> 114</span>  <span class="keywordflow">for</span>(<span class="keywordtype">int</span> i = 0; i < count; ++i )</div><div class="line"><a name="l00115"></a><span class="lineno"> 115</span>  {</div><div class="line"><a name="l00116"></a><span class="lineno"> 116</span>  <span class="keywordtype">char</span> *key = va_arg(args, <span class="keywordtype">char</span>*);</div><div class="line"><a name="l00117"></a><span class="lineno"> 117</span>  <span class="keywordtype">char</span> *value = va_arg(args, <span class="keywordtype">char</span>*);</div><div class="line"><a name="l00118"></a><span class="lineno"> 118</span>  json_object_object_add(j_obj, key, json_object_new_string(value));</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>  ++i;</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>  }</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>  va_end(args);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span> }</div></div><!-- fragment -->
</div>
</div>
<a id="a2ff1b894941c3b461ca8119079c4146a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2ff1b894941c3b461ca8119079c4146a">◆ </a></span>hs_search_event_name_index()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">int hs_search_event_name_index </td>
<td>(</td>
<td class="paramtype">const char * </td>
<td class="paramname"><em>value</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="../../dd/d1d/hs-helper_8c_source.html#l00142">142</a> of file <a class="el" href="../../dd/d1d/hs-helper_8c_source.html">hs-helper.c</a>.</p>
<div class="fragment"><div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  <span class="keywordtype">size_t</span> buf_size = 50;</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <span class="keywordtype">size_t</span> size = <span class="keyword">sizeof</span> <a class="code" href="../../d3/d3d/hs-helper_8h.html#a0cd84b1a2184c9b84d1b7bf24582f28e">evlist</a> / <span class="keyword">sizeof</span> *<a class="code" href="../../d3/d3d/hs-helper_8h.html#a0cd84b1a2184c9b84d1b7bf24582f28e">evlist</a>;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="keywordtype">int</span> ret = -1;</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordflow">for</span>(<span class="keywordtype">size_t</span> i = 0 ; i < size ; ++i)</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  {</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  <span class="keywordflow">if</span>(!strncmp(value, <a class="code" href="../../d3/d3d/hs-helper_8h.html#a0cd84b1a2184c9b84d1b7bf24582f28e">evlist</a>[i], buf_size))</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  {</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  ret = i;</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  }</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  }</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  <span class="keywordflow">return</span> ret;</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span> }</div><div class="ttc" id="hs-helper_8h_html_a0cd84b1a2184c9b84d1b7bf24582f28e"><div class="ttname"><a href="../../d3/d3d/hs-helper_8h.html#a0cd84b1a2184c9b84d1b7bf24582f28e">evlist</a></div><div class="ttdeci">static const char * evlist[]</div><div class="ttdef"><b>Definition:</b> <a href="../../d3/d3d/hs-helper_8h_source.html#l00034">hs-helper.h:34</a></div></div>
</div><!-- fragment -->
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by  <a href="http://www.doxygen.org/index.html">
<img class="footer" src="../../doxygen.png" alt="doxygen"/>
</a> 1.8.13
</small></address>
</body>
</html>
|