Updated documentation

This commit is contained in:
Kristian Lauszus 2014-01-19 17:17:06 +01:00
parent c9f6f2e71b
commit 2b2d492fed
294 changed files with 7861 additions and 4106 deletions

File diff suppressed because it is too large Load diff

View file

@ -105,7 +105,7 @@ This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_b_t_d_8h__dep__incl.png" border="0" usemap="#_b_t_d_8hdep" alt=""/></div>
<map name="_b_t_d_8hdep" id="_b_t_d_8hdep">
<area shape="rect" id="node2" href="_b_t_d_8cpp.html" title="BTD.cpp" alt="" coords="21,83,93,111"/><area shape="rect" id="node3" href="_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="118,83,191,111"/><area shape="rect" id="node7" href="_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="219,83,292,111"/><area shape="rect" id="node9" href="_s_p_p_8h.html" title="SPP.h" alt="" coords="323,83,380,111"/><area shape="rect" id="node11" href="_wii_8h.html" title="Wii.h" alt="" coords="419,83,469,111"/><area shape="rect" id="node4" href="_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="5,161,91,189"/><area shape="rect" id="node5" href="_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="115,161,188,189"/><area shape="rect" id="node6" href="_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="108,238,195,266"/><area shape="rect" id="node8" href="_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="212,161,299,189"/><area shape="rect" id="node10" href="_s_p_p_8cpp.html" title="SPP.cpp" alt="" coords="324,161,395,189"/><area shape="rect" id="node12" href="_wii_8cpp.html" title="Wii.cpp" alt="" coords="419,161,484,189"/></map>
<area shape="rect" id="node2" href="_b_t_d_8cpp.html" title="BTD.cpp" alt="" coords="21,83,93,111"/><area shape="rect" id="node3" href="_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="118,83,191,111"/><area shape="rect" id="node6" href="_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="219,83,292,111"/><area shape="rect" id="node8" href="_s_p_p_8h.html" title="SPP.h" alt="" coords="323,83,380,111"/><area shape="rect" id="node10" href="_wii_8h.html" title="Wii.h" alt="" coords="419,83,469,111"/><area shape="rect" id="node4" href="_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="5,161,91,189"/><area shape="rect" id="node5" href="_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="115,161,188,189"/><area shape="rect" id="node7" href="_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="212,161,299,189"/><area shape="rect" id="node9" href="_s_p_p_8cpp.html" title="SPP.cpp" alt="" coords="324,161,395,189"/><area shape="rect" id="node11" href="_wii_8cpp.html" title="Wii.cpp" alt="" coords="419,161,484,189"/></map>
</div>
</div>
<p><a href="_b_t_d_8h_source.html">Go to the source code of this file.</a></p>
@ -353,8 +353,8 @@ Macros</h2></td></tr>
<tr class="separator:a05903a9351c5ced6b8be27b2869e62af"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aee41c4878894db24e7ad8cd6246595cd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_b_t_d_8h.html#aee41c4878894db24e7ad8cd6246595cd">BTD_MAX_ENDPOINTS</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:aee41c4878894db24e7ad8cd6246595cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2222709eed4c8af293e881ea36f599b0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_b_t_d_8h.html#a2222709eed4c8af293e881ea36f599b0">BTD_NUMSERVICES</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a2222709eed4c8af293e881ea36f599b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afeaafddda417fd2f053dbd476332ea19"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_b_t_d_8h.html#afeaafddda417fd2f053dbd476332ea19">BTD_NUM_SERVICES</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:afeaafddda417fd2f053dbd476332ea19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f0b5b0dedaf5c25c4887f03ebfdd425"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_b_t_d_8h.html#a8f0b5b0dedaf5c25c4887f03ebfdd425">PAIR</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a8f0b5b0dedaf5c25c4887f03ebfdd425"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3aa6623f7fa8839754d3deefa6d60372"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_b_t_d_8h.html#a3aa6623f7fa8839754d3deefa6d60372">UHS_ACL_HANDLE_OK</a>(x, y)&#160;&#160;&#160;((x[0] == (y &amp; 0xff)) &amp;&amp; (x[1] == ((y &gt;&gt; 8) | 0x20)))</td></tr>
@ -2023,12 +2023,12 @@ Macros</h2></td></tr>
</div>
</div>
<a class="anchor" id="a2222709eed4c8af293e881ea36f599b0"></a>
<a class="anchor" id="afeaafddda417fd2f053dbd476332ea19"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BTD_NUMSERVICES&#160;&#160;&#160;4</td>
<td class="memname">#define BTD_NUM_SERVICES&#160;&#160;&#160;4</td>
</tr>
</table>
</div><div class="memdoc">

View file

@ -1,13 +1,12 @@
<map id="BTD.h" name="BTD.h">
<area shape="rect" id="node2" href="$_b_t_d_8cpp.html" title="BTD.cpp" alt="" coords="21,83,93,111"/>
<area shape="rect" id="node3" href="$_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="118,83,191,111"/>
<area shape="rect" id="node7" href="$_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="219,83,292,111"/>
<area shape="rect" id="node9" href="$_s_p_p_8h.html" title="SPP.h" alt="" coords="323,83,380,111"/>
<area shape="rect" id="node11" href="$_wii_8h.html" title="Wii.h" alt="" coords="419,83,469,111"/>
<area shape="rect" id="node6" href="$_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="219,83,292,111"/>
<area shape="rect" id="node8" href="$_s_p_p_8h.html" title="SPP.h" alt="" coords="323,83,380,111"/>
<area shape="rect" id="node10" href="$_wii_8h.html" title="Wii.h" alt="" coords="419,83,469,111"/>
<area shape="rect" id="node4" href="$_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="5,161,91,189"/>
<area shape="rect" id="node5" href="$_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="115,161,188,189"/>
<area shape="rect" id="node6" href="$_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="108,238,195,266"/>
<area shape="rect" id="node8" href="$_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="212,161,299,189"/>
<area shape="rect" id="node10" href="$_s_p_p_8cpp.html" title="SPP.cpp" alt="" coords="324,161,395,189"/>
<area shape="rect" id="node12" href="$_wii_8cpp.html" title="Wii.cpp" alt="" coords="419,161,484,189"/>
<area shape="rect" id="node7" href="$_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="212,161,299,189"/>
<area shape="rect" id="node9" href="$_s_p_p_8cpp.html" title="SPP.cpp" alt="" coords="324,161,395,189"/>
<area shape="rect" id="node11" href="$_wii_8cpp.html" title="Wii.cpp" alt="" coords="419,161,484,189"/>
</map>

View file

@ -1 +1 @@
359d0fb9802ea91c25ab343278928ac0
a586d33041837831328e4bd5a24cb1bb

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -278,7 +278,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="_b_t_d_8h.html#a05903a9351c5ced6b8be27b2869e62af"> 187</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define WI_PROTOCOL_BT 0x01 // Bluetooth Programming Interface</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00189"></a><span class="lineno"><a class="line" href="_b_t_d_8h.html#aee41c4878894db24e7ad8cd6246595cd"> 189</a></span>&#160;<span class="preprocessor">#define BTD_MAX_ENDPOINTS 4</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="_b_t_d_8h.html#a2222709eed4c8af293e881ea36f599b0"> 190</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define BTD_NUMSERVICES 4 // Max number of Bluetooth services - if you need more than 4 simply increase this number</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="_b_t_d_8h.html#afeaafddda417fd2f053dbd476332ea19"> 190</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define BTD_NUM_SERVICES 4 // Max number of Bluetooth services - if you need more than 4 simply increase this number</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="_b_t_d_8h.html#a8f0b5b0dedaf5c25c4887f03ebfdd425"> 192</a></span>&#160;<span class="preprocessor">#define PAIR 1</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="preprocessor"></span></div>
@ -338,13 +338,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; };</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_d.html#a23928cd0e5711a2433aec763cfa55773">EndpointXtract</a>(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, <span class="keyword">const</span> <a class="code" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html">USB_ENDPOINT_DESCRIPTOR</a> *ep);</div>
<div class="line"><a name="l00322"></a><span class="lineno"><a class="line" href="class_b_t_d.html#a610183f9ddf04155ef2612d1839af7da"> 322</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_d.html#a610183f9ddf04155ef2612d1839af7da">disconnect</a>() {</div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">for</span>(uint8_t i = 0; i &lt; <a class="code" href="_b_t_d_8h.html#a2222709eed4c8af293e881ea36f599b0">BTD_NUMSERVICES</a>; i++)</div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="keywordflow">for</span>(uint8_t i = 0; i &lt; <a class="code" href="_b_t_d_8h.html#afeaafddda417fd2f053dbd476332ea19">BTD_NUM_SERVICES</a>; i++)</div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; <span class="keywordflow">if</span>(btService[i])</div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; btService[i]-&gt;<a class="code" href="class_bluetooth_service.html#a66ee2f09c6087b82e3920c3d652a99b2">disconnect</a>();</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="l00333"></a><span class="lineno"><a class="line" href="class_b_t_d.html#a4adfc7e51ad3b3c03e7c37d1af159e73"> 333</a></span>&#160; int8_t <a class="code" href="class_b_t_d.html#a4adfc7e51ad3b3c03e7c37d1af159e73">registerServiceClass</a>(<a class="code" href="class_bluetooth_service.html">BluetoothService</a> *pService) {</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">for</span>(uint8_t i = 0; i &lt; <a class="code" href="_b_t_d_8h.html#a2222709eed4c8af293e881ea36f599b0">BTD_NUMSERVICES</a>; i++) {</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <span class="keywordflow">for</span>(uint8_t i = 0; i &lt; <a class="code" href="_b_t_d_8h.html#afeaafddda417fd2f053dbd476332ea19">BTD_NUM_SERVICES</a>; i++) {</div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">if</span>(!btService[i]) {</div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; btService[i] = pService;</div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">return</span> i; <span class="comment">// Return ID</span></div>
@ -391,7 +391,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00485"></a><span class="lineno"><a class="line" href="class_b_t_d.html#a1f8e9171a310e50f2c4a3c19066efe5a"> 485</a></span>&#160; uint8_t <a class="code" href="class_b_t_d.html#a1f8e9171a310e50f2c4a3c19066efe5a">my_bdaddr</a>[6];</div>
<div class="line"><a name="l00487"></a><span class="lineno"><a class="line" href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98"> 487</a></span>&#160; uint16_t <a class="code" href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">hci_handle</a>;</div>
<div class="line"><a name="l00489"></a><span class="lineno"><a class="line" href="class_b_t_d.html#ab23f95f12675d7b4505ca6807d379182"> 489</a></span>&#160; uint8_t <a class="code" href="class_b_t_d.html#ab23f95f12675d7b4505ca6807d379182">disc_bdaddr</a>[6];</div>
<div class="line"><a name="l00491"></a><span class="lineno"><a class="line" href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e"> 491</a></span>&#160; uint8_t <a class="code" href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e">remote_name</a>[30];</div>
<div class="line"><a name="l00491"></a><span class="lineno"><a class="line" href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa"> 491</a></span>&#160; <span class="keywordtype">char</span> <a class="code" href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa">remote_name</a>[30];</div>
<div class="line"><a name="l00497"></a><span class="lineno"><a class="line" href="class_b_t_d.html#addaddee110af23a3195ad56f631e69ea"> 497</a></span>&#160; uint8_t <a class="code" href="class_b_t_d.html#addaddee110af23a3195ad56f631e69ea">hci_version</a>;</div>
<div class="line"><a name="l00498"></a><span class="lineno"> 498</span>&#160;</div>
<div class="line"><a name="l00500"></a><span class="lineno"><a class="line" href="class_b_t_d.html#a6b66a27c0fd359e3129f53451352b55c"> 500</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_d.html#a6b66a27c0fd359e3129f53451352b55c">pairWithWiimote</a>() {</div>
@ -434,7 +434,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00564"></a><span class="lineno"> 564</span>&#160;</div>
<div class="line"><a name="l00565"></a><span class="lineno"> 565</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00566"></a><span class="lineno"> 566</span>&#160; <span class="keywordtype">void</span> Initialize(); <span class="comment">// Set all variables, endpoint structs etc. to default values</span></div>
<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <a class="code" href="class_bluetooth_service.html">BluetoothService</a>* btService[<a class="code" href="_b_t_d_8h.html#a2222709eed4c8af293e881ea36f599b0">BTD_NUMSERVICES</a>];</div>
<div class="line"><a name="l00567"></a><span class="lineno"> 567</span>&#160; <a class="code" href="class_bluetooth_service.html">BluetoothService</a> *btService[<a class="code" href="_b_t_d_8h.html#afeaafddda417fd2f053dbd476332ea19">BTD_NUM_SERVICES</a>];</div>
<div class="line"><a name="l00568"></a><span class="lineno"> 568</span>&#160;</div>
<div class="line"><a name="l00569"></a><span class="lineno"> 569</span>&#160; uint16_t PID, VID; <span class="comment">// PID and VID of device connected</span></div>
<div class="line"><a name="l00570"></a><span class="lineno"> 570</span>&#160;</div>
@ -445,15 +445,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00575"></a><span class="lineno"> 575</span>&#160; uint8_t classOfDevice[3]; <span class="comment">// Class of device of last device</span></div>
<div class="line"><a name="l00576"></a><span class="lineno"> 576</span>&#160;</div>
<div class="line"><a name="l00577"></a><span class="lineno"> 577</span>&#160; <span class="comment">/* Variables used by high level HCI task */</span></div>
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; uint8_t hci_state; <span class="comment">//current state of bluetooth hci connection</span></div>
<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; uint16_t hci_counter; <span class="comment">// counter used for bluetooth hci reset loops</span></div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; uint16_t hci_num_reset_loops; <span class="comment">// this value indicate how many times it should read before trying to reset</span></div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; uint16_t hci_event_flag; <span class="comment">// hci flags of received bluetooth events</span></div>
<div class="line"><a name="l00578"></a><span class="lineno"> 578</span>&#160; uint8_t hci_state; <span class="comment">// Current state of Bluetooth HCI connection</span></div>
<div class="line"><a name="l00579"></a><span class="lineno"> 579</span>&#160; uint16_t hci_counter; <span class="comment">// Counter used for Bluetooth HCI reset loops</span></div>
<div class="line"><a name="l00580"></a><span class="lineno"> 580</span>&#160; uint16_t hci_num_reset_loops; <span class="comment">// This value indicate how many times it should read before trying to reset</span></div>
<div class="line"><a name="l00581"></a><span class="lineno"> 581</span>&#160; uint16_t hci_event_flag; <span class="comment">// HCI flags of received Bluetooth events</span></div>
<div class="line"><a name="l00582"></a><span class="lineno"> 582</span>&#160; uint8_t inquiry_counter;</div>
<div class="line"><a name="l00583"></a><span class="lineno"> 583</span>&#160;</div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; uint8_t hcibuf[<a class="code" href="_b_t_d_8h.html#a32d591ef5742a99963130616ef146787">BULK_MAXPKTSIZE</a>]; <span class="comment">//General purpose buffer for hci data</span></div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; uint8_t l2capinbuf[<a class="code" href="_b_t_d_8h.html#a32d591ef5742a99963130616ef146787">BULK_MAXPKTSIZE</a>]; <span class="comment">//General purpose buffer for l2cap in data</span></div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; uint8_t l2capoutbuf[14]; <span class="comment">//General purpose buffer for l2cap out data</span></div>
<div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160; uint8_t hcibuf[<a class="code" href="_b_t_d_8h.html#a32d591ef5742a99963130616ef146787">BULK_MAXPKTSIZE</a>]; <span class="comment">// General purpose buffer for HCI data</span></div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; uint8_t l2capinbuf[<a class="code" href="_b_t_d_8h.html#a32d591ef5742a99963130616ef146787">BULK_MAXPKTSIZE</a>]; <span class="comment">// General purpose buffer for L2CAP in data</span></div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; uint8_t l2capoutbuf[14]; <span class="comment">// General purpose buffer for L2CAP out data</span></div>
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160;</div>
<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="comment">/* State machines */</span></div>
<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160; <span class="keywordtype">void</span> HCI_event_task(); <span class="comment">// Poll the HCI event pipe</span></div>
@ -467,41 +467,42 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00597"></a><span class="lineno"> 597</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="class_b_t_d_html_a0d82870f7eef8c27c33e6f5989d7a4dd"><div class="ttname"><a href="class_b_t_d.html#a0d82870f7eef8c27c33e6f5989d7a4dd">BTD::BTD_DATAOUT_PIPE</a></div><div class="ttdeci">static const uint8_t BTD_DATAOUT_PIPE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00557">BTD.h:557</a></div></div>
<div class="ttc" id="class_b_t_d_html_a4dc8f94fe85028f3d54f13dde1e5b4ee"><div class="ttname"><a href="class_b_t_d.html#a4dc8f94fe85028f3d54f13dde1e5b4ee">BTD::incomingWii</a></div><div class="ttdeci">bool incomingWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00507">BTD.h:507</a></div></div>
<div class="ttc" id="class_b_t_d_html_ae7066ea743f8907708db945ebef3ad76"><div class="ttname"><a href="class_b_t_d.html#ae7066ea743f8907708db945ebef3ad76">BTD::hci_connect</a></div><div class="ttdeci">void hci_connect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01045">BTD.cpp:1045</a></div></div>
<div class="ttc" id="class_b_t_d_html_ae7066ea743f8907708db945ebef3ad76"><div class="ttname"><a href="class_b_t_d.html#ae7066ea743f8907708db945ebef3ad76">BTD::hci_connect</a></div><div class="ttdeci">void hci_connect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01042">BTD.cpp:1042</a></div></div>
<div class="ttc" id="class_b_t_d_html_a893dd35932821cddda7e482a1904af66"><div class="ttname"><a href="class_b_t_d.html#a893dd35932821cddda7e482a1904af66">BTD::bNumEP</a></div><div class="ttdeci">uint8_t bNumEP</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00546">BTD.h:546</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0359c0c158c864c27319810cbd1534f9"><div class="ttname"><a href="class_b_t_d.html#a0359c0c158c864c27319810cbd1534f9">BTD::btdName</a></div><div class="ttdeci">const char * btdName</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00480">BTD.h:480</a></div></div>
<div class="ttc" id="class_b_t_d_html_ae6f942eabd29257bc4896e5f263275b6"><div class="ttname"><a href="class_b_t_d.html#ae6f942eabd29257bc4896e5f263275b6">BTD::hci_reset</a></div><div class="ttdeci">void hci_reset()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00927">BTD.cpp:927</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01234">BTD.cpp:1234</a></div></div>
<div class="ttc" id="class_b_t_d_html_a55cf412a2053972a353b1ab964ca9d3e"><div class="ttname"><a href="class_b_t_d.html#a55cf412a2053972a353b1ab964ca9d3e">BTD::l2cap_connection_request</a></div><div class="ttdeci">void l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t *scid, uint16_t psm)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01221">BTD.cpp:1221</a></div></div>
<div class="ttc" id="class_b_t_d_html_ae6f942eabd29257bc4896e5f263275b6"><div class="ttname"><a href="class_b_t_d.html#ae6f942eabd29257bc4896e5f263275b6">BTD::hci_reset</a></div><div class="ttdeci">void hci_reset()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00924">BTD.cpp:924</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01231">BTD.cpp:1231</a></div></div>
<div class="ttc" id="class_b_t_d_html_a55cf412a2053972a353b1ab964ca9d3e"><div class="ttname"><a href="class_b_t_d.html#a55cf412a2053972a353b1ab964ca9d3e">BTD::l2cap_connection_request</a></div><div class="ttdeci">void l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t *scid, uint16_t psm)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01218">BTD.cpp:1218</a></div></div>
<div class="ttc" id="class_b_t_d_html_af5e5b085cec1da5c83c75e80e95b3590"><div class="ttname"><a href="class_b_t_d.html#af5e5b085cec1da5c83c75e80e95b3590">BTD::sdpConnectionClaimed</a></div><div class="ttdeci">bool sdpConnectionClaimed</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00475">BTD.h:475</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="class_b_t_d_html_a8760371377c1ba08292b6cc71824754e"><div class="ttname"><a href="class_b_t_d.html#a8760371377c1ba08292b6cc71824754e">BTD::DEVCLASSOK</a></div><div class="ttdeci">virtual boolean DEVCLASSOK(uint8_t klass)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00287">BTD.h:287</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01287">BTD.cpp:1287</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01284">BTD.cpp:1284</a></div></div>
<div class="ttc" id="class_b_t_d_html_a9e5a34242007b64cd6a226cfd1901e74"><div class="ttname"><a href="class_b_t_d.html#a9e5a34242007b64cd6a226cfd1901e74">BTD::rfcommConnectionClaimed</a></div><div class="ttdeci">bool rfcommConnectionClaimed</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00477">BTD.h:477</a></div></div>
<div class="ttc" id="class_b_t_d_html_addaddee110af23a3195ad56f631e69ea"><div class="ttname"><a href="class_b_t_d.html#addaddee110af23a3195ad56f631e69ea">BTD::hci_version</a></div><div class="ttdeci">uint8_t hci_version</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00497">BTD.h:497</a></div></div>
<div class="ttc" id="class_b_t_d_html_a678f2c995553ce6a9f48f9b59f2f1555"><div class="ttname"><a href="class_b_t_d.html#a678f2c995553ce6a9f48f9b59f2f1555">BTD::hci_inquiry</a></div><div class="ttdeci">void hci_inquiry()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01023">BTD.cpp:1023</a></div></div>
<div class="ttc" id="class_b_t_d_html_a678f2c995553ce6a9f48f9b59f2f1555"><div class="ttname"><a href="class_b_t_d.html#a678f2c995553ce6a9f48f9b59f2f1555">BTD::hci_inquiry</a></div><div class="ttdeci">void hci_inquiry()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01020">BTD.cpp:1020</a></div></div>
<div class="ttc" id="class_b_t_d_html_a24166c9b308925eeb2f635fae43ca5ec"><div class="ttname"><a href="class_b_t_d.html#a24166c9b308925eeb2f635fae43ca5ec">BTD::BTD_EVENT_PIPE</a></div><div class="ttdeci">static const uint8_t BTD_EVENT_PIPE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00553">BTD.h:553</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_afc242b8a1b867f79c49ad78e3a47b37f"><div class="ttname"><a href="_b_t_d_8h.html#afc242b8a1b867f79c49ad78e3a47b37f">PS3MOVE_PID</a></div><div class="ttdeci">#define PS3MOVE_PID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00027">BTD.h:27</a></div></div>
<div class="ttc" id="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r_html"><div class="ttname"><a href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html">USB_ENDPOINT_DESCRIPTOR</a></div><div class="ttdef"><b>Definition:</b> <a href="usb__ch9_8h_source.html#l00141">usb_ch9.h:141</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0c8cc2a2dd2cda3e760b8b4c1a2d169c"><div class="ttname"><a href="class_b_t_d.html#a0c8cc2a2dd2cda3e760b8b4c1a2d169c">BTD::pairWithWii</a></div><div class="ttdeci">bool pairWithWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00509">BTD.h:509</a></div></div>
<div class="ttc" id="class_b_t_d_html_aff59ab45d917406141ae0c9c79047f08"><div class="ttname"><a href="class_b_t_d.html#aff59ab45d917406141ae0c9c79047f08">BTD::hci_write_scan_disable</a></div><div class="ttdeci">void hci_write_scan_disable()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00949">BTD.cpp:949</a></div></div>
<div class="ttc" id="class_b_t_d_html_aff59ab45d917406141ae0c9c79047f08"><div class="ttname"><a href="class_b_t_d.html#aff59ab45d917406141ae0c9c79047f08">BTD::hci_write_scan_disable</a></div><div class="ttdeci">void hci_write_scan_disable()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00946">BTD.cpp:946</a></div></div>
<div class="ttc" id="class_b_t_d_html_a23928cd0e5711a2433aec763cfa55773"><div class="ttname"><a href="class_b_t_d.html#a23928cd0e5711a2433aec763cfa55773">BTD::EndpointXtract</a></div><div class="ttdeci">virtual void EndpointXtract(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00314">BTD.cpp:314</a></div></div>
<div class="ttc" id="class_b_t_d_html_aecdd9d00fc9c12bb3677ed213a6687c3"><div class="ttname"><a href="class_b_t_d.html#aecdd9d00fc9c12bb3677ed213a6687c3">BTD::GetAddress</a></div><div class="ttdeci">virtual uint8_t GetAddress()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00270">BTD.h:270</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_afeaafddda417fd2f053dbd476332ea19"><div class="ttname"><a href="_b_t_d_8h.html#afeaafddda417fd2f053dbd476332ea19">BTD_NUM_SERVICES</a></div><div class="ttdeci">#define BTD_NUM_SERVICES</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00190">BTD.h:190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a215cb939c01ed3ff56db37841224546c"><div class="ttname"><a href="class_b_t_d.html#a215cb939c01ed3ff56db37841224546c">BTD::btdPin</a></div><div class="ttdeci">const char * btdPin</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00482">BTD.h:482</a></div></div>
<div class="ttc" id="class_b_t_d_html_a3aea445b2349e99ef057db1a4ffdd9dc"><div class="ttname"><a href="class_b_t_d.html#a3aea445b2349e99ef057db1a4ffdd9dc">BTD::motionPlusInside</a></div><div class="ttdeci">bool motionPlusInside</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00511">BTD.h:511</a></div></div>
<div class="ttc" id="class_b_t_d_html_a8767529bd203c549348a38ac9c6682b3"><div class="ttname"><a href="class_b_t_d.html#a8767529bd203c549348a38ac9c6682b3">BTD::hci_remote_name</a></div><div class="ttdeci">void hci_remote_name()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00992">BTD.cpp:992</a></div></div>
<div class="ttc" id="class_b_t_d_html_aede42d995c384c238fd49d728df01e4e"><div class="ttname"><a href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e">BTD::remote_name</a></div><div class="ttdeci">uint8_t remote_name[30]</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00491">BTD.h:491</a></div></div>
<div class="ttc" id="class_b_t_d_html_a8767529bd203c549348a38ac9c6682b3"><div class="ttname"><a href="class_b_t_d.html#a8767529bd203c549348a38ac9c6682b3">BTD::hci_remote_name</a></div><div class="ttdeci">void hci_remote_name()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00989">BTD.cpp:989</a></div></div>
<div class="ttc" id="class_u_s_b_device_config_html"><div class="ttname"><a href="class_u_s_b_device_config.html">USBDeviceConfig</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00105">UsbCore.h:105</a></div></div>
<div class="ttc" id="_usb_8h_html"><div class="ttname"><a href="_usb_8h.html">Usb.h</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5bb06f989db583d290ba79642d37c514"><div class="ttname"><a href="_b_t_d_8h.html#a5bb06f989db583d290ba79642d37c514">PS3_VID</a></div><div class="ttdeci">#define PS3_VID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00024">BTD.h:24</a></div></div>
<div class="ttc" id="class_b_t_d_html_a5f07597fe15a2b917cce405fe87f2981"><div class="ttname"><a href="class_b_t_d.html#a5f07597fe15a2b917cce405fe87f2981">BTD::BTD</a></div><div class="ttdeci">BTD(USB *p)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00027">BTD.cpp:27</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa0fd5483f227e29de23c20ee31c940aa"><div class="ttname"><a href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa">BTD::remote_name</a></div><div class="ttdeci">char remote_name[30]</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00491">BTD.h:491</a></div></div>
<div class="ttc" id="class_b_t_d_html_a2a9ecb996243e070e70972370e45e4fd"><div class="ttname"><a href="class_b_t_d.html#a2a9ecb996243e070e70972370e45e4fd">BTD::readPollInterval</a></div><div class="ttdeci">uint8_t readPollInterval()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00531">BTD.h:531</a></div></div>
<div class="ttc" id="class_bluetooth_service_html_a1dff7caf251f1d8a5f358b368445cb48"><div class="ttname"><a href="class_bluetooth_service.html#a1dff7caf251f1d8a5f358b368445cb48">BluetoothService::Reset</a></div><div class="ttdeci">virtual void Reset()</div></div>
<div class="ttc" id="class_b_t_d_html_a480510bd399ae74a97cd74c8474ef59c"><div class="ttname"><a href="class_b_t_d.html#a480510bd399ae74a97cd74c8474ef59c">BTD::BTD_DATAIN_PIPE</a></div><div class="ttdeci">static const uint8_t BTD_DATAIN_PIPE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00555">BTD.h:555</a></div></div>
<div class="ttc" id="class_b_t_d_html_a9a6747d58951f53389922d80e25b886c"><div class="ttname"><a href="class_b_t_d.html#a9a6747d58951f53389922d80e25b886c">BTD::hci_set_local_name</a></div><div class="ttdeci">void hci_set_local_name(const char *name)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01011">BTD.cpp:1011</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7dd7faaec1d3d9a1d8159cc2a4190977"><div class="ttname"><a href="class_b_t_d.html#a7dd7faaec1d3d9a1d8159cc2a4190977">BTD::hci_write_scan_enable</a></div><div class="ttdeci">void hci_write_scan_enable()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00936">BTD.cpp:936</a></div></div>
<div class="ttc" id="class_b_t_d_html_a9a6747d58951f53389922d80e25b886c"><div class="ttname"><a href="class_b_t_d.html#a9a6747d58951f53389922d80e25b886c">BTD::hci_set_local_name</a></div><div class="ttdeci">void hci_set_local_name(const char *name)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01008">BTD.cpp:1008</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7dd7faaec1d3d9a1d8159cc2a4190977"><div class="ttname"><a href="class_b_t_d.html#a7dd7faaec1d3d9a1d8159cc2a4190977">BTD::hci_write_scan_enable</a></div><div class="ttdeci">void hci_write_scan_enable()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00933">BTD.cpp:933</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa87c23bce56a20f2db47c6a40c8eda87"><div class="ttname"><a href="class_b_t_d.html#aa87c23bce56a20f2db47c6a40c8eda87">BTD::Release</a></div><div class="ttdeci">virtual uint8_t Release()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00365">BTD.cpp:365</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01300">BTD.cpp:1300</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01297">BTD.cpp:1297</a></div></div>
<div class="ttc" id="_usb_core_8h_html_afce880b09049d7105f8e68ff36d9ad17"><div class="ttname"><a href="_usb_core_8h.html#afce880b09049d7105f8e68ff36d9ad17">USB_CLASS_WIRELESS_CTRL</a></div><div class="ttdeci">#define USB_CLASS_WIRELESS_CTRL</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00055">UsbCore.h:55</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa7735da01865bab01b569ee836173737"><div class="ttname"><a href="class_b_t_d.html#aa7735da01865bab01b569ee836173737">BTD::watingForConnection</a></div><div class="ttdeci">bool watingForConnection</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00471">BTD.h:471</a></div></div>
<div class="ttc" id="class_b_t_d_html_af40b8d52df99192880c8a13443b6c6d8"><div class="ttname"><a href="class_b_t_d.html#af40b8d52df99192880c8a13443b6c6d8">BTD::connectToHIDDevice</a></div><div class="ttdeci">bool connectToHIDDevice</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00519">BTD.h:519</a></div></div>
@ -518,10 +519,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_b_t_d_html_a48608619d8253972dd132edbb3001c5f"><div class="ttname"><a href="class_b_t_d.html#a48608619d8253972dd132edbb3001c5f">BTD::Init</a></div><div class="ttdeci">virtual uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00122">BTD.cpp:122</a></div></div>
<div class="ttc" id="struct_ep_info_html"><div class="ttname"><a href="struct_ep_info.html">EpInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00032">address.h:32</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0b59db80825ffd5974e0d2c4a046b328"><div class="ttname"><a href="class_b_t_d.html#a0b59db80825ffd5974e0d2c4a046b328">BTD::pairWithHID</a></div><div class="ttdeci">void pairWithHID()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00516">BTD.h:516</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01145">BTD.cpp:1145</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01142">BTD.cpp:1142</a></div></div>
<div class="ttc" id="class_bluetooth_service_html"><div class="ttname"><a href="class_bluetooth_service.html">BluetoothService</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00211">BTD.h:211</a></div></div>
<div class="ttc" id="class_b_t_d_html_acb94a629477d85cebd16a9c5ecd4a8b3"><div class="ttname"><a href="class_b_t_d.html#acb94a629477d85cebd16a9c5ecd4a8b3">BTD::hci_read_bdaddr</a></div><div class="ttdeci">void hci_read_bdaddr()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00958">BTD.cpp:958</a></div></div>
<div class="ttc" id="class_b_t_d_html_a45ffbc7a40bbb763b0ece907c3dfc9ff"><div class="ttname"><a href="class_b_t_d.html#a45ffbc7a40bbb763b0ece907c3dfc9ff">BTD::hci_inquiry_cancel</a></div><div class="ttdeci">void hci_inquiry_cancel()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01037">BTD.cpp:1037</a></div></div>
<div class="ttc" id="class_b_t_d_html_acb94a629477d85cebd16a9c5ecd4a8b3"><div class="ttname"><a href="class_b_t_d.html#acb94a629477d85cebd16a9c5ecd4a8b3">BTD::hci_read_bdaddr</a></div><div class="ttdeci">void hci_read_bdaddr()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00955">BTD.cpp:955</a></div></div>
<div class="ttc" id="class_b_t_d_html_a45ffbc7a40bbb763b0ece907c3dfc9ff"><div class="ttname"><a href="class_b_t_d.html#a45ffbc7a40bbb763b0ece907c3dfc9ff">BTD::hci_inquiry_cancel</a></div><div class="ttdeci">void hci_inquiry_cancel()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01034">BTD.cpp:1034</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1f8e9171a310e50f2c4a3c19066efe5a"><div class="ttname"><a href="class_b_t_d.html#a1f8e9171a310e50f2c4a3c19066efe5a">BTD::my_bdaddr</a></div><div class="ttdeci">uint8_t my_bdaddr[6]</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00485">BTD.h:485</a></div></div>
<div class="ttc" id="class_b_t_d_html_a76e201c5b561e3a6d0405894ba5c2e41"><div class="ttname"><a href="class_b_t_d.html#a76e201c5b561e3a6d0405894ba5c2e41">BTD::Poll</a></div><div class="ttdeci">virtual uint8_t Poll()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00371">BTD.cpp:371</a></div></div>
<div class="ttc" id="class_b_t_d_html_adf5dce0907ea33c919908fea5dc0cf21"><div class="ttname"><a href="class_b_t_d.html#adf5dce0907ea33c919908fea5dc0cf21">BTD::VIDPIDOK</a></div><div class="ttdeci">virtual boolean VIDPIDOK(uint16_t vid, uint16_t pid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00298">BTD.h:298</a></div></div>
@ -538,27 +539,26 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a0ae276efa5e73a4da658c714e70402c0"><div class="ttname"><a href="_b_t_d_8h.html#a0ae276efa5e73a4da658c714e70402c0">PS3_PID</a></div><div class="ttdeci">#define PS3_PID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00025">BTD.h:25</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aee41c4878894db24e7ad8cd6246595cd"><div class="ttname"><a href="_b_t_d_8h.html#aee41c4878894db24e7ad8cd6246595cd">BTD_MAX_ENDPOINTS</a></div><div class="ttdeci">#define BTD_MAX_ENDPOINTS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00189">BTD.h:189</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a54903b410722a45f8246653cd4d00632"><div class="ttname"><a href="_b_t_d_8h.html#a54903b410722a45f8246653cd4d00632">PS3NAVIGATION_PID</a></div><div class="ttdeci">#define PS3NAVIGATION_PID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00026">BTD.h:26</a></div></div>
<div class="ttc" id="class_b_t_d_html_a91f61915c503fe7b861c88f5b3e6733c"><div class="ttname"><a href="class_b_t_d.html#a91f61915c503fe7b861c88f5b3e6733c">BTD::l2cap_information_response</a></div><div class="ttdeci">void l2cap_information_response(uint16_t handle, uint8_t rxid, uint8_t infoTypeLow, uint8_t infoTypeHigh)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01313">BTD.cpp:1313</a></div></div>
<div class="ttc" id="class_b_t_d_html_a9a17405df60591b909ff1502fb8f3141"><div class="ttname"><a href="class_b_t_d.html#a9a17405df60591b909ff1502fb8f3141">BTD::hci_write_class_of_device</a></div><div class="ttdeci">void hci_write_class_of_device()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01157">BTD.cpp:1157</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7114d2cb62aa413e5ecb25c45c76832b"><div class="ttname"><a href="class_b_t_d.html#a7114d2cb62aa413e5ecb25c45c76832b">BTD::hci_pin_code_negative_request_reply</a></div><div class="ttdeci">void hci_pin_code_negative_request_reply()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01107">BTD.cpp:1107</a></div></div>
<div class="ttc" id="class_b_t_d_html_a91f61915c503fe7b861c88f5b3e6733c"><div class="ttname"><a href="class_b_t_d.html#a91f61915c503fe7b861c88f5b3e6733c">BTD::l2cap_information_response</a></div><div class="ttdeci">void l2cap_information_response(uint16_t handle, uint8_t rxid, uint8_t infoTypeLow, uint8_t infoTypeHigh)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01310">BTD.cpp:1310</a></div></div>
<div class="ttc" id="class_b_t_d_html_a9a17405df60591b909ff1502fb8f3141"><div class="ttname"><a href="class_b_t_d.html#a9a17405df60591b909ff1502fb8f3141">BTD::hci_write_class_of_device</a></div><div class="ttdeci">void hci_write_class_of_device()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01154">BTD.cpp:1154</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7114d2cb62aa413e5ecb25c45c76832b"><div class="ttname"><a href="class_b_t_d.html#a7114d2cb62aa413e5ecb25c45c76832b">BTD::hci_pin_code_negative_request_reply</a></div><div class="ttdeci">void hci_pin_code_negative_request_reply()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01104">BTD.cpp:1104</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a2c060a7be42c5c4c57990cacec0b45f5"><div class="ttname"><a href="_b_t_d_8h.html#a2c060a7be42c5c4c57990cacec0b45f5">HCI_CHECK_DEVICE_SERVICE</a></div><div class="ttdeci">#define HCI_CHECK_DEVICE_SERVICE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00048">BTD.h:48</a></div></div>
<div class="ttc" id="class_u_s_b_html"><div class="ttname"><a href="class_u_s_b.html">USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00176">UsbCore.h:176</a></div></div>
<div class="ttc" id="class_bluetooth_service_html_a680692ff13cb37eb81ddbb74bc9e0383"><div class="ttname"><a href="class_bluetooth_service.html#a680692ff13cb37eb81ddbb74bc9e0383">BluetoothService::Run</a></div><div class="ttdeci">virtual void Run()</div></div>
<div class="ttc" id="class_b_t_d_html_a10c34527ae90e95791ac48ac7d1154a2"><div class="ttname"><a href="class_b_t_d.html#a10c34527ae90e95791ac48ac7d1154a2">BTD::bConfNum</a></div><div class="ttdeci">uint8_t bConfNum</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00544">BTD.h:544</a></div></div>
<div class="ttc" id="class_b_t_d_html_af4d28b9c1a3b9688a1871610caee2cfc"><div class="ttname"><a href="class_b_t_d.html#af4d28b9c1a3b9688a1871610caee2cfc">BTD::hci_link_key_request_negative_reply</a></div><div class="ttdeci">void hci_link_key_request_negative_reply()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01121">BTD.cpp:1121</a></div></div>
<div class="ttc" id="class_b_t_d_html_af4d28b9c1a3b9688a1871610caee2cfc"><div class="ttname"><a href="class_b_t_d.html#af4d28b9c1a3b9688a1871610caee2cfc">BTD::hci_link_key_request_negative_reply</a></div><div class="ttdeci">void hci_link_key_request_negative_reply()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01118">BTD.cpp:1118</a></div></div>
<div class="ttc" id="class_b_t_d_html_a6b66a27c0fd359e3129f53451352b55c"><div class="ttname"><a href="class_b_t_d.html#a6b66a27c0fd359e3129f53451352b55c">BTD::pairWithWiimote</a></div><div class="ttdeci">void pairWithWiimote()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00500">BTD.h:500</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1b2440748bdaaeb552a05b0f0902f5d8"><div class="ttname"><a href="class_b_t_d.html#a1b2440748bdaaeb552a05b0f0902f5d8">BTD::isReady</a></div><div class="ttdeci">virtual bool isReady()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00278">BTD.h:278</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01193">BTD.cpp:1193</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a2222709eed4c8af293e881ea36f599b0"><div class="ttname"><a href="_b_t_d_8h.html#a2222709eed4c8af293e881ea36f599b0">BTD_NUMSERVICES</a></div><div class="ttdeci">#define BTD_NUMSERVICES</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00190">BTD.h:190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01268">BTD.cpp:1268</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01251">BTD.cpp:1251</a></div></div>
<div class="ttc" id="class_b_t_d_html_a70047b0f624c3f0ef29f8b76b8a34938"><div class="ttname"><a href="class_b_t_d.html#a70047b0f624c3f0ef29f8b76b8a34938">BTD::hci_pin_code_request_reply</a></div><div class="ttdeci">void hci_pin_code_request_reply()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01071">BTD.cpp:1071</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01190">BTD.cpp:1190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01265">BTD.cpp:1265</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01248">BTD.cpp:1248</a></div></div>
<div class="ttc" id="class_b_t_d_html_a70047b0f624c3f0ef29f8b76b8a34938"><div class="ttname"><a href="class_b_t_d.html#a70047b0f624c3f0ef29f8b76b8a34938">BTD::hci_pin_code_request_reply</a></div><div class="ttdeci">void hci_pin_code_request_reply()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01068">BTD.cpp:1068</a></div></div>
<div class="ttc" id="class_bluetooth_service_html_a66ee2f09c6087b82e3920c3d652a99b2"><div class="ttname"><a href="class_bluetooth_service.html#a66ee2f09c6087b82e3920c3d652a99b2">BluetoothService::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div></div>
<div class="ttc" id="class_b_t_d_html_a4bcd1d622a6455ee3d0cccc4408700a1"><div class="ttname"><a href="class_b_t_d.html#a4bcd1d622a6455ee3d0cccc4408700a1">BTD::pUsb</a></div><div class="ttdeci">USB * pUsb</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00533">BTD.h:533</a></div></div>
<div class="ttc" id="class_b_t_d_html_addd07c18c725a324a05792a83026d36d"><div class="ttname"><a href="class_b_t_d.html#addd07c18c725a324a05792a83026d36d">BTD::hci_authentication_request</a></div><div class="ttdeci">void hci_authentication_request()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01135">BTD.cpp:1135</a></div></div>
<div class="ttc" id="class_b_t_d_html_ae2ba215b6942f4131e4c5fdef2771e22"><div class="ttname"><a href="class_b_t_d.html#ae2ba215b6942f4131e4c5fdef2771e22">BTD::hci_read_local_version_information</a></div><div class="ttdeci">void hci_read_local_version_information()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00967">BTD.cpp:967</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1cb07a155c69bb1fcf45ae030b8947ec"><div class="ttname"><a href="class_b_t_d.html#a1cb07a155c69bb1fcf45ae030b8947ec">BTD::hci_accept_connection</a></div><div class="ttdeci">void hci_accept_connection()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00976">BTD.cpp:976</a></div></div>
<div class="ttc" id="class_b_t_d_html_af11ad71d20783d46fe42dd405d10dfda"><div class="ttname"><a href="class_b_t_d.html#af11ad71d20783d46fe42dd405d10dfda">BTD::HCI_Command</a></div><div class="ttdeci">void HCI_Command(uint8_t *data, uint16_t nbytes)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00922">BTD.cpp:922</a></div></div>
<div class="ttc" id="class_b_t_d_html_addd07c18c725a324a05792a83026d36d"><div class="ttname"><a href="class_b_t_d.html#addd07c18c725a324a05792a83026d36d">BTD::hci_authentication_request</a></div><div class="ttdeci">void hci_authentication_request()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01132">BTD.cpp:1132</a></div></div>
<div class="ttc" id="class_b_t_d_html_ae2ba215b6942f4131e4c5fdef2771e22"><div class="ttname"><a href="class_b_t_d.html#ae2ba215b6942f4131e4c5fdef2771e22">BTD::hci_read_local_version_information</a></div><div class="ttdeci">void hci_read_local_version_information()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00964">BTD.cpp:964</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1cb07a155c69bb1fcf45ae030b8947ec"><div class="ttname"><a href="class_b_t_d.html#a1cb07a155c69bb1fcf45ae030b8947ec">BTD::hci_accept_connection</a></div><div class="ttdeci">void hci_accept_connection()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00973">BTD.cpp:973</a></div></div>
<div class="ttc" id="class_b_t_d_html_af11ad71d20783d46fe42dd405d10dfda"><div class="ttname"><a href="class_b_t_d.html#af11ad71d20783d46fe42dd405d10dfda">BTD::HCI_Command</a></div><div class="ttdeci">void HCI_Command(uint8_t *data, uint16_t nbytes)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l00919">BTD.cpp:919</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -137,161 +137,161 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; activeConnection = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; l2cap_event_flag = 0; <span class="comment">// Reset flags</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; l2cap_state = <a class="code" href="_b_t_d_8h.html#a15cc1db556ad9a4ec6144ca8a42f8919">L2CAP_WAIT</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;}</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0"> 51</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a>() { <span class="comment">// Use this void to disconnect the device</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; <span class="comment">// First the HID interrupt channel has to be disconnected, then the HID control channel and finally the HCI connection</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">l2cap_disconnection_request</a>(hci_handle, ++identifier, interrupt_scid, interrupt_dcid);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; l2cap_state = <a class="code" href="_b_t_d_8h.html#ab569b2085ad29f41d1da9c0ed352bd65">L2CAP_INTERRUPT_DISCONNECT</a>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;}</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54"> 58</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">BTHID::ACLData</a>(uint8_t* l2capinbuf) {</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span>(!pBtd-&gt;<a class="code" href="class_b_t_d.html#a0f1c28a03bcbe62cc7c083f97ea27594">l2capConnectionClaimed</a> &amp;&amp; pBtd-&gt;<a class="code" href="class_b_t_d.html#a685d6371fb0c950ff6bad4510a8cc85a">incomingHIDDevice</a> &amp;&amp; !<a class="code" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a> &amp;&amp; !activeConnection) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a>) {</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">if</span>((l2capinbuf[12] | (l2capinbuf[13] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a1465673868452307bcdab8e201430c27">HID_CTRL_PSM</a>) {</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a685d6371fb0c950ff6bad4510a8cc85a">incomingHIDDevice</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a0f1c28a03bcbe62cc7c083f97ea27594">l2capConnectionClaimed</a> = <span class="keyword">true</span>; <span class="comment">// Claim that the incoming connection belongs to this service</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; activeConnection = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; hci_handle = pBtd-&gt;<a class="code" href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">hci_handle</a>; <span class="comment">// Store the HCI Handle for the connection</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; l2cap_state = <a class="code" href="_b_t_d_8h.html#a15cc1db556ad9a4ec6144ca8a42f8919">L2CAP_WAIT</a>;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; }</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">ResetBTHID</a>();</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;}</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0"> 52</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a>() { <span class="comment">// Use this void to disconnect the device</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="comment">// First the HID interrupt channel has to be disconnected, then the HID control channel and finally the HCI connection</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">l2cap_disconnection_request</a>(hci_handle, ++identifier, interrupt_scid, interrupt_dcid);</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; l2cap_state = <a class="code" href="_b_t_d_8h.html#ab569b2085ad29f41d1da9c0ed352bd65">L2CAP_INTERRUPT_DISCONNECT</a>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;}</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54"> 59</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">BTHID::ACLData</a>(uint8_t* l2capinbuf) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span>(!pBtd-&gt;<a class="code" href="class_b_t_d.html#a0f1c28a03bcbe62cc7c083f97ea27594">l2capConnectionClaimed</a> &amp;&amp; pBtd-&gt;<a class="code" href="class_b_t_d.html#a685d6371fb0c950ff6bad4510a8cc85a">incomingHIDDevice</a> &amp;&amp; !<a class="code" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a> &amp;&amp; !activeConnection) {</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a>) {</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">if</span>((l2capinbuf[12] | (l2capinbuf[13] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a1465673868452307bcdab8e201430c27">HID_CTRL_PSM</a>) {</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a685d6371fb0c950ff6bad4510a8cc85a">incomingHIDDevice</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a0f1c28a03bcbe62cc7c083f97ea27594">l2capConnectionClaimed</a> = <span class="keyword">true</span>; <span class="comment">// Claim that the incoming connection belongs to this service</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; activeConnection = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; hci_handle = pBtd-&gt;<a class="code" href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">hci_handle</a>; <span class="comment">// Store the HCI Handle for the connection</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; l2cap_state = <a class="code" href="_b_t_d_8h.html#a15cc1db556ad9a4ec6144ca8a42f8919">L2CAP_WAIT</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; }</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; <span class="comment">//if((l2capinbuf[0] | (uint16_t)l2capinbuf[1] &lt;&lt; 8) == (hci_handle | 0x2000U)) { // acl_handle_ok or it&#39;s a new connection</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="_b_t_d_8h.html#a3aa6623f7fa8839754d3deefa6d60372">UHS_ACL_HANDLE_OK</a>(l2capinbuf, hci_handle)) { <span class="comment">// acl_handle_ok or it&#39;s a new connection</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span>((l2capinbuf[6] | (l2capinbuf[7] &lt;&lt; 8)) == 0x0001U) { <span class="comment">// l2cap_control - Channel ID for ACL-U</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a6ffcd72787c86f248192eb06a3fe18cb">L2CAP_CMD_COMMAND_REJECT</a>) {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Command Rejected - Reason: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[13], 0x80);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[12], 0x80);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[17], 0x80);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[16], 0x80);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[15], 0x80);</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[14], 0x80);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"></span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#aef7b306479de265d725dbe5816a8227b">L2CAP_CMD_CONNECTION_RESPONSE</a>) {</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordflow">if</span>(((l2capinbuf[16] | (l2capinbuf[17] &lt;&lt; 8)) == 0x0000) &amp;&amp; ((l2capinbuf[18] | (l2capinbuf[19] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a1be7a56cdddcdb7dedf16d4dee381e93">SUCCESSFUL</a>)) { <span class="comment">// Success</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[14] == control_dcid[0] &amp;&amp; l2capinbuf[15] == control_dcid[1]) {</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Control Connection Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; control_scid[0] = l2capinbuf[12];</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; control_scid[1] = l2capinbuf[13];</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a2e5a9c283f0912833f3e0418d3feadd7">L2CAP_FLAG_CONTROL_CONNECTED</a>);</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[14] == interrupt_dcid[0] &amp;&amp; l2capinbuf[15] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Interrupt Connection Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; interrupt_scid[0] = l2capinbuf[12];</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; interrupt_scid[1] = l2capinbuf[13];</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#aad823543553cc7500ac49d7479eb858f">L2CAP_FLAG_INTERRUPT_CONNECTED</a>);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; }</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; }</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="comment">//if((l2capinbuf[0] | (uint16_t)l2capinbuf[1] &lt;&lt; 8) == (hci_handle | 0x2000U)) { // acl_handle_ok or it&#39;s a new connection</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="_b_t_d_8h.html#a3aa6623f7fa8839754d3deefa6d60372">UHS_ACL_HANDLE_OK</a>(l2capinbuf, hci_handle)) { <span class="comment">// acl_handle_ok or it&#39;s a new connection</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>((l2capinbuf[6] | (l2capinbuf[7] &lt;&lt; 8)) == 0x0001U) { <span class="comment">// l2cap_control - Channel ID for ACL-U</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a6ffcd72787c86f248192eb06a3fe18cb">L2CAP_CMD_COMMAND_REJECT</a>) {</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Command Rejected - Reason: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[13], 0x80);</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[12], 0x80);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[17], 0x80);</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[16], 0x80);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[15], 0x80);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[14], 0x80);</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#aef7b306479de265d725dbe5816a8227b">L2CAP_CMD_CONNECTION_RESPONSE</a>) {</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordflow">if</span>(((l2capinbuf[16] | (l2capinbuf[17] &lt;&lt; 8)) == 0x0000) &amp;&amp; ((l2capinbuf[18] | (l2capinbuf[19] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a1be7a56cdddcdb7dedf16d4dee381e93">SUCCESSFUL</a>)) { <span class="comment">// Success</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[14] == control_dcid[0] &amp;&amp; l2capinbuf[15] == control_dcid[1]) {</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Control Connection Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; control_scid[0] = l2capinbuf[12];</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; control_scid[1] = l2capinbuf[13];</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a2e5a9c283f0912833f3e0418d3feadd7">L2CAP_FLAG_CONTROL_CONNECTED</a>);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[14] == interrupt_dcid[0] &amp;&amp; l2capinbuf[15] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Interrupt Connection Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; interrupt_scid[0] = l2capinbuf[12];</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; interrupt_scid[1] = l2capinbuf[13];</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#aad823543553cc7500ac49d7479eb858f">L2CAP_FLAG_INTERRUPT_CONNECTED</a>);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; }</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a>) {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="preprocessor">#ifdef EXTRADEBUG</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Connection Request - PSM: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[13], 0x80);</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[12], 0x80);</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; SCID: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[15], 0x80);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[14], 0x80);</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; Identifier: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[9], 0x80);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">if</span>((l2capinbuf[12] | (l2capinbuf[13] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a1465673868452307bcdab8e201430c27">HID_CTRL_PSM</a>) {</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; control_scid[0] = l2capinbuf[14];</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; control_scid[1] = l2capinbuf[15];</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a969a1ee84797f3ee5006c41f67373f96">L2CAP_FLAG_CONNECTION_CONTROL_REQUEST</a>);</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>((l2capinbuf[12] | (l2capinbuf[13] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a4c5ac96db74d61d4a5a5d945a400e7da">HID_INTR_PSM</a>) {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; interrupt_scid[0] = l2capinbuf[14];</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; interrupt_scid[1] = l2capinbuf[15];</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a015f3b25bd7a2908c84b973dec453f45">L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</a>);</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; }</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a8151b1fe5d940a5a7a34f43a8b8ce434">L2CAP_CMD_CONFIG_RESPONSE</a>) {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span>((l2capinbuf[16] | (l2capinbuf[17] &lt;&lt; 8)) == 0x0000) { <span class="comment">// Success</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_dcid[0] &amp;&amp; l2capinbuf[13] == control_dcid[1]) {</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Control Configuration Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a0c444d5d06ec604820d426556c2f38d7">L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</a>);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_dcid[0] &amp;&amp; l2capinbuf[13] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Interrupt Configuration Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a2b3cdcd3124251a40ce825da0d8dcb6f">L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS</a>);</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; }</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a>) {</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#ifdef EXTRADEBUG</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Connection Request - PSM: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[13], 0x80);</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[12], 0x80);</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; SCID: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[15], 0x80);</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[14], 0x80);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; Identifier: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[9], 0x80);</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">if</span>((l2capinbuf[12] | (l2capinbuf[13] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a1465673868452307bcdab8e201430c27">HID_CTRL_PSM</a>) {</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; control_scid[0] = l2capinbuf[14];</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; control_scid[1] = l2capinbuf[15];</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a969a1ee84797f3ee5006c41f67373f96">L2CAP_FLAG_CONNECTION_CONTROL_REQUEST</a>);</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>((l2capinbuf[12] | (l2capinbuf[13] &lt;&lt; 8)) == <a class="code" href="_b_t_d_8h.html#a4c5ac96db74d61d4a5a5d945a400e7da">HID_INTR_PSM</a>) {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; interrupt_scid[0] = l2capinbuf[14];</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; interrupt_scid[1] = l2capinbuf[15];</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a015f3b25bd7a2908c84b973dec453f45">L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</a>);</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a8151b1fe5d940a5a7a34f43a8b8ce434">L2CAP_CMD_CONFIG_RESPONSE</a>) {</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span>((l2capinbuf[16] | (l2capinbuf[17] &lt;&lt; 8)) == 0x0000) { <span class="comment">// Success</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_dcid[0] &amp;&amp; l2capinbuf[13] == control_dcid[1]) {</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Control Configuration Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a0c444d5d06ec604820d426556c2f38d7">L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</a>);</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_dcid[0] &amp;&amp; l2capinbuf[13] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Interrupt Configuration Complete&quot;), 0x80);</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a2b3cdcd3124251a40ce825da0d8dcb6f">L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS</a>);</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; }</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a48bcd73461d736d0ef889e1fe6e36f69">L2CAP_CMD_CONFIG_REQUEST</a>) {</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_dcid[0] &amp;&amp; l2capinbuf[13] == control_dcid[1]) {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Control Configuration Request&quot;), 0x80);</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">l2cap_config_response</a>(hci_handle, l2capinbuf[9], control_scid);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_dcid[0] &amp;&amp; l2capinbuf[13] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Interrupt Configuration Request&quot;), 0x80);</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">l2cap_config_response</a>(hci_handle, l2capinbuf[9], interrupt_scid);</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; }</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a398676a2e9a2351a5a52afdddf4b660b">L2CAP_CMD_DISCONNECT_REQUEST</a>) {</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_dcid[0] &amp;&amp; l2capinbuf[13] == control_dcid[1]) {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nDisconnect Request: Control Channel&quot;</span>), 0x80);</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor"></span> identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">l2cap_disconnection_response</a>(hci_handle, identifier, control_dcid, control_scid);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_dcid[0] &amp;&amp; l2capinbuf[13] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nDisconnect Request: Interrupt Channel&quot;</span>), 0x80);</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor"></span> identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">l2cap_disconnection_response</a>(hci_handle, identifier, interrupt_dcid, interrupt_scid);</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; }</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a4c64a41200714e457b397496183dc0e4">L2CAP_CMD_DISCONNECT_RESPONSE</a>) {</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_scid[0] &amp;&amp; l2capinbuf[13] == control_scid[1]) {</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nDisconnect Response: Control Channel&quot;), 0x80);</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a27057737ae0b2246442511c01eeed192">L2CAP_FLAG_DISCONNECT_CONTROL_RESPONSE</a>);</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_scid[0] &amp;&amp; l2capinbuf[13] == interrupt_scid[1]) {</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nDisconnect Response: Interrupt Channel&quot;), 0x80);</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#acc096a05301f3cbdece4ad372cc149c3">L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</a>);</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; }</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a48bcd73461d736d0ef889e1fe6e36f69">L2CAP_CMD_CONFIG_REQUEST</a>) {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_dcid[0] &amp;&amp; l2capinbuf[13] == control_dcid[1]) {</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Control Configuration Request&quot;), 0x80);</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">l2cap_config_response</a>(hci_handle, l2capinbuf[9], control_scid);</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_dcid[0] &amp;&amp; l2capinbuf[13] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nHID Interrupt Configuration Request&quot;), 0x80);</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">l2cap_config_response</a>(hci_handle, l2capinbuf[9], interrupt_scid);</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a398676a2e9a2351a5a52afdddf4b660b">L2CAP_CMD_DISCONNECT_REQUEST</a>) {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_dcid[0] &amp;&amp; l2capinbuf[13] == control_dcid[1]) {</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nDisconnect Request: Control Channel&quot;</span>), 0x80);</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor"></span> identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">l2cap_disconnection_response</a>(hci_handle, identifier, control_dcid, control_scid);</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_dcid[0] &amp;&amp; l2capinbuf[13] == interrupt_dcid[1]) {</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nDisconnect Request: Interrupt Channel&quot;</span>), 0x80);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor"></span> identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">l2cap_disconnection_response</a>(hci_handle, identifier, interrupt_dcid, interrupt_scid);</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</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="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[8] == <a class="code" href="_b_t_d_8h.html#a4c64a41200714e457b397496183dc0e4">L2CAP_CMD_DISCONNECT_RESPONSE</a>) {</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <span class="keywordflow">if</span>(l2capinbuf[12] == control_scid[0] &amp;&amp; l2capinbuf[13] == control_scid[1]) {</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nDisconnect Response: Control Channel&quot;), 0x80);</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#a27057737ae0b2246442511c01eeed192">L2CAP_FLAG_DISCONNECT_CONTROL_RESPONSE</a>);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[12] == interrupt_scid[0] &amp;&amp; l2capinbuf[13] == interrupt_scid[1]) {</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; <span class="comment">//Notify(PSTR(&quot;\r\nDisconnect Response: Interrupt Channel&quot;), 0x80);</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a>(<a class="code" href="_b_t_d_8h.html#acc096a05301f3cbdece4ad372cc149c3">L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</a>);</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; }</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="preprocessor">#ifdef EXTRADEBUG</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Unknown Signaling Command: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[8], 0x80);</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; }</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="preprocessor"></span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[6] == interrupt_dcid[0] &amp;&amp; l2capinbuf[7] == interrupt_dcid[1]) { <span class="comment">// l2cap_interrupt</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="preprocessor">#ifdef PRINTREPORT</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Interrupt: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="keywordflow">for</span>(uint16_t i = 0; i &lt; ((uint16_t)l2capinbuf[5] &lt;&lt; 8 | l2capinbuf[4]); i++) {</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[i + 8], 0x80);</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</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="preprocessor">#endif</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">if</span>(l2capinbuf[8] == 0xA1) { <span class="comment">// HID_THDR_DATA_INPUT</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">switch</span>(l2capinbuf[9]) {</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="keywordflow">case</span> 0x01: <span class="comment">// Keyboard events</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <span class="keywordflow">if</span>(pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a>]) {</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; uint16_t length = ((uint16_t)l2capinbuf[5] &lt;&lt; 8 | l2capinbuf[4]);</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a>]-&gt;<a class="code" href="class_h_i_d_report_parser.html#ad2837f3d78c7ac3f1c2b3a4815420d97">Parse</a>(reinterpret_cast&lt;HID *&gt;(<span class="keyword">this</span>), 0, (uint8_t)(length - 2), &amp;l2capinbuf[10]); <span class="comment">// Use reinterpret_cast again to extract the instance</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; }</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">break</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; <span class="keywordflow">case</span> 0x02: <span class="comment">// Mouse events</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">if</span>(pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a0b48c93189cf128c1ef13ce86b4fa6be">MOUSE_PARSER_ID</a>]) {</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; uint16_t length = ((uint16_t)l2capinbuf[5] &lt;&lt; 8 | l2capinbuf[4]);</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a0b48c93189cf128c1ef13ce86b4fa6be">MOUSE_PARSER_ID</a>]-&gt;<a class="code" href="class_h_i_d_report_parser.html#ad2837f3d78c7ac3f1c2b3a4815420d97">Parse</a>(reinterpret_cast&lt;HID *&gt;(<span class="keyword">this</span>), 0, (uint8_t)(length - 2), &amp;l2capinbuf[10]); <span class="comment">// Use reinterpret_cast again to extract the instance</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; }</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; }</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="preprocessor">#ifdef EXTRADEBUG</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; identifier = l2capinbuf[9];</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Unknown Signaling Command: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[8], 0x80);</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="preprocessor">#endif</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="preprocessor"></span> } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(l2capinbuf[6] == interrupt_dcid[0] &amp;&amp; l2capinbuf[7] == interrupt_dcid[1]) { <span class="comment">// l2cap_interrupt</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="preprocessor">#ifdef PRINTREPORT</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nL2CAP Interrupt: &quot;</span>), 0x80);</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">for</span>(uint16_t i = 0; i &lt; ((uint16_t)l2capinbuf[5] &lt;&lt; 8 | l2capinbuf[4]); i++) {</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; D_PrintHex&lt;uint8_t &gt; (l2capinbuf[i + 8], 0x80);</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; }</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">if</span>(l2capinbuf[8] == 0xA1) { <span class="comment">// HID_THDR_DATA_INPUT</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; uint16_t length = ((uint16_t)l2capinbuf[5] &lt;&lt; 8 | l2capinbuf[4]);</div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">ParseBTHID</a>(<span class="keyword">this</span>, (uint8_t)(length - 1), &amp;l2capinbuf[9]);</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">switch</span>(l2capinbuf[9]) {</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="keywordflow">case</span> 0x01: <span class="comment">// Keyboard or Joystick events</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordflow">if</span>(pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a>])</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160; pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a>]-&gt;<a class="code" href="class_h_i_d_report_parser.html#ad2837f3d78c7ac3f1c2b3a4815420d97">Parse</a>(reinterpret_cast&lt;HID *&gt;(<span class="keyword">this</span>), 0, (uint8_t)(length - 2), &amp;l2capinbuf[10]); <span class="comment">// Use reinterpret_cast again to extract the instance</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">case</span> 0x02: <span class="comment">// Mouse events</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="keywordflow">if</span>(pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a0b48c93189cf128c1ef13ce86b4fa6be">MOUSE_PARSER_ID</a>])</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#a0b48c93189cf128c1ef13ce86b4fa6be">MOUSE_PARSER_ID</a>]-&gt;<a class="code" href="class_h_i_d_report_parser.html#ad2837f3d78c7ac3f1c2b3a4815420d97">Parse</a>(reinterpret_cast&lt;HID *&gt;(<span class="keyword">this</span>), 0, (uint8_t)(length - 2), &amp;l2capinbuf[10]); <span class="comment">// Use reinterpret_cast again to extract the instance</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">default</span>:</div>
@ -496,23 +496,24 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a2b3cdcd3124251a40ce825da0d8dcb6f"><div class="ttname"><a href="_b_t_d_8h.html#a2b3cdcd3124251a40ce825da0d8dcb6f">L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS</a></div><div class="ttdeci">#define L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00143">BTD.h:143</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a73e3a81d9a8850075fd10933acc5a035"><div class="ttname"><a href="_b_t_d_8h.html#a73e3a81d9a8850075fd10933acc5a035">L2CAP_INTERRUPT_CONFIG_REQUEST</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_CONFIG_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00115">BTD.h:115</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ac7aa7fd7a8a34a6c9e420e3cb114737b"><div class="ttname"><a href="_b_t_d_8h.html#ac7aa7fd7a8a34a6c9e420e3cb114737b">L2CAP_INTERRUPT_SETUP</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_SETUP</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00113">BTD.h:113</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01234">BTD.cpp:1234</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01231">BTD.cpp:1231</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a1be7a56cdddcdb7dedf16d4dee381e93"><div class="ttname"><a href="_b_t_d_8h.html#a1be7a56cdddcdb7dedf16d4dee381e93">SUCCESSFUL</a></div><div class="ttdeci">#define SUCCESSFUL</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00177">BTD.h:177</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a84eb1b910027f2d78741f65225c14e54"><div class="ttname"><a href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">BTHID::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00058">BTHID.cpp:58</a></div></div>
<div class="ttc" id="class_b_t_d_html_a55cf412a2053972a353b1ab964ca9d3e"><div class="ttname"><a href="class_b_t_d.html#a55cf412a2053972a353b1ab964ca9d3e">BTD::l2cap_connection_request</a></div><div class="ttdeci">void l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t *scid, uint16_t psm)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01221">BTD.cpp:1221</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a84eb1b910027f2d78741f65225c14e54"><div class="ttname"><a href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">BTHID::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00059">BTHID.cpp:59</a></div></div>
<div class="ttc" id="class_b_t_d_html_a55cf412a2053972a353b1ab964ca9d3e"><div class="ttname"><a href="class_b_t_d.html#a55cf412a2053972a353b1ab964ca9d3e">BTD::l2cap_connection_request</a></div><div class="ttdeci">void l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t *scid, uint16_t psm)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01218">BTD.cpp:1218</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a015f3b25bd7a2908c84b973dec453f45"><div class="ttname"><a href="_b_t_d_8h.html#a015f3b25bd7a2908c84b973dec453f45">L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00142">BTD.h:142</a></div></div>
<div class="ttc" id="hid_8h_html_a5153bc7974af5cfead6daea72b8b2f6a"><div class="ttname"><a href="hid_8h.html#a5153bc7974af5cfead6daea72b8b2f6a">HID_RPT_PROTOCOL</a></div><div class="ttdeci">#define HID_RPT_PROTOCOL</div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00083">hid.h:83</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01287">BTD.cpp:1287</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ab3a81823a1d8805383146a6baad6ccc4"><div class="ttname"><a href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></div><div class="ttdeci">bool connected</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00093">BTHID.h:93</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01284">BTD.cpp:1284</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ab3a81823a1d8805383146a6baad6ccc4"><div class="ttname"><a href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></div><div class="ttdeci">bool connected</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00092">BTHID.h:92</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a938eab04e406a29cc9324dad3ccb52cc"><div class="ttname"><a href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">BTHID::Run</a></div><div class="ttdeci">virtual void Run()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00347">BTHID.cpp:347</a></div></div>
<div class="ttc" id="class_b_t_d_html_a215cb939c01ed3ff56db37841224546c"><div class="ttname"><a href="class_b_t_d.html#a215cb939c01ed3ff56db37841224546c">BTD::btdPin</a></div><div class="ttdeci">const char * btdPin</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00482">BTD.h:482</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ae4da52ca67e1f8b977199b24e8f3a400"><div class="ttname"><a href="_b_t_d_8h.html#ae4da52ca67e1f8b977199b24e8f3a400">L2CAP_DONE</a></div><div class="ttdeci">#define L2CAP_DONE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00104">BTD.h:104</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_abac08b5b24a1cd2b12517cd9aa6c616b"><div class="ttname"><a href="_b_t_d_8h.html#abac08b5b24a1cd2b12517cd9aa6c616b">L2CAP_CONTROL_SUCCESS</a></div><div class="ttdeci">#define L2CAP_CONTROL_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00109">BTD.h:109</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a15cc1db556ad9a4ec6144ca8a42f8919"><div class="ttname"><a href="_b_t_d_8h.html#a15cc1db556ad9a4ec6144ca8a42f8919">L2CAP_WAIT</a></div><div class="ttdeci">#define L2CAP_WAIT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00103">BTD.h:103</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_acc22bf5baaa096fe09b72c812c1134f0"><div class="ttname"><a href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">BTHID::ResetBTHID</a></div><div class="ttdeci">virtual void ResetBTHID()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00124">BTHID.h:124</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_af4c58b81414a037910dd6fb78f97b96e"><div class="ttname"><a href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">BTHID::Reset</a></div><div class="ttdeci">virtual void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00044">BTHID.cpp:44</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aaaf733ee2c84bd8df4d24f2ae1f3b378"><div class="ttname"><a href="_b_t_d_8h.html#aaaf733ee2c84bd8df4d24f2ae1f3b378">L2CAP_CONTROL_CONFIG_REQUEST</a></div><div class="ttdeci">#define L2CAP_CONTROL_CONFIG_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00108">BTD.h:108</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01300">BTD.cpp:1300</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01297">BTD.cpp:1297</a></div></div>
<div class="ttc" id="message_8h_html_a27117e124c5d66d5512fe8d494fe6338"><div class="ttname"><a href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a></div><div class="ttdeci">#define Notify(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00044">message.h:44</a></div></div>
<div class="ttc" id="class_b_t_d_html_af40b8d52df99192880c8a13443b6c6d8"><div class="ttname"><a href="class_b_t_d.html#af40b8d52df99192880c8a13443b6c6d8">BTD::connectToHIDDevice</a></div><div class="ttdeci">bool connectToHIDDevice</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00519">BTD.h:519</a></div></div>
<div class="ttc" id="hid_8h_html_a41258c5dd55e5ae0378ec8ded892ce37"><div class="ttname"><a href="hid_8h.html#a41258c5dd55e5ae0378ec8ded892ce37">HID_BOOT_PROTOCOL</a></div><div class="ttdeci">#define HID_BOOT_PROTOCOL</div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00082">hid.h:82</a></div></div>
@ -523,9 +524,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_h_i_d_8h_html_a0b48c93189cf128c1ef13ce86b4fa6be"><div class="ttname"><a href="_b_t_h_i_d_8h.html#a0b48c93189cf128c1ef13ce86b4fa6be">MOUSE_PARSER_ID</a></div><div class="ttdeci">#define MOUSE_PARSER_ID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00025">BTHID.h:25</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa3bb6c692701cb33dfad1ea4d68b6f98"><div class="ttname"><a href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">BTD::hci_handle</a></div><div class="ttdeci">uint16_t hci_handle</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00487">BTD.h:487</a></div></div>
<div class="ttc" id="_b_t_h_i_d_8h_html"><div class="ttname"><a href="_b_t_h_i_d_8h.html">BTHID.h</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01145">BTD.cpp:1145</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01142">BTD.cpp:1142</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_acc096a05301f3cbdece4ad372cc149c3"><div class="ttname"><a href="_b_t_d_8h.html#acc096a05301f3cbdece4ad372cc149c3">L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</a></div><div class="ttdeci">#define L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00145">BTD.h:145</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae1ee62d7b9951ec7960f122c9fc2d2d0"><div class="ttname"><a href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00051">BTHID.cpp:51</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae1ee62d7b9951ec7960f122c9fc2d2d0"><div class="ttname"><a href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00052">BTHID.cpp:52</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_af9a13ab2a8c9c10fc74b3ed7dde1ff52"><div class="ttname"><a href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">BTHID::ParseBTHID</a></div><div class="ttdeci">virtual void ParseBTHID(BTHID *bthid, uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00116">BTHID.h:116</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae222e33ac617620c4cab5c1b23b89310"><div class="ttname"><a href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">BTHID::setLeds</a></div><div class="ttdeci">void setLeds(uint8_t data)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00396">BTHID.cpp:396</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5d120280be8d502fa0b74d46aa32d3a8"><div class="ttname"><a href="_b_t_d_8h.html#a5d120280be8d502fa0b74d46aa32d3a8">l2cap_check_flag</a></div><div class="ttdeci">#define l2cap_check_flag(flag)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00160">BTD.h:160</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a48bcd73461d736d0ef889e1fe6e36f69"><div class="ttname"><a href="_b_t_d_8h.html#a48bcd73461d736d0ef889e1fe6e36f69">L2CAP_CMD_CONFIG_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_CONFIG_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00168">BTD.h:168</a></div></div>
@ -542,17 +544,17 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a8151b1fe5d940a5a7a34f43a8b8ce434"><div class="ttname"><a href="_b_t_d_8h.html#a8151b1fe5d940a5a7a34f43a8b8ce434">L2CAP_CMD_CONFIG_RESPONSE</a></div><div class="ttdeci">#define L2CAP_CMD_CONFIG_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00169">BTD.h:169</a></div></div>
<div class="ttc" id="_b_t_h_i_d_8h_html_ae20db05997d6849ad3de3d7eb6145f93"><div class="ttname"><a href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a></div><div class="ttdeci">#define NUM_PARSERS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00026">BTHID.h:26</a></div></div>
<div class="ttc" id="_b_t_h_i_d_8h_html_a699c5d6eb13133dce9504391bc610f3e"><div class="ttname"><a href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a></div><div class="ttdeci">#define KEYBOARD_PARSER_ID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00024">BTHID.h:24</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01193">BTD.cpp:1193</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01268">BTD.cpp:1268</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01190">BTD.cpp:1190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01265">BTD.cpp:1265</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a9960d0d5ae92fc92c70bbb84c2a5c0cc"><div class="ttname"><a href="_b_t_d_8h.html#a9960d0d5ae92fc92c70bbb84c2a5c0cc">PENDING</a></div><div class="ttdeci">#define PENDING</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00176">BTD.h:176</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aad823543553cc7500ac49d7479eb858f"><div class="ttname"><a href="_b_t_d_8h.html#aad823543553cc7500ac49d7479eb858f">L2CAP_FLAG_INTERRUPT_CONNECTED</a></div><div class="ttdeci">#define L2CAP_FLAG_INTERRUPT_CONNECTED</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00144">BTD.h:144</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5f035450f226204f021e69ad1faa2e3a"><div class="ttname"><a href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a></div><div class="ttdeci">#define l2cap_set_flag(flag)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00161">BTD.h:161</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01251">BTD.cpp:1251</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01248">BTD.cpp:1248</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a0c444d5d06ec604820d426556c2f38d7"><div class="ttname"><a href="_b_t_d_8h.html#a0c444d5d06ec604820d426556c2f38d7">L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</a></div><div class="ttdeci">#define L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00137">BTD.h:137</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ac4bae0c65fd00ed849cb226302d19c85"><div class="ttname"><a href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_CONNECTION_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00166">BTD.h:166</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a5ee874513852b83d6a04b991ab892f54"><div class="ttname"><a href="class_b_t_h_i_d.html#a5ee874513852b83d6a04b991ab892f54">BTHID::BTHID</a></div><div class="ttdeci">BTHID(BTD *p, bool pair=false, const char *pin=&quot;0000&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00023">BTHID.cpp:23</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_af0b913a7e9e54b1f6ab95d82bd36f954"><div class="ttname"><a href="_b_t_d_8h.html#af0b913a7e9e54b1f6ab95d82bd36f954">L2CAP_INTERRUPT_CONNECT_REQUEST</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_CONNECT_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00114">BTD.h:114</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afb19720b65cda69d910416c7a689dd45"><div class="ttname"><a href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">BTHID::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00096">BTHID.h:96</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afb19720b65cda69d910416c7a689dd45"><div class="ttname"><a href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">BTHID::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00095">BTHID.h:95</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ab569b2085ad29f41d1da9c0ed352bd65"><div class="ttname"><a href="_b_t_d_8h.html#ab569b2085ad29f41d1da9c0ed352bd65">L2CAP_INTERRUPT_DISCONNECT</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_DISCONNECT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00116">BTD.h:116</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a6ffcd72787c86f248192eb06a3fe18cb"><div class="ttname"><a href="_b_t_d_8h.html#a6ffcd72787c86f248192eb06a3fe18cb">L2CAP_CMD_COMMAND_REJECT</a></div><div class="ttdeci">#define L2CAP_CMD_COMMAND_REJECT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00165">BTD.h:165</a></div></div>
</div><!-- fragment --></div><!-- contents -->

View file

@ -106,7 +106,7 @@ This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_b_t_h_i_d_8h__dep__incl.png" border="0" usemap="#_b_t_h_i_d_8hdep" alt=""/></div>
<map name="_b_t_h_i_d_8hdep" id="_b_t_h_i_d_8hdep">
<area shape="rect" id="node2" href="_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="5,83,91,111"/><area shape="rect" id="node3" href="_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="115,83,188,111"/><area shape="rect" id="node4" href="_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="108,161,195,189"/></map>
<area shape="rect" id="node2" href="_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="5,83,91,111"/><area shape="rect" id="node3" href="_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="115,83,188,111"/></map>
</div>
</div>
<p><a href="_b_t_h_i_d_8h_source.html">Go to the source code of this file.</a></p>

View file

@ -1,5 +1,4 @@
<map id="BTHID.h" name="BTHID.h">
<area shape="rect" id="node2" href="$_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="5,83,91,111"/>
<area shape="rect" id="node3" href="$_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="115,83,188,111"/>
<area shape="rect" id="node4" href="$_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="108,161,195,189"/>
</map>

View file

@ -1 +1 @@
f8f7a945eda22215fd32dc14b58fcae7
98e640defd09cdb6bea449a9af48374c

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View file

@ -124,89 +124,101 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">Run</a>();</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>();</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">disconnect</a>();</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575"> 59</a></span>&#160; <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> *<a class="code" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">GetReportParser</a>(uint8_t <span class="keywordtype">id</span>) {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> &gt;= <a class="code" href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a>)</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; <span class="keywordflow">return</span> pRptParser[id];</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;</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1"> 71</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a>(uint8_t <span class="keywordtype">id</span>, <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> *prs) {</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> &gt;= <a class="code" href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a>)</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; pRptParser[id] = prs;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; };</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595"> 82</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">setProtocolMode</a>(uint8_t mode) {</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; protocolMode = mode;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; };</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">setLeds</a>(uint8_t data);</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4"> 93</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a>;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;</div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45"> 96</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>(<span class="keywordtype">void</span>) {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">if</span>(pBtd)</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a0b59db80825ffd5974e0d2c4a046b328">pairWithHID</a>();</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; };</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;</div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c"> 105</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c">attachOnInit</a>(<span class="keywordtype">void</span> (*funcOnInit)(<span class="keywordtype">void</span>)) {</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; pFuncOnInit = funcOnInit;</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;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <a class="code" href="class_b_t_d.html">BTD</a> *pBtd; <span class="comment">// Pointer to BTD instance</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> *pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a>]; <span class="comment">// Pointer to HIDReportParsers.</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">void</span> setProtocol();</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; uint8_t protocolMode;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordtype">void</span> onInit() {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span>(pFuncOnInit)</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; pFuncOnInit(); <span class="comment">// Call the user function</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; };</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; void (*pFuncOnInit)(void); <span class="comment">// Pointer to function called in onInit()</span></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; <span class="keywordtype">void</span> L2CAP_task(); <span class="comment">// L2CAP state machine</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="comment">/* Variables filled from HCI event management */</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; uint16_t hci_handle;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; <span class="keywordtype">bool</span> activeConnection; <span class="comment">// Used to indicate if it already has established a connection</span></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; <span class="comment">/* Variables used by high level L2CAP task */</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; uint8_t l2cap_state;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; uint32_t l2cap_event_flag; <span class="comment">// l2cap flags of received Bluetooth events</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="comment">/* L2CAP Channels */</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; uint8_t control_scid[2]; <span class="comment">// L2CAP source CID for HID_Control</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; uint8_t control_dcid[2]; <span class="comment">// 0x0070</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; uint8_t interrupt_scid[2]; <span class="comment">// L2CAP source CID for HID_Interrupt</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; uint8_t interrupt_dcid[2]; <span class="comment">// 0x0071</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; uint8_t identifier; <span class="comment">// Identifier for connection</span></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;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575"> 58</a></span>&#160; <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> *<a class="code" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">GetReportParser</a>(uint8_t <span class="keywordtype">id</span>) {</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> &gt;= <a class="code" href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a>)</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> pRptParser[id];</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; };</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1"> 70</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a>(uint8_t <span class="keywordtype">id</span>, <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> *prs) {</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <span class="keywordflow">if</span> (<span class="keywordtype">id</span> &gt;= <a class="code" href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a>)</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; pRptParser[id] = prs;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> <span class="keyword">true</span>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; };</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595"> 81</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">setProtocolMode</a>(uint8_t mode) {</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; protocolMode = mode;</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;</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">setLeds</a>(uint8_t data);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4"> 92</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a>;</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45"> 95</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>(<span class="keywordtype">void</span>) {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keywordflow">if</span>(pBtd)</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; pBtd-&gt;<a class="code" href="class_b_t_d.html#a0b59db80825ffd5974e0d2c4a046b328">pairWithHID</a>();</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; };</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;</div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c"> 104</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c">attachOnInit</a>(<span class="keywordtype">void</span> (*funcOnInit)(<span class="keywordtype">void</span>)) {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; pFuncOnInit = funcOnInit;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; };</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;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52"> 116</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">ParseBTHID</a>(<a class="code" href="class_b_t_h_i_d.html">BTHID</a> *bthid, uint8_t len, uint8_t *buf) {</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; };</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421"> 120</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421">OnInitBTHID</a>() {</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; };</div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0"> 124</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">ResetBTHID</a>() {</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; }</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="class_b_t_d.html">BTD</a> *pBtd; <span class="comment">// Pointer to BTD instance</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> *pRptParser[<a class="code" href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a>]; <span class="comment">// Pointer to HIDReportParsers.</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordtype">void</span> setProtocol();</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; uint8_t protocolMode;</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="keywordtype">void</span> onInit() {</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">if</span>(pFuncOnInit)</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; pFuncOnInit(); <span class="comment">// Call the user function</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421">OnInitBTHID</a>();</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; };</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; void (*pFuncOnInit)(void); <span class="comment">// Pointer to function called in onInit()</span></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; <span class="keywordtype">void</span> L2CAP_task(); <span class="comment">// L2CAP state machine</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="comment">/* Variables filled from HCI event management */</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; uint16_t hci_handle;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordtype">bool</span> activeConnection; <span class="comment">// Used to indicate if it already has established a connection</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <span class="comment">/* Variables used by high level L2CAP task */</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; uint8_t l2cap_state;</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; uint32_t l2cap_event_flag; <span class="comment">// l2cap flags of received Bluetooth events</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="comment">/* L2CAP Channels */</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; uint8_t control_scid[2]; <span class="comment">// L2CAP source CID for HID_Control</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; uint8_t control_dcid[2]; <span class="comment">// 0x0070</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; uint8_t interrupt_scid[2]; <span class="comment">// L2CAP source CID for HID_Interrupt</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; uint8_t interrupt_dcid[2]; <span class="comment">// 0x0071</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; uint8_t identifier; <span class="comment">// Identifier for connection</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;};</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="hidboot_8h_html"><div class="ttname"><a href="hidboot_8h.html">hidboot.h</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a84eb1b910027f2d78741f65225c14e54"><div class="ttname"><a href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">BTHID::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00058">BTHID.cpp:58</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a6d92c1771d643172094fcd084f418421"><div class="ttname"><a href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421">BTHID::OnInitBTHID</a></div><div class="ttdeci">virtual void OnInitBTHID()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00120">BTHID.h:120</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a84eb1b910027f2d78741f65225c14e54"><div class="ttname"><a href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">BTHID::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00059">BTHID.cpp:59</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ab3a81823a1d8805383146a6baad6ccc4"><div class="ttname"><a href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></div><div class="ttdeci">bool connected</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00093">BTHID.h:93</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ab3a81823a1d8805383146a6baad6ccc4"><div class="ttname"><a href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></div><div class="ttdeci">bool connected</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00092">BTHID.h:92</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a938eab04e406a29cc9324dad3ccb52cc"><div class="ttname"><a href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">BTHID::Run</a></div><div class="ttdeci">virtual void Run()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00347">BTHID.cpp:347</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_acc22bf5baaa096fe09b72c812c1134f0"><div class="ttname"><a href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">BTHID::ResetBTHID</a></div><div class="ttdeci">virtual void ResetBTHID()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00124">BTHID.h:124</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_af4c58b81414a037910dd6fb78f97b96e"><div class="ttname"><a href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">BTHID::Reset</a></div><div class="ttdeci">virtual void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00044">BTHID.cpp:44</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ac2d67e173774e344bca86fbd0ed5a10c"><div class="ttname"><a href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c">BTHID::attachOnInit</a></div><div class="ttdeci">void attachOnInit(void(*funcOnInit)(void))</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00105">BTHID.h:105</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ac2d67e173774e344bca86fbd0ed5a10c"><div class="ttname"><a href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c">BTHID::attachOnInit</a></div><div class="ttdeci">void attachOnInit(void(*funcOnInit)(void))</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00104">BTHID.h:104</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0b59db80825ffd5974e0d2c4a046b328"><div class="ttname"><a href="class_b_t_d.html#a0b59db80825ffd5974e0d2c4a046b328">BTD::pairWithHID</a></div><div class="ttdeci">void pairWithHID()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00516">BTD.h:516</a></div></div>
<div class="ttc" id="class_bluetooth_service_html"><div class="ttname"><a href="class_bluetooth_service.html">BluetoothService</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00211">BTD.h:211</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae1ee62d7b9951ec7960f122c9fc2d2d0"><div class="ttname"><a href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00051">BTHID.cpp:51</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ade1924514bc9c9cd71f54a1f37529575"><div class="ttname"><a href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">BTHID::GetReportParser</a></div><div class="ttdeci">HIDReportParser * GetReportParser(uint8_t id)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00059">BTHID.h:59</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae1ee62d7b9951ec7960f122c9fc2d2d0"><div class="ttname"><a href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00052">BTHID.cpp:52</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_af9a13ab2a8c9c10fc74b3ed7dde1ff52"><div class="ttname"><a href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">BTHID::ParseBTHID</a></div><div class="ttdeci">virtual void ParseBTHID(BTHID *bthid, uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00116">BTHID.h:116</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ade1924514bc9c9cd71f54a1f37529575"><div class="ttname"><a href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">BTHID::GetReportParser</a></div><div class="ttdeci">HIDReportParser * GetReportParser(uint8_t id)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00058">BTHID.h:58</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae222e33ac617620c4cab5c1b23b89310"><div class="ttname"><a href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">BTHID::setLeds</a></div><div class="ttdeci">void setLeds(uint8_t data)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00396">BTHID.cpp:396</a></div></div>
<div class="ttc" id="_b_t_h_i_d_8h_html_ae20db05997d6849ad3de3d7eb6145f93"><div class="ttname"><a href="_b_t_h_i_d_8h.html#ae20db05997d6849ad3de3d7eb6145f93">NUM_PARSERS</a></div><div class="ttdeci">#define NUM_PARSERS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00026">BTHID.h:26</a></div></div>
<div class="ttc" id="class_h_i_d_report_parser_html"><div class="ttname"><a href="class_h_i_d_report_parser.html">HIDReportParser</a></div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00138">hid.h:138</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html"><div class="ttname"><a href="class_b_t_h_i_d.html">BTHID</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00029">BTHID.h:29</a></div></div>
<div class="ttc" id="_b_t_d_8h_html"><div class="ttname"><a href="_b_t_d_8h.html">BTD.h</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afceaafc89581441da40b141170b98595"><div class="ttname"><a href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">BTHID::setProtocolMode</a></div><div class="ttdeci">void setProtocolMode(uint8_t mode)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00082">BTHID.h:82</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afceaafc89581441da40b141170b98595"><div class="ttname"><a href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">BTHID::setProtocolMode</a></div><div class="ttdeci">void setProtocolMode(uint8_t mode)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00081">BTHID.h:81</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a5ee874513852b83d6a04b991ab892f54"><div class="ttname"><a href="class_b_t_h_i_d.html#a5ee874513852b83d6a04b991ab892f54">BTHID::BTHID</a></div><div class="ttdeci">BTHID(BTD *p, bool pair=false, const char *pin=&quot;0000&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00023">BTHID.cpp:23</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afb19720b65cda69d910416c7a689dd45"><div class="ttname"><a href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">BTHID::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00096">BTHID.h:96</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a0e903f0b5040f3561e5de6c4431027b1"><div class="ttname"><a href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">BTHID::SetReportParser</a></div><div class="ttdeci">bool SetReportParser(uint8_t id, HIDReportParser *prs)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00071">BTHID.h:71</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afb19720b65cda69d910416c7a689dd45"><div class="ttname"><a href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">BTHID::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00095">BTHID.h:95</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a0e903f0b5040f3561e5de6c4431027b1"><div class="ttname"><a href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">BTHID::SetReportParser</a></div><div class="ttdeci">bool SetReportParser(uint8_t id, HIDReportParser *prs)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00070">BTHID.h:70</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -159,16 +159,16 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> (uint8_t)(l2capinbuf[(uint8_t)a + 15]);</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;</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24"> 71</a></span>&#160;int16_t <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">PS3BT::getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a) {</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24"> 71</a></span>&#160;int16_t <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">PS3BT::getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a) {</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="class_p_s3_b_t.html#a2804535e3164eafca80a6f6c6bd9a4f9">PS3Connected</a>) {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a>)</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a>)</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="keywordflow">return</span> ((l2capinbuf[(uint16_t)a] &lt;&lt; 8) | l2capinbuf[(uint16_t)a + 1]);</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a">PS3MoveConnected</a>) {</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a>) <span class="comment">// These are all 12-bits long</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a>) <span class="comment">// These are all 12-bits long</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">return</span> (((l2capinbuf[(uint16_t)a] &amp; 0x0F) &lt;&lt; 8) | (l2capinbuf[(uint16_t)a + 1]));</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a>) <span class="comment">// The tempearature is also 12 bits long</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a>) <span class="comment">// The tempearature is also 12 bits long</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> ((l2capinbuf[(uint16_t)a] &lt;&lt; 4) | ((l2capinbuf[(uint16_t)a + 1] &amp; 0xF0) &gt;&gt; 4));</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; <span class="keywordflow">else</span> <span class="comment">// aXmove, aYmove, aZmove, gXmove, gYmove and gZmove</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keywordflow">return</span> (l2capinbuf[(uint16_t)a] | (l2capinbuf[(uint16_t)a + 1] &lt;&lt; 8));</div>
@ -176,55 +176,55 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">return</span> 0;</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;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743"> 88</a></span>&#160;<span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">PS3BT::getAngle</a>(<a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a) {</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743"> 88</a></span>&#160;<span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">PS3BT::getAngle</a>(<a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a) {</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="keywordtype">double</span> accXval, accYval, accZval;</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="class_p_s3_b_t.html#a2804535e3164eafca80a6f6c6bd9a4f9">PS3Connected</a>) {</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="comment">// Data for the Kionix KXPC4 used in the DualShock 3</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keyword">const</span> <span class="keywordtype">double</span> zeroG = 511.5; <span class="comment">// 1.65/3.3*1023 (1.65V)</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; accXval = -((double)<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a>) - zeroG);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; accYval = -((double)<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a>) - zeroG);</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; accZval = -((double)<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a>) - zeroG);</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; accXval = -((double)<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a>) - zeroG);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; accYval = -((double)<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a>) - zeroG);</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; accZval = -((double)<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a>) - zeroG);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(<a class="code" href="class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a">PS3MoveConnected</a>) {</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="comment">// It&#39;s a Kionix KXSC4 inside the Motion controller</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; <span class="keyword">const</span> uint16_t zeroG = 0x8000;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; accXval = -(int16_t)(<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a>) - zeroG);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; accYval = (int16_t)(<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a>) - zeroG);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; accZval = (int16_t)(<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a>) - zeroG);</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; accXval = -(int16_t)(<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a>) - zeroG);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; accYval = (int16_t)(<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a>) - zeroG);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; accZval = (int16_t)(<a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a>) - zeroG);</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; } <span class="keywordflow">else</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// Convert to 360 degrees resolution</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// atan2 outputs the value of -π to π (radians)</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="comment">// We are then converting it to 0 to 2π and then to degrees</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a>)</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a>)</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="keywordflow">return</span> (atan2(accYval, accZval) + PI) * RAD_TO_DEG;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; <span class="keywordflow">return</span> (atan2(accXval, accZval) + PI) * RAD_TO_DEG;</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;</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2"> 115</a></span>&#160;<span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">PS3BT::get9DOFValues</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a) { <span class="comment">// Thanks to Manfred Piendl</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2"> 115</a></span>&#160;<span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">PS3BT::get9DOFValues</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a) { <span class="comment">// Thanks to Manfred Piendl</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span>(!<a class="code" href="class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a">PS3MoveConnected</a>)</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; int16_t value = <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(a);</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a>) {</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a>) {</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordflow">if</span>(value &gt; 2047)</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; value -= 0x1000;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)value / 3.2; <span class="comment">// unit: muT = 10^(-6) Tesla</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a>) {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a>) {</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <span class="keywordflow">if</span>(value &lt; 0)</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; value += 0x8000;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; value -= 0x8000;</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)value / 442.0; <span class="comment">// unit: m/(s^2)</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a> || a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a>) {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a> || a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a>) {</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keywordflow">if</span>(value &lt; 0)</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; value += 0x8000;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; value -= 0x8000;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a>)</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a>)</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)value / 11.6; <span class="comment">// unit: deg/s</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a>)</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a>)</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)value / 11.2; <span class="comment">// unit: deg/s</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">else</span> <span class="comment">// gZmove</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)value / 9.6; <span class="comment">// unit: deg/s</span></div>
@ -234,7 +234,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="class_p_s3_b_t.html#ab4f49b61167df001d13b68c7699651b4"> 144</a></span>&#160;String <a class="code" href="class_p_s3_b_t.html#ab4f49b61167df001d13b68c7699651b4">PS3BT::getTemperature</a>() {</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a">PS3MoveConnected</a>) {</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; int16_t input = <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a>);</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; int16_t input = <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a>);</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; String output = String(input / 100);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; output += <span class="stringliteral">&quot;.&quot;</span>;</div>
@ -324,7 +324,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; hci_handle = pBtd-&gt;<a class="code" href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">hci_handle</a>; <span class="comment">// Store the HCI Handle for the connection</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; l2cap_state = <a class="code" href="_b_t_d_8h.html#a15cc1db556ad9a4ec6144ca8a42f8919">L2CAP_WAIT</a>;</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">for</span>(uint8_t i = 0; i &lt; 30; i++)</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; remote_name[i] = pBtd-&gt;<a class="code" href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e">remote_name</a>[i]; <span class="comment">// Store the remote name for the connection</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; remote_name[i] = pBtd-&gt;<a class="code" href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa">remote_name</a>[i]; <span class="comment">// Store the remote name for the connection</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;#ifdef DEBUG_USB_HOST</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">if</span>(pBtd-&gt;<a class="code" href="class_b_t_d.html#addaddee110af23a3195ad56f631e69ea">hci_version</a> &lt; 3) { <span class="comment">// Check the HCI Version of the Bluetooth dongle</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nYour dongle may not support reading the analog buttons, sensors and status\r\nYour HCI Version is: &quot;</span>), 0x80);</div>
@ -727,128 +727,128 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00636"></a><span class="lineno"> 636</span>&#160;}</div>
<div class="ttc" id="_b_t_d_8h_html_a27057737ae0b2246442511c01eeed192"><div class="ttname"><a href="_b_t_d_8h.html#a27057737ae0b2246442511c01eeed192">L2CAP_FLAG_DISCONNECT_CONTROL_RESPONSE</a></div><div class="ttdeci">#define L2CAP_FLAG_DISCONNECT_CONTROL_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00139">BTD.h:139</a></div></div>
<div class="ttc" id="class_b_t_d_html_a4dc8f94fe85028f3d54f13dde1e5b4ee"><div class="ttname"><a href="class_b_t_d.html#a4dc8f94fe85028f3d54f13dde1e5b4ee">BTD::incomingWii</a></div><div class="ttdeci">bool incomingWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00507">BTD.h:507</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00211">PS3Enums.h:211</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00163">PS3Enums.h:163</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a3aa6623f7fa8839754d3deefa6d60372"><div class="ttname"><a href="_b_t_d_8h.html#a3aa6623f7fa8839754d3deefa6d60372">UHS_ACL_HANDLE_OK</a></div><div class="ttdeci">#define UHS_ACL_HANDLE_OK(x, y)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00207">BTD.h:207</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00194">PS3Enums.h:194</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00187">PS3Enums.h:187</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00148">PS3Enums.h:148</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00146">PS3Enums.h:146</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00139">PS3Enums.h:139</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ab35277632083d43f8750d130bea6d430"><div class="ttname"><a href="class_p_s3_b_t.html#ab35277632083d43f8750d130bea6d430">PS3BT::PS3NavigationConnected</a></div><div class="ttdeci">bool PS3NavigationConnected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00196">PS3BT.h:196</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf">MoveLow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00201">PS3Enums.h:201</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf">MoveLow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00153">PS3Enums.h:153</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a2b3cdcd3124251a40ce825da0d8dcb6f"><div class="ttname"><a href="_b_t_d_8h.html#a2b3cdcd3124251a40ce825da0d8dcb6f">L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS</a></div><div class="ttdeci">#define L2CAP_FLAG_CONFIG_INTERRUPT_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00143">BTD.h:143</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a73e3a81d9a8850075fd10933acc5a035"><div class="ttname"><a href="_b_t_d_8h.html#a73e3a81d9a8850075fd10933acc5a035">L2CAP_INTERRUPT_CONFIG_REQUEST</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_CONFIG_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00115">BTD.h:115</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ac7aa7fd7a8a34a6c9e420e3cb114737b"><div class="ttname"><a href="_b_t_d_8h.html#ac7aa7fd7a8a34a6c9e420e3cb114737b">L2CAP_INTERRUPT_SETUP</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_SETUP</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00113">BTD.h:113</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a5062acbd19a52d88a998f19060fbc46a"><div class="ttname"><a href="class_p_s3_b_t.html#a5062acbd19a52d88a998f19060fbc46a">PS3BT::getStatus</a></div><div class="ttdeci">bool getStatus(StatusEnum c)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00159">PS3BT.cpp:159</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01234">BTD.cpp:1234</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01231">BTD.cpp:1231</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ab41f25f45573239990f68611dc825086"><div class="ttname"><a href="class_p_s3_b_t.html#ab41f25f45573239990f68611dc825086">PS3BT::Run</a></div><div class="ttdeci">virtual void Run()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00456">PS3BT.cpp:456</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00146">PS3Enums.h:146</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a1be7a56cdddcdb7dedf16d4dee381e93"><div class="ttname"><a href="_b_t_d_8h.html#a1be7a56cdddcdb7dedf16d4dee381e93">SUCCESSFUL</a></div><div class="ttdeci">#define SUCCESSFUL</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00177">BTD.h:177</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a015f3b25bd7a2908c84b973dec453f45"><div class="ttname"><a href="_b_t_d_8h.html#a015f3b25bd7a2908c84b973dec453f45">L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00142">BTD.h:142</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a70df64e026046bc352983127b7ae2cf0adac6477842247cab1a8c02c65f431b44"><div class="ttname"><a href="controller_enums_8h.html#a70df64e026046bc352983127b7ae2cf0adac6477842247cab1a8c02c65f431b44">LED1</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00029">controllerEnums.h:29</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a4e6cdea1880421a21cc8cfca0f00b449"><div class="ttname"><a href="class_p_s3_b_t.html#a4e6cdea1880421a21cc8cfca0f00b449">PS3BT::setLedOn</a></div><div class="ttdeci">void setLedOn(LEDEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00568">PS3BT.cpp:568</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01287">BTD.cpp:1287</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00150">PS3Enums.h:150</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030">MoveCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00197">PS3Enums.h:197</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00205">PS3Enums.h:205</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01284">BTD.cpp:1284</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030">MoveCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00149">PS3Enums.h:149</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00157">PS3Enums.h:157</a></div></div>
<div class="ttc" id="class_b_t_d_html_addaddee110af23a3195ad56f631e69ea"><div class="ttname"><a href="class_b_t_d.html#addaddee110af23a3195ad56f631e69ea">BTD::hci_version</a></div><div class="ttdeci">uint8_t hci_version</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00497">BTD.h:497</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00143">controllerEnums.h:143</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00150">controllerEnums.h:150</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0c8cc2a2dd2cda3e760b8b4c1a2d169c"><div class="ttname"><a href="class_b_t_d.html#a0c8cc2a2dd2cda3e760b8b4c1a2d169c">BTD::pairWithWii</a></div><div class="ttdeci">bool pairWithWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00509">BTD.h:509</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00208">PS3Enums.h:208</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00160">PS3Enums.h:160</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ab4f49b61167df001d13b68c7699651b4"><div class="ttname"><a href="class_p_s3_b_t.html#ab4f49b61167df001d13b68c7699651b4">PS3BT::getTemperature</a></div><div class="ttdeci">String getTemperature()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00144">PS3BT.cpp:144</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a></div><div class="ttdeci">AnalogHatEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00116">controllerEnums.h:116</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ac14d338ddb573d1c06f70749f9205689"><div class="ttname"><a href="class_p_s3_b_t.html#ac14d338ddb573d1c06f70749f9205689">PS3BT::moveSetRumble</a></div><div class="ttdeci">void moveSetRumble(uint8_t rumble)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00616">PS3BT.cpp:616</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a6b3038e881952934873fd533de842670"><div class="ttname"><a href="_b_t_d_8h.html#a6b3038e881952934873fd533de842670">TURN_ON_LED</a></div><div class="ttdeci">#define TURN_ON_LED</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00129">BTD.h:129</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00139">controllerEnums.h:139</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a8f3945da5c4e00ce2fd3daf0b6267cec"><div class="ttname"><a href="class_p_s3_b_t.html#a8f3945da5c4e00ce2fd3daf0b6267cec">PS3BT::printStatusString</a></div><div class="ttdeci">void printStatusString()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00163">PS3BT.cpp:163</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a6ee74242b0c1644496ff04b457f39cd2"><div class="ttname"><a href="class_p_s3_b_t.html#a6ee74242b0c1644496ff04b457f39cd2">PS3BT::setAllOff</a></div><div class="ttdeci">void setAllOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00521">PS3BT.cpp:521</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00179">PS3Enums.h:179</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00158">controllerEnums.h:158</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ae4da52ca67e1f8b977199b24e8f3a400"><div class="ttname"><a href="_b_t_d_8h.html#ae4da52ca67e1f8b977199b24e8f3a400">L2CAP_DONE</a></div><div class="ttdeci">#define L2CAP_DONE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00104">BTD.h:104</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00191">PS3Enums.h:191</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00189">PS3Enums.h:189</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00143">PS3Enums.h:143</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00141">PS3Enums.h:141</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_abac08b5b24a1cd2b12517cd9aa6c616b"><div class="ttname"><a href="_b_t_d_8h.html#abac08b5b24a1cd2b12517cd9aa6c616b">L2CAP_CONTROL_SUCCESS</a></div><div class="ttdeci">#define L2CAP_CONTROL_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00109">BTD.h:109</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a15cc1db556ad9a4ec6144ca8a42f8919"><div class="ttname"><a href="_b_t_d_8h.html#a15cc1db556ad9a4ec6144ca8a42f8919">L2CAP_WAIT</a></div><div class="ttdeci">#define L2CAP_WAIT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00103">BTD.h:103</a></div></div>
<div class="ttc" id="class_b_t_d_html_aede42d995c384c238fd49d728df01e4e"><div class="ttname"><a href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e">BTD::remote_name</a></div><div class="ttdeci">uint8_t remote_name[30]</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00491">BTD.h:491</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00183">PS3Enums.h:183</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00135">PS3Enums.h:135</a></div></div>
<div class="ttc" id="_p_s3_b_t_8h_html_a465c4c33eae0fd5f934ae12bc8d6ca7e"><div class="ttname"><a href="_p_s3_b_t_8h.html#a465c4c33eae0fd5f934ae12bc8d6ca7e">HID_BUFFERSIZE</a></div><div class="ttdeci">#define HID_BUFFERSIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00024">PS3BT.h:24</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a576d72cdf12af58ae59c8f2a02f99c0f"><div class="ttname"><a href="class_p_s3_b_t.html#a576d72cdf12af58ae59c8f2a02f99c0f">PS3BT::Reset</a></div><div class="ttdeci">virtual void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00207">PS3BT.cpp:207</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a90c28adabe5fc5da343fe8a5ac9ca6de"><div class="ttname"><a href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a></div><div class="ttdeci">const uint32_t PS3_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00063">PS3Enums.h:63</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa0fd5483f227e29de23c20ee31c940aa"><div class="ttname"><a href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa">BTD::remote_name</a></div><div class="ttdeci">char remote_name[30]</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00491">BTD.h:491</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00148">controllerEnums.h:148</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a90c28adabe5fc5da343fe8a5ac9ca6de"><div class="ttname"><a href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a></div><div class="ttdeci">const uint32_t PS3_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00062">PS3Enums.h:62</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a5e7842bef25e7c7210974f5405e1bc81"><div class="ttname"><a href="class_p_s3_b_t.html#a5e7842bef25e7c7210974f5405e1bc81">PS3BT::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00052">PS3BT.cpp:52</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a70df64e026046bc352983127b7ae2cf0"><div class="ttname"><a href="controller_enums_8h.html#a70df64e026046bc352983127b7ae2cf0">LEDEnum</a></div><div class="ttdeci">LEDEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00027">controllerEnums.h:27</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a07c8dcb809005e8492bbef4e1f4b9d24"><div class="ttname"><a href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">PS3BT::getSensor</a></div><div class="ttdeci">int16_t getSensor(SensorEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00071">PS3BT.cpp:71</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01300">BTD.cpp:1300</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01297">BTD.cpp:1297</a></div></div>
<div class="ttc" id="message_8h_html_a27117e124c5d66d5512fe8d494fe6338"><div class="ttname"><a href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a></div><div class="ttdeci">#define Notify(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00044">message.h:44</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ae1e00364c5ff214274438bf54c3cf743"><div class="ttname"><a href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">PS3BT::getAngle</a></div><div class="ttdeci">double getAngle(AngleEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00088">PS3BT.cpp:88</a></div></div>
<div class="ttc" id="settings_8h_html_a11b6e9d1bc9facf0772bda8ad763530c"><div class="ttname"><a href="settings_8h.html#a11b6e9d1bc9facf0772bda8ad763530c">USB_HOST_SERIAL</a></div><div class="ttdeci">#define USB_HOST_SERIAL</div><div class="ttdef"><b>Definition:</b> <a href="settings_8h_source.html#l00024">settings.h:24</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a1465673868452307bcdab8e201430c27"><div class="ttname"><a href="_b_t_d_8h.html#a1465673868452307bcdab8e201430c27">HID_CTRL_PSM</a></div><div class="ttdeci">#define HID_CTRL_PSM</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00182">BTD.h:182</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00192">PS3Enums.h:192</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00193">PS3Enums.h:193</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00155">PS3Enums.h:155</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00156">controllerEnums.h:156</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00144">PS3Enums.h:144</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00145">PS3Enums.h:145</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00146">controllerEnums.h:146</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7caac80fb6f5f0e794af3644887d88e"><div class="ttname"><a href="class_b_t_d.html#ac7caac80fb6f5f0e794af3644887d88e">BTD::connectToWii</a></div><div class="ttdeci">bool connectToWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00503">BTD.h:503</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00118">PS3Enums.h:118</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00162">PS3Enums.h:162</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_b_t_8h_html"><div class="ttname"><a href="_p_s3_b_t_8h.html">PS3BT.h</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a648e2bfeb06e2dc1603202e95324b206"><div class="ttname"><a href="class_p_s3_b_t.html#a648e2bfeb06e2dc1603202e95324b206">PS3BT::getAnalogHat</a></div><div class="ttdeci">uint8_t getAnalogHat(AnalogHatEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00067">PS3BT.cpp:67</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa3bb6c692701cb33dfad1ea4d68b6f98"><div class="ttname"><a href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">BTD::hci_handle</a></div><div class="ttdeci">uint16_t hci_handle</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00487">BTD.h:487</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a2804535e3164eafca80a6f6c6bd9a4f9"><div class="ttname"><a href="class_p_s3_b_t.html#a2804535e3164eafca80a6f6c6bd9a4f9">PS3BT::PS3Connected</a></div><div class="ttdeci">bool PS3Connected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00188">PS3BT.h:188</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01145">BTD.cpp:1145</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01142">BTD.cpp:1142</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_acc096a05301f3cbdece4ad372cc149c3"><div class="ttname"><a href="_b_t_d_8h.html#acc096a05301f3cbdece4ad372cc149c3">L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</a></div><div class="ttdeci">#define L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00145">BTD.h:145</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00165">controllerEnums.h:165</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ad0926b75edcbb12ddf76f78e66728782"><div class="ttname"><a href="class_p_s3_b_t.html#ad0926b75edcbb12ddf76f78e66728782">PS3BT::moveSetBulb</a></div><div class="ttdeci">void moveSetBulb(uint8_t r, uint8_t g, uint8_t b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00603">PS3BT.cpp:603</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a9273b6796948b83772117b3805421b4a"><div class="ttname"><a href="class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a">PS3BT::PS3MoveConnected</a></div><div class="ttdeci">bool PS3MoveConnected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00194">PS3BT.h:194</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00157">PS3Enums.h:157</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1f8e9171a310e50f2c4a3c19066efe5a"><div class="ttname"><a href="class_b_t_d.html#a1f8e9171a310e50f2c4a3c19066efe5a">BTD::my_bdaddr</a></div><div class="ttdeci">uint8_t my_bdaddr[6]</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00485">BTD.h:485</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00178">PS3Enums.h:178</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00141">controllerEnums.h:141</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a7a3e593911490538c061e9ccb4273f87"><div class="ttname"><a href="class_p_s3_b_t.html#a7a3e593911490538c061e9ccb4273f87">PS3BT::setRumbleOn</a></div><div class="ttdeci">void setRumbleOn(RumbleEnum mode)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00541">PS3BT.cpp:541</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7ba142ed3f585d034f29cc2c36fba0e9"><div class="ttname"><a href="_p_s3_enums_8h.html#a7ba142ed3f585d034f29cc2c36fba0e9">PS3_LEDS</a></div><div class="ttdeci">const uint8_t PS3_LEDS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00043">PS3Enums.h:43</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5d120280be8d502fa0b74d46aa32d3a8"><div class="ttname"><a href="_b_t_d_8h.html#a5d120280be8d502fa0b74d46aa32d3a8">l2cap_check_flag</a></div><div class="ttdeci">#define l2cap_check_flag(flag)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00160">BTD.h:160</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943">MoveFull</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00203">PS3Enums.h:203</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00186">PS3Enums.h:186</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943">MoveFull</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00155">PS3Enums.h:155</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00138">PS3Enums.h:138</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a48bcd73461d736d0ef889e1fe6e36f69"><div class="ttname"><a href="_b_t_d_8h.html#a48bcd73461d736d0ef889e1fe6e36f69">L2CAP_CMD_CONFIG_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_CONFIG_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00168">BTD.h:168</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a398676a2e9a2351a5a52afdddf4b660b"><div class="ttname"><a href="_b_t_d_8h.html#a398676a2e9a2351a5a52afdddf4b660b">L2CAP_CMD_DISCONNECT_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_DISCONNECT_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00170">BTD.h:170</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a9b5140e7ca5941e5535c575255ffc1cc"><div class="ttname"><a href="_b_t_d_8h.html#a9b5140e7ca5941e5535c575255ffc1cc">L2CAP_CONTROL_DISCONNECT</a></div><div class="ttdeci">#define L2CAP_CONTROL_DISCONNECT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00110">BTD.h:110</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a969a1ee84797f3ee5006c41f67373f96"><div class="ttname"><a href="_b_t_d_8h.html#a969a1ee84797f3ee5006c41f67373f96">L2CAP_FLAG_CONNECTION_CONTROL_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_CONNECTION_CONTROL_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00136">BTD.h:136</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00174">PS3Enums.h:174</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00164">PS3Enums.h:164</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a32d591ef5742a99963130616ef146787"><div class="ttname"><a href="_b_t_d_8h.html#a32d591ef5742a99963130616ef146787">BULK_MAXPKTSIZE</a></div><div class="ttdeci">#define BULK_MAXPKTSIZE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00033">BTD.h:33</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00153">controllerEnums.h:153</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00114">PS3Enums.h:114</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a4c5ac96db74d61d4a5a5d945a400e7da"><div class="ttname"><a href="_b_t_d_8h.html#a4c5ac96db74d61d4a5a5d945a400e7da">HID_INTR_PSM</a></div><div class="ttdeci">#define HID_INTR_PSM</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00183">BTD.h:183</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ac306dfe7b0e1b3a3e9bb357aa7552dec"><div class="ttname"><a href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a></div><div class="ttdeci">const uint8_t PS3_ANALOG_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00094">PS3Enums.h:94</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ac306dfe7b0e1b3a3e9bb357aa7552dec"><div class="ttname"><a href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a></div><div class="ttdeci">const uint8_t PS3_ANALOG_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00092">PS3Enums.h:92</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a70df64e026046bc352983127b7ae2cf0aac132f2982b98bcaa3445e535a03ff75"><div class="ttname"><a href="controller_enums_8h.html#a70df64e026046bc352983127b7ae2cf0aac132f2982b98bcaa3445e535a03ff75">OFF</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00028">controllerEnums.h:28</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00135">controllerEnums.h:135</a></div></div>
<div class="ttc" id="class_b_t_d_html_a4adfc7e51ad3b3c03e7c37d1af159e73"><div class="ttname"><a href="class_b_t_d.html#a4adfc7e51ad3b3c03e7c37d1af159e73">BTD::registerServiceClass</a></div><div class="ttdeci">int8_t registerServiceClass(BluetoothService *pService)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00333">BTD.h:333</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0f1c28a03bcbe62cc7c083f97ea27594"><div class="ttname"><a href="class_b_t_d.html#a0f1c28a03bcbe62cc7c083f97ea27594">BTD::l2capConnectionClaimed</a></div><div class="ttdeci">bool l2capConnectionClaimed</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00473">BTD.h:473</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00172">PS3Enums.h:172</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00144">PS3Enums.h:144</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00164">controllerEnums.h:164</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aa25fc1cab2e76831c39705932cf1d828"><div class="ttname"><a href="_b_t_d_8h.html#aa25fc1cab2e76831c39705932cf1d828">PS3_ENABLE_SIXAXIS</a></div><div class="ttdeci">#define PS3_ENABLE_SIXAXIS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00130">BTD.h:130</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c">MoveShutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00199">PS3Enums.h:199</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c">MoveShutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00151">PS3Enums.h:151</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a4c64a41200714e457b397496183dc0e4"><div class="ttname"><a href="_b_t_d_8h.html#a4c64a41200714e457b397496183dc0e4">L2CAP_CMD_DISCONNECT_RESPONSE</a></div><div class="ttdeci">#define L2CAP_CMD_DISCONNECT_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00171">BTD.h:171</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00206">PS3Enums.h:206</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb">MoveHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00202">PS3Enums.h:202</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00158">PS3Enums.h:158</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb">MoveHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00154">PS3Enums.h:154</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_aa310ede24b68b1b03cfc49c4308c66b7"><div class="ttname"><a href="class_p_s3_b_t.html#aa310ede24b68b1b03cfc49c4308c66b7">PS3BT::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00227">PS3BT.cpp:227</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a8151b1fe5d940a5a7a34f43a8b8ce434"><div class="ttname"><a href="_b_t_d_8h.html#a8151b1fe5d940a5a7a34f43a8b8ce434">L2CAP_CMD_CONFIG_RESPONSE</a></div><div class="ttdeci">#define L2CAP_CMD_CONFIG_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00169">BTD.h:169</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00207">PS3Enums.h:207</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00160">PS3Enums.h:160</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00170">PS3Enums.h:170</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00190">PS3Enums.h:190</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00159">PS3Enums.h:159</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a2ce9fb6251b56ec877cd22af7213a037"><div class="ttname"><a href="class_p_s3_b_t.html#a2ce9fb6251b56ec877cd22af7213a037">PS3BT::setLedOff</a></div><div class="ttdeci">void setLedOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00147">PS3BT.h:147</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00153">PS3Enums.h:153</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ae163b7f00d287f8647dabc2897d0d208"><div class="ttname"><a href="class_p_s3_b_t.html#ae163b7f00d287f8647dabc2897d0d208">PS3BT::setLedToggle</a></div><div class="ttdeci">void setLedToggle(LEDEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00577">PS3BT.cpp:577</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00212">PS3Enums.h:212</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00164">PS3Enums.h:164</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a4898fccf5d2aa053bc67894aa3627e0f"><div class="ttname"><a href="_p_s3_enums_8h.html#a4898fccf5d2aa053bc67894aa3627e0f">PS3_REPORT_BUFFER_SIZE</a></div><div class="ttdeci">#define PS3_REPORT_BUFFER_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00024">PS3Enums.h:24</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8">MoveDying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00200">PS3Enums.h:200</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8">MoveDying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00152">PS3Enums.h:152</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a39ad8810c67e85eddc68c8a16d38a985"><div class="ttname"><a href="class_p_s3_b_t.html#a39ad8810c67e85eddc68c8a16d38a985">PS3BT::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00220">PS3BT.cpp:220</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01193">BTD.cpp:1193</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01268">BTD.cpp:1268</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01190">BTD.cpp:1190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01265">BTD.cpp:1265</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a9960d0d5ae92fc92c70bbb84c2a5c0cc"><div class="ttname"><a href="_b_t_d_8h.html#a9960d0d5ae92fc92c70bbb84c2a5c0cc">PENDING</a></div><div class="ttdeci">#define PENDING</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00176">BTD.h:176</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5f035450f226204f021e69ad1faa2e3a"><div class="ttname"><a href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a></div><div class="ttdeci">#define l2cap_set_flag(flag)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00161">BTD.h:161</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01251">BTD.cpp:1251</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01248">BTD.cpp:1248</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a0c444d5d06ec604820d426556c2f38d7"><div class="ttname"><a href="_b_t_d_8h.html#a0c444d5d06ec604820d426556c2f38d7">L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</a></div><div class="ttdeci">#define L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00137">BTD.h:137</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a">MoveNotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00198">PS3Enums.h:198</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00131">controllerEnums.h:131</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a">MoveNotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00150">PS3Enums.h:150</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ac4bae0c65fd00ed849cb226302d19c85"><div class="ttname"><a href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_CONNECTION_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00166">BTD.h:166</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ae6596ca28c65db105392a9fed8698ef2"><div class="ttname"><a href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">PS3BT::get9DOFValues</a></div><div class="ttdeci">double get9DOFValues(SensorEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00115">PS3BT.cpp:115</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a6dac11972fc4b1f5984d43365be1a954"><div class="ttname"><a href="class_p_s3_b_t.html#a6dac11972fc4b1f5984d43365be1a954">PS3BT::getAnalogButton</a></div><div class="ttdeci">uint8_t getAnalogButton(ButtonEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00063">PS3BT.cpp:63</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00160">controllerEnums.h:160</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a0acdc09661a8099b2d5e8b59cd8325bb"><div class="ttname"><a href="class_p_s3_b_t.html#a0acdc09661a8099b2d5e8b59cd8325bb">PS3BT::setLedRaw</a></div><div class="ttdeci">void setLedRaw(uint8_t value)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00558">PS3BT.cpp:558</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_aab14832f7844f07e6287eb443019b6e7"><div class="ttname"><a href="class_p_s3_b_t.html#aab14832f7844f07e6287eb443019b6e7">PS3BT::PS3BT</a></div><div class="ttdeci">PS3BT(BTD *pBtd, uint8_t btadr5=0, uint8_t btadr4=0, uint8_t btadr3=0, uint8_t btadr2=0, uint8_t btadr1=0, uint8_t btadr0=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00023">PS3BT.cpp:23</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00167">PS3Enums.h:167</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00195">PS3Enums.h:195</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00147">PS3Enums.h:147</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ab569b2085ad29f41d1da9c0ed352bd65"><div class="ttname"><a href="_b_t_d_8h.html#ab569b2085ad29f41d1da9c0ed352bd65">L2CAP_INTERRUPT_DISCONNECT</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_DISCONNECT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00116">BTD.h:116</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a5c87e7db5311a5d56f78c994b5545e4e"><div class="ttname"><a href="class_p_s3_b_t.html#a5c87e7db5311a5d56f78c994b5545e4e">PS3BT::setRumbleOff</a></div><div class="ttdeci">void setRumbleOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00532">PS3BT.cpp:532</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a3b0e522b5d8a39d3daf540e4feb4f5fe"><div class="ttname"><a href="class_p_s3_b_t.html#a3b0e522b5d8a39d3daf540e4feb4f5fe">PS3BT::getButtonClick</a></div><div class="ttdeci">bool getButtonClick(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00056">PS3BT.cpp:56</a></div></div>

View file

@ -126,9 +126,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s3_b_t.html#a3b0e522b5d8a39d3daf540e4feb4f5fe">getButtonClick</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; uint8_t <a class="code" href="class_p_s3_b_t.html#a6dac11972fc4b1f5984d43365be1a954">getAnalogButton</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> a);</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; uint8_t <a class="code" href="class_p_s3_b_t.html#a648e2bfeb06e2dc1603202e95324b206">getAnalogHat</a>(<a class="code" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; int16_t <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">getAngle</a>(<a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">get9DOFValues</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a);</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; int16_t <a class="code" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">getAngle</a>(<a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a);</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">get9DOFValues</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a);</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s3_b_t.html#a5062acbd19a52d88a998f19060fbc46a">getStatus</a>(<a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> c);</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s3_b_t.html#a8f3945da5c4e00ce2fd3daf0b6267cec">printStatusString</a>();</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; String <a class="code" href="class_p_s3_b_t.html#ab4f49b61167df001d13b68c7699651b4">getTemperature</a>();</div>
@ -202,7 +202,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordtype">void</span> enable_sixaxis(); <span class="comment">// Command used to enable the Dualshock 3 and Navigation controller to send data via Bluetooth</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;};</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00211">PS3Enums.h:211</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00163">PS3Enums.h:163</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ab35277632083d43f8750d130bea6d430"><div class="ttname"><a href="class_p_s3_b_t.html#ab35277632083d43f8750d130bea6d430">PS3BT::PS3NavigationConnected</a></div><div class="ttdeci">bool PS3NavigationConnected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00196">PS3BT.h:196</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a5062acbd19a52d88a998f19060fbc46a"><div class="ttname"><a href="class_p_s3_b_t.html#a5062acbd19a52d88a998f19060fbc46a">PS3BT::getStatus</a></div><div class="ttdeci">bool getStatus(StatusEnum c)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00159">PS3BT.cpp:159</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ab41f25f45573239990f68611dc825086"><div class="ttname"><a href="class_p_s3_b_t.html#ab41f25f45573239990f68611dc825086">PS3BT::Run</a></div><div class="ttdeci">virtual void Run()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00456">PS3BT.cpp:456</a></div></div>
@ -213,7 +213,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_p_s3_b_t_html_ac14d338ddb573d1c06f70749f9205689"><div class="ttname"><a href="class_p_s3_b_t.html#ac14d338ddb573d1c06f70749f9205689">PS3BT::moveSetRumble</a></div><div class="ttdeci">void moveSetRumble(uint8_t rumble)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00616">PS3BT.cpp:616</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a8f3945da5c4e00ce2fd3daf0b6267cec"><div class="ttname"><a href="class_p_s3_b_t.html#a8f3945da5c4e00ce2fd3daf0b6267cec">PS3BT::printStatusString</a></div><div class="ttdeci">void printStatusString()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00163">PS3BT.cpp:163</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a6ee74242b0c1644496ff04b457f39cd2"><div class="ttname"><a href="class_p_s3_b_t.html#a6ee74242b0c1644496ff04b457f39cd2">PS3BT::setAllOff</a></div><div class="ttdeci">void setAllOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00521">PS3BT.cpp:521</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00183">PS3Enums.h:183</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00135">PS3Enums.h:135</a></div></div>
<div class="ttc" id="_p_s3_b_t_8h_html_a465c4c33eae0fd5f934ae12bc8d6ca7e"><div class="ttname"><a href="_p_s3_b_t_8h.html#a465c4c33eae0fd5f934ae12bc8d6ca7e">HID_BUFFERSIZE</a></div><div class="ttdeci">#define HID_BUFFERSIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00024">PS3BT.h:24</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a576d72cdf12af58ae59c8f2a02f99c0f"><div class="ttname"><a href="class_p_s3_b_t.html#a576d72cdf12af58ae59c8f2a02f99c0f">PS3BT::Reset</a></div><div class="ttdeci">virtual void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00207">PS3BT.cpp:207</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a5e7842bef25e7c7210974f5405e1bc81"><div class="ttname"><a href="class_p_s3_b_t.html#a5e7842bef25e7c7210974f5405e1bc81">PS3BT::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00052">PS3BT.cpp:52</a></div></div>
@ -229,15 +229,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ad0926b75edcbb12ddf76f78e66728782"><div class="ttname"><a href="class_p_s3_b_t.html#ad0926b75edcbb12ddf76f78e66728782">PS3BT::moveSetBulb</a></div><div class="ttdeci">void moveSetBulb(uint8_t r, uint8_t g, uint8_t b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00603">PS3BT.cpp:603</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a9273b6796948b83772117b3805421b4a"><div class="ttname"><a href="class_p_s3_b_t.html#a9273b6796948b83772117b3805421b4a">PS3BT::PS3MoveConnected</a></div><div class="ttdeci">bool PS3MoveConnected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00194">PS3BT.h:194</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00178">PS3Enums.h:178</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a7a3e593911490538c061e9ccb4273f87"><div class="ttname"><a href="class_p_s3_b_t.html#a7a3e593911490538c061e9ccb4273f87">PS3BT::setRumbleOn</a></div><div class="ttdeci">void setRumbleOn(RumbleEnum mode)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00541">PS3BT.cpp:541</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a32d591ef5742a99963130616ef146787"><div class="ttname"><a href="_b_t_d_8h.html#a32d591ef5742a99963130616ef146787">BULK_MAXPKTSIZE</a></div><div class="ttdeci">#define BULK_MAXPKTSIZE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00033">BTD.h:33</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00114">PS3Enums.h:114</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00164">controllerEnums.h:164</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_aa310ede24b68b1b03cfc49c4308c66b7"><div class="ttname"><a href="class_p_s3_b_t.html#aa310ede24b68b1b03cfc49c4308c66b7">PS3BT::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00227">PS3BT.cpp:227</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a2ce9fb6251b56ec877cd22af7213a037"><div class="ttname"><a href="class_p_s3_b_t.html#a2ce9fb6251b56ec877cd22af7213a037">PS3BT::setLedOff</a></div><div class="ttdeci">void setLedOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8h_source.html#l00147">PS3BT.h:147</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ae163b7f00d287f8647dabc2897d0d208"><div class="ttname"><a href="class_p_s3_b_t.html#ae163b7f00d287f8647dabc2897d0d208">PS3BT::setLedToggle</a></div><div class="ttdeci">void setLedToggle(LEDEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00577">PS3BT.cpp:577</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a39ad8810c67e85eddc68c8a16d38a985"><div class="ttname"><a href="class_p_s3_b_t.html#a39ad8810c67e85eddc68c8a16d38a985">PS3BT::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00220">PS3BT.cpp:220</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00131">controllerEnums.h:131</a></div></div>
<div class="ttc" id="_b_t_d_8h_html"><div class="ttname"><a href="_b_t_d_8h.html">BTD.h</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_ae6596ca28c65db105392a9fed8698ef2"><div class="ttname"><a href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">PS3BT::get9DOFValues</a></div><div class="ttdeci">double get9DOFValues(SensorEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00115">PS3BT.cpp:115</a></div></div>
<div class="ttc" id="class_p_s3_b_t_html_a6dac11972fc4b1f5984d43365be1a954"><div class="ttname"><a href="class_p_s3_b_t.html#a6dac11972fc4b1f5984d43365be1a954">PS3BT::getAnalogButton</a></div><div class="ttdeci">uint8_t getAnalogButton(ButtonEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_b_t_8cpp_source.html#l00063">PS3BT.cpp:63</a></div></div>

View file

@ -106,7 +106,7 @@ This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s3_enums_8h__dep__incl.png" border="0" usemap="#_p_s3_enums_8hdep" alt=""/></div>
<map name="_p_s3_enums_8hdep" id="_p_s3_enums_8hdep">
<area shape="rect" id="node2" href="_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="18,83,91,111"/><area shape="rect" id="node4" href="_p_s3_u_s_b_8h.html" title="PS3USB.h" alt="" coords="123,83,207,111"/><area shape="rect" id="node6" href="_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="238,83,311,111"/><area shape="rect" id="node3" href="_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="4,161,91,189"/><area shape="rect" id="node5" href="_p_s3_u_s_b_8cpp.html" title="PS3USB.cpp" alt="" coords="116,161,215,189"/><area shape="rect" id="node7" href="_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="239,161,325,189"/></map>
<area shape="rect" id="node2" href="_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="15,83,88,111"/><area shape="rect" id="node4" href="_p_s3_u_s_b_8h.html" title="PS3USB.h" alt="" coords="119,83,203,111"/><area shape="rect" id="node3" href="_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="4,161,91,189"/><area shape="rect" id="node5" href="_p_s3_u_s_b_8cpp.html" title="PS3USB.cpp" alt="" coords="116,161,215,189"/></map>
</div>
</div>
<p><a href="_p_s3_enums_8h_source.html">Go to the source code of this file.</a></p>
@ -133,31 +133,6 @@ Enumerations</h2></td></tr>
<br/>
}</td></tr>
<tr class="separator:aac6fa7b0395b95cc528deaad0ce884a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a00d5030559c481763282483889597d51"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> { <br/>
&#160;&#160;<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a> = 50,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a> = 52,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a> = 54,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a> = 56,
<br/>
&#160;&#160;<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a> = 28,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a> = 30,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a> = 32,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a> = 40,
<br/>
&#160;&#160;<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a> = 42,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a> = 44,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a> = 46,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a> = 47,
<br/>
&#160;&#160;<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a> = 49,
<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a> = 50
<br/>
}</td></tr>
<tr class="separator:a00d5030559c481763282483889597d51"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7c7824a10a9ffa8fea85602fcf4d84e6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> { <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> = 0x01,
<a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a> = 0x02
}</td></tr>
<tr class="separator:a7c7824a10a9ffa8fea85602fcf4d84e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add5c7a32e8138b44244caf07232161ae"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> { <br/>
&#160;&#160;<a class="el" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a> = (38 &lt;&lt; 8) | 0x02,
<a class="el" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a> = (38 &lt;&lt; 8) | 0x03,
@ -271,88 +246,7 @@ Variables</h2></td></tr>
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00116">116</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>
<a class="anchor" id="a00d5030559c481763282483889597d51"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Sensors inside the Sixaxis Dualshock 3 and Move controller.</p>
<p><b>Note:</b> that the location is shifted 9 when it's connected via <a class="el" href="class_u_s_b.html">USB</a>. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"></a>aX</em>&#160;</td><td class="fielddoc">
<p>Accelerometer x-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"></a>aY</em>&#160;</td><td class="fielddoc">
<p>Accelerometer y-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"></a>aZ</em>&#160;</td><td class="fielddoc">
<p>Accelerometer z-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675"></a>gZ</em>&#160;</td><td class="fielddoc">
<p>Gyro z-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7"></a>aXmove</em>&#160;</td><td class="fielddoc">
<p>Accelerometer x-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f"></a>aZmove</em>&#160;</td><td class="fielddoc">
<p>Accelerometer z-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199"></a>aYmove</em>&#160;</td><td class="fielddoc">
<p>Accelerometer y-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731"></a>gXmove</em>&#160;</td><td class="fielddoc">
<p>Gyro x-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d"></a>gZmove</em>&#160;</td><td class="fielddoc">
<p>Gyro z-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91"></a>gYmove</em>&#160;</td><td class="fielddoc">
<p>Gyro y-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f"></a>tempMove</em>&#160;</td><td class="fielddoc">
<p>Temperature sensor </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68"></a>mXmove</em>&#160;</td><td class="fielddoc">
<p>Magnetometer x-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503"></a>mZmove</em>&#160;</td><td class="fielddoc">
<p>Magnetometer z-axis </p>
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78"></a>mYmove</em>&#160;</td><td class="fielddoc">
<p>Magnetometer y-axis </p>
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00142">142</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>
<a class="anchor" id="a7c7824a10a9ffa8fea85602fcf4d84e6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to get the angle calculated using the accelerometer. </p>
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"></a>Pitch</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173"></a>Roll</em>&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00178">178</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00114">114</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>
@ -408,7 +302,7 @@ Variables</h2></td></tr>
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00183">183</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00135">135</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>
@ -428,7 +322,7 @@ Variables</h2></td></tr>
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00211">211</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00163">163</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>
@ -522,10 +416,9 @@ Variables</h2></td></tr>
<div class="line"> 0x080000, </div>
<div class="line"> 0x100000, </div>
<div class="line">}</div>
</div><!-- fragment --><p>Buttons on the controllers</p>
<p><b>Note:</b> that the location is shifted 9 when it's connected via <a class="el" href="class_u_s_b.html">USB</a>. </p>
</div><!-- fragment --><p>Buttons on the controllers. <b>Note:</b> that the location is shifted 9 when it's connected via <a class="el" href="class_u_s_b.html">USB</a>. </p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00063">63</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00062">62</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>
@ -558,10 +451,9 @@ Variables</h2></td></tr>
<div class="line"> </div>
<div class="line"> 15, </div>
<div class="line">}</div>
</div><!-- fragment --><p>Analog buttons on the controllers</p>
<p><b>Note:</b> that the location is shifted 9 when it's connected via <a class="el" href="class_u_s_b.html">USB</a>. </p>
</div><!-- fragment --><p>Analog buttons on the controllers. <b>Note:</b> that the location is shifted 9 when it's connected via <a class="el" href="class_u_s_b.html">USB</a>. </p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00094">94</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s3_enums_8h_source.html#l00092">92</a> of file <a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>.</p>
</div>
</div>

View file

@ -1,8 +1,6 @@
<map id="PS3Enums.h" name="PS3Enums.h">
<area shape="rect" id="node2" href="$_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="18,83,91,111"/>
<area shape="rect" id="node4" href="$_p_s3_u_s_b_8h.html" title="PS3USB.h" alt="" coords="123,83,207,111"/>
<area shape="rect" id="node6" href="$_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="238,83,311,111"/>
<area shape="rect" id="node2" href="$_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="15,83,88,111"/>
<area shape="rect" id="node4" href="$_p_s3_u_s_b_8h.html" title="PS3USB.h" alt="" coords="119,83,203,111"/>
<area shape="rect" id="node3" href="$_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="4,161,91,189"/>
<area shape="rect" id="node5" href="$_p_s3_u_s_b_8cpp.html" title="PS3USB.cpp" alt="" coords="116,161,215,189"/>
<area shape="rect" id="node7" href="$_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="239,161,325,189"/>
</map>

View file

@ -1 +1 @@
33a889bb2dd64e4ad2739cccaf1b7d9c
632aeb814444892cb4235318575b2052

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

@ -142,182 +142,138 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; 0x0F, <span class="comment">// LED10</span></div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;};</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de"> 63</a></span>&#160;<span class="keyword">const</span> uint32_t <a class="code" href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a>[] PROGMEM = {</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; 0x10, <span class="comment">// UP</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; 0x20, <span class="comment">// RIGHT</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; 0x40, <span class="comment">// DOWN</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; 0x80, <span class="comment">// LEFT</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; 0x01, <span class="comment">// SELECT</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; 0x08, <span class="comment">// START</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; 0x02, <span class="comment">// L3</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; 0x04, <span class="comment">// R3</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; 0x0100, <span class="comment">// L2</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; 0x0200, <span class="comment">// R2</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; 0x0400, <span class="comment">// L1</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; 0x0800, <span class="comment">// R1</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; 0x1000, <span class="comment">// TRIANGLE</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; 0x2000, <span class="comment">// CIRCLE</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; 0x4000, <span class="comment">// CROSS</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; 0x8000, <span class="comment">// SQUARE</span></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; 0x010000, <span class="comment">// PS</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; 0x080000, <span class="comment">// MOVE - covers 12 bits - we only need to read the top 8</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; 0x100000, <span class="comment">// T - covers 12 bits - we only need to read the top 8</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;};</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;</div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec"> 94</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a>[] PROGMEM = {</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; 23, <span class="comment">// UP_ANALOG</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; 24, <span class="comment">// RIGHT_ANALOG</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; 25, <span class="comment">// DOWN_ANALOG</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; 26, <span class="comment">// LEFT_ANALOG</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; 0, 0, 0, 0, <span class="comment">// Skip SELECT, L3, R3 and START</span></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; 27, <span class="comment">// L2_ANALOG</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; 28, <span class="comment">// R2_ANALOG</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; 29, <span class="comment">// L1_ANALOG</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; 30, <span class="comment">// R1_ANALOG</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; 31, <span class="comment">// TRIANGLE_ANALOG</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; 32, <span class="comment">// CIRCLE_ANALOG</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; 33, <span class="comment">// CROSS_ANALOG</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; 34, <span class="comment">// SQUARE_ANALOG</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; 0, 0, <span class="comment">// Skip PS and MOVE</span></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; <span class="comment">// Playstation Move Controller</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; 15, <span class="comment">// T_ANALOG - Both at byte 14 (last reading) and byte 15 (current reading)</span></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;</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2"> 116</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a> {</div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"> 118</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a> = 0xFF0000,</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106"> 120</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106">Green</a> = 0xFF00,</div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8"> 122</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8">Blue</a> = 0xFF,</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82"> 125</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82">Yellow</a> = 0xFFEB04,</div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a"> 127</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a">Lightblue</a> = 0xFFFF,</div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c"> 129</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c">Purble</a> = 0xFF00FF,</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;</div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094"> 132</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094">White</a> = 0xFFFFFF,</div>
<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b"> 134</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b">Off</a> = 0x00,</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;};</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;</div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51"> 142</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> {</div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"> 144</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a> = 50,</div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"> 146</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a> = 52,</div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"> 148</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a> = 54,</div>
<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675"> 150</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a> = 56,</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;</div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7"> 153</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a> = 28,</div>
<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f"> 155</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a> = 30,</div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199"> 157</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a> = 32,</div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;</div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731"> 160</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a> = 40,</div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d"> 162</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a> = 42,</div>
<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91"> 164</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a> = 44,</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;</div>
<div class="line"><a name="l00167"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f"> 167</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a> = 46,</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68"> 170</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a> = 47,</div>
<div class="line"><a name="l00172"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503"> 172</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a> = 49,</div>
<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78"> 174</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a> = 50,</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;};</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;</div>
<div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6"> 178</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> {</div>
<div class="line"><a name="l00179"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"> 179</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> = 0x01,</div>
<div class="line"><a name="l00180"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173"> 180</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a> = 0x02,</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;</div>
<div class="line"><a name="l00183"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae"> 183</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> {</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="comment">// Note that the location is shifted 9 when it&#39;s connected via USB</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; <span class="comment">// Byte location | bit location</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"> 186</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a> = (38 &lt;&lt; 8) | 0x02,</div>
<div class="line"><a name="l00187"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"> 187</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a> = (38 &lt;&lt; 8) | 0x03,</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"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"> 189</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a> = (39 &lt;&lt; 8) | 0xEE,</div>
<div class="line"><a name="l00190"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"> 190</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a> = (39 &lt;&lt; 8) | 0xF1,</div>
<div class="line"><a name="l00191"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"> 191</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a> = (39 &lt;&lt; 8) | 0x01,</div>
<div class="line"><a name="l00192"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"> 192</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a> = (39 &lt;&lt; 8) | 0x02,</div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"> 193</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a> = (39 &lt;&lt; 8) | 0x03,</div>
<div class="line"><a name="l00194"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"> 194</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a> = (39 &lt;&lt; 8) | 0x04,</div>
<div class="line"><a name="l00195"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"> 195</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a> = (39 &lt;&lt; 8) | 0x05,</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;</div>
<div class="line"><a name="l00197"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030"> 197</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030">MoveCharging</a> = (21 &lt;&lt; 8) | 0xEE,</div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a"> 198</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a">MoveNotCharging</a> = (21 &lt;&lt; 8) | 0xF1,</div>
<div class="line"><a name="l00199"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c"> 199</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c">MoveShutdown</a> = (21 &lt;&lt; 8) | 0x01,</div>
<div class="line"><a name="l00200"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8"> 200</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8">MoveDying</a> = (21 &lt;&lt; 8) | 0x02,</div>
<div class="line"><a name="l00201"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf"> 201</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf">MoveLow</a> = (21 &lt;&lt; 8) | 0x03,</div>
<div class="line"><a name="l00202"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb"> 202</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb">MoveHigh</a> = (21 &lt;&lt; 8) | 0x04,</div>
<div class="line"><a name="l00203"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943"> 203</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943">MoveFull</a> = (21 &lt;&lt; 8) | 0x05,</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"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"> 205</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a> = (40 &lt;&lt; 8) | 0x10, <span class="comment">// Operating by USB and rumble is turned on</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"> 206</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a> = (40 &lt;&lt; 8) | 0x12, <span class="comment">// Operating by USB and rumble is turned off</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"> 207</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a> = (40 &lt;&lt; 8) | 0x14, <span class="comment">// Operating by Bluetooth and rumble is turned on</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"> 208</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> = (40 &lt;&lt; 8) | 0x16, <span class="comment">// Operating by Bluetooth and rumble is turned off</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;};</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"><a class="line" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1"> 211</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a> {</div>
<div class="line"><a name="l00212"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"> 212</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a> = 0x10,</div>
<div class="line"><a name="l00213"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac"> 213</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac">RumbleLow</a> = 0x20,</div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;};</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="preprocessor">#endif</span></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00211">PS3Enums.h:211</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00194">PS3Enums.h:194</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00187">PS3Enums.h:187</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00148">PS3Enums.h:148</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf">MoveLow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00201">PS3Enums.h:201</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00146">PS3Enums.h:146</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac">RumbleLow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00213">PS3Enums.h:213</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00150">PS3Enums.h:150</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030">MoveCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00197">PS3Enums.h:197</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00205">PS3Enums.h:205</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00208">PS3Enums.h:208</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a">Lightblue</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00127">PS3Enums.h:127</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82">Yellow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00125">PS3Enums.h:125</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00179">PS3Enums.h:179</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00191">PS3Enums.h:191</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00189">PS3Enums.h:189</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00183">PS3Enums.h:183</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a90c28adabe5fc5da343fe8a5ac9ca6de"><div class="ttname"><a href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a></div><div class="ttdeci">const uint32_t PS3_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00063">PS3Enums.h:63</a></div></div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de"> 62</a></span>&#160;<span class="keyword">const</span> uint32_t <a class="code" href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a>[] PROGMEM = {</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160; 0x10, <span class="comment">// UP</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; 0x20, <span class="comment">// RIGHT</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; 0x40, <span class="comment">// DOWN</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; 0x80, <span class="comment">// LEFT</span></div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; 0x01, <span class="comment">// SELECT</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; 0x08, <span class="comment">// START</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; 0x02, <span class="comment">// L3</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; 0x04, <span class="comment">// R3</span></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; 0x0100, <span class="comment">// L2</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; 0x0200, <span class="comment">// R2</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; 0x0400, <span class="comment">// L1</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; 0x0800, <span class="comment">// R1</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; 0x1000, <span class="comment">// TRIANGLE</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; 0x2000, <span class="comment">// CIRCLE</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; 0x4000, <span class="comment">// CROSS</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; 0x8000, <span class="comment">// SQUARE</span></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; 0x010000, <span class="comment">// PS</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; 0x080000, <span class="comment">// MOVE - covers 12 bits - we only need to read the top 8</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; 0x100000, <span class="comment">// T - covers 12 bits - we only need to read the top 8</span></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;</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec"> 92</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a>[] PROGMEM = {</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; 23, <span class="comment">// UP_ANALOG</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; 24, <span class="comment">// RIGHT_ANALOG</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; 25, <span class="comment">// DOWN_ANALOG</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; 26, <span class="comment">// LEFT_ANALOG</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; 0, 0, 0, 0, <span class="comment">// Skip SELECT, L3, R3 and START</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; 27, <span class="comment">// L2_ANALOG</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; 28, <span class="comment">// R2_ANALOG</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; 29, <span class="comment">// L1_ANALOG</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; 30, <span class="comment">// R1_ANALOG</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; 31, <span class="comment">// TRIANGLE_ANALOG</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; 32, <span class="comment">// CIRCLE_ANALOG</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; 33, <span class="comment">// CROSS_ANALOG</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; 34, <span class="comment">// SQUARE_ANALOG</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; 0, 0, <span class="comment">// Skip PS and MOVE</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">// Playstation Move Controller</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; 15, <span class="comment">// T_ANALOG - Both at byte 14 (last reading) and byte 15 (current reading)</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;};</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;</div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2"> 114</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a> {</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"> 116</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a> = 0xFF0000,</div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106"> 118</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106">Green</a> = 0xFF00,</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8"> 120</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8">Blue</a> = 0xFF,</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;</div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82"> 123</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82">Yellow</a> = 0xFFEB04,</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a"> 125</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a">Lightblue</a> = 0xFFFF,</div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c"> 127</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c">Purble</a> = 0xFF00FF,</div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;</div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094"> 130</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094">White</a> = 0xFFFFFF,</div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b"> 132</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b">Off</a> = 0x00,</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;};</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"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae"> 135</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> {</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="comment">// Note that the location is shifted 9 when it&#39;s connected via USB</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="comment">// Byte location | bit location</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"> 138</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a> = (38 &lt;&lt; 8) | 0x02,</div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"> 139</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a> = (38 &lt;&lt; 8) | 0x03,</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;</div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"> 141</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a> = (39 &lt;&lt; 8) | 0xEE,</div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"> 142</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a> = (39 &lt;&lt; 8) | 0xF1,</div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"> 143</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a> = (39 &lt;&lt; 8) | 0x01,</div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"> 144</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a> = (39 &lt;&lt; 8) | 0x02,</div>
<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"> 145</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a> = (39 &lt;&lt; 8) | 0x03,</div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"> 146</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a> = (39 &lt;&lt; 8) | 0x04,</div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"> 147</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a> = (39 &lt;&lt; 8) | 0x05,</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"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030"> 149</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030">MoveCharging</a> = (21 &lt;&lt; 8) | 0xEE,</div>
<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a"> 150</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a">MoveNotCharging</a> = (21 &lt;&lt; 8) | 0xF1,</div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c"> 151</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c">MoveShutdown</a> = (21 &lt;&lt; 8) | 0x01,</div>
<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8"> 152</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8">MoveDying</a> = (21 &lt;&lt; 8) | 0x02,</div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf"> 153</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf">MoveLow</a> = (21 &lt;&lt; 8) | 0x03,</div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb"> 154</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb">MoveHigh</a> = (21 &lt;&lt; 8) | 0x04,</div>
<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943"> 155</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943">MoveFull</a> = (21 &lt;&lt; 8) | 0x05,</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"> 157</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a> = (40 &lt;&lt; 8) | 0x10, <span class="comment">// Operating by USB and rumble is turned on</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"> 158</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a> = (40 &lt;&lt; 8) | 0x12, <span class="comment">// Operating by USB and rumble is turned off</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"> 159</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a> = (40 &lt;&lt; 8) | 0x14, <span class="comment">// Operating by Bluetooth and rumble is turned on</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"> 160</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a> = (40 &lt;&lt; 8) | 0x16, <span class="comment">// Operating by Bluetooth and rumble is turned off</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;};</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;</div>
<div class="line"><a name="l00163"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1"> 163</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a> {</div>
<div class="line"><a name="l00164"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"> 164</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a> = 0x10,</div>
<div class="line"><a name="l00165"></a><span class="lineno"><a class="line" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac"> 165</a></span>&#160; <a class="code" href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac">RumbleLow</a> = 0x20,</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;};</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="preprocessor">#endif</span></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00163">PS3Enums.h:163</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00146">PS3Enums.h:146</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00139">PS3Enums.h:139</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea429562e406bab9f30a0290306c6abdbf">MoveLow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00153">PS3Enums.h:153</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac">RumbleLow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00165">PS3Enums.h:165</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a18b1e66913bf3103ec5f81a124d030">MoveCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00149">PS3Enums.h:149</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00157">PS3Enums.h:157</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00160">PS3Enums.h:160</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a7ff0cc1f92da1e4577a4bf08d0ffbd5a">Lightblue</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00125">PS3Enums.h:125</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2abf28513245738599d13e3ce36bd16c82">Yellow</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00123">PS3Enums.h:123</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00143">PS3Enums.h:143</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00141">PS3Enums.h:141</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00135">PS3Enums.h:135</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a90c28adabe5fc5da343fe8a5ac9ca6de"><div class="ttname"><a href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a></div><div class="ttdeci">const uint32_t PS3_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00062">PS3Enums.h:62</a></div></div>
<div class="ttc" id="controller_enums_8h_html"><div class="ttname"><a href="controller_enums_8h.html">controllerEnums.h</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c">Purble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00129">PS3Enums.h:129</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00192">PS3Enums.h:192</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00193">PS3Enums.h:193</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00155">PS3Enums.h:155</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00118">PS3Enums.h:118</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00162">PS3Enums.h:162</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106">Green</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00120">PS3Enums.h:120</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00157">PS3Enums.h:157</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00178">PS3Enums.h:178</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2a627dded106da5a64dd127381890c2f7c">Purble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00127">PS3Enums.h:127</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00144">PS3Enums.h:144</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00145">PS3Enums.h:145</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad0784a3f969fe736e8b271a5a161d106">Green</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00118">PS3Enums.h:118</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7ba142ed3f585d034f29cc2c36fba0e9"><div class="ttname"><a href="_p_s3_enums_8h.html#a7ba142ed3f585d034f29cc2c36fba0e9">PS3_LEDS</a></div><div class="ttdeci">const uint8_t PS3_LEDS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00043">PS3Enums.h:43</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943">MoveFull</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00203">PS3Enums.h:203</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00186">PS3Enums.h:186</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094">White</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00132">PS3Enums.h:132</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00174">PS3Enums.h:174</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00164">PS3Enums.h:164</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ac306dfe7b0e1b3a3e9bb357aa7552dec"><div class="ttname"><a href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a></div><div class="ttdeci">const uint8_t PS3_ANALOG_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00094">PS3Enums.h:94</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b4c8ce0561fd9c003a6389d7c6fb503">mZmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00172">PS3Enums.h:172</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00144">PS3Enums.h:144</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c">MoveShutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00199">PS3Enums.h:199</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00206">PS3Enums.h:206</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb">MoveHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00202">PS3Enums.h:202</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00207">PS3Enums.h:207</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00160">PS3Enums.h:160</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00170">PS3Enums.h:170</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00190">PS3Enums.h:190</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b">Off</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00134">PS3Enums.h:134</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00153">PS3Enums.h:153</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8">Blue</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00122">PS3Enums.h:122</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00212">PS3Enums.h:212</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaccd6c38d1a97db0feafc9f88909ce943">MoveFull</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00155">PS3Enums.h:155</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00138">PS3Enums.h:138</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ab548046646b36c12aa6ba841de500094">White</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00130">PS3Enums.h:130</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00114">PS3Enums.h:114</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ac306dfe7b0e1b3a3e9bb357aa7552dec"><div class="ttname"><a href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a></div><div class="ttdeci">const uint8_t PS3_ANALOG_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00092">PS3Enums.h:92</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea90b649581a499e75735f153a32dfd71c">MoveShutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00151">PS3Enums.h:151</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00158">PS3Enums.h:158</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7719066bf7a360dfe51ccbf81a148bcb">MoveHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00154">PS3Enums.h:154</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00159">PS3Enums.h:159</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad8a892b94d3a94ea861543c085ae782b">Off</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00132">PS3Enums.h:132</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2af5e09dd1da4088464f264b7a3118bff8">Blue</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00120">PS3Enums.h:120</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00164">PS3Enums.h:164</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a4898fccf5d2aa053bc67894aa3627e0f"><div class="ttname"><a href="_p_s3_enums_8h.html#a4898fccf5d2aa053bc67894aa3627e0f">PS3_REPORT_BUFFER_SIZE</a></div><div class="ttdeci">#define PS3_REPORT_BUFFER_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00024">PS3Enums.h:24</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8">MoveDying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00200">PS3Enums.h:200</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a">MoveNotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00198">PS3Enums.h:198</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00180">PS3Enums.h:180</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a43025202f119b0f193cbc14c6a3cf59f">tempMove</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00167">PS3Enums.h:167</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00195">PS3Enums.h:195</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea74ec9082d76bf71ae74ad5d948c311f8">MoveDying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00152">PS3Enums.h:152</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaa66a4c4924065859bcee07c677554e2a">MoveNotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00150">PS3Enums.h:150</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00147">PS3Enums.h:147</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab8d0298319d2131eb55cd94c07bcf391"><div class="ttname"><a href="_p_s3_enums_8h.html#ab8d0298319d2131eb55cd94c07bcf391">PS3_REPORT_BUFFER</a></div><div class="ttdeci">const uint8_t PS3_REPORT_BUFFER[PS3_REPORT_BUFFER_SIZE]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00027">PS3Enums.h:27</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->

View file

@ -422,11 +422,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="keywordflow">return</span> (uint8_t)(readBuf[((uint8_t)a + 6)]);</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"> 333</span>&#160;</div>
<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e"> 334</a></span>&#160;uint16_t <a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">PS3USB::getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a) {</div>
<div class="line"><a name="l00334"></a><span class="lineno"><a class="line" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e"> 334</a></span>&#160;uint16_t <a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">PS3USB::getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a) {</div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">return</span> ((readBuf[((uint16_t)a) - 9] &lt;&lt; 8) | readBuf[((uint16_t)a + 1) - 9]);</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="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0"> 338</a></span>&#160;<span class="keywordtype">double</span> <a class="code" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">PS3USB::getAngle</a>(<a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a) {</div>
<div class="line"><a name="l00338"></a><span class="lineno"><a class="line" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0"> 338</a></span>&#160;<span class="keywordtype">double</span> <a class="code" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">PS3USB::getAngle</a>(<a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a) {</div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <span class="keywordflow">if</span>(<a class="code" href="class_p_s3_u_s_b.html#a0dad8754ff18d0c375c2569791d50876">PS3Connected</a>) {</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <span class="keywordtype">double</span> accXval;</div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; <span class="keywordtype">double</span> accYval;</div>
@ -434,14 +434,14 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;</div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <span class="comment">// Data for the Kionix KXPC4 used in the DualShock 3</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160; <span class="keyword">const</span> <span class="keywordtype">double</span> zeroG = 511.5; <span class="comment">// 1.65/3.3*1023 (1,65V)</span></div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; accXval = -((double)<a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a>) - zeroG);</div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; accYval = -((double)<a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a>) - zeroG);</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; accZval = -((double)<a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a>) - zeroG);</div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; accXval = -((double)<a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a>) - zeroG);</div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; accYval = -((double)<a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a>) - zeroG);</div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; accZval = -((double)<a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a>) - zeroG);</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; <span class="comment">// Convert to 360 degrees resolution</span></div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; <span class="comment">// atan2 outputs the value of -π to π (radians)</span></div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160; <span class="comment">// We are then converting it to 0 to 2π and then to degrees</span></div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a>)</div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a>)</div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <span class="keywordflow">return</span> (atan2(accYval, accZval) + PI) * RAD_TO_DEG;</div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <span class="keywordflow">return</span> (atan2(accXval, accZval) + PI) * RAD_TO_DEG;</div>
@ -662,14 +662,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00571"></a><span class="lineno"> 571</span>&#160; }</div>
<div class="line"><a name="l00572"></a><span class="lineno"> 572</span>&#160;}</div>
<div class="ttc" id="struct_ep_info_html_a9238dd40c096baedf041c98b19386a14"><div class="ttname"><a href="struct_ep_info.html#a9238dd40c096baedf041c98b19386a14">EpInfo::bmRcvToggle</a></div><div class="ttdeci">uint8_t bmRcvToggle</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00041">address.h:41</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00211">PS3Enums.h:211</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00194">PS3Enums.h:194</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00163">PS3Enums.h:163</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea24c57acd029e3f96fede49402ea01e6f">High</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00146">PS3Enums.h:146</a></div></div>
<div class="ttc" id="class_address_pool_html"><div class="ttname"><a href="class_address_pool.html">AddressPool</a></div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00083">address.h:83</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a1448bc51226a9b63f2937630da6bd48f"><div class="ttname"><a href="class_p_s3_u_s_b.html#a1448bc51226a9b63f2937630da6bd48f">PS3USB::getBdaddr</a></div><div class="ttdeci">void getBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00476">PS3USB.cpp:476</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00187">PS3Enums.h:187</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00148">PS3Enums.h:148</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeae37160f3a65bb54a91fb5efb4f971924">Unplugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00139">PS3Enums.h:139</a></div></div>
<div class="ttc" id="struct_usb_device_html_a410d39fb7758157f57794335e990ed02"><div class="ttname"><a href="struct_usb_device.html#a410d39fb7758157f57794335e990ed02">UsbDevice::epinfo</a></div><div class="ttdeci">EpInfo * epinfo</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00076">address.h:76</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00146">PS3Enums.h:146</a></div></div>
<div class="ttc" id="struct_usb_device_html_a86a815577ad7883437d3ca72b32b8e8a"><div class="ttname"><a href="struct_usb_device.html#a86a815577ad7883437d3ca72b32b8e8a">UsbDevice::lowspeed</a></div><div class="ttdeci">bool lowspeed</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00079">address.h:79</a></div></div>
<div class="ttc" id="_usb_core_8h_html_af192c59cafe2192ad802b22e6dbc077d"><div class="ttname"><a href="_usb_core_8h.html#af192c59cafe2192ad802b22e6dbc077d">USB_ERROR_EPINFO_IS_NULL</a></div><div class="ttdeci">#define USB_ERROR_EPINFO_IS_NULL</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00067">UsbCore.h:67</a></div></div>
<div class="ttc" id="struct_ep_info_html_a3a5b1c017a034cd9e06e76729e727c46"><div class="ttname"><a href="struct_ep_info.html#a3a5b1c017a034cd9e06e76729e727c46">EpInfo::bmNakPower</a></div><div class="ttdeci">uint8_t bmNakPower</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00042">address.h:42</a></div></div>
@ -679,30 +677,31 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_p_s3_u_s_b_8h_html_aca3cbaad8732d9185bb9bda1a32cd18d"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#aca3cbaad8732d9185bb9bda1a32cd18d">PS3_INPUT_PIPE</a></div><div class="ttdeci">#define PS3_INPUT_PIPE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00033">PS3USB.h:33</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a70df64e026046bc352983127b7ae2cf0adac6477842247cab1a8c02c65f431b44"><div class="ttname"><a href="controller_enums_8h.html#a70df64e026046bc352983127b7ae2cf0adac6477842247cab1a8c02c65f431b44">LED1</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00029">controllerEnums.h:29</a></div></div>
<div class="ttc" id="struct_usb_device_html"><div class="ttname"><a href="struct_usb_device.html">UsbDevice</a></div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00075">address.h:75</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00205">PS3Enums.h:205</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea71c14aef95c9953673a880e2633fa209">CableRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00157">PS3Enums.h:157</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_afc242b8a1b867f79c49ad78e3a47b37f"><div class="ttname"><a href="_b_t_d_8h.html#afc242b8a1b867f79c49ad78e3a47b37f">PS3MOVE_PID</a></div><div class="ttdeci">#define PS3MOVE_PID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00027">BTD.h:27</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ad50962ff6194746c076084ec0714605a"><div class="ttname"><a href="class_p_s3_u_s_b.html#ad50962ff6194746c076084ec0714605a">PS3USB::setBdaddr</a></div><div class="ttdeci">void setBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00463">PS3USB.cpp:463</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a5750c5448bf1ec73a7669ca2e4799c98"><div class="ttname"><a href="class_p_s3_u_s_b.html#a5750c5448bf1ec73a7669ca2e4799c98">PS3USB::Release</a></div><div class="ttdeci">virtual uint8_t Release()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00261">PS3USB.cpp:261</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00208">PS3Enums.h:208</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea730728c9aac83393ac83f96a8125b8bb">Bluetooth</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00160">PS3Enums.h:160</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a89df07d76648a48c1f0ef8fd9604c201"><div class="ttname"><a href="class_p_s3_u_s_b.html#a89df07d76648a48c1f0ef8fd9604c201">PS3USB::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00315">PS3USB.cpp:315</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html"><div class="ttname"><a href="_p_s3_u_s_b_8h.html">PS3USB.h</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html_a0da271fcb10181b3ce15aefe76c259bb"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#a0da271fcb10181b3ce15aefe76c259bb">PS3_OUTPUT_PIPE</a></div><div class="ttdeci">#define PS3_OUTPUT_PIPE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00032">PS3USB.h:32</a></div></div>
<div class="ttc" id="message_8h_html_a22695bdc18ebde4a87dbe8633cb39593"><div class="ttname"><a href="message_8h.html#a22695bdc18ebde4a87dbe8633cb39593">NotifyFail</a></div><div class="ttdeci">#define NotifyFail(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00055">message.h:55</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a89aa4233f3eeeb99693a099da527ec28"><div class="ttname"><a href="class_p_s3_u_s_b.html#a89aa4233f3eeeb99693a099da527ec28">PS3USB::PS3MoveConnected</a></div><div class="ttdeci">bool PS3MoveConnected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00271">PS3USB.h:271</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a></div><div class="ttdeci">AnalogHatEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00116">controllerEnums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00179">PS3Enums.h:179</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="class_u_s_b_html_a31e2c132ec32ffdde94dff72be87c378"><div class="ttname"><a href="class_u_s_b.html#a31e2c132ec32ffdde94dff72be87c378">USB::setConf</a></div><div class="ttdeci">uint8_t setConf(uint8_t addr, uint8_t ep, uint8_t conf_value)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00805">Usb.cpp:805</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00191">PS3Enums.h:191</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00189">PS3Enums.h:189</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00183">PS3Enums.h:183</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea82084136e62c38642986b05419b4e734">Shutdown</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00143">PS3Enums.h:143</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea5a86ae1482947377a116685c168d1773">Charging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00141">PS3Enums.h:141</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00135">PS3Enums.h:135</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a6c722086999db05d8abf5f1f26c19f77"><div class="ttname"><a href="class_p_s3_u_s_b.html#a6c722086999db05d8abf5f1f26c19f77">PS3USB::getMoveBdaddr</a></div><div class="ttdeci">void getMoveBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00541">PS3USB.cpp:541</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5bb06f989db583d290ba79642d37c514"><div class="ttname"><a href="_b_t_d_8h.html#a5bb06f989db583d290ba79642d37c514">PS3_VID</a></div><div class="ttdeci">#define PS3_VID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00024">BTD.h:24</a></div></div>
<div class="ttc" id="message_8h_html_ae65e02f44cfdc490efd1b33f9882fbbd"><div class="ttname"><a href="message_8h.html#ae65e02f44cfdc490efd1b33f9882fbbd">NotifyFailGetDevDescr</a></div><div class="ttdeci">#define NotifyFailGetDevDescr(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00050">message.h:50</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a6844111657a882b1997ca30d2649bd1c"><div class="ttname"><a href="class_p_s3_u_s_b.html#a6844111657a882b1997ca30d2649bd1c">PS3USB::getAnalogButton</a></div><div class="ttdeci">uint8_t getAnalogButton(ButtonEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00326">PS3USB.cpp:326</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_aa01170072ec7fd0e557959ea1d79011e"><div class="ttname"><a href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">PS3USB::getSensor</a></div><div class="ttdeci">uint16_t getSensor(SensorEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00334">PS3USB.cpp:334</a></div></div>
<div class="ttc" id="class_u_s_b_html_a6c3ba3f7e6dccb450267011ce783d7ea"><div class="ttname"><a href="class_u_s_b.html#a6c3ba3f7e6dccb450267011ce783d7ea">USB::setEpInfoEntry</a></div><div class="ttdeci">uint8_t setEpInfoEntry(uint8_t addr, uint8_t epcount, EpInfo *eprecord_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00064">Usb.cpp:64</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_aaa1e66d7397be6364d4f76749cbaad5a"><div class="ttname"><a href="class_p_s3_u_s_b.html#aaa1e66d7397be6364d4f76749cbaad5a">PS3USB::setRumbleOff</a></div><div class="ttdeci">void setRumbleOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00411">PS3USB.cpp:411</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a90c28adabe5fc5da343fe8a5ac9ca6de"><div class="ttname"><a href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a></div><div class="ttdeci">const uint32_t PS3_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00063">PS3Enums.h:63</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a90c28adabe5fc5da343fe8a5ac9ca6de"><div class="ttname"><a href="_p_s3_enums_8h.html#a90c28adabe5fc5da343fe8a5ac9ca6de">PS3_BUTTONS</a></div><div class="ttdeci">const uint32_t PS3_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00062">PS3Enums.h:62</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html_abcb805b13bfd36145e252b0633bbcfc0"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#abcb805b13bfd36145e252b0633bbcfc0">EP_MAXPKTSIZE</a></div><div class="ttdeci">#define EP_MAXPKTSIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00025">PS3USB.h:25</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a0dad8754ff18d0c375c2569791d50876"><div class="ttname"><a href="class_p_s3_u_s_b.html#a0dad8754ff18d0c375c2569791d50876">PS3USB::PS3Connected</a></div><div class="ttdeci">bool PS3Connected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00265">PS3USB.h:265</a></div></div>
<div class="ttc" id="class_address_pool_html_a15fde13223dcb1da89305ad229763562"><div class="ttname"><a href="class_address_pool.html#a15fde13223dcb1da89305ad229763562">AddressPool::FreeAddress</a></div><div class="ttdeci">virtual void FreeAddress(uint8_t addr)=0</div></div>
@ -719,63 +718,64 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="message_8h_html_a0ce3a725ee65614d7f95cda10e4d2e91"><div class="ttname"><a href="message_8h.html#a0ce3a725ee65614d7f95cda10e4d2e91">NotifyFailUnknownDevice</a></div><div class="ttdeci">#define NotifyFailUnknownDevice(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00054">message.h:54</a></div></div>
<div class="ttc" id="address_8h_html_a517dfa014946e2d087d197312234a1de"><div class="ttname"><a href="address_8h.html#a517dfa014946e2d087d197312234a1de">USB_NAK_MAX_POWER</a></div><div class="ttdeci">#define USB_NAK_MAX_POWER</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00027">address.h:27</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ae9cfdaad3e54dbc271519e22082399c7"><div class="ttname"><a href="class_p_s3_u_s_b.html#ae9cfdaad3e54dbc271519e22082399c7">PS3USB::moveSetBulb</a></div><div class="ttdeci">void moveSetBulb(uint8_t r, uint8_t g, uint8_t b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00502">PS3USB.cpp:502</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00192">PS3Enums.h:192</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00193">PS3Enums.h:193</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea96cc2a0090ada376561406d48d1f2089">Dying</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00144">PS3Enums.h:144</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea7a352a3dd2accc1dd65a4538c3754ee8">Low</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00145">PS3Enums.h:145</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a0083545cb99fb8786e60281fe7a9050d"><div class="ttname"><a href="class_p_s3_u_s_b.html#a0083545cb99fb8786e60281fe7a9050d">PS3USB::Init</a></div><div class="ttdeci">virtual uint8_t Init(uint8_t parent, uint8_t port, bool lowspeed)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00046">PS3USB.cpp:46</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00118">PS3Enums.h:118</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2ad3163c1fcda01965b692ec2c3122b743">Red</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html_ad4d26e1c566064f2259faf65f0858b6e"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#ad4d26e1c566064f2259faf65f0858b6e">EP_INTERRUPT</a></div><div class="ttdeci">#define EP_INTERRUPT</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00028">PS3USB.h:28</a></div></div>
<div class="ttc" id="struct_ep_info_html"><div class="ttname"><a href="struct_ep_info.html">EpInfo</a></div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00032">address.h:32</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a2c6c24a4b63d9a34926fb35d6b49cd17"><div class="ttname"><a href="_p_s3_enums_8h.html#a2c6c24a4b63d9a34926fb35d6b49cd17">MOVE_REPORT_BUFFER_SIZE</a></div><div class="ttdeci">#define MOVE_REPORT_BUFFER_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00040">PS3Enums.h:40</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a1328a3f017f8d010cd0559c084981021"><div class="ttname"><a href="class_p_s3_u_s_b.html#a1328a3f017f8d010cd0559c084981021">PS3USB::printStatusString</a></div><div class="ttdeci">void printStatusString()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00365">PS3USB.cpp:365</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ac7adc7365bb45d15c37e22f26f012498"><div class="ttname"><a href="class_p_s3_u_s_b.html#ac7adc7365bb45d15c37e22f26f012498">PS3USB::setAllOff</a></div><div class="ttdeci">void setAllOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00404">PS3USB.cpp:404</a></div></div>
<div class="ttc" id="class_u_s_b_html_affbc018973a588995457d535b0ac7ee7"><div class="ttname"><a href="class_u_s_b.html#affbc018973a588995457d535b0ac7ee7">USB::outTransfer</a></div><div class="ttdeci">uint8_t outTransfer(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t *data)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00292">Usb.cpp:292</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00165">controllerEnums.h:165</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aee05d40a014750b24a7e9967f6f389f4"><div class="ttname"><a href="_b_t_d_8h.html#aee05d40a014750b24a7e9967f6f389f4">HID_REQUEST_SET_REPORT</a></div><div class="ttdeci">#define HID_REQUEST_SET_REPORT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00039">BTD.h:39</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00178">PS3Enums.h:178</a></div></div>
<div class="ttc" id="hid_8h_html_a73dbc093cd8c096054332fde410cd9ed"><div class="ttname"><a href="hid_8h.html#a73dbc093cd8c096054332fde410cd9ed">HID_REQUEST_GET_REPORT</a></div><div class="ttdeci">#define HID_REQUEST_GET_REPORT</div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00069">hid.h:69</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7ba142ed3f585d034f29cc2c36fba0e9"><div class="ttname"><a href="_p_s3_enums_8h.html#a7ba142ed3f585d034f29cc2c36fba0e9">PS3_LEDS</a></div><div class="ttdeci">const uint8_t PS3_LEDS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00043">PS3Enums.h:43</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="class_address_pool_html_a97df4ef42e50960ce2165f4cdb53e590"><div class="ttname"><a href="class_address_pool.html#a97df4ef42e50960ce2165f4cdb53e590">AddressPool::AllocAddress</a></div><div class="ttdeci">virtual uint8_t AllocAddress(uint8_t parent, bool is_hub=false, uint8_t port=0)=0</div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00186">PS3Enums.h:186</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeaff01ce39b42bec30132b0fc53c882387">Plugged</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00138">PS3Enums.h:138</a></div></div>
<div class="ttc" id="struct_ep_info_html_ac85bff70ad0e5d71e50cb501f4d8caf3"><div class="ttname"><a href="struct_ep_info.html#ac85bff70ad0e5d71e50cb501f4d8caf3">EpInfo::bmSndToggle</a></div><div class="ttdeci">uint8_t bmSndToggle</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00040">address.h:40</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a0de554815afcb66f57d8ac0045f19f2c"><div class="ttname"><a href="class_p_s3_u_s_b.html#a0de554815afcb66f57d8ac0045f19f2c">PS3USB::getAnalogHat</a></div><div class="ttdeci">uint8_t getAnalogHat(AnalogHatEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00330">PS3USB.cpp:330</a></div></div>
<div class="ttc" id="_usb_core_8h_html_a44416ff64fc0e3691f98addac13d4595"><div class="ttname"><a href="_usb_core_8h.html#a44416ff64fc0e3691f98addac13d4595">USB_ERROR_CLASS_INSTANCE_ALREADY_IN_USE</a></div><div class="ttdeci">#define USB_ERROR_CLASS_INSTANCE_ALREADY_IN_USE</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00069">UsbCore.h:69</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_aa1873f41ae0da7c4568cfb7517560c48"><div class="ttname"><a href="class_p_s3_u_s_b.html#aa1873f41ae0da7c4568cfb7517560c48">PS3USB::pUsb</a></div><div class="ttdeci">USB * pUsb</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00277">PS3USB.h:277</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ac306dfe7b0e1b3a3e9bb357aa7552dec"><div class="ttname"><a href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a></div><div class="ttdeci">const uint8_t PS3_ANALOG_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00094">PS3Enums.h:94</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00114">PS3Enums.h:114</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ac306dfe7b0e1b3a3e9bb357aa7552dec"><div class="ttname"><a href="_p_s3_enums_8h.html#ac306dfe7b0e1b3a3e9bb357aa7552dec">PS3_ANALOG_BUTTONS</a></div><div class="ttdeci">const uint8_t PS3_ANALOG_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00092">PS3Enums.h:92</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a70df64e026046bc352983127b7ae2cf0aac132f2982b98bcaa3445e535a03ff75"><div class="ttname"><a href="controller_enums_8h.html#a70df64e026046bc352983127b7ae2cf0aac132f2982b98bcaa3445e535a03ff75">OFF</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00028">controllerEnums.h:28</a></div></div>
<div class="ttc" id="address_8h_html_a660e8da9c1167a8450aef91c5c03761d"><div class="ttname"><a href="address_8h.html#a660e8da9c1167a8450aef91c5c03761d">USB_NAK_NOWAIT</a></div><div class="ttdeci">#define USB_NAK_NOWAIT</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00029">address.h:29</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00164">controllerEnums.h:164</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ae5c5316b4c8dae5927b2a2721a28f6c0"><div class="ttname"><a href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">PS3USB::getAngle</a></div><div class="ttdeci">double getAngle(AngleEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00338">PS3USB.cpp:338</a></div></div>
<div class="ttc" id="_usb_core_8h_html_afe2fedb4b0ccc89a688c0b4b59691ce0"><div class="ttname"><a href="_usb_core_8h.html#afe2fedb4b0ccc89a688c0b4b59691ce0">USB_ERROR_ADDRESS_NOT_FOUND_IN_POOL</a></div><div class="ttdeci">#define USB_ERROR_ADDRESS_NOT_FOUND_IN_POOL</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00066">UsbCore.h:66</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00144">PS3Enums.h:144</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a0ae276efa5e73a4da658c714e70402c0"><div class="ttname"><a href="_b_t_d_8h.html#a0ae276efa5e73a4da658c714e70402c0">PS3_PID</a></div><div class="ttdeci">#define PS3_PID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00025">BTD.h:25</a></div></div>
<div class="ttc" id="class_u_s_b_html_ad75d64f648b102fab2bd75e53e1324a4"><div class="ttname"><a href="class_u_s_b.html#ad75d64f648b102fab2bd75e53e1324a4">USB::inTransfer</a></div><div class="ttdeci">uint8_t inTransfer(uint8_t addr, uint8_t ep, uint16_t *nbytesptr, uint8_t *data)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00206">Usb.cpp:206</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a54903b410722a45f8246653cd4d00632"><div class="ttname"><a href="_b_t_d_8h.html#a54903b410722a45f8246653cd4d00632">PS3NAVIGATION_PID</a></div><div class="ttdeci">#define PS3NAVIGATION_PID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00026">BTD.h:26</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a66d542c2cec73cefb3cdda36ff080e1a"><div class="ttname"><a href="class_p_s3_u_s_b.html#a66d542c2cec73cefb3cdda36ff080e1a">PS3USB::moveSetRumble</a></div><div class="ttdeci">void moveSetRumble(uint8_t rumble)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00515">PS3USB.cpp:515</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a9068e2a036012614c0db163830cbcf00"><div class="ttname"><a href="class_p_s3_u_s_b.html#a9068e2a036012614c0db163830cbcf00">PS3USB::Poll</a></div><div class="ttdeci">virtual uint8_t Poll()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00271">PS3USB.cpp:271</a></div></div>
<div class="ttc" id="_usb_core_8h_html_ae9e139d0fd29bb0b3e7afad2f76cd589"><div class="ttname"><a href="_usb_core_8h.html#ae9e139d0fd29bb0b3e7afad2f76cd589">USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED</a></div><div class="ttdeci">#define USB_DEV_CONFIG_ERROR_DEVICE_NOT_SUPPORTED</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00061">UsbCore.h:61</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00206">PS3Enums.h:206</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea1a36ca9a60a5e244f3404ec0db7b44a1">Cable</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00158">PS3Enums.h:158</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html_a168ab47b14a95d7cf8066d553a9cb862"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#a168ab47b14a95d7cf8066d553a9cb862">PS3_MAX_ENDPOINTS</a></div><div class="ttdeci">#define PS3_MAX_ENDPOINTS</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00048">PS3USB.h:48</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a394dbb0a59b587210e5958f08dac48f1"><div class="ttname"><a href="class_p_s3_u_s_b.html#a394dbb0a59b587210e5958f08dac48f1">PS3USB::epInfo</a></div><div class="ttdeci">EpInfo epInfo[PS3_MAX_ENDPOINTS]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00281">PS3USB.h:281</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a77f44b6007cc735c47bdeaf672c7e464"><div class="ttname"><a href="class_p_s3_u_s_b.html#a77f44b6007cc735c47bdeaf672c7e464">PS3USB::setRumbleOn</a></div><div class="ttdeci">void setRumbleOn(RumbleEnum mode)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00420">PS3USB.cpp:420</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00207">PS3Enums.h:207</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea27912f9ea05a45aada21fc375817342c">BluetoothRumble</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00159">PS3Enums.h:159</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5bd4ea095da29635414952894bd527f5"><div class="ttname"><a href="_b_t_d_8h.html#a5bd4ea095da29635414952894bd527f5">bmREQ_HID_OUT</a></div><div class="ttdeci">#define bmREQ_HID_OUT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00038">BTD.h:38</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html_a2b422a95d6f43756111dea6b6a9230ff"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#a2b422a95d6f43756111dea6b6a9230ff">bmREQ_HID_IN</a></div><div class="ttdeci">#define bmREQ_HID_IN</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00043">PS3USB.h:43</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00190">PS3Enums.h:190</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aeac138cecbd4ef1ba0f9e0ab12440a6df6">NotCharging</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="_usb_core_8h_html_a15370eb665cdded5514e69ca58d9f39d"><div class="ttname"><a href="_usb_core_8h.html#a15370eb665cdded5514e69ca58d9f39d">USB_ERROR_OUT_OF_ADDRESS_SPACE_IN_POOL</a></div><div class="ttdeci">#define USB_ERROR_OUT_OF_ADDRESS_SPACE_IN_POOL</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00064">UsbCore.h:64</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a3ad10dc81cfca1bdeb2f1310ddf4419d"><div class="ttname"><a href="class_p_s3_u_s_b.html#a3ad10dc81cfca1bdeb2f1310ddf4419d">PS3USB::setLedOn</a></div><div class="ttdeci">void setLedOn(LEDEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00449">PS3USB.cpp:449</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00212">PS3Enums.h:212</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00164">PS3Enums.h:164</a></div></div>
<div class="ttc" id="struct_ep_info_html_aa2ca775b63736df4008e88da7dd4dddb"><div class="ttname"><a href="struct_ep_info.html#aa2ca775b63736df4008e88da7dd4dddb">EpInfo::maxPktSize</a></div><div class="ttdeci">uint8_t maxPktSize</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00034">address.h:34</a></div></div>
<div class="ttc" id="class_u_s_b_html_a66ab8f5eda239e761d5a48741ea1f9d4"><div class="ttname"><a href="class_u_s_b.html#a66ab8f5eda239e761d5a48741ea1f9d4">USB::GetAddressPool</a></div><div class="ttdeci">AddressPool &amp; GetAddressPool()</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00192">UsbCore.h:192</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a3f43df159277003acdf7dd107bda27fd"><div class="ttname"><a href="class_p_s3_u_s_b.html#a3f43df159277003acdf7dd107bda27fd">PS3USB::bAddress</a></div><div class="ttdeci">uint8_t bAddress</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00279">PS3USB.h:279</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a3fccc7ef5ac5c414ef8ebcd2e2cdfc80"><div class="ttname"><a href="class_p_s3_u_s_b.html#a3fccc7ef5ac5c414ef8ebcd2e2cdfc80">PS3USB::setMoveBdaddr</a></div><div class="ttdeci">void setMoveBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00525">PS3USB.cpp:525</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a4898fccf5d2aa053bc67894aa3627e0f"><div class="ttname"><a href="_p_s3_enums_8h.html#a4898fccf5d2aa053bc67894aa3627e0f">PS3_REPORT_BUFFER_SIZE</a></div><div class="ttdeci">#define PS3_REPORT_BUFFER_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00024">PS3Enums.h:24</a></div></div>
<div class="ttc" id="class_u_s_b_html"><div class="ttname"><a href="class_u_s_b.html">USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00176">UsbCore.h:176</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00131">controllerEnums.h:131</a></div></div>
<div class="ttc" id="class_u_s_b_html_a3f66bf622590413ef2e1864f93a3e0d2"><div class="ttname"><a href="class_u_s_b.html#a3f66bf622590413ef2e1864f93a3e0d2">USB::RegisterDeviceClass</a></div><div class="ttdeci">uint8_t RegisterDeviceClass(USBDeviceConfig *pdev)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00196">UsbCore.h:196</a></div></div>
<div class="ttc" id="message_8h_html_a03e4088aafca36fd7a4be69e3a22b601"><div class="ttname"><a href="message_8h.html#a03e4088aafca36fd7a4be69e3a22b601">NotifyFailSetConfDescr</a></div><div class="ttdeci">#define NotifyFailSetConfDescr(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00053">message.h:53</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ac919404d4caf4625467756272f8d5502"><div class="ttname"><a href="class_p_s3_u_s_b.html#ac919404d4caf4625467756272f8d5502">PS3USB::PS3USB</a></div><div class="ttdeci">PS3USB(USB *pUsb, uint8_t btadr5=0, uint8_t btadr4=0, uint8_t btadr3=0, uint8_t btadr2=0, uint8_t btadr1=0, uint8_t btadr0=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00023">PS3USB.cpp:23</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ab6e97f59f4a62e52cf54cdd302679cd9"><div class="ttname"><a href="class_p_s3_u_s_b.html#ab6e97f59f4a62e52cf54cdd302679cd9">PS3USB::getMoveCalibration</a></div><div class="ttdeci">void getMoveCalibration(uint8_t *data)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00551">PS3USB.cpp:551</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00195">PS3Enums.h:195</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00147">PS3Enums.h:147</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ad0887b415c3ba180789781a713d98be8"><div class="ttname"><a href="class_p_s3_u_s_b.html#ad0887b415c3ba180789781a713d98be8">PS3USB::getStatus</a></div><div class="ttdeci">bool getStatus(StatusEnum c)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00361">PS3USB.cpp:361</a></div></div>
<div class="ttc" id="class_u_s_b_html_a193e63c149fad46adabd77ceb09b2b24"><div class="ttname"><a href="class_u_s_b.html#a193e63c149fad46adabd77ceb09b2b24">USB::getDevDescr</a></div><div class="ttdeci">uint8_t getDevDescr(uint8_t addr, uint8_t ep, uint16_t nbytes, uint8_t *dataptr)</div><div class="ttdoc">defined(USB_METHODS_INLINE) </div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00761">Usb.cpp:761</a></div></div>
<div class="ttc" id="message_8h_html_a69619d86b1636f141c830ca82c7f45e7"><div class="ttname"><a href="message_8h.html#a69619d86b1636f141c830ca82c7f45e7">NotifyFailSetDevTblEntry</a></div><div class="ttdeci">#define NotifyFailSetDevTblEntry(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00051">message.h:51</a></div></div>

View file

@ -168,8 +168,8 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s3_u_s_b.html#ac22875ff006c68daad6f688551f5e6d5">getButtonClick</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; uint8_t <a class="code" href="class_p_s3_u_s_b.html#a6844111657a882b1997ca30d2649bd1c">getAnalogButton</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> a);</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; uint8_t <a class="code" href="class_p_s3_u_s_b.html#a0de554815afcb66f57d8ac0045f19f2c">getAnalogHat</a>(<a class="code" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a);</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; uint16_t <a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a);</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">getAngle</a>(<a class="code" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a);</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; uint16_t <a class="code" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a);</div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">getAngle</a>(<a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a);</div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s3_u_s_b.html#ad0887b415c3ba180789781a713d98be8">getStatus</a>(<a class="code" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> c);</div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s3_u_s_b.html#a1328a3f017f8d010cd0559c084981021">printStatusString</a>();</div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;</div>
@ -228,7 +228,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="keywordtype">void</span> Move_Command(uint8_t *data, uint16_t nbytes);</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;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00211">PS3Enums.h:211</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_ab195293384292950ebc2166bfe360fd1"><div class="ttname"><a href="_p_s3_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a></div><div class="ttdeci">RumbleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00163">PS3Enums.h:163</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a1448bc51226a9b63f2937630da6bd48f"><div class="ttname"><a href="class_p_s3_u_s_b.html#a1448bc51226a9b63f2937630da6bd48f">PS3USB::getBdaddr</a></div><div class="ttdeci">void getBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00476">PS3USB.cpp:476</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html"><div class="ttname"><a href="class_p_s3_u_s_b.html">PS3USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00058">PS3USB.h:58</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_aa0aac5ea016db4cd6736a15e9d6eb41b"><div class="ttname"><a href="class_p_s3_u_s_b.html#aa0aac5ea016db4cd6736a15e9d6eb41b">PS3USB::setLedRaw</a></div><div class="ttdeci">void setLedRaw(uint8_t value)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00439">PS3USB.cpp:439</a></div></div>
@ -239,7 +239,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_p_s3_u_s_b_html_a89df07d76648a48c1f0ef8fd9604c201"><div class="ttname"><a href="class_p_s3_u_s_b.html#a89df07d76648a48c1f0ef8fd9604c201">PS3USB::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00315">PS3USB.cpp:315</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a89aa4233f3eeeb99693a099da527ec28"><div class="ttname"><a href="class_p_s3_u_s_b.html#a89aa4233f3eeeb99693a099da527ec28">PS3USB::PS3MoveConnected</a></div><div class="ttdeci">bool PS3MoveConnected</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00271">PS3USB.h:271</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a></div><div class="ttdeci">AnalogHatEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00116">controllerEnums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00183">PS3Enums.h:183</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161ae"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a></div><div class="ttdeci">StatusEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00135">PS3Enums.h:135</a></div></div>
<div class="ttc" id="class_u_s_b_device_config_html"><div class="ttname"><a href="class_u_s_b_device_config.html">USBDeviceConfig</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00105">UsbCore.h:105</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a6c722086999db05d8abf5f1f26c19f77"><div class="ttname"><a href="class_p_s3_u_s_b.html#a6c722086999db05d8abf5f1f26c19f77">PS3USB::getMoveBdaddr</a></div><div class="ttdeci">void getMoveBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00541">PS3USB.cpp:541</a></div></div>
<div class="ttc" id="_usb_8h_html"><div class="ttname"><a href="_usb_8h.html">Usb.h</a></div></div>
@ -259,12 +259,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_p_s3_u_s_b_html_a1328a3f017f8d010cd0559c084981021"><div class="ttname"><a href="class_p_s3_u_s_b.html#a1328a3f017f8d010cd0559c084981021">PS3USB::printStatusString</a></div><div class="ttdeci">void printStatusString()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00365">PS3USB.cpp:365</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ac7adc7365bb45d15c37e22f26f012498"><div class="ttname"><a href="class_p_s3_u_s_b.html#ac7adc7365bb45d15c37e22f26f012498">PS3USB::setAllOff</a></div><div class="ttdeci">void setAllOff()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00404">PS3USB.cpp:404</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00178">PS3Enums.h:178</a></div></div>
<div class="ttc" id="_p_s3_u_s_b_8h_html_a0ae276efa5e73a4da658c714e70402c0"><div class="ttname"><a href="_p_s3_u_s_b_8h.html#a0ae276efa5e73a4da658c714e70402c0">PS3_PID</a></div><div class="ttdeci">#define PS3_PID</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00037">PS3USB.h:37</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00142">PS3Enums.h:142</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a0de554815afcb66f57d8ac0045f19f2c"><div class="ttname"><a href="class_p_s3_u_s_b.html#a0de554815afcb66f57d8ac0045f19f2c">PS3USB::getAnalogHat</a></div><div class="ttdeci">uint8_t getAnalogHat(AnalogHatEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00330">PS3USB.cpp:330</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_aa1873f41ae0da7c4568cfb7517560c48"><div class="ttname"><a href="class_p_s3_u_s_b.html#aa1873f41ae0da7c4568cfb7517560c48">PS3USB::pUsb</a></div><div class="ttdeci">USB * pUsb</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00277">PS3USB.h:277</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00116">PS3Enums.h:116</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_aac6fa7b0395b95cc528deaad0ce884a2"><div class="ttname"><a href="_p_s3_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a></div><div class="ttdeci">ColorsEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00114">PS3Enums.h:114</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00164">controllerEnums.h:164</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ae5c5316b4c8dae5927b2a2721a28f6c0"><div class="ttname"><a href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">PS3USB::getAngle</a></div><div class="ttdeci">double getAngle(AngleEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00338">PS3USB.cpp:338</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a66d542c2cec73cefb3cdda36ff080e1a"><div class="ttname"><a href="class_p_s3_u_s_b.html#a66d542c2cec73cefb3cdda36ff080e1a">PS3USB::moveSetRumble</a></div><div class="ttdeci">void moveSetRumble(uint8_t rumble)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00515">PS3USB.cpp:515</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a9068e2a036012614c0db163830cbcf00"><div class="ttname"><a href="class_p_s3_u_s_b.html#a9068e2a036012614c0db163830cbcf00">PS3USB::Poll</a></div><div class="ttdeci">virtual uint8_t Poll()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00271">PS3USB.cpp:271</a></div></div>
@ -279,6 +278,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_p_s3_u_s_b_html_a3f43df159277003acdf7dd107bda27fd"><div class="ttname"><a href="class_p_s3_u_s_b.html#a3f43df159277003acdf7dd107bda27fd">PS3USB::bAddress</a></div><div class="ttdeci">uint8_t bAddress</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8h_source.html#l00279">PS3USB.h:279</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_a3fccc7ef5ac5c414ef8ebcd2e2cdfc80"><div class="ttname"><a href="class_p_s3_u_s_b.html#a3fccc7ef5ac5c414ef8ebcd2e2cdfc80">PS3USB::setMoveBdaddr</a></div><div class="ttdeci">void setMoveBdaddr(uint8_t *bdaddr)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00525">PS3USB.cpp:525</a></div></div>
<div class="ttc" id="class_u_s_b_html"><div class="ttname"><a href="class_u_s_b.html">USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00176">UsbCore.h:176</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00131">controllerEnums.h:131</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ac919404d4caf4625467756272f8d5502"><div class="ttname"><a href="class_p_s3_u_s_b.html#ac919404d4caf4625467756272f8d5502">PS3USB::PS3USB</a></div><div class="ttdeci">PS3USB(USB *pUsb, uint8_t btadr5=0, uint8_t btadr4=0, uint8_t btadr3=0, uint8_t btadr2=0, uint8_t btadr1=0, uint8_t btadr0=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00023">PS3USB.cpp:23</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ab6e97f59f4a62e52cf54cdd302679cd9"><div class="ttname"><a href="class_p_s3_u_s_b.html#ab6e97f59f4a62e52cf54cdd302679cd9">PS3USB::getMoveCalibration</a></div><div class="ttdeci">void getMoveCalibration(uint8_t *data)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00551">PS3USB.cpp:551</a></div></div>
<div class="ttc" id="class_p_s3_u_s_b_html_ad0887b415c3ba180789781a713d98be8"><div class="ttname"><a href="class_p_s3_u_s_b.html#ad0887b415c3ba180789781a713d98be8">PS3USB::getStatus</a></div><div class="ttdeci">bool getStatus(StatusEnum c)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_u_s_b_8cpp_source.html#l00361">PS3USB.cpp:361</a></div></div>

View file

@ -86,93 +86,28 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#enum-members">Enumerations</a> </div>
<a href="#nested-classes">Classes</a> </div>
<div class="headertitle">
<div class="title">PS4BT.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="_p_s3_enums_8h_source.html">PS3Enums.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>&quot;</code><br/>
</div><div class="textblock"><div class="dynheader">
Include dependency graph for PS4BT.h:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s4_b_t_8h__incl.png" border="0" usemap="#_p_s4_b_t_8h" alt=""/></div>
<map name="_p_s4_b_t_8h" id="_p_s4_b_t_8h">
<area shape="rect" id="node2" href="_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="76,83,148,111"/><area shape="rect" id="node8" href="_p_s3_enums_8h.html" title="PS3Enums.h" alt="" coords="180,83,279,111"/><area shape="rect" id="node3" href="_b_t_d_8h.html" title="BTD.h" alt="" coords="5,238,64,266"/><area shape="rect" id="node5" href="hidboot_8h.html" title="hidboot.h" alt="" coords="74,161,149,189"/><area shape="rect" id="node4" href="_usb_8h.html" title="Usb.h" alt="" coords="57,393,113,421"/><area shape="rect" id="node6" href="hid_8h.html" title="hid.h" alt="" coords="88,238,137,266"/><area shape="rect" id="node7" href="hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="123,315,223,343"/><area shape="rect" id="node9" href="controller_enums_8h.html" title="controllerEnums.h" alt="" coords="174,161,303,189"/></map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s4_b_t_8h__dep__incl.png" border="0" usemap="#_p_s4_b_t_8hdep" alt=""/></div>
<map name="_p_s4_b_t_8hdep" id="_p_s4_b_t_8hdep">
<area shape="rect" id="node2" href="_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="4,83,91,111"/></map>
<area shape="rect" id="node2" href="_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="92,83,164,111"/><area shape="rect" id="node8" href="_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="208,83,304,111"/><area shape="rect" id="node3" href="_b_t_d_8h.html" title="BTD.h" alt="" coords="5,238,64,266"/><area shape="rect" id="node5" href="hidboot_8h.html" title="hidboot.h" alt="" coords="90,161,165,189"/><area shape="rect" id="node4" href="_usb_8h.html" title="Usb.h" alt="" coords="96,393,152,421"/><area shape="rect" id="node6" href="hid_8h.html" title="hid.h" alt="" coords="103,238,152,266"/><area shape="rect" id="node7" href="hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="118,315,217,343"/><area shape="rect" id="node9" href="controller_enums_8h.html" title="controllerEnums.h" alt="" coords="293,161,421,189"/></map>
</div>
</div>
<p><a href="_p_s4_b_t_8h_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="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="union_p_s4_buttons.html">PS4Buttons</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_s4_data.html">PS4Data</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a3eca256e8b59574c290177d7df302a62"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a> { <br/>
&#160;&#160;<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a> = 0x0,
<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a> = 0x1,
<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a> = 0x2,
<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a> = 0x3,
<br/>
&#160;&#160;<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a> = 0x4,
<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a> = 0x5,
<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a> = 0x6,
<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a> = 0x7,
<br/>
&#160;&#160;<a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a> = 0x8
<br/>
}</td></tr>
<tr class="separator:a3eca256e8b59574c290177d7df302a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="a3eca256e8b59574c290177d7df302a62"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"></a>DPAD_UP</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"></a>DPAD_UP_RIGHT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"></a>DPAD_RIGHT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"></a>DPAD_RIGHT_DOWN</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"></a>DPAD_DOWN</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"></a>DPAD_DOWN_LEFT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"></a>DPAD_LEFT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"></a>DPAD_LEFT_UP</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044"></a>DPAD_OFF</em>&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00024">24</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -1,10 +1,10 @@
<map id="PS4BT.h" name="PS4BT.h">
<area shape="rect" id="node2" href="$_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="76,83,148,111"/>
<area shape="rect" id="node8" href="$_p_s3_enums_8h.html" title="PS3Enums.h" alt="" coords="180,83,279,111"/>
<area shape="rect" id="node2" href="$_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="92,83,164,111"/>
<area shape="rect" id="node8" href="$_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="208,83,304,111"/>
<area shape="rect" id="node3" href="$_b_t_d_8h.html" title="BTD.h" alt="" coords="5,238,64,266"/>
<area shape="rect" id="node5" href="$hidboot_8h.html" title="hidboot.h" alt="" coords="74,161,149,189"/>
<area shape="rect" id="node4" href="$_usb_8h.html" title="Usb.h" alt="" coords="57,393,113,421"/>
<area shape="rect" id="node6" href="$hid_8h.html" title="hid.h" alt="" coords="88,238,137,266"/>
<area shape="rect" id="node7" href="$hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="123,315,223,343"/>
<area shape="rect" id="node9" href="$controller_enums_8h.html" title="controllerEnums.h" alt="" coords="174,161,303,189"/>
<area shape="rect" id="node5" href="$hidboot_8h.html" title="hidboot.h" alt="" coords="90,161,165,189"/>
<area shape="rect" id="node4" href="$_usb_8h.html" title="Usb.h" alt="" coords="96,393,152,421"/>
<area shape="rect" id="node6" href="$hid_8h.html" title="hid.h" alt="" coords="103,238,152,266"/>
<area shape="rect" id="node7" href="$hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="118,315,217,343"/>
<area shape="rect" id="node9" href="$controller_enums_8h.html" title="controllerEnums.h" alt="" coords="293,161,421,189"/>
</map>

View file

@ -1 +1 @@
99e5f1ed9603881ee572c3d90866b742
105dd8723b891d12cb3a66169e6fa9c1

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 28 KiB

View file

@ -110,172 +110,56 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _ps4bt_h_</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_b_t_h_i_d_8h.html">BTHID.h</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_p_s3_enums_8h.html">PS3Enums.h</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_p_s4_parser_8h.html">PS4Parser.h</a>&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62"> 24</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a> {</div>
<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"> 25</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a> = 0x0,</div>
<div class="line"><a name="l00026"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"> 26</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a> = 0x1,</div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"> 27</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a> = 0x2,</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"> 28</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a> = 0x3,</div>
<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"> 29</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a> = 0x4,</div>
<div class="line"><a name="l00030"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"> 30</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a> = 0x5,</div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"> 31</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a> = 0x6,</div>
<div class="line"><a name="l00032"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"> 32</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a> = 0x7,</div>
<div class="line"><a name="l00033"></a><span class="lineno"><a class="line" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044"> 33</a></span>&#160; <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a> = 0x8,</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;};</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html"> 36</a></span>&#160;<span class="keyword">union </span><a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> {</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92"> 38</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> : 4;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a84eb7076098ec3135bdc440a279fde50"> 39</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a84eb7076098ec3135bdc440a279fde50">square</a> : 1;</div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a1163dc3517b1c27093b7cdd597eaa9fd"> 40</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a1163dc3517b1c27093b7cdd597eaa9fd">cross</a> : 1;</div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a95340b24c0846c778d2d8d0c983f4cdb"> 41</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a95340b24c0846c778d2d8d0c983f4cdb">circle</a> : 1;</div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a72d07e9a47b1b75474e152b6aaeae6e5"> 42</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a72d07e9a47b1b75474e152b6aaeae6e5">triangle</a> : 1;</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a3488f850c1de8d49a9dc932f1575e5e4"> 44</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a3488f850c1de8d49a9dc932f1575e5e4">l1</a> : 1;</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#aba0cb76ee82bd0ebe9872aa7bcbffac6"> 45</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#aba0cb76ee82bd0ebe9872aa7bcbffac6">r1</a> : 1;</div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a99b88dcb511243ea0c046cac1f5633ec"> 46</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a99b88dcb511243ea0c046cac1f5633ec">l2</a> : 1;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a416642ff357b1313825fe94e0491b60e"> 47</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a416642ff357b1313825fe94e0491b60e">r2</a> : 1;</div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#adf2ff3e6e4050070a68e90a83be81e92"> 48</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#adf2ff3e6e4050070a68e90a83be81e92">share</a> : 1;</div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a27f1b87f473ace3a4465ae999858357b"> 49</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a27f1b87f473ace3a4465ae999858357b">options</a> : 1;</div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#ab8835f04d0c0c5e630d685ec2fd54e80"> 50</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#ab8835f04d0c0c5e630d685ec2fd54e80">l3</a> : 1;</div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a09805f3bcc362c410d7897792599d61d"> 51</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a09805f3bcc362c410d7897792599d61d">r3</a> : 1;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a5fdf37790214db1379457bab99adace9"> 53</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a5fdf37790214db1379457bab99adace9">ps</a> : 1;</div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a0923bb3148f730c2823853d368576917"> 54</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a0923bb3148f730c2823853d368576917">keypad</a> : 1;</div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a7cd7d1ebbe71e0612e7f754e06adc5ef"> 55</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a7cd7d1ebbe71e0612e7f754e06adc5ef">dummy</a> : 6;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; };</div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00"> 57</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[3];</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;};</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html"> 60</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct_p_s4_data.html">PS4Data</a> {</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d"> 61</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>[4];</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3"> 62</a></span>&#160; <a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> <a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5"> 63</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>[2];</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;};</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;</div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html"> 67</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_p_s4_b_t.html">PS4BT</a> : <span class="keyword">public</span> <a class="code" href="class_h_i_d_report_parser.html">HIDReportParser</a> {</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00073"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#abf535806616e6cacf6707dc96279f1c1"> 73</a></span>&#160; <a class="code" href="class_p_s4_b_t.html#abf535806616e6cacf6707dc96279f1c1">PS4BT</a>(<a class="code" href="class_b_t_h_i_d.html">BTHID</a> *p) :</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; pBthid(p) {</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; pBthid-&gt;<a class="code" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a>(<a class="code" href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a>, <span class="keyword">this</span>);</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <a class="code" href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0">Reset</a>();</div>
<div class="line"><a name="l00028"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html"> 28</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_p_s4_b_t.html">PS4BT</a> : <span class="keyword">public</span> <a class="code" href="class_b_t_h_i_d.html">BTHID</a>, <span class="keyword">public</span> <a class="code" href="class_p_s4_parser.html">PS4Parser</a> {</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a616d5167f795b14c5955910807b5024b"> 36</a></span>&#160; <a class="code" href="class_p_s4_b_t.html#a616d5167f795b14c5955910807b5024b">PS4BT</a>(<a class="code" href="class_b_t_d.html">BTD</a> *p, <span class="keywordtype">bool</span> <a class="code" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a> = <span class="keyword">false</span>, <span class="keyword">const</span> <span class="keywordtype">char</span> *pin = <span class="stringliteral">&quot;0000&quot;</span>) :</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; <a class="code" href="class_b_t_h_i_d.html">BTHID</a>(p, <a class="code" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>, pin) {</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a>();</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;</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405"> 45</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405">connected</a>() {</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; <span class="keywordflow">return</span> <a class="code" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; };</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9"> 53</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">attachOnInit</a>(<span class="keywordtype">void</span> (*funcOnInit)(<span class="keywordtype">void</span>)) {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; pFuncOnInit = funcOnInit;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; };</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a9f9e18bee9e7d9cf6538681e0370193f"> 65</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a9f9e18bee9e7d9cf6538681e0370193f">ParseBTHID</a>(<a class="code" href="class_b_t_h_i_d.html">BTHID</a> *bthid, uint8_t len, uint8_t *buf) {</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a>(len, buf);</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; };</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;</div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a91088a6ed093d3cebb82d8f5e208304b"> 74</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a91088a6ed093d3cebb82d8f5e208304b">OnInitBTHID</a>() {</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">if</span> (pFuncOnInit)</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; pFuncOnInit(); <span class="comment">// Call the user function</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; };</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a2d0d9b579a008f681471d595843af8d1">Parse</a>(<a class="code" href="class_h_i_d.html">HID</a> *hid, <span class="keywordtype">bool</span> is_rpt_id, uint8_t len, uint8_t *buf);</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; uint8_t <a class="code" href="class_p_s4_b_t.html#ad9668449b50b4e28a2f269c04f628af8">getAnalogButton</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> a);</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; uint8_t <a class="code" href="class_p_s4_b_t.html#a889b1b544fc439b2bcc7a041272701da">getAnalogHat</a>(<a class="code" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a);</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405"> 115</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405">connected</a>() {</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <span class="keywordflow">if</span> (pBthid)</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">return</span> pBthid-&gt;<a class="code" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a>;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</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;</div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#abe83edc43707665dc9c1233d824dcae4"> 122</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#abe83edc43707665dc9c1233d824dcae4">disconnect</a>() {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (pBthid)</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; pBthid-&gt;<a class="code" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">disconnect</a>();</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;</div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a61f45e4cc254de9f4437d3e9866a24e9"> 128</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a61f45e4cc254de9f4437d3e9866a24e9">pair</a>(<span class="keywordtype">void</span>) {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <span class="keywordflow">if</span> (pBthid)</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; pBthid-&gt;<a class="code" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>();</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;</div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0"> 133</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0">Reset</a>() {</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; uint8_t i;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; <span class="keywordflow">for</span> (0; i &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>); i++)</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>[i] = 127;</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; for (0; i &lt; <span class="keyword">sizeof</span>(<a class="code" href="union_p_s4_buttons.html">PS4Buttons</a>); i++) {</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] = 0;</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; oldButtonState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] = 0;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; }</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">for</span> (0; i &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>); i++)</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>[i] = 0;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a>;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; oldButtonState.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a>;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; buttonClickState.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a>;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; };</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9"> 153</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">attachOnInit</a>(<span class="keywordtype">void</span> (*funcOnInit)(<span class="keywordtype">void</span>)) {</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; pFuncOnInit = funcOnInit;</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;</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordtype">void</span> onInit() {</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; <a class="code" href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0">Reset</a>();</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">if</span>(pFuncOnInit)</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; pFuncOnInit(); <span class="comment">// Call the user function</span></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; void (*pFuncOnInit)(void); <span class="comment">// Pointer to function called in onInit()</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; <span class="keywordtype">bool</span> checkDpad(<a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> ps4Buttons, <a class="code" href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a> b); <span class="comment">// Used to check PS4 DPAD buttons</span></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; <a class="code" href="class_b_t_h_i_d.html">BTHID</a> *pBthid; <span class="comment">// Pointer to BTHID instance</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <a class="code" href="struct_p_s4_data.html">PS4Data</a> ps4Data;</div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; <a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> oldButtonState, buttonClickState;</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;};</div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00033">PS4BT.h:33</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aa004cc456c79269dec99a9eed667484d"><div class="ttname"><a href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">PS4Data::hatValue</a></div><div class="ttdeci">uint8_t hatValue[4]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00061">PS4BT.h:61</a></div></div>
<div class="ttc" id="struct_p_s4_data_html"><div class="ttname"><a href="struct_p_s4_data.html">PS4Data</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00060">PS4BT.h:60</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_aba0cb76ee82bd0ebe9872aa7bcbffac6"><div class="ttname"><a href="union_p_s4_buttons.html#aba0cb76ee82bd0ebe9872aa7bcbffac6">PS4Buttons::r1</a></div><div class="ttdeci">uint8_t r1</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00045">PS4BT.h:45</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a2d0d9b579a008f681471d595843af8d1"><div class="ttname"><a href="class_p_s4_b_t.html#a2d0d9b579a008f681471d595843af8d1">PS4BT::Parse</a></div><div class="ttdeci">virtual void Parse(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8cpp_source.html#l00097">PS4BT.cpp:97</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a08a857b8533e59f6eb872e4c8f727405"><div class="ttname"><a href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405">PS4BT::connected</a></div><div class="ttdeci">bool connected()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00115">PS4BT.h:115</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a></div><div class="ttdeci">AnalogHatEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00116">controllerEnums.h:116</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ab3a81823a1d8805383146a6baad6ccc4"><div class="ttname"><a href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></div><div class="ttdeci">bool connected</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00093">BTHID.h:93</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_adf2ff3e6e4050070a68e90a83be81e92"><div class="ttname"><a href="union_p_s4_buttons.html#adf2ff3e6e4050070a68e90a83be81e92">PS4Buttons::share</a></div><div class="ttdeci">uint8_t share</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00048">PS4BT.h:48</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a63c57ecc5c678da13e7787792e385ec9"><div class="ttname"><a href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">PS4BT::attachOnInit</a></div><div class="ttdeci">void attachOnInit(void(*funcOnInit)(void))</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00153">PS4BT.h:153</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00029">PS4BT.h:29</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html"><div class="ttname"><a href="_p_s3_enums_8h.html">PS3Enums.h</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a1163dc3517b1c27093b7cdd597eaa9fd"><div class="ttname"><a href="union_p_s4_buttons.html#a1163dc3517b1c27093b7cdd597eaa9fd">PS4Buttons::cross</a></div><div class="ttdeci">uint8_t cross</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00040">PS4BT.h:40</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a99b88dcb511243ea0c046cac1f5633ec"><div class="ttname"><a href="union_p_s4_buttons.html#a99b88dcb511243ea0c046cac1f5633ec">PS4Buttons::l2</a></div><div class="ttdeci">uint8_t l2</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00046">PS4BT.h:46</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00032">PS4BT.h:32</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a84eb7076098ec3135bdc440a279fde50"><div class="ttname"><a href="union_p_s4_buttons.html#a84eb7076098ec3135bdc440a279fde50">PS4Buttons::square</a></div><div class="ttdeci">uint8_t square</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00039">PS4BT.h:39</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a1a7935eca7794b2fb0da4a0b175a1974"><div class="ttname"><a href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">PS4BT::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8cpp_source.html#l00060">PS4BT.cpp:60</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a5fdf37790214db1379457bab99adace9"><div class="ttname"><a href="union_p_s4_buttons.html#a5fdf37790214db1379457bab99adace9">PS4Buttons::ps</a></div><div class="ttdeci">uint8_t ps</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00053">PS4BT.h:53</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a889b1b544fc439b2bcc7a041272701da"><div class="ttname"><a href="class_p_s4_b_t.html#a889b1b544fc439b2bcc7a041272701da">PS4BT::getAnalogHat</a></div><div class="ttdeci">uint8_t getAnalogHat(AnalogHatEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8cpp_source.html#l00093">PS4BT.cpp:93</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a0cb061ca058b493218c01eb1ada1af00"><div class="ttname"><a href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">PS4Buttons::val</a></div><div class="ttdeci">uint8_t val[3]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00057">PS4BT.h:57</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aad2133de0113cee402cda4a8c7e8b6a5"><div class="ttname"><a href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">PS4Data::trigger</a></div><div class="ttdeci">uint8_t trigger[2]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00063">PS4BT.h:63</a></div></div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="class_p_s4_b_t.html#a4b1c9e15ccdc7ab24f7fb42fc9b5d827"> 80</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_p_s4_b_t.html#a4b1c9e15ccdc7ab24f7fb42fc9b5d827">ResetBTHID</a>() {</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a>();</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; };</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; void (*pFuncOnInit)(void); <span class="comment">// Pointer to function called in onInit()</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;};</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="class_p_s4_parser_html_a24640b2362b0f6f51785fbd3dd4f13f9"><div class="ttname"><a href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00260">PS4Parser.h:260</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a9f9e18bee9e7d9cf6538681e0370193f"><div class="ttname"><a href="class_p_s4_b_t.html#a9f9e18bee9e7d9cf6538681e0370193f">PS4BT::ParseBTHID</a></div><div class="ttdeci">virtual void ParseBTHID(BTHID *bthid, uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00065">PS4BT.h:65</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a08a857b8533e59f6eb872e4c8f727405"><div class="ttname"><a href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405">PS4BT::connected</a></div><div class="ttdeci">bool connected()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00045">PS4BT.h:45</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ab3a81823a1d8805383146a6baad6ccc4"><div class="ttname"><a href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></div><div class="ttdeci">bool connected</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00092">BTHID.h:92</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a63c57ecc5c678da13e7787792e385ec9"><div class="ttname"><a href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">PS4BT::attachOnInit</a></div><div class="ttdeci">void attachOnInit(void(*funcOnInit)(void))</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00053">PS4BT.h:53</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a6498fdeb767364e84ce09ef208980622"><div class="ttname"><a href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a></div><div class="ttdeci">void Parse(uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00076">PS4Parser.cpp:76</a></div></div>
<div class="ttc" id="_b_t_h_i_d_8h_html"><div class="ttname"><a href="_b_t_h_i_d_8h.html">BTHID.h</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00026">PS4BT.h:26</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_ae1ee62d7b9951ec7960f122c9fc2d2d0"><div class="ttname"><a href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">BTHID::disconnect</a></div><div class="ttdeci">virtual void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8cpp_source.html#l00051">BTHID.cpp:51</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="class_h_i_d_html"><div class="ttname"><a href="class_h_i_d.html">HID</a></div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00143">hid.h:143</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a61f45e4cc254de9f4437d3e9866a24e9"><div class="ttname"><a href="class_p_s4_b_t.html#a61f45e4cc254de9f4437d3e9866a24e9">PS4BT::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00128">PS4BT.h:128</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a3488f850c1de8d49a9dc932f1575e5e4"><div class="ttname"><a href="union_p_s4_buttons.html#a3488f850c1de8d49a9dc932f1575e5e4">PS4Buttons::l1</a></div><div class="ttdeci">uint8_t l1</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00044">PS4BT.h:44</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00031">PS4BT.h:31</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00030">PS4BT.h:30</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a09805f3bcc362c410d7897792599d61d"><div class="ttname"><a href="union_p_s4_buttons.html#a09805f3bcc362c410d7897792599d61d">PS4Buttons::r3</a></div><div class="ttdeci">uint8_t r3</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00051">PS4BT.h:51</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html"><div class="ttname"><a href="union_p_s4_buttons.html">PS4Buttons</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00036">PS4BT.h:36</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a99e2971b4e511a8d1bb718408f559a92"><div class="ttname"><a href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">PS4Buttons::dpad</a></div><div class="ttdeci">uint8_t dpad</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00038">PS4BT.h:38</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a0923bb3148f730c2823853d368576917"><div class="ttname"><a href="union_p_s4_buttons.html#a0923bb3148f730c2823853d368576917">PS4Buttons::keypad</a></div><div class="ttdeci">uint8_t keypad</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00054">PS4BT.h:54</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00027">PS4BT.h:27</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00025">PS4BT.h:25</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a7cd7d1ebbe71e0612e7f754e06adc5ef"><div class="ttname"><a href="union_p_s4_buttons.html#a7cd7d1ebbe71e0612e7f754e06adc5ef">PS4Buttons::dummy</a></div><div class="ttdeci">uint8_t dummy</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00055">PS4BT.h:55</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_abe83edc43707665dc9c1233d824dcae4"><div class="ttname"><a href="class_p_s4_b_t.html#abe83edc43707665dc9c1233d824dcae4">PS4BT::disconnect</a></div><div class="ttdeci">void disconnect()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00122">PS4BT.h:122</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_ad9668449b50b4e28a2f269c04f628af8"><div class="ttname"><a href="class_p_s4_b_t.html#ad9668449b50b4e28a2f269c04f628af8">PS4BT::getAnalogButton</a></div><div class="ttdeci">uint8_t getAnalogButton(ButtonEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8cpp_source.html#l00089">PS4BT.cpp:89</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a72d07e9a47b1b75474e152b6aaeae6e5"><div class="ttname"><a href="union_p_s4_buttons.html#a72d07e9a47b1b75474e152b6aaeae6e5">PS4Buttons::triangle</a></div><div class="ttdeci">uint8_t triangle</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00042">PS4BT.h:42</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a416642ff357b1313825fe94e0491b60e"><div class="ttname"><a href="union_p_s4_buttons.html#a416642ff357b1313825fe94e0491b60e">PS4Buttons::r2</a></div><div class="ttdeci">uint8_t r2</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00047">PS4BT.h:47</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a27f1b87f473ace3a4465ae999858357b"><div class="ttname"><a href="union_p_s4_buttons.html#a27f1b87f473ace3a4465ae999858357b">PS4Buttons::options</a></div><div class="ttdeci">uint8_t options</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00049">PS4BT.h:49</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a60d9bd17b809303cf2840f2892698bd0"><div class="ttname"><a href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0">PS4BT::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00133">PS4BT.h:133</a></div></div>
<div class="ttc" id="_b_t_h_i_d_8h_html_a699c5d6eb13133dce9504391bc610f3e"><div class="ttname"><a href="_b_t_h_i_d_8h.html#a699c5d6eb13133dce9504391bc610f3e">KEYBOARD_PARSER_ID</a></div><div class="ttdeci">#define KEYBOARD_PARSER_ID</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00024">BTHID.h:24</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00028">PS4BT.h:28</a></div></div>
<div class="ttc" id="class_h_i_d_report_parser_html"><div class="ttname"><a href="class_h_i_d_report_parser.html">HIDReportParser</a></div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00138">hid.h:138</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_abf535806616e6cacf6707dc96279f1c1"><div class="ttname"><a href="class_p_s4_b_t.html#abf535806616e6cacf6707dc96279f1c1">PS4BT::PS4BT</a></div><div class="ttdeci">PS4BT(BTHID *p)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00073">PS4BT.h:73</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_ab8835f04d0c0c5e630d685ec2fd54e80"><div class="ttname"><a href="union_p_s4_buttons.html#ab8835f04d0c0c5e630d685ec2fd54e80">PS4Buttons::l3</a></div><div class="ttdeci">uint8_t l3</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00050">PS4BT.h:50</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a60c0217c1879e1b16ae5d19a8c8695a3"><div class="ttname"><a href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">PS4Data::btn</a></div><div class="ttdeci">PS4Buttons btn</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00062">PS4BT.h:62</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a7019f43cfd9ef4860dea0ffb5b580254"><div class="ttname"><a href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">PS4BT::getButtonClick</a></div><div class="ttdeci">bool getButtonClick(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8cpp_source.html#l00071">PS4BT.cpp:71</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html"><div class="ttname"><a href="_p_s4_parser_8h.html">PS4Parser.h</a></div></div>
<div class="ttc" id="class_p_s4_parser_html"><div class="ttname"><a href="class_p_s4_parser.html">PS4Parser</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00125">PS4Parser.h:125</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a4b1c9e15ccdc7ab24f7fb42fc9b5d827"><div class="ttname"><a href="class_p_s4_b_t.html#a4b1c9e15ccdc7ab24f7fb42fc9b5d827">PS4BT::ResetBTHID</a></div><div class="ttdeci">virtual void ResetBTHID()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00080">PS4BT.h:80</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a616d5167f795b14c5955910807b5024b"><div class="ttname"><a href="class_p_s4_b_t.html#a616d5167f795b14c5955910807b5024b">PS4BT::PS4BT</a></div><div class="ttdeci">PS4BT(BTD *p, bool pair=false, const char *pin=&quot;0000&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00036">PS4BT.h:36</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html_a91088a6ed093d3cebb82d8f5e208304b"><div class="ttname"><a href="class_p_s4_b_t.html#a91088a6ed093d3cebb82d8f5e208304b">PS4BT::OnInitBTHID</a></div><div class="ttdeci">virtual void OnInitBTHID()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00074">PS4BT.h:74</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html"><div class="ttname"><a href="class_b_t_h_i_d.html">BTHID</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00029">BTHID.h:29</a></div></div>
<div class="ttc" id="_p_s4_b_t_8h_html_a3eca256e8b59574c290177d7df302a62"><div class="ttname"><a href="_p_s4_b_t_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a></div><div class="ttdeci">DPADEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00024">PS4BT.h:24</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a95340b24c0846c778d2d8d0c983f4cdb"><div class="ttname"><a href="union_p_s4_buttons.html#a95340b24c0846c778d2d8d0c983f4cdb">PS4Buttons::circle</a></div><div class="ttdeci">uint8_t circle</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00041">PS4BT.h:41</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afb19720b65cda69d910416c7a689dd45"><div class="ttname"><a href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">BTHID::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00096">BTHID.h:96</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html"><div class="ttname"><a href="class_p_s4_b_t.html">PS4BT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00067">PS4BT.h:67</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_a0e903f0b5040f3561e5de6c4431027b1"><div class="ttname"><a href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">BTHID::SetReportParser</a></div><div class="ttdeci">bool SetReportParser(uint8_t id, HIDReportParser *prs)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00071">BTHID.h:71</a></div></div>
<div class="ttc" id="class_b_t_h_i_d_html_afb19720b65cda69d910416c7a689dd45"><div class="ttname"><a href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">BTHID::pair</a></div><div class="ttdeci">void pair(void)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_h_i_d_8h_source.html#l00095">BTHID.h:95</a></div></div>
<div class="ttc" id="class_p_s4_b_t_html"><div class="ttname"><a href="class_p_s4_b_t.html">PS4BT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_b_t_8h_source.html#l00028">PS4BT.h:28</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

110
_p_s4_parser_8cpp.html Normal file
View file

@ -0,0 +1,110 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4Parser.cpp 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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="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>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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_e5fbe6d2783ccd4c93c7856d92d7be6e.html">GitHub</a></li><li class="navelem"><a class="el" href="dir_397a095372f04465e811d0ee219bbf8f.html">USB_Host_Shield_2.0</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">PS4Parser.cpp File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>&quot;</code><br/>
</div><div class="textblock"><div class="dynheader">
Include dependency graph for PS4Parser.cpp:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s4_parser_8cpp__incl.png" border="0" usemap="#_p_s4_parser_8cpp" alt=""/></div>
<map name="_p_s4_parser_8cpp" id="_p_s4_parser_8cpp">
<area shape="rect" id="node2" href="_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="43,83,139,111"/><area shape="rect" id="node3" href="_usb_8h.html" title="Usb.h" alt="" coords="5,161,61,189"/><area shape="rect" id="node4" href="controller_enums_8h.html" title="controllerEnums.h" alt="" coords="85,161,213,189"/></map>
</div>
</div>
<p><a href="_p_s4_parser_8cpp_source.html">Go to the source code of this file.</a></p>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="PS4Parser.cpp" name="PS4Parser.cpp">
<area shape="rect" id="node2" href="$_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="43,83,139,111"/>
<area shape="rect" id="node3" href="$_usb_8h.html" title="Usb.h" alt="" coords="5,161,61,189"/>
<area shape="rect" id="node4" href="$controller_enums_8h.html" title="controllerEnums.h" alt="" coords="85,161,213,189"/>
</map>

View file

@ -0,0 +1 @@
7b7a6c8921078ff071fc05959848bb21

BIN
_p_s4_parser_8cpp__incl.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.3 KiB

View file

@ -0,0 +1,246 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4Parser.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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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="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>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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_e5fbe6d2783ccd4c93c7856d92d7be6e.html">GitHub</a></li><li class="navelem"><a class="el" href="dir_397a095372f04465e811d0ee219bbf8f.html">USB_Host_Shield_2.0</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">PS4Parser.cpp</div> </div>
</div><!--header-->
<div class="contents">
<a href="_p_s4_parser_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;<span class="comment">/* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> This software may be distributed and modified under the terms of the GNU</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> General Public License version 2 (GPL2) as published by the Free Software</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> Foundation and appearing in the file GPL2.TXT included in the packaging of</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> this file. Please note that GPL2 Section 2[b] requires that all works based</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> on this software must also be made publicly available under the terms of</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> the GPL2 (&quot;Copyleft&quot;).</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> Contact information</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> -------------------</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> Kristian Lauszus, TKJ Electronics</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> Web : http://www.tkjelectronics.com</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> e-mail : kristianl@tkjelectronics.com</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_p_s4_parser_8h.html">PS4Parser.h</a>&quot;</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;</div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment">// To enable serial debugging see &quot;settings.h&quot;</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">//#define PRINTREPORT // Uncomment to print the report send by the PS4 Controller</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;</div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="keywordtype">bool</span> PS4Parser::checkDpad(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b) {</div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160; <span class="keywordflow">switch</span> (b) {</div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>:</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a>;</div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>:</div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a>;</div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>:</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a>;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>:</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a> || ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> == <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a>;</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; <span class="keywordflow">return</span> <span class="keyword">false</span>;</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; }</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;}</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="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906"> 38</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">PS4Parser::getButtonPress</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b) {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keywordflow">if</span> (b &lt;= <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>) <span class="comment">// Dpad</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; <span class="keywordflow">return</span> checkDpad(b);</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; uint8_t button = pgm_read_byte(&amp;<a class="code" href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524">PS4_BUTTONS</a>[(uint8_t)b]);</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; uint8_t index = button &lt; 8 ? 0 : button &lt; 16 ? 1 : 2;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; uint8_t mask = 1 &lt;&lt; (button - 8 * index);</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[index] &amp; mask;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; }</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;}</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;</div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c"> 49</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">PS4Parser::getButtonClick</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b) {</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; uint8_t mask, index = 0;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">if</span> (b &lt;= <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>) <span class="comment">// Dpad</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160; mask = 1 &lt;&lt; b;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; uint8_t button = pgm_read_byte(&amp;<a class="code" href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524">PS4_BUTTONS</a>[(uint8_t)b]);</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; index = button &lt; 8 ? 0 : button &lt; 16 ? 1 : 2;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; mask = 1 &lt;&lt; (button - 8 * index);</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; }</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; <span class="keywordtype">bool</span> click = buttonClickState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[index] &amp; mask;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; buttonClickState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[index] &amp;= ~mask; <span class="comment">// Clear &quot;click&quot; event</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; <span class="keywordflow">return</span> click;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;}</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"><a class="line" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a"> 64</a></span>&#160;uint8_t <a class="code" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">PS4Parser::getAnalogButton</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b) {</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <span class="keywordflow">if</span> (b == <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda0adffb24dae0c41be5b803f4d444f066">L2</a>) <span class="comment">// These are the only analog buttons on the controller</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>[0];</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (b == <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda629d7b403cea5f826352f3aefb9a6d6a">R2</a>)</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>[1];</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;}</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c"> 72</a></span>&#160;uint8_t <a class="code" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">PS4Parser::getAnalogHat</a>(<a class="code" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a) {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>[(uint8_t)a];</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;}</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;</div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622"> 76</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a>(uint8_t len, uint8_t *buf) {</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keywordflow">if</span> (len &gt; 0 &amp;&amp; buf) {</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#ifdef PRINTREPORT</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">for</span> (uint8_t i = 0; i &lt; len; i++) {</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; D_PrintHex&lt;uint8_t &gt; (buf[i], 0x80);</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot; &quot;</span>), 0x80);</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; <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\n&quot;</span>), 0x80);</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; memcpy(&amp;ps4Data, buf, min(len, <span class="keyword">sizeof</span>(ps4Data)));</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">if</span> (ps4Data.<a class="code" href="struct_p_s4_data.html#aa61155e1874519285f4893430480b48d">reportId</a> != 0x01) {</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#ifdef DEBUG_USB_HOST</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor"></span> <a class="code" href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a>(PSTR(<span class="stringliteral">&quot;\r\nUnknown report id&quot;</span>), 0x80);</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor"></span> <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <span class="keywordflow">for</span> (uint8_t i = 0; i &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>); i++) {</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <span class="keywordflow">if</span> (ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] != oldButtonState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i]) { <span class="comment">// Check if anything has changed</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; buttonClickState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] = ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] &amp; ~oldButtonState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i]; <span class="comment">// Update click state variable</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; oldButtonState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] = ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i];</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (i == 0) { <span class="comment">// The DPAD buttons does not set the different bits, but set a value corresponding to the buttons pressed, we will simply set the bits ourself</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160; uint8_t newDpad = 0;</div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; <span class="keywordflow">if</span> (checkDpad(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>))</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; newDpad |= 1 &lt;&lt; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="keywordflow">if</span> (checkDpad(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>))</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; newDpad |= 1 &lt;&lt; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keywordflow">if</span> (checkDpad(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>))</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; newDpad |= 1 &lt;&lt; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>;</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordflow">if</span> (checkDpad(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>))</div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; newDpad |= 1 &lt;&lt; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>;</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keywordflow">if</span> (newDpad != oldDpad) {</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; buttonClickState.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = newDpad &amp; ~oldDpad; <span class="comment">// Override values</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; oldDpad = newDpad;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; }</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160; }</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; }</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; }</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;}</div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00116">PS4Parser.h:116</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00115">PS4Parser.h:115</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aa004cc456c79269dec99a9eed667484d"><div class="ttname"><a href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">PS4Data::hatValue</a></div><div class="ttdeci">uint8_t hatValue[4]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00091">PS4Parser.h:91</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_ad352f30e4ab772246574bbf654248906"><div class="ttname"><a href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">PS4Parser::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00038">PS4Parser.cpp:38</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a></div><div class="ttdeci">AnalogHatEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00116">controllerEnums.h:116</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00117">PS4Parser.h:117</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00114">PS4Parser.h:114</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00048">controllerEnums.h:48</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00049">controllerEnums.h:49</a></div></div>
<div class="ttc" id="message_8h_html_a27117e124c5d66d5512fe8d494fe6338"><div class="ttname"><a href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a></div><div class="ttdeci">#define Notify(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00044">message.h:44</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a6498fdeb767364e84ce09ef208980622"><div class="ttname"><a href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a></div><div class="ttdeci">void Parse(uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00076">PS4Parser.cpp:76</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a0cb061ca058b493218c01eb1ada1af00"><div class="ttname"><a href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">PS4Buttons::val</a></div><div class="ttdeci">uint8_t val[3]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00071">PS4Parser.h:71</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aad2133de0113cee402cda4a8c7e8b6a5"><div class="ttname"><a href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">PS4Data::trigger</a></div><div class="ttdeci">uint8_t trigger[2]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00093">PS4Parser.h:93</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00050">controllerEnums.h:50</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00118">PS4Parser.h:118</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a7e95303156f31f965a09cc2d3877b524"><div class="ttname"><a href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524">PS4_BUTTONS</a></div><div class="ttdeci">const uint8_t PS4_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00025">PS4Parser.h:25</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fda0adffb24dae0c41be5b803f4d444f066"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda0adffb24dae0c41be5b803f4d444f066">L2</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00082">controllerEnums.h:82</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html"><div class="ttname"><a href="_p_s4_parser_8h.html">PS4Parser.h</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a99e2971b4e511a8d1bb718408f559a92"><div class="ttname"><a href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">PS4Buttons::dpad</a></div><div class="ttdeci">uint8_t dpad</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00052">PS4Parser.h:52</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aa61155e1874519285f4893430480b48d"><div class="ttname"><a href="struct_p_s4_data.html#aa61155e1874519285f4893430480b48d">PS4Data::reportId</a></div><div class="ttdeci">uint8_t reportId</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00090">PS4Parser.h:90</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00113">PS4Parser.h:113</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00120">PS4Parser.h:120</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00119">PS4Parser.h:119</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a66151c4e4601f80492cd5b2451a2f87a"><div class="ttname"><a href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">PS4Parser::getAnalogButton</a></div><div class="ttdeci">uint8_t getAnalogButton(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00064">PS4Parser.cpp:64</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a60c0217c1879e1b16ae5d19a8c8695a3"><div class="ttname"><a href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">PS4Data::btn</a></div><div class="ttdeci">PS4Buttons btn</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00092">PS4Parser.h:92</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a92a4ea3d328426b9f86be05cabaad91c"><div class="ttname"><a href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">PS4Parser::getButtonClick</a></div><div class="ttdeci">bool getButtonClick(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00049">PS4Parser.cpp:49</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fda629d7b403cea5f826352f3aefb9a6d6a"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda629d7b403cea5f826352f3aefb9a6d6a">R2</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00083">controllerEnums.h:83</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a9b11c5b27f9c9501fdb4f616cb3b194c"><div class="ttname"><a href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">PS4Parser::getAnalogHat</a></div><div class="ttdeci">uint8_t getAnalogHat(AnalogHatEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00072">PS4Parser.cpp:72</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00051">controllerEnums.h:51</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

236
_p_s4_parser_8h.html Normal file
View file

@ -0,0 +1,236 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4Parser.h 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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="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>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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_e5fbe6d2783ccd4c93c7856d92d7be6e.html">GitHub</a></li><li class="navelem"><a class="el" href="dir_397a095372f04465e811d0ee219bbf8f.html">USB_Host_Shield_2.0</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">PS4Parser.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="_usb_8h_source.html">Usb.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="controller_enums_8h_source.html">controllerEnums.h</a>&quot;</code><br/>
</div><div class="textblock"><div class="dynheader">
Include dependency graph for PS4Parser.h:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s4_parser_8h__incl.png" border="0" usemap="#_p_s4_parser_8h" alt=""/></div>
<map name="_p_s4_parser_8h" id="_p_s4_parser_8h">
<area shape="rect" id="node2" href="_usb_8h.html" title="Usb.h" alt="" coords="5,83,61,111"/><area shape="rect" id="node3" href="controller_enums_8h.html" title="controllerEnums.h" alt="" coords="85,83,213,111"/></map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s4_parser_8h__dep__incl.png" border="0" usemap="#_p_s4_parser_8hdep" alt=""/></div>
<map name="_p_s4_parser_8hdep" id="_p_s4_parser_8hdep">
<area shape="rect" id="node2" href="_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="5,83,77,111"/><area shape="rect" id="node3" href="_p_s4_parser_8cpp.html" title="PS4Parser.cpp" alt="" coords="102,83,212,111"/><area shape="rect" id="node4" href="_p_s4_u_s_b_8h.html" title="PS4USB.h" alt="" coords="236,83,320,111"/></map>
</div>
</div>
<p><a href="_p_s4_parser_8h_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="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">union &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="union_p_s4_buttons.html">PS4Buttons</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structtouchpad_x_y.html">touchpadXY</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="struct_p_s4_data.html">PS4Data</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:a3eca256e8b59574c290177d7df302a62"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a> { <br/>
&#160;&#160;<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a> = 0x0,
<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a> = 0x1,
<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a> = 0x2,
<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a> = 0x3,
<br/>
&#160;&#160;<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a> = 0x4,
<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a> = 0x5,
<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a> = 0x6,
<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a> = 0x7,
<br/>
&#160;&#160;<a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a> = 0x8
<br/>
}</td></tr>
<tr class="separator:a3eca256e8b59574c290177d7df302a62"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a7e95303156f31f965a09cc2d3877b524"><td class="memItemLeft" align="right" valign="top">const uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524">PS4_BUTTONS</a> []</td></tr>
<tr class="separator:a7e95303156f31f965a09cc2d3877b524"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Enumeration Type Documentation</h2>
<a class="anchor" id="a3eca256e8b59574c290177d7df302a62"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">enum <a class="el" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a></td>
</tr>
</table>
</div><div class="memdoc">
<table class="fieldtable">
<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"></a>DPAD_UP</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"></a>DPAD_UP_RIGHT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"></a>DPAD_RIGHT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"></a>DPAD_RIGHT_DOWN</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"></a>DPAD_DOWN</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"></a>DPAD_DOWN_LEFT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"></a>DPAD_LEFT</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"></a>DPAD_LEFT_UP</em>&#160;</td><td class="fielddoc">
</td></tr>
<tr><td class="fieldname"><em><a class="anchor" id="a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044"></a>DPAD_OFF</em>&#160;</td><td class="fielddoc">
</td></tr>
</table>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00112">112</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Variable Documentation</h2>
<a class="anchor" id="a7e95303156f31f965a09cc2d3877b524"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">const uint8_t PS4_BUTTONS[]</td>
</tr>
</table>
</div><div class="memdoc">
<b>Initial value:</b><div class="fragment"><div class="line">= {</div>
<div class="line"> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>, </div>
<div class="line"> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>, </div>
<div class="line"> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>, </div>
<div class="line"> <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>, </div>
<div class="line"></div>
<div class="line"> 0x0C, </div>
<div class="line"> 0x0D, </div>
<div class="line"> 0x0E, </div>
<div class="line"> 0x0F, </div>
<div class="line"></div>
<div class="line"> 0x0A, </div>
<div class="line"> 0x0B, </div>
<div class="line"> 0x08, </div>
<div class="line"> 0x09, </div>
<div class="line"></div>
<div class="line"> 0x07, </div>
<div class="line"> 0x06, </div>
<div class="line"> 0x05, </div>
<div class="line"> 0x04, </div>
<div class="line"></div>
<div class="line"> 0x10, </div>
<div class="line"> 0x11, </div>
<div class="line">}</div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00048">controllerEnums.h:48</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00049">controllerEnums.h:49</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00050">controllerEnums.h:50</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00051">controllerEnums.h:51</a></div></div>
</div><!-- fragment --><p>Buttons on the controller </p>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00025">25</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

View file

@ -0,0 +1,5 @@
<map id="PS4Parser.h" name="PS4Parser.h">
<area shape="rect" id="node2" href="$_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="5,83,77,111"/>
<area shape="rect" id="node3" href="$_p_s4_parser_8cpp.html" title="PS4Parser.cpp" alt="" coords="102,83,212,111"/>
<area shape="rect" id="node4" href="$_p_s4_u_s_b_8h.html" title="PS4USB.h" alt="" coords="236,83,320,111"/>
</map>

View file

@ -0,0 +1 @@
5e56bd64aa04badca5d0648201af05fb

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

View file

@ -0,0 +1,4 @@
<map id="PS4Parser.h" name="PS4Parser.h">
<area shape="rect" id="node2" href="$_usb_8h.html" title="Usb.h" alt="" coords="5,83,61,111"/>
<area shape="rect" id="node3" href="$controller_enums_8h.html" title="controllerEnums.h" alt="" coords="85,83,213,111"/>
</map>

View file

@ -0,0 +1 @@
559da26f56bdca12a84aceb0d7a5a74b

BIN
_p_s4_parser_8h__incl.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.4 KiB

387
_p_s4_parser_8h_source.html Normal file
View file

@ -0,0 +1,387 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4Parser.h 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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="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>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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_e5fbe6d2783ccd4c93c7856d92d7be6e.html">GitHub</a></li><li class="navelem"><a class="el" href="dir_397a095372f04465e811d0ee219bbf8f.html">USB_Host_Shield_2.0</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">PS4Parser.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="_p_s4_parser_8h.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;<span class="comment">/* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> This software may be distributed and modified under the terms of the GNU</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> General Public License version 2 (GPL2) as published by the Free Software</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> Foundation and appearing in the file GPL2.TXT included in the packaging of</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> this file. Please note that GPL2 Section 2[b] requires that all works based</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> on this software must also be made publicly available under the terms of</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> the GPL2 (&quot;Copyleft&quot;).</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> Contact information</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> -------------------</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> Kristian Lauszus, TKJ Electronics</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> Web : http://www.tkjelectronics.com</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> e-mail : kristianl@tkjelectronics.com</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#ifndef _ps4parser_h_</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _ps4parser_h_</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_usb_8h.html">Usb.h</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="controller_enums_8h.html">controllerEnums.h</a>&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524"> 25</a></span>&#160;<span class="keyword">const</span> uint8_t <a class="code" href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524">PS4_BUTTONS</a>[] PROGMEM = {</div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>, <span class="comment">// UP</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>, <span class="comment">// RIGHT</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>, <span class="comment">// DOWN</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160; <a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>, <span class="comment">// LEFT</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; 0x0C, <span class="comment">// SHARE</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; 0x0D, <span class="comment">// OPTIONS</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; 0x0E, <span class="comment">// L3</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; 0x0F, <span class="comment">// R3</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; 0x0A, <span class="comment">// L2</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; 0x0B, <span class="comment">// R2</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; 0x08, <span class="comment">// L1</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; 0x09, <span class="comment">// R1</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; 0x07, <span class="comment">// TRIANGLE</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; 0x06, <span class="comment">// CIRCLE</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; 0x05, <span class="comment">// CROSS</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; 0x04, <span class="comment">// SQUARE</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; 0x10, <span class="comment">// PS</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; 0x11, <span class="comment">// TOUCHPAD</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;};</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html"> 50</a></span>&#160;<span class="keyword">union </span><a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> {</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00052"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92"> 52</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> : 4;</div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a84eb7076098ec3135bdc440a279fde50"> 53</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a84eb7076098ec3135bdc440a279fde50">square</a> : 1;</div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a1163dc3517b1c27093b7cdd597eaa9fd"> 54</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a1163dc3517b1c27093b7cdd597eaa9fd">cross</a> : 1;</div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a95340b24c0846c778d2d8d0c983f4cdb"> 55</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a95340b24c0846c778d2d8d0c983f4cdb">circle</a> : 1;</div>
<div class="line"><a name="l00056"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a72d07e9a47b1b75474e152b6aaeae6e5"> 56</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a72d07e9a47b1b75474e152b6aaeae6e5">triangle</a> : 1;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a3488f850c1de8d49a9dc932f1575e5e4"> 58</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a3488f850c1de8d49a9dc932f1575e5e4">l1</a> : 1;</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#aba0cb76ee82bd0ebe9872aa7bcbffac6"> 59</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#aba0cb76ee82bd0ebe9872aa7bcbffac6">r1</a> : 1;</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a99b88dcb511243ea0c046cac1f5633ec"> 60</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a99b88dcb511243ea0c046cac1f5633ec">l2</a> : 1;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a416642ff357b1313825fe94e0491b60e"> 61</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a416642ff357b1313825fe94e0491b60e">r2</a> : 1;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#adf2ff3e6e4050070a68e90a83be81e92"> 62</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#adf2ff3e6e4050070a68e90a83be81e92">share</a> : 1;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a27f1b87f473ace3a4465ae999858357b"> 63</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a27f1b87f473ace3a4465ae999858357b">options</a> : 1;</div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#ab8835f04d0c0c5e630d685ec2fd54e80"> 64</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#ab8835f04d0c0c5e630d685ec2fd54e80">l3</a> : 1;</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a09805f3bcc362c410d7897792599d61d"> 65</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a09805f3bcc362c410d7897792599d61d">r3</a> : 1;</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"><a class="line" href="union_p_s4_buttons.html#a5fdf37790214db1379457bab99adace9"> 67</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a5fdf37790214db1379457bab99adace9">ps</a> : 1;</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a785305478e29a078003c360babb50ab0"> 68</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a785305478e29a078003c360babb50ab0">touchpad</a> : 1;</div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a936ab414f4e60f0264945622d9aa1aea"> 69</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a936ab414f4e60f0264945622d9aa1aea">timestamp</a> : 6; <span class="comment">// Only available via USB</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; };</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00"> 71</a></span>&#160; uint8_t <a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[3];</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;</div>
<div class="line"><a name="l00074"></a><span class="lineno"><a class="line" href="structtouchpad_x_y.html"> 74</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structtouchpad_x_y.html">touchpadXY</a> {</div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structtouchpad_x_y.html#aad3a6094ac41933907969856dfb93e15"> 75</a></span>&#160; uint8_t <a class="code" href="structtouchpad_x_y.html#aad3a6094ac41933907969856dfb93e15">dummy</a>; <span class="comment">// I can not figure out what this data is for, it seems to change randomly, maybe a timestamp?</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structtouchpad_x_y.html#ae52c34f2e6e66933e06b2f3448badcf0"> 78</a></span>&#160; uint8_t <a class="code" href="structtouchpad_x_y.html#ae52c34f2e6e66933e06b2f3448badcf0">counter</a> : 7; <span class="comment">// Increments every time a finger is touching the touchpad</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structtouchpad_x_y.html#a2c078e99c3b96303e6b6a60e2f36acc5"> 79</a></span>&#160; uint8_t <a class="code" href="structtouchpad_x_y.html#a2c078e99c3b96303e6b6a60e2f36acc5">touching</a> : 1; <span class="comment">// The top bit is cleared if the finger is touching the touchpad</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; };</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structtouchpad_x_y.html#a1c38a3e4161b1495b4d8ce37124c72a5"> 82</a></span>&#160; uint16_t <a class="code" href="structtouchpad_x_y.html#a1c38a3e4161b1495b4d8ce37124c72a5">x</a> : 12;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structtouchpad_x_y.html#ac4ceb26c0ebba1c5a2691a1ecdb7dbae"> 83</a></span>&#160; uint16_t <a class="code" href="structtouchpad_x_y.html#ac4ceb26c0ebba1c5a2691a1ecdb7dbae">y</a> : 12;</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; };</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; } <a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[2]; <span class="comment">// 0 = first finger, 1 = second finger</span></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;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html"> 88</a></span>&#160;<span class="keyword">struct </span><a class="code" href="struct_p_s4_data.html">PS4Data</a> {</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; <span class="comment">/* Button and joystick values */</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#aa61155e1874519285f4893430480b48d"> 90</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#aa61155e1874519285f4893430480b48d">reportId</a>; <span class="comment">// Always 0x01</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d"> 91</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>[4];</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3"> 92</a></span>&#160; <a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> <a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>;</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5"> 93</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>[2];</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; <span class="comment">// I still need to figure out how to make the PS4 controller send out the rest of the data via Bluetooth</span></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; <span class="comment">/* Gyro and accelerometer values */</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#aef57cffc87f423db996d817ea75fe5f9"> 98</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#aef57cffc87f423db996d817ea75fe5f9">dummy</a>[3]; <span class="comment">// First two looks random, while the third one might be some kind of status - it increments once in a while</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#ace15cafba1570d56951e7db7947ba94c"> 99</a></span>&#160; int16_t <a class="code" href="struct_p_s4_data.html#a2c7c9d0313863ab69e7cafdd79b7492c">gyroY</a>, <a class="code" href="struct_p_s4_data.html#ace15cafba1570d56951e7db7947ba94c">gyroZ</a>, <a class="code" href="struct_p_s4_data.html#a0535a4a38dc250250fbf253e6bea53dc">gyroX</a>;</div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#a635a4a50b43400707baa74c8e87944ca"> 100</a></span>&#160; int16_t <a class="code" href="struct_p_s4_data.html#a7e4ebbf1e22d59d3d7126bd1d56ee9b4">accX</a>, <a class="code" href="struct_p_s4_data.html#a635a4a50b43400707baa74c8e87944ca">accZ</a>, <a class="code" href="struct_p_s4_data.html#a8cbe113c7f536bd0c47704d957a97d54">accY</a>;</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; <span class="comment">/* The rest is data for the touchpad */</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#ae084b9b30d75bf86aa29b7c537297e55"> 103</a></span>&#160; uint8_t <a class="code" href="struct_p_s4_data.html#ae084b9b30d75bf86aa29b7c537297e55">dummy2</a>[9]; <span class="comment">// Byte 5 looks like some kind of status (maybe battery status), bit 1 of byte 8 is set every time a finger is moving around the touchpad</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56"> 104</a></span>&#160; <a class="code" href="structtouchpad_x_y.html">touchpadXY</a> <a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[3]; <span class="comment">// It looks like it sends out three coordinates each time, this is possible because the microcontroller inside the PS4 controller is much faster than the Bluetooth connection.</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="comment">// The last data is read from the last position in the array while the oldest measurement is from the first position.</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="comment">// The first position will also keep it&#39;s value after the finger is released, while the other two will set them to zero.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160; <span class="comment">// Note that if you read fast enough from the device, then only the first one will contain any data.</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;</div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160; <span class="comment">// The last three bytes are always: 0x00, 0x80, 0x00</span></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;</div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62"> 112</a></span>&#160;<span class="keyword">enum</span> <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a> {</div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"> 113</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a> = 0x0,</div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"> 114</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a> = 0x1,</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"> 115</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a> = 0x2,</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"> 116</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a> = 0x3,</div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"> 117</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a> = 0x4,</div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"> 118</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a> = 0x5,</div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"> 119</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a> = 0x6,</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"> 120</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a> = 0x7,</div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044"> 121</a></span>&#160; <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a> = 0x8,</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;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html"> 125</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_p_s4_parser.html">PS4Parser</a> {</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf"> 128</a></span>&#160; <a class="code" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a>() {</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a>();</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; };</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; uint8_t <a class="code" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a>(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b);</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; uint8_t <a class="code" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a>(<a class="code" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a);</div>
<div class="line"><a name="l00174"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493"> 174</a></span>&#160; uint16_t <a class="code" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a>(uint8_t finger = 0, uint8_t xyId = 0) {</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[xyId].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[finger].<a class="code" href="structtouchpad_x_y.html#a1c38a3e4161b1495b4d8ce37124c72a5">x</a>;</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="l00186"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a"> 186</a></span>&#160; uint16_t <a class="code" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a>(uint8_t finger = 0, uint8_t xyId = 0) {</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[xyId].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[finger].<a class="code" href="structtouchpad_x_y.html#ac4ceb26c0ebba1c5a2691a1ecdb7dbae">y</a>;</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;</div>
<div class="line"><a name="l00198"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade"> 198</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a>(uint8_t finger = 0, uint8_t xyId = 0) {</div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="keywordflow">return</span> !(ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[xyId].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[finger].<a class="code" href="structtouchpad_x_y.html#a2c078e99c3b96303e6b6a60e2f36acc5">touching</a>); <span class="comment">// The bit is cleared when a finger is touching the touchpad</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; };</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;</div>
<div class="line"><a name="l00210"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88"> 210</a></span>&#160; uint8_t <a class="code" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a>(uint8_t finger = 0, uint8_t xyId = 0) {</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[xyId].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[finger].<a class="code" href="structtouchpad_x_y.html#ae52c34f2e6e66933e06b2f3448badcf0">counter</a>;</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; };</div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;</div>
<div class="line"><a name="l00219"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888"> 219</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a>(<a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a) {</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">if</span>(a == <a class="code" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a>)</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">return</span> (atan2(ps4Data.<a class="code" href="struct_p_s4_data.html#a8cbe113c7f536bd0c47704d957a97d54">accY</a>, ps4Data.<a class="code" href="struct_p_s4_data.html#a635a4a50b43400707baa74c8e87944ca">accZ</a>) + PI) * RAD_TO_DEG;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="keywordflow">else</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <span class="keywordflow">return</span> (atan2(ps4Data.<a class="code" href="struct_p_s4_data.html#a7e4ebbf1e22d59d3d7126bd1d56ee9b4">accX</a>, ps4Data.<a class="code" href="struct_p_s4_data.html#a635a4a50b43400707baa74c8e87944ca">accZ</a>) + PI) * RAD_TO_DEG;</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;</div>
<div class="line"><a name="l00231"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a"> 231</a></span>&#160; int16_t <a class="code" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a>(<a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> s) {</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; <span class="keywordflow">switch</span>(s) {</div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1370f1d20e9df77568c74681daf4a19a">gX</a>:</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a0535a4a38dc250250fbf253e6bea53dc">gyroX</a>;</div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a031e6b960909353e732db224bcf597af">gY</a>:</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a2c7c9d0313863ab69e7cafdd79b7492c">gyroY</a>;</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a>:</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#ace15cafba1570d56951e7db7947ba94c">gyroZ</a>;</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a>:</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a7e4ebbf1e22d59d3d7126bd1d56ee9b4">accX</a>;</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a>:</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a8cbe113c7f536bd0c47704d957a97d54">accY</a>;</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">case</span> <a class="code" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a>:</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">return</span> ps4Data.<a class="code" href="struct_p_s4_data.html#a635a4a50b43400707baa74c8e87944ca">accZ</a>;</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; };</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a>(uint8_t len, uint8_t *buf);</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;</div>
<div class="line"><a name="l00260"></a><span class="lineno"><a class="line" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9"> 260</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a>() {</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; uint8_t i;</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>); i++)</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">hatValue</a>[i] = 127;</div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; for (i = 0; i &lt; <span class="keyword">sizeof</span>(<a class="code" href="union_p_s4_buttons.html">PS4Buttons</a>); i++) {</div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] = 0;</div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; oldButtonState.<a class="code" href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">val</a>[i] = 0;</div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160; }</div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160; <span class="keywordflow">for</span> (i = 0; i &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>); i++)</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">trigger</a>[i] = 0;</div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; for (i = 0; i &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>)/<span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[0]); i++) {</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keywordflow">for</span> (uint8_t j = 0; j &lt; <span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[0].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>)/<span class="keyword">sizeof</span>(ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[0].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[0]); j++)</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">xy</a>[i].<a class="code" href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">finger</a>[j].<a class="code" href="structtouchpad_x_y.html#a2c078e99c3b96303e6b6a60e2f36acc5">touching</a> = 1; <span class="comment">// The bit is cleared if the finger is touching the touchpad</span></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;</div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; ps4Data.<a class="code" href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">btn</a>.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a>;</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; oldButtonState.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = <a class="code" href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a>;</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; buttonClickState.<a class="code" href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">dpad</a> = 0;</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; oldDpad = 0;</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;</div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160; <span class="keywordtype">bool</span> checkDpad(<a class="code" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b); <span class="comment">// Used to check PS4 DPAD buttons</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;</div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; <a class="code" href="struct_p_s4_data.html">PS4Data</a> ps4Data;</div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; <a class="code" href="union_p_s4_buttons.html">PS4Buttons</a> oldButtonState, buttonClickState;</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; uint8_t oldDpad;</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"> 288</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a352a732e4f7a41d4a92ab99e661094d0">DPAD_RIGHT_DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00116">PS4Parser.h:116</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62">DPADEnum</a></div><div class="ttdeci">DPADEnum</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00112">PS4Parser.h:112</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a24640b2362b0f6f51785fbd3dd4f13f9"><div class="ttname"><a href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00260">PS4Parser.h:260</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a9972eeb87f2ed4a96dcdccf2dabbbc5a"><div class="ttname"><a href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">PS4Parser::getY</a></div><div class="ttdeci">uint16_t getY(uint8_t finger=0, uint8_t xyId=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00186">PS4Parser.h:186</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a1370f1d20e9df77568c74681daf4a19a"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1370f1d20e9df77568c74681daf4a19a">gX</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00136">controllerEnums.h:136</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a2c7c9d0313863ab69e7cafdd79b7492c"><div class="ttname"><a href="struct_p_s4_data.html#a2c7c9d0313863ab69e7cafdd79b7492c">PS4Data::gyroY</a></div><div class="ttdeci">int16_t gyroY</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00099">PS4Parser.h:99</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62af0f91a0468a0f49170b119f7de0d5cec">DPAD_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00115">PS4Parser.h:115</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aa004cc456c79269dec99a9eed667484d"><div class="ttname"><a href="struct_p_s4_data.html#aa004cc456c79269dec99a9eed667484d">PS4Data::hatValue</a></div><div class="ttdeci">uint8_t hatValue[4]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00091">PS4Parser.h:91</a></div></div>
<div class="ttc" id="struct_p_s4_data_html"><div class="ttname"><a href="struct_p_s4_data.html">PS4Data</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00088">PS4Parser.h:88</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_aba0cb76ee82bd0ebe9872aa7bcbffac6"><div class="ttname"><a href="union_p_s4_buttons.html#aba0cb76ee82bd0ebe9872aa7bcbffac6">PS4Buttons::r1</a></div><div class="ttdeci">uint8_t r1</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00059">PS4Parser.h:59</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_ac4b7e6c29af23a88d41a83e82c87c888"><div class="ttname"><a href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">PS4Parser::getAngle</a></div><div class="ttdeci">double getAngle(AngleEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00219">PS4Parser.h:219</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aef57cffc87f423db996d817ea75fe5f9"><div class="ttname"><a href="struct_p_s4_data.html#aef57cffc87f423db996d817ea75fe5f9">PS4Data::dummy</a></div><div class="ttdeci">uint8_t dummy[3]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00098">PS4Parser.h:98</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a7e4ebbf1e22d59d3d7126bd1d56ee9b4"><div class="ttname"><a href="struct_p_s4_data.html#a7e4ebbf1e22d59d3d7126bd1d56ee9b4">PS4Data::accX</a></div><div class="ttdeci">int16_t accX</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00100">PS4Parser.h:100</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_ad352f30e4ab772246574bbf654248906"><div class="ttname"><a href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">PS4Parser::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00038">PS4Parser.cpp:38</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a></div><div class="ttdeci">AnalogHatEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00116">controllerEnums.h:116</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a4a709497e95c67840807ab9e99af2bbc">aZ</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ab5e7d62ac3dfe6a925d1d6be3c756faa">DPAD_DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00117">PS4Parser.h:117</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html_a2c078e99c3b96303e6b6a60e2f36acc5"><div class="ttname"><a href="structtouchpad_x_y.html#a2c078e99c3b96303e6b6a60e2f36acc5">touchpadXY::touching</a></div><div class="ttdeci">uint8_t touching</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00079">PS4Parser.h:79</a></div></div>
<div class="ttc" id="_usb_8h_html"><div class="ttname"><a href="_usb_8h.html">Usb.h</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a2b06200adee0c8ed616c4d18c23a584a"><div class="ttname"><a href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">PS4Parser::getSensor</a></div><div class="ttdeci">int16_t getSensor(SensorEnum s)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00231">PS4Parser.h:231</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62abc09f2a57c77693c05e8d52917d2bac0">DPAD_UP_RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00114">PS4Parser.h:114</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a8cbe113c7f536bd0c47704d957a97d54"><div class="ttname"><a href="struct_p_s4_data.html#a8cbe113c7f536bd0c47704d957a97d54">PS4Data::accY</a></div><div class="ttdeci">int16_t accY</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00100">PS4Parser.h:100</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51aba377ea700e0cdf1c61034ef60b259bd">aY</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_adf2ff3e6e4050070a68e90a83be81e92"><div class="ttname"><a href="union_p_s4_buttons.html#adf2ff3e6e4050070a68e90a83be81e92">PS4Buttons::share</a></div><div class="ttdeci">uint8_t share</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00062">PS4Parser.h:62</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00048">controllerEnums.h:48</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html_aad3a6094ac41933907969856dfb93e15"><div class="ttname"><a href="structtouchpad_x_y.html#aad3a6094ac41933907969856dfb93e15">touchpadXY::dummy</a></div><div class="ttdeci">uint8_t dummy</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00075">PS4Parser.h:75</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a0535a4a38dc250250fbf253e6bea53dc"><div class="ttname"><a href="struct_p_s4_data.html#a0535a4a38dc250250fbf253e6bea53dc">PS4Data::gyroX</a></div><div class="ttdeci">int16_t gyroX</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00099">PS4Parser.h:99</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00049">controllerEnums.h:49</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a1163dc3517b1c27093b7cdd597eaa9fd"><div class="ttname"><a href="union_p_s4_buttons.html#a1163dc3517b1c27093b7cdd597eaa9fd">PS4Buttons::cross</a></div><div class="ttdeci">uint8_t cross</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00054">PS4Parser.h:54</a></div></div>
<div class="ttc" id="controller_enums_8h_html"><div class="ttname"><a href="controller_enums_8h.html">controllerEnums.h</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a99b88dcb511243ea0c046cac1f5633ec"><div class="ttname"><a href="union_p_s4_buttons.html#a99b88dcb511243ea0c046cac1f5633ec">PS4Buttons::l2</a></div><div class="ttdeci">uint8_t l2</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00060">PS4Parser.h:60</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a84eb7076098ec3135bdc440a279fde50"><div class="ttname"><a href="union_p_s4_buttons.html#a84eb7076098ec3135bdc440a279fde50">PS4Buttons::square</a></div><div class="ttdeci">uint8_t square</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00053">PS4Parser.h:53</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a5fdf37790214db1379457bab99adace9"><div class="ttname"><a href="union_p_s4_buttons.html#a5fdf37790214db1379457bab99adace9">PS4Buttons::ps</a></div><div class="ttdeci">uint8_t ps</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00067">PS4Parser.h:67</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a6498fdeb767364e84ce09ef208980622"><div class="ttname"><a href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a></div><div class="ttdeci">void Parse(uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00076">PS4Parser.cpp:76</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a6770a72c17062c2e00fb3602435fcade"><div class="ttname"><a href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">PS4Parser::isTouching</a></div><div class="ttdeci">bool isTouching(uint8_t finger=0, uint8_t xyId=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00198">PS4Parser.h:198</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a0cb061ca058b493218c01eb1ada1af00"><div class="ttname"><a href="union_p_s4_buttons.html#a0cb061ca058b493218c01eb1ada1af00">PS4Buttons::val</a></div><div class="ttdeci">uint8_t val[3]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00071">PS4Parser.h:71</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html_ae52c34f2e6e66933e06b2f3448badcf0"><div class="ttname"><a href="structtouchpad_x_y.html#ae52c34f2e6e66933e06b2f3448badcf0">touchpadXY::counter</a></div><div class="ttdeci">uint8_t counter</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00078">PS4Parser.h:78</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html_ac4ceb26c0ebba1c5a2691a1ecdb7dbae"><div class="ttname"><a href="structtouchpad_x_y.html#ac4ceb26c0ebba1c5a2691a1ecdb7dbae">touchpadXY::y</a></div><div class="ttdeci">uint16_t y</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00083">PS4Parser.h:83</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aad2133de0113cee402cda4a8c7e8b6a5"><div class="ttname"><a href="struct_p_s4_data.html#aad2133de0113cee402cda4a8c7e8b6a5">PS4Data::trigger</a></div><div class="ttdeci">uint8_t trigger[2]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00093">PS4Parser.h:93</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00050">controllerEnums.h:50</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62a1b679be7217f73f03393bb379b218d66">DPAD_DOWN_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00118">PS4Parser.h:118</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a7e95303156f31f965a09cc2d3877b524"><div class="ttname"><a href="_p_s4_parser_8h.html#a7e95303156f31f965a09cc2d3877b524">PS4_BUTTONS</a></div><div class="ttdeci">const uint8_t PS4_BUTTONS[]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00025">PS4Parser.h:25</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00165">controllerEnums.h:165</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fd"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a></div><div class="ttdeci">ButtonEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00045">controllerEnums.h:45</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_ae084b9b30d75bf86aa29b7c537297e55"><div class="ttname"><a href="struct_p_s4_data.html#ae084b9b30d75bf86aa29b7c537297e55">PS4Data::dummy2</a></div><div class="ttdeci">uint8_t dummy2[9]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00103">PS4Parser.h:103</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a3488f850c1de8d49a9dc932f1575e5e4"><div class="ttname"><a href="union_p_s4_buttons.html#a3488f850c1de8d49a9dc932f1575e5e4">PS4Buttons::l1</a></div><div class="ttdeci">uint8_t l1</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00058">PS4Parser.h:58</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aeb5da32679ab2abc4001f04d5f8c7044">DPAD_OFF</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00121">PS4Parser.h:121</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a09805f3bcc362c410d7897792599d61d"><div class="ttname"><a href="union_p_s4_buttons.html#a09805f3bcc362c410d7897792599d61d">PS4Buttons::r3</a></div><div class="ttdeci">uint8_t r3</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00065">PS4Parser.h:65</a></div></div>
<div class="ttc" id="class_p_s4_parser_html"><div class="ttname"><a href="class_p_s4_parser.html">PS4Parser</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00125">PS4Parser.h:125</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html"><div class="ttname"><a href="union_p_s4_buttons.html">PS4Buttons</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00050">PS4Parser.h:50</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a99e2971b4e511a8d1bb718408f559a92"><div class="ttname"><a href="union_p_s4_buttons.html#a99e2971b4e511a8d1bb718408f559a92">PS4Buttons::dpad</a></div><div class="ttdeci">uint8_t dpad</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00052">PS4Parser.h:52</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a1cfd90d32bbd9233dae34fb148fc9f56"><div class="ttname"><a href="struct_p_s4_data.html#a1cfd90d32bbd9233dae34fb148fc9f56">PS4Data::xy</a></div><div class="ttdeci">touchpadXY xy[3]</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00104">PS4Parser.h:104</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a936ab414f4e60f0264945622d9aa1aea"><div class="ttname"><a href="union_p_s4_buttons.html#a936ab414f4e60f0264945622d9aa1aea">PS4Buttons::timestamp</a></div><div class="ttdeci">uint8_t timestamp</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00069">PS4Parser.h:69</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_ace15cafba1570d56951e7db7947ba94c"><div class="ttname"><a href="struct_p_s4_data.html#ace15cafba1570d56951e7db7947ba94c">PS4Data::gyroZ</a></div><div class="ttdeci">int16_t gyroZ</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00099">PS4Parser.h:99</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a644a4a198e3cf90bfe918a147cd5d675">gZ</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00135">controllerEnums.h:135</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a7c7824a10a9ffa8fea85602fcf4d84e6"><div class="ttname"><a href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a></div><div class="ttdeci">AngleEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00164">controllerEnums.h:164</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html"><div class="ttname"><a href="structtouchpad_x_y.html">touchpadXY</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00074">PS4Parser.h:74</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_aa149326d97c6231087f81d954a994493"><div class="ttname"><a href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">PS4Parser::getX</a></div><div class="ttdeci">uint16_t getX(uint8_t finger=0, uint8_t xyId=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00174">PS4Parser.h:174</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a3ef06f8737f1088dbdbbc351b576c1cf"><div class="ttname"><a href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser::PS4Parser</a></div><div class="ttdeci">PS4Parser()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00128">PS4Parser.h:128</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a72d07e9a47b1b75474e152b6aaeae6e5"><div class="ttname"><a href="union_p_s4_buttons.html#a72d07e9a47b1b75474e152b6aaeae6e5">PS4Buttons::triangle</a></div><div class="ttdeci">uint8_t triangle</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00056">PS4Parser.h:56</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a416642ff357b1313825fe94e0491b60e"><div class="ttname"><a href="union_p_s4_buttons.html#a416642ff357b1313825fe94e0491b60e">PS4Buttons::r2</a></div><div class="ttdeci">uint8_t r2</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00061">PS4Parser.h:61</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_aa61155e1874519285f4893430480b48d"><div class="ttname"><a href="struct_p_s4_data.html#aa61155e1874519285f4893430480b48d">PS4Data::reportId</a></div><div class="ttdeci">uint8_t reportId</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00090">PS4Parser.h:90</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62aafb58dc961545afb332266b117e4a332">DPAD_UP</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00113">PS4Parser.h:113</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62ac6b9de0c407333a7161ca1efe6e30743">DPAD_LEFT_UP</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00120">PS4Parser.h:120</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a0b3de008ae8aaa057c571081b1b64e88"><div class="ttname"><a href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">PS4Parser::getTouchCounter</a></div><div class="ttdeci">uint8_t getTouchCounter(uint8_t finger=0, uint8_t xyId=0)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00210">PS4Parser.h:210</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html_a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba"><div class="ttname"><a href="_p_s4_parser_8h.html#a3eca256e8b59574c290177d7df302a62afe9bfbd6550b91f6640b74a155000cba">DPAD_LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00119">PS4Parser.h:119</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a27f1b87f473ace3a4465ae999858357b"><div class="ttname"><a href="union_p_s4_buttons.html#a27f1b87f473ace3a4465ae999858357b">PS4Buttons::options</a></div><div class="ttdeci">uint8_t options</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00063">PS4Parser.h:63</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a785305478e29a078003c360babb50ab0"><div class="ttname"><a href="union_p_s4_buttons.html#a785305478e29a078003c360babb50ab0">PS4Buttons::touchpad</a></div><div class="ttdeci">uint8_t touchpad</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00068">PS4Parser.h:68</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a66151c4e4601f80492cd5b2451a2f87a"><div class="ttname"><a href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">PS4Parser::getAnalogButton</a></div><div class="ttdeci">uint8_t getAnalogButton(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00064">PS4Parser.cpp:64</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_ab8835f04d0c0c5e630d685ec2fd54e80"><div class="ttname"><a href="union_p_s4_buttons.html#ab8835f04d0c0c5e630d685ec2fd54e80">PS4Buttons::l3</a></div><div class="ttdeci">uint8_t l3</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00064">PS4Parser.h:64</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a60c0217c1879e1b16ae5d19a8c8695a3"><div class="ttname"><a href="struct_p_s4_data.html#a60c0217c1879e1b16ae5d19a8c8695a3">PS4Data::btn</a></div><div class="ttdeci">PS4Buttons btn</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00092">PS4Parser.h:92</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a92a4ea3d328426b9f86be05cabaad91c"><div class="ttname"><a href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">PS4Parser::getButtonClick</a></div><div class="ttdeci">bool getButtonClick(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00049">PS4Parser.cpp:49</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a></div><div class="ttdeci">SensorEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00131">controllerEnums.h:131</a></div></div>
<div class="ttc" id="union_p_s4_buttons_html_a95340b24c0846c778d2d8d0c983f4cdb"><div class="ttname"><a href="union_p_s4_buttons.html#a95340b24c0846c778d2d8d0c983f4cdb">PS4Buttons::circle</a></div><div class="ttdeci">uint8_t circle</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00055">PS4Parser.h:55</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html_a1c38a3e4161b1495b4d8ce37124c72a5"><div class="ttname"><a href="structtouchpad_x_y.html#a1c38a3e4161b1495b4d8ce37124c72a5">touchpadXY::x</a></div><div class="ttdeci">uint16_t x</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00082">PS4Parser.h:82</a></div></div>
<div class="ttc" id="struct_p_s4_data_html_a635a4a50b43400707baa74c8e87944ca"><div class="ttname"><a href="struct_p_s4_data.html#a635a4a50b43400707baa74c8e87944ca">PS4Data::accZ</a></div><div class="ttdeci">int16_t accZ</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00100">PS4Parser.h:100</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a031e6b960909353e732db224bcf597af"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a031e6b960909353e732db224bcf597af">gY</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00136">controllerEnums.h:136</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a9b11c5b27f9c9501fdb4f616cb3b194c"><div class="ttname"><a href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">PS4Parser::getAnalogHat</a></div><div class="ttdeci">uint8_t getAnalogHat(AnalogHatEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00072">PS4Parser.cpp:72</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb"><div class="ttname"><a href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1b657addccd19368e17fd15ce396a2eb">aX</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00133">controllerEnums.h:133</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065"><div class="ttname"><a href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00051">controllerEnums.h:51</a></div></div>
<div class="ttc" id="structtouchpad_x_y_html_a13c33840733612cad83156fcce5512e8"><div class="ttname"><a href="structtouchpad_x_y.html#a13c33840733612cad83156fcce5512e8">touchpadXY::finger</a></div><div class="ttdeci">struct touchpadXY::@24 finger[2]</div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

156
_p_s4_u_s_b_8h.html Normal file
View file

@ -0,0 +1,156 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4USB.h 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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="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>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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_e5fbe6d2783ccd4c93c7856d92d7be6e.html">GitHub</a></li><li class="navelem"><a class="el" href="dir_397a095372f04465e811d0ee219bbf8f.html">USB_Host_Shield_2.0</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">PS4USB.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>&quot;</code><br/>
<code>#include &quot;<a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>&quot;</code><br/>
</div><div class="textblock"><div class="dynheader">
Include dependency graph for PS4USB.h:</div>
<div class="dyncontent">
<div class="center"><img src="_p_s4_u_s_b_8h__incl.png" border="0" usemap="#_p_s4_u_s_b_8h" alt=""/></div>
<map name="_p_s4_u_s_b_8h" id="_p_s4_u_s_b_8h">
<area shape="rect" id="node2" href="hiduniversal_8h.html" title="hiduniversal.h" alt="" coords="4,83,107,111"/><area shape="rect" id="node6" href="_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="132,83,228,111"/><area shape="rect" id="node3" href="hid_8h.html" title="hid.h" alt="" coords="31,161,80,189"/><area shape="rect" id="node4" href="_usb_8h.html" title="Usb.h" alt="" coords="47,315,103,343"/><area shape="rect" id="node5" href="hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="24,238,124,266"/><area shape="rect" id="node7" href="controller_enums_8h.html" title="controllerEnums.h" alt="" coords="200,161,328,189"/></map>
</div>
</div>
<p><a href="_p_s4_u_s_b_8h_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="nested-classes"></a>
Classes</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_u_s_b.html">PS4USB</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ac878fc36cc22549eb8a7ab6371197877"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s4_u_s_b_8h.html#ac878fc36cc22549eb8a7ab6371197877">PS4_VID</a>&#160;&#160;&#160;0x054C</td></tr>
<tr class="separator:ac878fc36cc22549eb8a7ab6371197877"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a776f4d4694166dbe732e585ebb8c816e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_p_s4_u_s_b_8h.html#a776f4d4694166dbe732e585ebb8c816e">PS4_PID</a>&#160;&#160;&#160;0x05C4</td></tr>
<tr class="separator:a776f4d4694166dbe732e585ebb8c816e"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="ac878fc36cc22549eb8a7ab6371197877"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PS4_VID&#160;&#160;&#160;0x054C</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00024">24</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
<a class="anchor" id="a776f4d4694166dbe732e585ebb8c816e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PS4_PID&#160;&#160;&#160;0x05C4</td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00025">25</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

8
_p_s4_u_s_b_8h__incl.map Normal file
View file

@ -0,0 +1,8 @@
<map id="PS4USB.h" name="PS4USB.h">
<area shape="rect" id="node2" href="$hiduniversal_8h.html" title="hiduniversal.h" alt="" coords="4,83,107,111"/>
<area shape="rect" id="node6" href="$_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="132,83,228,111"/>
<area shape="rect" id="node3" href="$hid_8h.html" title="hid.h" alt="" coords="31,161,80,189"/>
<area shape="rect" id="node4" href="$_usb_8h.html" title="Usb.h" alt="" coords="47,315,103,343"/>
<area shape="rect" id="node5" href="$hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="24,238,124,266"/>
<area shape="rect" id="node7" href="$controller_enums_8h.html" title="controllerEnums.h" alt="" coords="200,161,328,189"/>
</map>

1
_p_s4_u_s_b_8h__incl.md5 Normal file
View file

@ -0,0 +1 @@
c126bc79f3d87f6f416ad192609a96de

BIN
_p_s4_u_s_b_8h__incl.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

176
_p_s4_u_s_b_8h_source.html Normal file
View file

@ -0,0 +1,176 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4USB.h 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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="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>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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_e5fbe6d2783ccd4c93c7856d92d7be6e.html">GitHub</a></li><li class="navelem"><a class="el" href="dir_397a095372f04465e811d0ee219bbf8f.html">USB_Host_Shield_2.0</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">PS4USB.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="_p_s4_u_s_b_8h.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;<span class="comment">/* Copyright (C) 2014 Kristian Lauszus, TKJ Electronics. All rights reserved.</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> This software may be distributed and modified under the terms of the GNU</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> General Public License version 2 (GPL2) as published by the Free Software</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> Foundation and appearing in the file GPL2.TXT included in the packaging of</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> this file. Please note that GPL2 Section 2[b] requires that all works based</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> on this software must also be made publicly available under the terms of</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> the GPL2 (&quot;Copyleft&quot;).</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> Contact information</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> -------------------</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"></span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> Kristian Lauszus, TKJ Electronics</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> Web : http://www.tkjelectronics.com</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> e-mail : kristianl@tkjelectronics.com</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;</div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#ifndef _ps4usb_h_</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define _ps4usb_h_</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="hiduniversal_8h.html">hiduniversal.h</a>&quot;</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="_p_s4_parser_8h.html">PS4Parser.h</a>&quot;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;</div>
<div class="line"><a name="l00024"></a><span class="lineno"><a class="line" href="_p_s4_u_s_b_8h.html#ac878fc36cc22549eb8a7ab6371197877"> 24</a></span>&#160;<span class="preprocessor">#define PS4_VID 0x054C // Sony Corporation</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"><a class="line" href="_p_s4_u_s_b_8h.html#a776f4d4694166dbe732e585ebb8c816e"> 25</a></span>&#160;<span class="preprocessor"></span><span class="preprocessor">#define PS4_PID 0x05C4 // PS4 Controller</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor"></span></div>
<div class="line"><a name="l00031"></a><span class="lineno"><a class="line" href="class_p_s4_u_s_b.html"> 31</a></span>&#160;<span class="keyword">class </span><a class="code" href="class_p_s4_u_s_b.html">PS4USB</a> : <span class="keyword">public</span> <a class="code" href="class_h_i_d_universal.html">HIDUniversal</a>, <span class="keyword">public</span> <a class="code" href="class_p_s4_parser.html">PS4Parser</a> {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="keyword">public</span>:</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="class_p_s4_u_s_b.html#a1ace884e418a0b8fe0f37bba7ea240e7"> 37</a></span>&#160; <a class="code" href="class_p_s4_u_s_b.html#a1ace884e418a0b8fe0f37bba7ea240e7">PS4USB</a>(<a class="code" href="class_u_s_b.html">USB</a> *p) :</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; <a class="code" href="class_h_i_d_universal.html">HIDUniversal</a>(p) {</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <a class="code" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a>();</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; };</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;</div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="class_p_s4_u_s_b.html#a3dd2b4e19516fb76d9442937102ea97f"> 46</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="class_p_s4_u_s_b.html#a3dd2b4e19516fb76d9442937102ea97f">connected</a>() {</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; <span class="keywordflow">return</span> <a class="code" href="class_h_i_d_universal.html#aa4be95e8f5164393ea4766f68c5b0ea8">HIDUniversal::isReady</a>() &amp;&amp; <a class="code" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">HIDUniversal::VID</a> == <a class="code" href="_p_s4_u_s_b_8h.html#ac878fc36cc22549eb8a7ab6371197877">PS4_VID</a> &amp;&amp; <a class="code" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">HIDUniversal::PID</a> == <a class="code" href="_p_s4_u_s_b_8h.html#a776f4d4694166dbe732e585ebb8c816e">PS4_PID</a>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; };</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;</div>
<div class="line"><a name="l00054"></a><span class="lineno"><a class="line" href="class_p_s4_u_s_b.html#abe78ea9b765b11c08b060f923ae9d8cd"> 54</a></span>&#160; <span class="keywordtype">void</span> <a class="code" href="class_p_s4_u_s_b.html#abe78ea9b765b11c08b060f923ae9d8cd">attachOnInit</a>(<span class="keywordtype">void</span> (*funcOnInit)(<span class="keywordtype">void</span>)) {</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160; pFuncOnInit = funcOnInit;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; };</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">protected</span>:</div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="class_p_s4_u_s_b.html#acf805149a0417d40895d5315b6ead9e6"> 67</a></span>&#160; <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="class_p_s4_u_s_b.html#acf805149a0417d40895d5315b6ead9e6">ParseHIDData</a>(<a class="code" href="class_h_i_d.html">HID</a> *hid, <span class="keywordtype">bool</span> is_rpt_id, uint8_t len, uint8_t *buf) {</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">HIDUniversal::VID</a> == <a class="code" href="_p_s4_u_s_b_8h.html#ac878fc36cc22549eb8a7ab6371197877">PS4_VID</a> &amp;&amp; <a class="code" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">HIDUniversal::PID</a> == <a class="code" href="_p_s4_u_s_b_8h.html#a776f4d4694166dbe732e585ebb8c816e">PS4_PID</a>)</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a>(len, buf);</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; };</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;</div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="class_p_s4_u_s_b.html#a591218572aa8c5f5402483d19c1eebc6"> 77</a></span>&#160; <span class="keyword">virtual</span> uint8_t <a class="code" href="class_p_s4_u_s_b.html#a591218572aa8c5f5402483d19c1eebc6">OnInitSuccessful</a>() {</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a>();</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">HIDUniversal::VID</a> == <a class="code" href="_p_s4_u_s_b_8h.html#ac878fc36cc22549eb8a7ab6371197877">PS4_VID</a> &amp;&amp; <a class="code" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">HIDUniversal::PID</a> == <a class="code" href="_p_s4_u_s_b_8h.html#a776f4d4694166dbe732e585ebb8c816e">PS4_PID</a> &amp;&amp; pFuncOnInit)</div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; pFuncOnInit(); <span class="comment">// Call the user function</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; };</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="keyword">private</span>:</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; void (*pFuncOnInit)(void); <span class="comment">// Pointer to function called in onInit()</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;};</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="ttc" id="class_h_i_d_universal_html_abc609e49d66fa6260e7cdcd2c4ff0a5a"><div class="ttname"><a href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">HIDUniversal::PID</a></div><div class="ttdeci">uint16_t PID</div><div class="ttdef"><b>Definition:</b> <a href="hiduniversal_8h_source.html#l00054">hiduniversal.h:54</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a24640b2362b0f6f51785fbd3dd4f13f9"><div class="ttname"><a href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a></div><div class="ttdeci">void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00260">PS4Parser.h:260</a></div></div>
<div class="ttc" id="class_p_s4_u_s_b_html_abe78ea9b765b11c08b060f923ae9d8cd"><div class="ttname"><a href="class_p_s4_u_s_b.html#abe78ea9b765b11c08b060f923ae9d8cd">PS4USB::attachOnInit</a></div><div class="ttdeci">void attachOnInit(void(*funcOnInit)(void))</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00054">PS4USB.h:54</a></div></div>
<div class="ttc" id="class_h_i_d_universal_html_aa4be95e8f5164393ea4766f68c5b0ea8"><div class="ttname"><a href="class_h_i_d_universal.html#aa4be95e8f5164393ea4766f68c5b0ea8">HIDUniversal::isReady</a></div><div class="ttdeci">virtual bool isReady()</div><div class="ttdef"><b>Definition:</b> <a href="hiduniversal_8h_source.html#l00082">hiduniversal.h:82</a></div></div>
<div class="ttc" id="class_p_s4_u_s_b_html_a591218572aa8c5f5402483d19c1eebc6"><div class="ttname"><a href="class_p_s4_u_s_b.html#a591218572aa8c5f5402483d19c1eebc6">PS4USB::OnInitSuccessful</a></div><div class="ttdeci">virtual uint8_t OnInitSuccessful()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00077">PS4USB.h:77</a></div></div>
<div class="ttc" id="class_p_s4_u_s_b_html"><div class="ttname"><a href="class_p_s4_u_s_b.html">PS4USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00031">PS4USB.h:31</a></div></div>
<div class="ttc" id="class_h_i_d_universal_html_a7f2123d1f20327600bb9e49a1ef5b0c7"><div class="ttname"><a href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">HIDUniversal::VID</a></div><div class="ttdeci">uint16_t VID</div><div class="ttdef"><b>Definition:</b> <a href="hiduniversal_8h_source.html#l00054">hiduniversal.h:54</a></div></div>
<div class="ttc" id="class_p_s4_parser_html_a6498fdeb767364e84ce09ef208980622"><div class="ttname"><a href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">PS4Parser::Parse</a></div><div class="ttdeci">void Parse(uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8cpp_source.html#l00076">PS4Parser.cpp:76</a></div></div>
<div class="ttc" id="class_p_s4_u_s_b_html_acf805149a0417d40895d5315b6ead9e6"><div class="ttname"><a href="class_p_s4_u_s_b.html#acf805149a0417d40895d5315b6ead9e6">PS4USB::ParseHIDData</a></div><div class="ttdeci">virtual void ParseHIDData(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00067">PS4USB.h:67</a></div></div>
<div class="ttc" id="class_h_i_d_html"><div class="ttname"><a href="class_h_i_d.html">HID</a></div><div class="ttdef"><b>Definition:</b> <a href="hid_8h_source.html#l00143">hid.h:143</a></div></div>
<div class="ttc" id="class_p_s4_u_s_b_html_a3dd2b4e19516fb76d9442937102ea97f"><div class="ttname"><a href="class_p_s4_u_s_b.html#a3dd2b4e19516fb76d9442937102ea97f">PS4USB::connected</a></div><div class="ttdeci">bool connected()</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00046">PS4USB.h:46</a></div></div>
<div class="ttc" id="_p_s4_parser_8h_html"><div class="ttname"><a href="_p_s4_parser_8h.html">PS4Parser.h</a></div></div>
<div class="ttc" id="class_p_s4_parser_html"><div class="ttname"><a href="class_p_s4_parser.html">PS4Parser</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_parser_8h_source.html#l00125">PS4Parser.h:125</a></div></div>
<div class="ttc" id="hiduniversal_8h_html"><div class="ttname"><a href="hiduniversal_8h.html">hiduniversal.h</a></div></div>
<div class="ttc" id="_p_s4_u_s_b_8h_html_ac878fc36cc22549eb8a7ab6371197877"><div class="ttname"><a href="_p_s4_u_s_b_8h.html#ac878fc36cc22549eb8a7ab6371197877">PS4_VID</a></div><div class="ttdeci">#define PS4_VID</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00024">PS4USB.h:24</a></div></div>
<div class="ttc" id="_p_s4_u_s_b_8h_html_a776f4d4694166dbe732e585ebb8c816e"><div class="ttname"><a href="_p_s4_u_s_b_8h.html#a776f4d4694166dbe732e585ebb8c816e">PS4_PID</a></div><div class="ttdeci">#define PS4_PID</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00025">PS4USB.h:25</a></div></div>
<div class="ttc" id="class_p_s4_u_s_b_html_a1ace884e418a0b8fe0f37bba7ea240e7"><div class="ttname"><a href="class_p_s4_u_s_b.html#a1ace884e418a0b8fe0f37bba7ea240e7">PS4USB::PS4USB</a></div><div class="ttdeci">PS4USB(USB *p)</div><div class="ttdef"><b>Definition:</b> <a href="_p_s4_u_s_b_8h_source.html#l00037">PS4USB.h:37</a></div></div>
<div class="ttc" id="class_u_s_b_html"><div class="ttname"><a href="class_u_s_b.html">USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00176">UsbCore.h:176</a></div></div>
<div class="ttc" id="class_h_i_d_universal_html"><div class="ttname"><a href="class_h_i_d_universal.html">HIDUniversal</a></div><div class="ttdef"><b>Definition:</b> <a href="hiduniversal_8h_source.html#l00007">hiduniversal.h:7</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

View file

@ -109,7 +109,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="stringliteral">* __Alexei Glushchenko, Circuits\@Home__ - &lt;alex-gl@mail.ru&gt;</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="stringliteral"> * Developers of the USB Core, HID, FTDI, ADK, ACM, and PL2303 libraries</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="stringliteral">* __Kristian Lauszus, TKJ Electronics__ - &lt;kristianl@tkjelectronics.com&gt;</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="stringliteral"> * Developer of the [BTD](#bluetooth-libraries), [BTHID](#bthid-library), [SPP](#spp-library), [PS3](#ps3-library), [Wii](#wii-library), and [Xbox](#xbox-library) libraries</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="stringliteral"> * Developer of the [BTD](#bluetooth-libraries), [BTHID](#bthid-library), [SPP](#spp-library), [PS4](#ps4-library), [PS3](#ps3-library), [Wii](#wii-library), and [Xbox](#xbox-library) libraries</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="stringliteral">* __Andrew Kroll__ - &lt;xxxajk@gmail.com&gt;</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="stringliteral"> * Major contributor to mass storage code</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="stringliteral"></span></div>
@ -184,130 +184,153 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="stringliteral">It uses the standard Boot protocol by default, but it is also able to use the Report protocol as well. You would simply have to call ```setProtocolMode()``` and then parse ```HID_RPT_PROTOCOL``` as an argument. You will then have to modify the parser for your device. See the example: [BTHID.ino](examples/Bluetooth/BTHID/BTHID.ino) for more information.</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="stringliteral">### [SPP library](SPP.cpp)</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="stringliteral">The [PS4 library](#ps4-library) also uses this class to handle all Bluetooth communication.</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="stringliteral">SPP stands for &quot;Serial Port Profile&quot; and is a Bluetooth protocol that implements a virtual comport which allows you to send data back and forth from your computer/phone to your Arduino via Bluetooth.</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="stringliteral">It has been tested successfully on Windows, Mac OS X, Linux, and Android.</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="stringliteral">Take a look at the [SPP.ino](examples/Bluetooth/SPP/SPP.ino) example for more information.</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="stringliteral">More information can be found at these blog posts:</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="stringliteral">For information see the following blog post: &lt;http://blog.tkjelectronics.dk/2013/12/bluetooth-hid-devices-now-supported-by-the-usb-host-library/&gt;.</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="stringliteral">### [SPP library](SPP.cpp)</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="stringliteral">SPP stands for &quot;Serial Port Profile&quot; and is a Bluetooth protocol that implements a virtual comport which allows you to send data back and forth from your computer/phone to your Arduino via Bluetooth.</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="stringliteral">It has been tested successfully on Windows, Mac OS X, Linux, and Android.</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/bluetooth-rfcommspp-service-support-for-usb-host-2-0-library-released&gt;</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/07/rfcommspp-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="stringliteral">To implement the SPP protocol I used a Bluetooth sniffing tool called [PacketLogger](http://www.tkjelectronics.com/uploads/PacketLogger.zip) developed by Apple.</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="stringliteral">It enables me to see the Bluetooth communication between my Mac and any device.</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="stringliteral">### PS3 Library</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="stringliteral">These libraries consist of the [PS3BT](PS3BT.cpp) and [PS3USB](PS3USB.cpp). These libraries allows you to use a Dualshock 3, Navigation or a Motion controller with the USB Host Shield both via Bluetooth and USB.</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="stringliteral">Take a look at the [SPP.ino](examples/Bluetooth/SPP/SPP.ino) example for more information.</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="stringliteral">More information can be found at these blog posts:</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/bluetooth-rfcommspp-service-support-for-usb-host-2-0-library-released&gt;</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/07/rfcommspp-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="stringliteral">To implement the SPP protocol I used a Bluetooth sniffing tool called [PacketLogger](http://www.tkjelectronics.com/uploads/PacketLogger.zip) developed by Apple.</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="stringliteral">It enables me to see the Bluetooth communication between my Mac and any device.</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="stringliteral">In order to use your Playstation controller via Bluetooth you have to set the Bluetooth address of the dongle internally to your PS3 Controller. This can be achieved by plugging the controller in via USB and letting the library set it automatically.</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="stringliteral">### PS4 Library</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="stringliteral">__Note:__ To obtain the address you have to plug in the Bluetooth dongle before connecting the controller, or alternatively you could set it in code like so: [PS3BT.ino#L20](examples/Bluetooth/PS3BT/PS3BT.ino#L20).</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="stringliteral">The PS4BT library is split up into the [PS4BT](PS4BT.h) and the [PS4USB](PS4USB.h) library. These allow you to use the Sony PS4 controller via Bluetooth and USB.</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="stringliteral">For more information about the PS3 protocol see the official wiki: &lt;https://github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information&gt;.</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="stringliteral">The [PS4BT.ino](examples/Bluetooth/PS4BT/PS4BT.ino) and [PS4USB.ino](examples/PS4USB/PS4USB.ino) examples shows how to easily read the buttons and joysticks on the controller via Bluetooth and USB respectively.</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="stringliteral">Also take a look at the blog posts:</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="stringliteral">I still have not figured out how to turn rumble on and off and set the color of the light, but hopefully I will figure that out soon.</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/01/ps3-controller-bt-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/sony-ps3-controller-support-added-to-usb-host-library&gt;</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/arduino/interfacing-ps3-controllers-via-usb&gt;</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="stringliteral">Also the gyro, accelerometer and touchpad values are still only available via USB at the moment.</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="stringliteral">Before you can use the PS4 controller via Bluetooth you will need to pair with it.</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="stringliteral">A special thanks go to the following people:</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="stringliteral">Simply create the PS4BT instance like so: ```PS4BT PS4(&amp;Btd, PAIR);``` and then hold down the PS and Share button at the same time, the PS4 controller will then start to blink rapidly indicating that it is in paring mode.</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="stringliteral">1. _Richard Ibbotson_ who made this excellent guide: &lt;http://www.circuitsathome.com/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part&gt;</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="stringliteral">2. _Tomoyuki Tanaka_ for releasing his code for the Arduino USB Host shield connected to the wiimote: &lt;http://www.circuitsathome.com/mcu/rc-car-controlled-by-wii-remote-on-arduino&gt;</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="stringliteral">Also a big thanks all the people behind these sites about the Motion controller:</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="stringliteral">* &lt;http://thp.io/2010/psmove/&gt;</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="stringliteral">* &lt;http://www.copenhagengamecollective.org/unimove/&gt;</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="stringliteral">* &lt;https://github.com/thp/psmoveapi&gt;</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="stringliteral">* &lt;http://code.google.com/p/moveonpc/&gt;</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="stringliteral">It should then automatically pair the dongle with your controller. This only have to be done once.</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="stringliteral">For information see the following blog post: &lt;http://blog.tkjelectronics.dk/2014/01/ps4-controller-now-supported-by-the-usb-host-library/&gt;.</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="stringliteral">### PS3 Library</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="stringliteral">These libraries consist of the [PS3BT](PS3BT.cpp) and [PS3USB](PS3USB.cpp). These libraries allows you to use a Dualshock 3, Navigation or a Motion controller with the USB Host Shield both via Bluetooth and USB.</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="stringliteral">In order to use your Playstation controller via Bluetooth you have to set the Bluetooth address of the dongle internally to your PS3 Controller. This can be achieved by plugging the controller in via USB and letting the library set it automatically.</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="stringliteral">### Xbox Libraries</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="stringliteral">__Note:__ To obtain the address you have to plug in the Bluetooth dongle before connecting the controller, or alternatively you could set it in code like so: [PS3BT.ino#L20](examples/Bluetooth/PS3BT/PS3BT.ino#L20).</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="stringliteral">The library supports both the original Xbox controller via USB and the Xbox 360 controller both via USB and wirelessly.</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="stringliteral">For more information about the PS3 protocol see the official wiki: &lt;https://github.com/felis/USB_Host_Shield_2.0/wiki/PS3-Information&gt;.</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="stringliteral">#### Xbox library</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="stringliteral">Also take a look at the blog posts:</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="stringliteral">The [XBOXOLD](XBOXOLD.cpp) class implements support for the original Xbox controller via USB.</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="stringliteral">All the information are from the following sites:</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/01/ps3-controller-bt-library-for-arduino/&gt;</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/sony-ps3-controller-support-added-to-usb-host-library&gt;</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/arduino/interfacing-ps3-controllers-via-usb&gt;</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="stringliteral">* &lt;https://github.com/torvalds/linux/blob/master/Documentation/input/xpad.txt&gt;</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="stringliteral">* &lt;https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c&gt;</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="stringliteral">* &lt;http://euc.jp/periphs/xbox-controller.ja.html&gt;</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="stringliteral">* &lt;https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL#L15&gt;</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="stringliteral">A special thanks go to the following people:</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;<span class="stringliteral">1. _Richard Ibbotson_ who made this excellent guide: &lt;http://www.circuitsathome.com/mcu/ps3-and-wiimote-game-controllers-on-the-arduino-host-shield-part&gt;</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="stringliteral">2. _Tomoyuki Tanaka_ for releasing his code for the Arduino USB Host shield connected to the wiimote: &lt;http://www.circuitsathome.com/mcu/rc-car-controlled-by-wii-remote-on-arduino&gt;</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="stringliteral">#### Xbox 360 Library</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="stringliteral">Also a big thanks all the people behind these sites about the Motion controller:</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="stringliteral">The library support one Xbox 360 via USB or up to four Xbox 360 controllers wirelessly by using a [Xbox 360 wireless receiver](http://blog.tkjelectronics.dk/wp-content/uploads/xbox360-wireless-receiver.jpg).</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="stringliteral">To use it via USB use the [XBOXUSB](XBOXUSB.cpp) library or to use it wirelessly use the [XBOXRECV](XBOXRECV.cpp) library.</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="stringliteral">__Note that a Wireless controller can NOT be used via USB!__</span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="stringliteral">Examples code can be found in the [examples directory](examples/Xbox).</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="stringliteral">Also see the following blog posts:</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/xbox360-controller-support-added-to-usb-host-shield-2-0-library&gt;</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/07/xbox-360-controller-support-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/12/xbox-360-receiver-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="stringliteral">All the information regarding the Xbox 360 controller protocol are form these sites:</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="stringliteral">* &lt;http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo&gt;</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="stringliteral">* &lt;http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/WirelessUsbInfo&gt;</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="stringliteral">* &lt;https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL&gt;</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="stringliteral">* &lt;http://thp.io/2010/psmove/&gt;</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="stringliteral">* &lt;http://www.copenhagengamecollective.org/unimove/&gt;</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="stringliteral">* &lt;https://github.com/thp/psmoveapi&gt;</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="stringliteral">* &lt;http://code.google.com/p/moveonpc/&gt;</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="stringliteral">### Xbox Libraries</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="stringliteral">The library supports both the original Xbox controller via USB and the Xbox 360 controller both via USB and wirelessly.</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="stringliteral">#### Xbox library</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="stringliteral">The [XBOXOLD](XBOXOLD.cpp) class implements support for the original Xbox controller via USB.</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160;<span class="stringliteral">All the information are from the following sites:</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="stringliteral">* &lt;https://github.com/torvalds/linux/blob/master/Documentation/input/xpad.txt&gt;</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="stringliteral">* &lt;https://github.com/torvalds/linux/blob/master/drivers/input/joystick/xpad.c&gt;</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="stringliteral">* &lt;http://euc.jp/periphs/xbox-controller.ja.html&gt;</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="stringliteral">* &lt;https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL#L15&gt;</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="stringliteral">### [Wii library](Wii.cpp)</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="stringliteral">#### Xbox 360 Library</span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="stringliteral">The [Wii](Wii.cpp) library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller is also supported via Bluetooth.</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="stringliteral">The library support one Xbox 360 via USB or up to four Xbox 360 controllers wirelessly by using a [Xbox 360 wireless receiver](http://blog.tkjelectronics.dk/wp-content/uploads/xbox360-wireless-receiver.jpg).</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="stringliteral">First you have to pair with the controller, this is done automatically by the library if you create the instance like so:</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="stringliteral">To use it via USB use the [XBOXUSB](XBOXUSB.cpp) library or to use it wirelessly use the [XBOXRECV](XBOXRECV.cpp) library.</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="stringliteral">WII Wii(&amp;Btd,PAIR);</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="stringliteral">__Note that a Wireless controller can NOT be used via USB!__</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="stringliteral">Examples code can be found in the [examples directory](examples/Xbox).</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="stringliteral">And then press 1 &amp; 2 at once on the Wiimote or press sync if you are using a Wii U Pro Controller.</span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="stringliteral">Also see the following blog posts:</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="stringliteral">After that you can simply create the instance like so:</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="stringliteral">WII Wii(&amp;Btd);</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="stringliteral">* &lt;http://www.circuitsathome.com/mcu/xbox360-controller-support-added-to-usb-host-shield-2-0-library&gt;</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/07/xbox-360-controller-support-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/12/xbox-360-receiver-added-to-the-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="stringliteral">All the information regarding the Xbox 360 controller protocol are form these sites:</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="stringliteral">Then just press any button on the Wiimote and it will then connect to the dongle.</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="stringliteral">Take a look at the example for more information: [Wii.ino](examples/Bluetooth/Wii/Wii.ino).</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="stringliteral">* &lt;http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/UsbInfo&gt;</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="stringliteral">* &lt;http://tattiebogle.net/index.php/ProjectRoot/Xbox360Controller/WirelessUsbInfo&gt;</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="stringliteral">* &lt;https://github.com/Grumbel/xboxdrv/blob/master/PROTOCOL&gt;</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="stringliteral">Also take a look at the blog post:</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="stringliteral">### [Wii library](Wii.cpp)</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/08/wiimote-added-to-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="stringliteral">The [Wii](Wii.cpp) library support the Wiimote, but also the Nunchuch and Motion Plus extensions via Bluetooth. The Wii U Pro Controller is also supported via Bluetooth.</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="stringliteral">The Wii IR camera can also be used, but you will have to activate the code for it manually as it is quite large. Simply set ```ENABLE_WII_IR_CAMERA``` to 1 in [settings.h](settings.h).</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="stringliteral">First you have to pair with the controller, this is done automatically by the library if you create the instance like so:</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="stringliteral">The [WiiIRCamera.ino](examples/Bluetooth/WiiIRCamera/WiiIRCamera.ino) example shows how it can be used.</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="stringliteral">All the information about the Wii controllers are from these sites:</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote&gt;</span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote/Extension_Controllers&gt;</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck&gt;</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Wii_Motion_Plus&gt;</span></div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="stringliteral">* The old library created by _Tomoyuki Tanaka_: &lt;https://github.com/moyuchin/WiiRemote_on_Arduino&gt; also helped a lot.</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="stringliteral"># FAQ</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="stringliteral">&gt; When I plug my device into the USB connector nothing happens?</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="stringliteral">Try to connect a external power supply to the Arduino - this solves the problem in most cases.</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="stringliteral">WII Wii(&amp;Btd,PAIR);</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="stringliteral">And then press 1 &amp; 2 at once on the Wiimote or press sync if you are using a Wii U Pro Controller.</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="stringliteral">After that you can simply create the instance like so:</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="stringliteral">WII Wii(&amp;Btd);</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="stringliteral">```</span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="stringliteral">Then just press any button on the Wiimote and it will then connect to the dongle.</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="stringliteral">Take a look at the example for more information: [Wii.ino](examples/Bluetooth/Wii/Wii.ino).</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="stringliteral">Also take a look at the blog post:</span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;<span class="stringliteral">* &lt;http://blog.tkjelectronics.dk/2012/08/wiimote-added-to-usb-host-library/&gt;</span></div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="stringliteral">The Wii IR camera can also be used, but you will have to activate the code for it manually as it is quite large. Simply set ```ENABLE_WII_IR_CAMERA``` to 1 in [settings.h](settings.h).</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="stringliteral">The [WiiIRCamera.ino](examples/Bluetooth/WiiIRCamera/WiiIRCamera.ino) example shows how it can be used.</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="stringliteral">All the information about the Wii controllers are from these sites:</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote&gt;</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote/Extension_Controllers&gt;</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Nunchuck&gt;</span></div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="stringliteral">* &lt;http://wiibrew.org/wiki/Wiimote/Extension_Controllers/Wii_Motion_Plus&gt;</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="stringliteral">* The old library created by _Tomoyuki Tanaka_: &lt;https://github.com/moyuchin/WiiRemote_on_Arduino&gt; also helped a lot.</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="stringliteral"># FAQ</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="stringliteral">&gt; When I plug my device into the USB connector nothing happens?</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<span class="stringliteral"></span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="stringliteral">* Try to connect a external power supply to the Arduino - this solves the problem in most cases.</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;<span class="stringliteral">* You can also use a powered hub between the device and the USB Host Shield. You should then include the USB hub library: ```#include &lt;usbhub.h&gt;``` and create the instance like so: ```USBHub Hub1(&amp;Usb);```.</span></div>
<div class="ttc" id="class_m_a_x3421e_html"><div class="ttname"><a href="class_m_a_x3421e.html">MAX3421e</a></div><div class="ttdef"><b>Definition:</b> <a href="usbhost_8h_source.html#l00081">usbhost.h:81</a></div></div>
<div class="ttc" id="class_u_s_b_html"><div class="ttname"><a href="class_u_s_b.html">USB</a></div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00176">UsbCore.h:176</a></div></div>
</div><!-- fragment --></div><!-- contents -->

View file

@ -908,13 +908,13 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_s_p_p_html_a6fb231316ca9b1028322d2d2188b27b0"><div class="ttname"><a href="class_s_p_p.html#a6fb231316ca9b1028322d2d2188b27b0">SPP::write</a></div><div class="ttdeci">virtual size_t write(uint8_t data)</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00728">SPP.cpp:728</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0359c0c158c864c27319810cbd1534f9"><div class="ttname"><a href="class_b_t_d.html#a0359c0c158c864c27319810cbd1534f9">BTD::btdName</a></div><div class="ttdeci">const char * btdName</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00480">BTD.h:480</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_a336bf1805637fdd66033c9040e606a6b"><div class="ttname"><a href="_s_p_p_8h.html#a336bf1805637fdd66033c9040e606a6b">BT_RFCOMM_RPN_RSP</a></div><div class="ttdeci">#define BT_RFCOMM_RPN_RSP</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00044">SPP.h:44</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01234">BTD.cpp:1234</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01231">BTD.cpp:1231</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a1be7a56cdddcdb7dedf16d4dee381e93"><div class="ttname"><a href="_b_t_d_8h.html#a1be7a56cdddcdb7dedf16d4dee381e93">SUCCESSFUL</a></div><div class="ttdeci">#define SUCCESSFUL</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00177">BTD.h:177</a></div></div>
<div class="ttc" id="class_b_t_d_html_af5e5b085cec1da5c83c75e80e95b3590"><div class="ttname"><a href="class_b_t_d.html#af5e5b085cec1da5c83c75e80e95b3590">BTD::sdpConnectionClaimed</a></div><div class="ttdeci">bool sdpConnectionClaimed</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00475">BTD.h:475</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a2924020f2e7e82fe956574538e2bc3eb"><div class="ttname"><a href="_b_t_d_8h.html#a2924020f2e7e82fe956574538e2bc3eb">RFCOMM_PSM</a></div><div class="ttdeci">#define RFCOMM_PSM</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00181">BTD.h:181</a></div></div>
<div class="ttc" id="class_s_p_p_html_a6842e2b7f66024eecc151e3bdbfc7e94"><div class="ttname"><a href="class_s_p_p.html#a6842e2b7f66024eecc151e3bdbfc7e94">SPP::SPP</a></div><div class="ttdeci">SPP(BTD *p, const char *name=&quot;Arduino&quot;, const char *pin=&quot;0000&quot;)</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00045">SPP.cpp:45</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01287">BTD.cpp:1287</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01284">BTD.cpp:1284</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_a5747e4c0826eb3341fe2476b5229e0d0"><div class="ttname"><a href="_s_p_p_8h.html#a5747e4c0826eb3341fe2476b5229e0d0">RFCOMM_SABM</a></div><div class="ttdeci">#define RFCOMM_SABM</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00030">SPP.h:30</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_ac202a65fc9bc1a5d837e5d095b1bb9f2"><div class="ttname"><a href="_s_p_p_8h.html#ac202a65fc9bc1a5d837e5d095b1bb9f2">L2CAP_UUID</a></div><div class="ttdeci">#define L2CAP_UUID</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00027">SPP.h:27</a></div></div>
<div class="ttc" id="_s_p_p_8cpp_html_a91baaa87e7a685c42b0ac9f5fca8529d"><div class="ttname"><a href="_s_p_p_8cpp.html#a91baaa87e7a685c42b0ac9f5fca8529d">rfcomm_crc_table</a></div><div class="ttdeci">const uint8_t rfcomm_crc_table[256]</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00026">SPP.cpp:26</a></div></div>
@ -929,7 +929,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a200eb6c7c905ec74a9daf0f262af0448"><div class="ttname"><a href="_b_t_d_8h.html#a200eb6c7c905ec74a9daf0f262af0448">L2CAP_CMD_INFORMATION_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_INFORMATION_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00172">BTD.h:172</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a25ce859d7ee2730e1d22d11c051ed60d"><div class="ttname"><a href="_b_t_d_8h.html#a25ce859d7ee2730e1d22d11c051ed60d">SDP_PSM</a></div><div class="ttdeci">#define SDP_PSM</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00180">BTD.h:180</a></div></div>
<div class="ttc" id="class_s_p_p_html_aae8dc037e845480f582afea57b858b95"><div class="ttname"><a href="class_s_p_p.html#aae8dc037e845480f582afea57b858b95">SPP::read</a></div><div class="ttdeci">virtual int read(void)</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00797">SPP.cpp:797</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01300">BTD.cpp:1300</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01297">BTD.cpp:1297</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_af31032289d962bc2408debecc2823b8c"><div class="ttname"><a href="_s_p_p_8h.html#af31032289d962bc2408debecc2823b8c">extendAddress</a></div><div class="ttdeci">#define extendAddress</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00036">SPP.h:36</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a0b7cbe1aa26664847a48bd4578bc50bd"><div class="ttname"><a href="_b_t_d_8h.html#a0b7cbe1aa26664847a48bd4578bc50bd">L2CAP_RFCOMM_WAIT</a></div><div class="ttdeci">#define L2CAP_RFCOMM_WAIT</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00123">BTD.h:123</a></div></div>
<div class="ttc" id="message_8h_html_a27117e124c5d66d5512fe8d494fe6338"><div class="ttname"><a href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a></div><div class="ttdeci">#define Notify(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00044">message.h:44</a></div></div>
@ -937,7 +937,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a61b15e54b1c5f9a28c996ae8e04ca3c0"><div class="ttname"><a href="_b_t_d_8h.html#a61b15e54b1c5f9a28c996ae8e04ca3c0">L2CAP_FLAG_CONNECTION_RFCOMM_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_CONNECTION_RFCOMM_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00153">BTD.h:153</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa3bb6c692701cb33dfad1ea4d68b6f98"><div class="ttname"><a href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">BTD::hci_handle</a></div><div class="ttdeci">uint16_t hci_handle</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00487">BTD.h:487</a></div></div>
<div class="ttc" id="message_8h_html_ab5d8177365493b21dbc092f6557bd508"><div class="ttname"><a href="message_8h.html#ab5d8177365493b21dbc092f6557bd508">Notifyc</a></div><div class="ttdeci">#define Notifyc(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00046">message.h:46</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01145">BTD.cpp:1145</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01142">BTD.cpp:1142</a></div></div>
<div class="ttc" id="class_s_p_p_html_ae2c661bd46cd2d74bd29c4c771cd2ef0"><div class="ttname"><a href="class_s_p_p.html#ae2c661bd46cd2d74bd29c4c771cd2ef0">SPP::Reset</a></div><div class="ttdeci">virtual void Reset()</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00063">SPP.cpp:63</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aac25fa1de5df70a97a6ccc6267d65fea"><div class="ttname"><a href="_b_t_d_8h.html#aac25fa1de5df70a97a6ccc6267d65fea">L2CAP_FLAG_DISCONNECT_SDP_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_DISCONNECT_SDP_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00150">BTD.h:150</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_ae9ffac80725386a879ba956251f64373"><div class="ttname"><a href="_s_p_p_8h.html#ae9ffac80725386a879ba956251f64373">RFCOMM_UIH</a></div><div class="ttdeci">#define RFCOMM_UIH</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00032">SPP.h:32</a></div></div>
@ -958,7 +958,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_s_p_p_8h_html_af98e9758e7c66f921d980b280a3f5b4b"><div class="ttname"><a href="_s_p_p_8h.html#af98e9758e7c66f921d980b280a3f5b4b">SDP_SERVICE_SEARCH_ATTRIBUTE_REQUEST_PDU</a></div><div class="ttdeci">#define SDP_SERVICE_SEARCH_ATTRIBUTE_REQUEST_PDU</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00024">SPP.h:24</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a4c64a41200714e457b397496183dc0e4"><div class="ttname"><a href="_b_t_d_8h.html#a4c64a41200714e457b397496183dc0e4">L2CAP_CMD_DISCONNECT_RESPONSE</a></div><div class="ttdeci">#define L2CAP_CMD_DISCONNECT_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00171">BTD.h:171</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_a9f534220af893b5ae8c8927564db77c3"><div class="ttname"><a href="_s_p_p_8h.html#a9f534220af893b5ae8c8927564db77c3">RFCOMM_UA</a></div><div class="ttdeci">#define RFCOMM_UA</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00031">SPP.h:31</a></div></div>
<div class="ttc" id="class_b_t_d_html_a91f61915c503fe7b861c88f5b3e6733c"><div class="ttname"><a href="class_b_t_d.html#a91f61915c503fe7b861c88f5b3e6733c">BTD::l2cap_information_response</a></div><div class="ttdeci">void l2cap_information_response(uint16_t handle, uint8_t rxid, uint8_t infoTypeLow, uint8_t infoTypeHigh)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01313">BTD.cpp:1313</a></div></div>
<div class="ttc" id="class_b_t_d_html_a91f61915c503fe7b861c88f5b3e6733c"><div class="ttname"><a href="class_b_t_d.html#a91f61915c503fe7b861c88f5b3e6733c">BTD::l2cap_information_response</a></div><div class="ttdeci">void l2cap_information_response(uint16_t handle, uint8_t rxid, uint8_t infoTypeLow, uint8_t infoTypeHigh)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01310">BTD.cpp:1310</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a8151b1fe5d940a5a7a34f43a8b8ce434"><div class="ttname"><a href="_b_t_d_8h.html#a8151b1fe5d940a5a7a34f43a8b8ce434">L2CAP_CMD_CONFIG_RESPONSE</a></div><div class="ttdeci">#define L2CAP_CMD_CONFIG_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00169">BTD.h:169</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_a11185ec5287f08bf49c2c68d8cd52a16"><div class="ttname"><a href="_s_p_p_8h.html#a11185ec5287f08bf49c2c68d8cd52a16">BT_RFCOMM_PN_CMD</a></div><div class="ttdeci">#define BT_RFCOMM_PN_CMD</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00039">SPP.h:39</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_ab68e7621ab822c3bfb9507c78d0d0550"><div class="ttname"><a href="_s_p_p_8h.html#ab68e7621ab822c3bfb9507c78d0d0550">BT_RFCOMM_MSC_RSP</a></div><div class="ttdeci">#define BT_RFCOMM_MSC_RSP</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00042">SPP.h:42</a></div></div>
@ -967,11 +967,11 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a9da70c702c0b792d99f8e39713ac0ee7"><div class="ttname"><a href="_b_t_d_8h.html#a9da70c702c0b792d99f8e39713ac0ee7">L2CAP_FLAG_DISCONNECT_RFCOMM_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_DISCONNECT_RFCOMM_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00155">BTD.h:155</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_adf2585ad5d49cf2df2595d860ad6b258"><div class="ttname"><a href="_b_t_d_8h.html#adf2585ad5d49cf2df2595d860ad6b258">L2CAP_DISCONNECT_RESPONSE</a></div><div class="ttdeci">#define L2CAP_DISCONNECT_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00126">BTD.h:126</a></div></div>
<div class="ttc" id="class_s_p_p_html_ab6c20e303965056403ae5aef1d228858"><div class="ttname"><a href="class_s_p_p.html#ab6c20e303965056403ae5aef1d228858">SPP::send</a></div><div class="ttdeci">void send(void)</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00755">SPP.cpp:755</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01193">BTD.cpp:1193</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01268">BTD.cpp:1268</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01190">BTD.cpp:1190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01265">BTD.cpp:1265</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a9960d0d5ae92fc92c70bbb84c2a5c0cc"><div class="ttname"><a href="_b_t_d_8h.html#a9960d0d5ae92fc92c70bbb84c2a5c0cc">PENDING</a></div><div class="ttdeci">#define PENDING</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00176">BTD.h:176</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5f035450f226204f021e69ad1faa2e3a"><div class="ttname"><a href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a></div><div class="ttdeci">#define l2cap_set_flag(flag)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00161">BTD.h:161</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01251">BTD.cpp:1251</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01248">BTD.cpp:1248</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ac4bae0c65fd00ed849cb226302d19c85"><div class="ttname"><a href="_b_t_d_8h.html#ac4bae0c65fd00ed849cb226302d19c85">L2CAP_CMD_CONNECTION_REQUEST</a></div><div class="ttdeci">#define L2CAP_CMD_CONNECTION_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00166">BTD.h:166</a></div></div>
<div class="ttc" id="_s_p_p_8h_html_a17b4a98661e30b6989cbe35ba5da4822"><div class="ttname"><a href="_s_p_p_8h.html#a17b4a98661e30b6989cbe35ba5da4822">BT_RFCOMM_PN_RSP</a></div><div class="ttdeci">#define BT_RFCOMM_PN_RSP</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8h_source.html#l00040">SPP.h:40</a></div></div>
<div class="ttc" id="class_s_p_p_html_abdfe9453fb82781bec53a191c2e9fb1d"><div class="ttname"><a href="class_s_p_p.html#abdfe9453fb82781bec53a191c2e9fb1d">SPP::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_s_p_p_8cpp_source.html#l00086">SPP.cpp:86</a></div></div>

View file

@ -231,10 +231,10 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; direction = ((bmReqType &amp; 0x80) &gt; 0);</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; <span class="comment">/* fill in setup packet */</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a87ac5c76f3d75b79618679c285ede68b">ReqType_u</a>.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a9bbd6cf5a93a6433d2eb97c59b9102d5">bmRequestType</a> = bmReqType;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a7b19c0f947fb46947fdb2e21d5bcd8a5">ReqType_u</a>.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a9bbd6cf5a93a6433d2eb97c59b9102d5">bmRequestType</a> = bmReqType;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a321b931277d6ce278416dc5d74059016">bRequest</a> = bRequest;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#ab67c32e030b5a78807ff16506d524aa4">wVal_u</a>.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a68c9436c00560f96e044052c3fb681e9">wValueLo</a> = wValLo;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#ab67c32e030b5a78807ff16506d524aa4">wVal_u</a>.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a04ea2d151f9edb6575fc159a58f1e443">wValueHi</a> = wValHi;</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a08e8d5473b08be191f92fe753d7bc821">wVal_u</a>.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a68c9436c00560f96e044052c3fb681e9">wValueLo</a> = wValLo;</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a08e8d5473b08be191f92fe753d7bc821">wVal_u</a>.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a04ea2d151f9edb6575fc159a58f1e443">wValueHi</a> = wValHi;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a299d9f88d294369ea88b48b5026f4c7e">wIndex</a> = wInd;</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; setup_pkt.<a class="code" href="struct_s_e_t_u_p___p_k_t.html#a1ec9b19c0ed1e66e399ad9cf3c4a6537">wLength</a> = total;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;</div>
@ -926,12 +926,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="usb__ch9_8h_html_a3572226ee2137c7fbf7487a02b0f560f"><div class="ttname"><a href="usb__ch9_8h.html#a3572226ee2137c7fbf7487a02b0f560f">USB_REQUEST_GET_DESCRIPTOR</a></div><div class="ttdeci">#define USB_REQUEST_GET_DESCRIPTOR</div><div class="ttdef"><b>Definition:</b> <a href="usb__ch9_8h_source.html#l00037">usb_ch9.h:37</a></div></div>
<div class="ttc" id="usb__ch9_8h_html_ac6d0566773ed4549fe1a7a932e6c46de"><div class="ttname"><a href="usb__ch9_8h.html#ac6d0566773ed4549fe1a7a932e6c46de">USB_DESCRIPTOR_DEVICE</a></div><div class="ttdeci">#define USB_DESCRIPTOR_DEVICE</div><div class="ttdef"><b>Definition:</b> <a href="usb__ch9_8h_source.html#l00063">usb_ch9.h:63</a></div></div>
<div class="ttc" id="max3421e_8h_html_a6864ac74e4ed056f9eb37f1c78bd6c6f"><div class="ttname"><a href="max3421e_8h.html#a6864ac74e4ed056f9eb37f1c78bd6c6f">bmRCVTOG1</a></div><div class="ttdeci">#define bmRCVTOG1</div><div class="ttdef"><b>Definition:</b> <a href="max3421e_8h_source.html#l00186">max3421e.h:186</a></div></div>
<div class="ttc" id="struct_s_e_t_u_p___p_k_t_html_a08e8d5473b08be191f92fe753d7bc821"><div class="ttname"><a href="struct_s_e_t_u_p___p_k_t.html#a08e8d5473b08be191f92fe753d7bc821">SETUP_PKT::wVal_u</a></div><div class="ttdeci">union SETUP_PKT::@30 wVal_u</div></div>
<div class="ttc" id="_usb_core_8h_html_a272428aaee5fccec4661bd5457d1928f"><div class="ttname"><a href="_usb_core_8h.html#a272428aaee5fccec4661bd5457d1928f">USB_ERROR_INVALID_MAX_PKT_SIZE</a></div><div class="ttdeci">#define USB_ERROR_INVALID_MAX_PKT_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00070">UsbCore.h:70</a></div></div>
<div class="ttc" id="class_u_s_b_html_a31e2c132ec32ffdde94dff72be87c378"><div class="ttname"><a href="class_u_s_b.html#a31e2c132ec32ffdde94dff72be87c378">USB::setConf</a></div><div class="ttdeci">uint8_t setConf(uint8_t addr, uint8_t ep, uint8_t conf_value)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00805">Usb.cpp:805</a></div></div>
<div class="ttc" id="_usb_core_8h_html_ae7fd7c5bb6dc87f44724dde2ad57df87"><div class="ttname"><a href="_usb_core_8h.html#ae7fd7c5bb6dc87f44724dde2ad57df87">USB_STATE_DETACHED</a></div><div class="ttdeci">#define USB_STATE_DETACHED</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00090">UsbCore.h:90</a></div></div>
<div class="ttc" id="_usb_core_8h_html_a0282f9f7a0313f957e02449d7313b7b5"><div class="ttname"><a href="_usb_core_8h.html#a0282f9f7a0313f957e02449d7313b7b5">USB_NUMDEVICES</a></div><div class="ttdeci">#define USB_NUMDEVICES</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00083">UsbCore.h:83</a></div></div>
<div class="ttc" id="_usb_8h_html"><div class="ttname"><a href="_usb_8h.html">Usb.h</a></div></div>
<div class="ttc" id="struct_s_e_t_u_p___p_k_t_html_a87ac5c76f3d75b79618679c285ede68b"><div class="ttname"><a href="struct_s_e_t_u_p___p_k_t.html#a87ac5c76f3d75b79618679c285ede68b">SETUP_PKT::ReqType_u</a></div><div class="ttdeci">union SETUP_PKT::@24 ReqType_u</div></div>
<div class="ttc" id="max3421e_8h_html_afa79b794eadcddfca2f62828dd83134b"><div class="ttname"><a href="max3421e_8h.html#afa79b794eadcddfca2f62828dd83134b">rRCVBC</a></div><div class="ttdeci">#define rRCVBC</div><div class="ttdef"><b>Definition:</b> <a href="max3421e_8h_source.html#l00045">max3421e.h:45</a></div></div>
<div class="ttc" id="max3421e_8h_html_aa128de549704094dadb93daa8875472b"><div class="ttname"><a href="max3421e_8h.html#aa128de549704094dadb93daa8875472b">hrJERR</a></div><div class="ttdeci">#define hrJERR</div><div class="ttdef"><b>Definition:</b> <a href="max3421e_8h_source.html#l00225">max3421e.h:225</a></div></div>
<div class="ttc" id="class_u_s_b_html_a6c3ba3f7e6dccb450267011ce783d7ea"><div class="ttname"><a href="class_u_s_b.html#a6c3ba3f7e6dccb450267011ce783d7ea">USB::setEpInfoEntry</a></div><div class="ttdeci">uint8_t setEpInfoEntry(uint8_t addr, uint8_t epcount, EpInfo *eprecord_ptr)</div><div class="ttdef"><b>Definition:</b> <a href="_usb_8cpp_source.html#l00064">Usb.cpp:64</a></div></div>
@ -954,7 +954,6 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="max3421e_8h_html_a5ab905353668c35ea0d9f6989d24b849"><div class="ttname"><a href="max3421e_8h.html#a5ab905353668c35ea0d9f6989d24b849">rRCVFIFO</a></div><div class="ttdeci">#define rRCVFIFO</div><div class="ttdef"><b>Definition:</b> <a href="max3421e_8h_source.html#l00042">max3421e.h:42</a></div></div>
<div class="ttc" id="address_8h_html_a517dfa014946e2d087d197312234a1de"><div class="ttname"><a href="address_8h.html#a517dfa014946e2d087d197312234a1de">USB_NAK_MAX_POWER</a></div><div class="ttdeci">#define USB_NAK_MAX_POWER</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00027">address.h:27</a></div></div>
<div class="ttc" id="class_address_pool_impl_html_aa3e12dda249ef6acbb27592fc8fe1cba"><div class="ttname"><a href="class_address_pool_impl.html#aa3e12dda249ef6acbb27592fc8fe1cba">AddressPoolImpl::GetUsbDevicePtr</a></div><div class="ttdeci">virtual UsbDevice * GetUsbDevicePtr(uint8_t addr)</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00180">address.h:180</a></div></div>
<div class="ttc" id="struct_s_e_t_u_p___p_k_t_html_ab67c32e030b5a78807ff16506d524aa4"><div class="ttname"><a href="struct_s_e_t_u_p___p_k_t.html#ab67c32e030b5a78807ff16506d524aa4">SETUP_PKT::wVal_u</a></div><div class="ttdeci">union SETUP_PKT::@25 wVal_u</div></div>
<div class="ttc" id="struct_s_e_t_u_p___p_k_t_html_a299d9f88d294369ea88b48b5026f4c7e"><div class="ttname"><a href="struct_s_e_t_u_p___p_k_t.html#a299d9f88d294369ea88b48b5026f4c7e">SETUP_PKT::wIndex</a></div><div class="ttdeci">uint16_t wIndex</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00163">UsbCore.h:163</a></div></div>
<div class="ttc" id="max3421e_8h_html_ab59b41d6ecb3a04e5bfc38b0eee4aec0"><div class="ttname"><a href="max3421e_8h.html#ab59b41d6ecb3a04e5bfc38b0eee4aec0">bmBUSRST</a></div><div class="ttdeci">#define bmBUSRST</div><div class="ttdef"><b>Definition:</b> <a href="max3421e_8h_source.html#l00181">max3421e.h:181</a></div></div>
<div class="ttc" id="max3421e_8h_html_a6d59486bc96e76ebb429756a30ddb238"><div class="ttname"><a href="max3421e_8h.html#a6d59486bc96e76ebb429756a30ddb238">tokOUT</a></div><div class="ttdeci">#define tokOUT</div><div class="ttdef"><b>Definition:</b> <a href="max3421e_8h_source.html#l00195">max3421e.h:195</a></div></div>
@ -1023,6 +1022,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_address_pool_impl_html_a14657183c73c631754b31bd0cc588c87"><div class="ttname"><a href="class_address_pool_impl.html#a14657183c73c631754b31bd0cc588c87">AddressPoolImpl::AllocAddress</a></div><div class="ttdeci">virtual uint8_t AllocAddress(uint8_t parent, bool is_hub=false, uint8_t port=0)</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00202">address.h:202</a></div></div>
<div class="ttc" id="_usb_core_8h_html_af4965e768593007eacde7644979f56da"><div class="ttname"><a href="_usb_core_8h.html#af4965e768593007eacde7644979f56da">bmREQ_SET</a></div><div class="ttdeci">#define bmREQ_SET</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00032">UsbCore.h:32</a></div></div>
<div class="ttc" id="struct_usb_device_html_a351d1099501c36d9f301495acefd5f99"><div class="ttname"><a href="struct_usb_device.html#a351d1099501c36d9f301495acefd5f99">UsbDevice::address</a></div><div class="ttdeci">UsbDeviceAddress address</div><div class="ttdef"><b>Definition:</b> <a href="address_8h_source.html#l00077">address.h:77</a></div></div>
<div class="ttc" id="struct_s_e_t_u_p___p_k_t_html_a7b19c0f947fb46947fdb2e21d5bcd8a5"><div class="ttname"><a href="struct_s_e_t_u_p___p_k_t.html#a7b19c0f947fb46947fdb2e21d5bcd8a5">SETUP_PKT::ReqType_u</a></div><div class="ttdeci">union SETUP_PKT::@29 ReqType_u</div></div>
<div class="ttc" id="usb__ch9_8h_html_aadef005acc40340955d34d9767ef297c"><div class="ttname"><a href="usb__ch9_8h.html#aadef005acc40340955d34d9767ef297c">USB_REQUEST_SET_CONFIGURATION</a></div><div class="ttdeci">#define USB_REQUEST_SET_CONFIGURATION</div><div class="ttdef"><b>Definition:</b> <a href="usb__ch9_8h_source.html#l00040">usb_ch9.h:40</a></div></div>
<div class="ttc" id="_usb_core_8h_html_a3708f4e8166d5d099e1982aa956eacce"><div class="ttname"><a href="_usb_core_8h.html#a3708f4e8166d5d099e1982aa956eacce">USB_DETACHED_SUBSTATE_WAIT_FOR_DEVICE</a></div><div class="ttdeci">#define USB_DETACHED_SUBSTATE_WAIT_FOR_DEVICE</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00092">UsbCore.h:92</a></div></div>
<div class="ttc" id="struct_s_e_t_u_p___p_k_t_html_a04ea2d151f9edb6575fc159a58f1e443"><div class="ttname"><a href="struct_s_e_t_u_p___p_k_t.html#a04ea2d151f9edb6575fc159a58f1e443">SETUP_PKT::wValueHi</a></div><div class="ttdeci">uint8_t wValueHi</div><div class="ttdef"><b>Definition:</b> <a href="_usb_core_8h_source.html#l00160">UsbCore.h:160</a></div></div>

File diff suppressed because one or more lines are too long

View file

@ -1,49 +1,51 @@
<map id="Usb.h" name="Usb.h">
<area shape="rect" id="node2" href="$adk_8h.html" title="adk.h" alt="" coords="141,83,195,111"/>
<area shape="rect" id="node2" href="$adk_8h.html" title="adk.h" alt="" coords="97,83,151,111"/>
<area shape="rect" id="node4" href="$_b_t_d_8h.html" title="BTD.h" alt="" coords="310,83,369,111"/>
<area shape="rect" id="node16" href="$hid_8h.html" title="hid.h" alt="" coords="648,161,697,189"/>
<area shape="rect" id="node24" href="$hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="751,83,851,111"/>
<area shape="rect" id="node26" href="$cdcacm_8h.html" title="cdcacm.h" alt="" coords="911,83,989,111"/>
<area shape="rect" id="node30" href="$cdcftdi_8h.html" title="cdcftdi.h" alt="" coords="1014,83,1084,111"/>
<area shape="rect" id="node32" href="$masstorage_8h.html" title="masstorage.h" alt="" coords="1109,83,1211,111"/>
<area shape="rect" id="node34" href="$max___l_c_d_8h.html" title="max_LCD.h" alt="" coords="1235,83,1327,111"/>
<area shape="rect" id="node36" href="$message_8cpp.html" title="message.cpp" alt="" coords="1351,83,1451,111"/>
<area shape="rect" id="node37" href="$parsetools_8cpp.html" title="parsetools.cpp" alt="" coords="1475,83,1583,111"/>
<area shape="rect" id="node38" href="$_p_s3_u_s_b_8h.html" title="PS3USB.h" alt="" coords="1607,83,1691,111"/>
<area shape="rect" id="node40" href="$_usb_8cpp.html" title="Usb.cpp" alt="" coords="1716,83,1785,111"/>
<area shape="rect" id="node41" href="$usbhub_8h.html" title="usbhub.h" alt="" coords="1810,83,1885,111"/>
<area shape="rect" id="node43" href="$_x_b_o_x_o_l_d_8h.html" title="XBOXOLD.h" alt="" coords="1910,83,2007,111"/>
<area shape="rect" id="node45" href="$_x_b_o_x_r_e_c_v_8h.html" title="XBOXRECV.h" alt="" coords="2038,83,2143,111"/>
<area shape="rect" id="node47" href="$_x_b_o_x_u_s_b_8h.html" title="XBOXUSB.h" alt="" coords="2181,83,2277,111"/>
<area shape="rect" id="node15" href="$hid_8h.html" title="hid.h" alt="" coords="602,161,651,189"/>
<area shape="rect" id="node24" href="$hidusagestr_8h.html" title="hidusagestr.h" alt="" coords="704,83,804,111"/>
<area shape="rect" id="node26" href="$cdcacm_8h.html" title="cdcacm.h" alt="" coords="846,83,924,111"/>
<area shape="rect" id="node30" href="$cdcftdi_8h.html" title="cdcftdi.h" alt="" coords="949,83,1019,111"/>
<area shape="rect" id="node32" href="$masstorage_8h.html" title="masstorage.h" alt="" coords="1044,83,1145,111"/>
<area shape="rect" id="node34" href="$max___l_c_d_8h.html" title="max_LCD.h" alt="" coords="1170,83,1261,111"/>
<area shape="rect" id="node36" href="$message_8cpp.html" title="message.cpp" alt="" coords="1286,83,1385,111"/>
<area shape="rect" id="node37" href="$parsetools_8cpp.html" title="parsetools.cpp" alt="" coords="1410,83,1517,111"/>
<area shape="rect" id="node38" href="$_p_s3_u_s_b_8h.html" title="PS3USB.h" alt="" coords="1541,83,1625,111"/>
<area shape="rect" id="node40" href="$_p_s4_parser_8h.html" title="PS4Parser.h" alt="" coords="1172,238,1268,266"/>
<area shape="rect" id="node42" href="$_usb_8cpp.html" title="Usb.cpp" alt="" coords="1701,83,1771,111"/>
<area shape="rect" id="node43" href="$usbhub_8h.html" title="usbhub.h" alt="" coords="1795,83,1871,111"/>
<area shape="rect" id="node45" href="$_x_b_o_x_o_l_d_8h.html" title="XBOXOLD.h" alt="" coords="1896,83,1992,111"/>
<area shape="rect" id="node47" href="$_x_b_o_x_r_e_c_v_8h.html" title="XBOXRECV.h" alt="" coords="2023,83,2128,111"/>
<area shape="rect" id="node49" href="$_x_b_o_x_u_s_b_8h.html" title="XBOXUSB.h" alt="" coords="2166,83,2263,111"/>
<area shape="rect" id="node3" href="$adk_8cpp.html" title="adk.cpp" alt="" coords="5,161,72,189"/>
<area shape="rect" id="node5" href="$_b_t_d_8cpp.html" title="BTD.cpp" alt="" coords="97,161,169,189"/>
<area shape="rect" id="node6" href="$_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="304,315,376,343"/>
<area shape="rect" id="node10" href="$_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="255,161,328,189"/>
<area shape="rect" id="node12" href="$_s_p_p_8h.html" title="SPP.h" alt="" coords="359,161,416,189"/>
<area shape="rect" id="node14" href="$_wii_8h.html" title="Wii.h" alt="" coords="451,161,501,189"/>
<area shape="rect" id="node7" href="$_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="245,393,331,421"/>
<area shape="rect" id="node8" href="$_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="355,393,428,421"/>
<area shape="rect" id="node9" href="$_p_s4_b_t_8cpp.html" title="PS4BT.cpp" alt="" coords="348,470,435,498"/>
<area shape="rect" id="node11" href="$_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="244,238,331,266"/>
<area shape="rect" id="node13" href="$_s_p_p_8cpp.html" title="SPP.cpp" alt="" coords="356,238,427,266"/>
<area shape="rect" id="node15" href="$_wii_8cpp.html" title="Wii.cpp" alt="" coords="451,238,516,266"/>
<area shape="rect" id="node17" href="$hidboot_8h.html" title="hidboot.h" alt="" coords="541,238,616,266"/>
<area shape="rect" id="node19" href="$hid_8cpp.html" title="hid.cpp" alt="" coords="641,238,705,266"/>
<area shape="rect" id="node20" href="$hidescriptorparser_8h.html" title="hidescriptorparser.h" alt="" coords="729,238,867,266"/>
<area shape="rect" id="node22" href="$hiduniversal_8h.html" title="hiduniversal.h" alt="" coords="892,238,995,266"/>
<area shape="rect" id="node18" href="$hidboot_8cpp.html" title="hidboot.cpp" alt="" coords="534,315,623,343"/>
<area shape="rect" id="node21" href="$hidescriptorparser_8cpp.html" title="hidescriptorparser.cpp" alt="" coords="716,315,868,343"/>
<area shape="rect" id="node23" href="$hiduniversal_8cpp.html" title="hiduniversal.cpp" alt="" coords="892,315,1009,343"/>
<area shape="rect" id="node25" href="$hidusagetitlearrays_8cpp.html" title="hidusagetitlearrays.cpp" alt="" coords="722,161,880,189"/>
<area shape="rect" id="node27" href="$cdcacm_8cpp.html" title="cdcacm.cpp" alt="" coords="904,161,996,189"/>
<area shape="rect" id="node28" href="$cdcprolific_8h.html" title="cdcprolific.h" alt="" coords="1021,161,1112,189"/>
<area shape="rect" id="node6" href="$_b_t_h_i_d_8h.html" title="BTHID.h" alt="" coords="468,315,540,343"/>
<area shape="rect" id="node9" href="$_p_s3_b_t_8h.html" title="PS3BT.h" alt="" coords="255,161,328,189"/>
<area shape="rect" id="node11" href="$_s_p_p_8h.html" title="SPP.h" alt="" coords="359,161,416,189"/>
<area shape="rect" id="node13" href="$_wii_8h.html" title="Wii.h" alt="" coords="451,161,501,189"/>
<area shape="rect" id="node7" href="$_b_t_h_i_d_8cpp.html" title="BTHID.cpp" alt="" coords="461,393,547,421"/>
<area shape="rect" id="node8" href="$_p_s4_b_t_8h.html" title="PS4BT.h" alt="" coords="842,393,915,421"/>
<area shape="rect" id="node10" href="$_p_s3_b_t_8cpp.html" title="PS3BT.cpp" alt="" coords="244,238,331,266"/>
<area shape="rect" id="node12" href="$_s_p_p_8cpp.html" title="SPP.cpp" alt="" coords="356,238,427,266"/>
<area shape="rect" id="node14" href="$_wii_8cpp.html" title="Wii.cpp" alt="" coords="451,238,516,266"/>
<area shape="rect" id="node16" href="$hidboot_8h.html" title="hidboot.h" alt="" coords="541,238,616,266"/>
<area shape="rect" id="node18" href="$hid_8cpp.html" title="hid.cpp" alt="" coords="641,238,705,266"/>
<area shape="rect" id="node19" href="$hidescriptorparser_8h.html" title="hidescriptorparser.h" alt="" coords="729,238,867,266"/>
<area shape="rect" id="node21" href="$hiduniversal_8h.html" title="hiduniversal.h" alt="" coords="892,238,995,266"/>
<area shape="rect" id="node17" href="$hidboot_8cpp.html" title="hidboot.cpp" alt="" coords="564,315,653,343"/>
<area shape="rect" id="node20" href="$hidescriptorparser_8cpp.html" title="hidescriptorparser.cpp" alt="" coords="709,315,861,343"/>
<area shape="rect" id="node22" href="$hiduniversal_8cpp.html" title="hiduniversal.cpp" alt="" coords="885,315,1003,343"/>
<area shape="rect" id="node23" href="$_p_s4_u_s_b_8h.html" title="PS4USB.h" alt="" coords="1027,315,1111,343"/>
<area shape="rect" id="node25" href="$hidusagetitlearrays_8cpp.html" title="hidusagetitlearrays.cpp" alt="" coords="675,161,833,189"/>
<area shape="rect" id="node27" href="$cdcacm_8cpp.html" title="cdcacm.cpp" alt="" coords="858,161,949,189"/>
<area shape="rect" id="node28" href="$cdcprolific_8h.html" title="cdcprolific.h" alt="" coords="974,161,1065,189"/>
<area shape="rect" id="node29" href="$cdcprolific_8cpp.html" title="cdcprolific.cpp" alt="" coords="1020,238,1125,266"/>
<area shape="rect" id="node31" href="$cdcftdi_8cpp.html" title="cdcftdi.cpp" alt="" coords="1136,161,1220,189"/>
<area shape="rect" id="node33" href="$masstorage_8cpp.html" title="masstorage.cpp" alt="" coords="1245,161,1360,189"/>
<area shape="rect" id="node35" href="$max___l_c_d_8cpp.html" title="max_LCD.cpp" alt="" coords="1384,161,1489,189"/>
<area shape="rect" id="node39" href="$_p_s3_u_s_b_8cpp.html" title="PS3USB.cpp" alt="" coords="1600,161,1699,189"/>
<area shape="rect" id="node42" href="$usbhub_8cpp.html" title="usbhub.cpp" alt="" coords="1787,161,1876,189"/>
<area shape="rect" id="node44" href="$_x_b_o_x_o_l_d_8cpp.html" title="XBOXOLD.cpp" alt="" coords="1900,161,2011,189"/>
<area shape="rect" id="node46" href="$_x_b_o_x_r_e_c_v_8cpp.html" title="XBOXRECV.cpp" alt="" coords="2035,161,2153,189"/>
<area shape="rect" id="node48" href="$_x_b_o_x_u_s_b_8cpp.html" title="XBOXUSB.cpp" alt="" coords="2178,161,2288,189"/>
<area shape="rect" id="node31" href="$cdcftdi_8cpp.html" title="cdcftdi.cpp" alt="" coords="1089,161,1173,189"/>
<area shape="rect" id="node33" href="$masstorage_8cpp.html" title="masstorage.cpp" alt="" coords="1198,161,1313,189"/>
<area shape="rect" id="node35" href="$max___l_c_d_8cpp.html" title="max_LCD.cpp" alt="" coords="1338,161,1443,189"/>
<area shape="rect" id="node39" href="$_p_s3_u_s_b_8cpp.html" title="PS3USB.cpp" alt="" coords="1528,161,1627,189"/>
<area shape="rect" id="node41" href="$_p_s4_parser_8cpp.html" title="PS4Parser.cpp" alt="" coords="1186,315,1296,343"/>
<area shape="rect" id="node44" href="$usbhub_8cpp.html" title="usbhub.cpp" alt="" coords="1772,161,1861,189"/>
<area shape="rect" id="node46" href="$_x_b_o_x_o_l_d_8cpp.html" title="XBOXOLD.cpp" alt="" coords="1886,161,1996,189"/>
<area shape="rect" id="node48" href="$_x_b_o_x_r_e_c_v_8cpp.html" title="XBOXRECV.cpp" alt="" coords="2020,161,2139,189"/>
<area shape="rect" id="node50" href="$_x_b_o_x_u_s_b_8cpp.html" title="XBOXUSB.cpp" alt="" coords="2163,161,2273,189"/>
</map>

View file

@ -1 +1 @@
5b8072c50adde9c54ed53b728fbb5f15
daa708d91528b32f37450586788f5043

Binary file not shown.

Before

Width:  |  Height:  |  Size: 134 KiB

After

Width:  |  Height:  |  Size: 149 KiB

View file

@ -1302,9 +1302,9 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_b_t_d_8h_html_a73e3a81d9a8850075fd10933acc5a035"><div class="ttname"><a href="_b_t_d_8h.html#a73e3a81d9a8850075fd10933acc5a035">L2CAP_INTERRUPT_CONFIG_REQUEST</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_CONFIG_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00115">BTD.h:115</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_ac7aa7fd7a8a34a6c9e420e3cb114737b"><div class="ttname"><a href="_b_t_d_8h.html#ac7aa7fd7a8a34a6c9e420e3cb114737b">L2CAP_INTERRUPT_SETUP</a></div><div class="ttdeci">#define L2CAP_INTERRUPT_SETUP</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00113">BTD.h:113</a></div></div>
<div class="ttc" id="class_w_i_i_html_a6c0971ae4c9ab752888a5871020c8331"><div class="ttname"><a href="class_w_i_i.html#a6c0971ae4c9ab752888a5871020c8331">WII::rollGyroScale</a></div><div class="ttdeci">uint16_t rollGyroScale</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00263">Wii.h:263</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01234">BTD.cpp:1234</a></div></div>
<div class="ttc" id="class_b_t_d_html_a7d34c62b1d561679dea5cd27356b38a7"><div class="ttname"><a href="class_b_t_d.html#a7d34c62b1d561679dea5cd27356b38a7">BTD::l2cap_connection_response</a></div><div class="ttdeci">void l2cap_connection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid, uint8_t result)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01231">BTD.cpp:1231</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a1be7a56cdddcdb7dedf16d4dee381e93"><div class="ttname"><a href="_b_t_d_8h.html#a1be7a56cdddcdb7dedf16d4dee381e93">SUCCESSFUL</a></div><div class="ttdeci">#define SUCCESSFUL</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00177">BTD.h:177</a></div></div>
<div class="ttc" id="class_b_t_d_html_a55cf412a2053972a353b1ab964ca9d3e"><div class="ttname"><a href="class_b_t_d.html#a55cf412a2053972a353b1ab964ca9d3e">BTD::l2cap_connection_request</a></div><div class="ttdeci">void l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t *scid, uint16_t psm)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01221">BTD.cpp:1221</a></div></div>
<div class="ttc" id="class_b_t_d_html_a55cf412a2053972a353b1ab964ca9d3e"><div class="ttname"><a href="class_b_t_d.html#a55cf412a2053972a353b1ab964ca9d3e">BTD::l2cap_connection_request</a></div><div class="ttdeci">void l2cap_connection_request(uint16_t handle, uint8_t rxid, uint8_t *scid, uint16_t psm)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01218">BTD.cpp:1218</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a015f3b25bd7a2908c84b973dec453f45"><div class="ttname"><a href="_b_t_d_8h.html#a015f3b25bd7a2908c84b973dec453f45">L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</a></div><div class="ttdeci">#define L2CAP_FLAG_CONNECTION_INTERRUPT_REQUEST</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00142">BTD.h:142</a></div></div>
<div class="ttc" id="class_w_i_i_html_a8e81eb7d2d78680df0dee1869695ff05"><div class="ttname"><a href="class_w_i_i.html#a8e81eb7d2d78680df0dee1869695ff05">WII::setLedToggle</a></div><div class="ttdeci">void setLedToggle(LEDEnum a)</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8cpp_source.html#l00900">Wii.cpp:900</a></div></div>
<div class="ttc" id="class_w_i_i_html_ae7e07f929fba8f0ff061a1405baa2b58"><div class="ttname"><a href="class_w_i_i.html#ae7e07f929fba8f0ff061a1405baa2b58">WII::setLedRaw</a></div><div class="ttdeci">void setLedRaw(uint8_t value)</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8cpp_source.html#l00878">Wii.cpp:878</a></div></div>
@ -1313,7 +1313,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="_wii_8h_html_ad79e49e27b025d6ac9d695c4816f84d4ae2ac743b5ba1752933e09f1dac48d97b"><div class="ttname"><a href="_wii_8h.html#ad79e49e27b025d6ac9d695c4816f84d4ae2ac743b5ba1752933e09f1dac48d97b">HatY</a></div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00039">Wii.h:39</a></div></div>
<div class="ttc" id="class_b_t_d_html"><div class="ttname"><a href="class_b_t_d.html">BTD</a></div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00230">BTD.h:230</a></div></div>
<div class="ttc" id="_wii_8h_html_ae0ff99c8862a05df8877329982e1ef61"><div class="ttname"><a href="_wii_8h.html#ae0ff99c8862a05df8877329982e1ef61">WII_FLAG_NUNCHUCK_CONNECTED</a></div><div class="ttdeci">#define WII_FLAG_NUNCHUCK_CONNECTED</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00028">Wii.h:28</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01287">BTD.cpp:1287</a></div></div>
<div class="ttc" id="class_b_t_d_html_ac7053ef7ac690be3afbbdd985b163f10"><div class="ttname"><a href="class_b_t_d.html#ac7053ef7ac690be3afbbdd985b163f10">BTD::l2cap_disconnection_request</a></div><div class="ttdeci">void l2cap_disconnection_request(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01284">BTD.cpp:1284</a></div></div>
<div class="ttc" id="class_w_i_i_html_a81e1eb4d9ef9999a84e71d764d54dff7"><div class="ttname"><a href="class_w_i_i.html#a81e1eb4d9ef9999a84e71d764d54dff7">WII::ACLData</a></div><div class="ttdeci">virtual void ACLData(uint8_t *ACLData)</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8cpp_source.html#l00135">Wii.cpp:135</a></div></div>
<div class="ttc" id="class_b_t_d_html_a0c8cc2a2dd2cda3e760b8b4c1a2d169c"><div class="ttname"><a href="class_b_t_d.html#a0c8cc2a2dd2cda3e760b8b4c1a2d169c">BTD::pairWithWii</a></div><div class="ttdeci">bool pairWithWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00509">BTD.h:509</a></div></div>
<div class="ttc" id="class_w_i_i_html_a2a0e4745bff7cfec644bcebe984c2bc8"><div class="ttname"><a href="class_w_i_i.html#a2a0e4745bff7cfec644bcebe984c2bc8">WII::gyroRoll</a></div><div class="ttdeci">double gyroRoll</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00249">Wii.h:249</a></div></div>
@ -1334,7 +1334,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_w_i_i_html_a0784c779ebeae2d459996c35a54ee3b8"><div class="ttname"><a href="class_w_i_i.html#a0784c779ebeae2d459996c35a54ee3b8">WII::gyroRollRaw</a></div><div class="ttdeci">int16_t gyroRollRaw</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00270">Wii.h:270</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a70df64e026046bc352983127b7ae2cf0"><div class="ttname"><a href="controller_enums_8h.html#a70df64e026046bc352983127b7ae2cf0">LEDEnum</a></div><div class="ttdeci">LEDEnum</div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00027">controllerEnums.h:27</a></div></div>
<div class="ttc" id="_wii_8h_html"><div class="ttname"><a href="_wii_8h.html">Wii.h</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01300">BTD.cpp:1300</a></div></div>
<div class="ttc" id="class_b_t_d_html_a29d176d9194e5c92fbe54791fc245407"><div class="ttname"><a href="class_b_t_d.html#a29d176d9194e5c92fbe54791fc245407">BTD::l2cap_disconnection_response</a></div><div class="ttdeci">void l2cap_disconnection_response(uint16_t handle, uint8_t rxid, uint8_t *dcid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01297">BTD.cpp:1297</a></div></div>
<div class="ttc" id="class_w_i_i_html_a3505abbc01c71d134ce301dfb7c0c5b5"><div class="ttname"><a href="class_w_i_i.html#a3505abbc01c71d134ce301dfb7c0c5b5">WII::IRinitialize</a></div><div class="ttdeci">void IRinitialize()</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8cpp_source.html#l01096">Wii.cpp:1096</a></div></div>
<div class="ttc" id="_wii_8h_html_ad79e49e27b025d6ac9d695c4816f84d4aed1a7a35bf1b9c1003fbe3dd4a61a06d"><div class="ttname"><a href="_wii_8h.html#ad79e49e27b025d6ac9d695c4816f84d4aed1a7a35bf1b9c1003fbe3dd4a61a06d">HatX</a></div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00037">Wii.h:37</a></div></div>
<div class="ttc" id="message_8h_html_a27117e124c5d66d5512fe8d494fe6338"><div class="ttname"><a href="message_8h.html#a27117e124c5d66d5512fe8d494fe6338">Notify</a></div><div class="ttdeci">#define Notify(...)</div><div class="ttdef"><b>Definition:</b> <a href="message_8h_source.html#l00044">message.h:44</a></div></div>
@ -1351,7 +1351,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_b_t_d_html_ac7caac80fb6f5f0e794af3644887d88e"><div class="ttname"><a href="class_b_t_d.html#ac7caac80fb6f5f0e794af3644887d88e">BTD::connectToWii</a></div><div class="ttdeci">bool connectToWii</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00503">BTD.h:503</a></div></div>
<div class="ttc" id="class_b_t_d_html_a962a5714c225dcb633434f02e3657583"><div class="ttname"><a href="class_b_t_d.html#a962a5714c225dcb633434f02e3657583">BTD::wiiUProController</a></div><div class="ttdeci">bool wiiUProController</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00513">BTD.h:513</a></div></div>
<div class="ttc" id="class_b_t_d_html_aa3bb6c692701cb33dfad1ea4d68b6f98"><div class="ttname"><a href="class_b_t_d.html#aa3bb6c692701cb33dfad1ea4d68b6f98">BTD::hci_handle</a></div><div class="ttdeci">uint16_t hci_handle</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00487">BTD.h:487</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01145">BTD.cpp:1145</a></div></div>
<div class="ttc" id="class_b_t_d_html_a1bea5dd793a2f47006b4a7642efc9e56"><div class="ttname"><a href="class_b_t_d.html#a1bea5dd793a2f47006b4a7642efc9e56">BTD::hci_disconnect</a></div><div class="ttdeci">void hci_disconnect(uint16_t handle)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01142">BTD.cpp:1142</a></div></div>
<div class="ttc" id="class_w_i_i_html_a5d3b4a33ebc2ca9ebb154e10a05dbdd4"><div class="ttname"><a href="class_w_i_i.html#a5d3b4a33ebc2ca9ebb154e10a05dbdd4">WII::setLedStatus</a></div><div class="ttdeci">void setLedStatus()</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8cpp_source.html#l00906">Wii.cpp:906</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_acc096a05301f3cbdece4ad372cc149c3"><div class="ttname"><a href="_b_t_d_8h.html#acc096a05301f3cbdece4ad372cc149c3">L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</a></div><div class="ttdeci">#define L2CAP_FLAG_DISCONNECT_INTERRUPT_RESPONSE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00145">BTD.h:145</a></div></div>
<div class="ttc" id="_wii_8h_html_a34631633d4557244dc8eda52e8505acd"><div class="ttname"><a href="_wii_8h.html#a34631633d4557244dc8eda52e8505acd">WII_FLAG_MOTION_PLUS_CONNECTED</a></div><div class="ttdeci">#define WII_FLAG_MOTION_PLUS_CONNECTED</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00027">Wii.h:27</a></div></div>
@ -1394,12 +1394,12 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="ttc" id="class_w_i_i_html_acfb290a86aa9a65dd4ae84d02e3c6ded"><div class="ttname"><a href="class_w_i_i.html#acfb290a86aa9a65dd4ae84d02e3c6ded">WII::pitchGyroSpeed</a></div><div class="ttdeci">double pitchGyroSpeed</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00255">Wii.h:255</a></div></div>
<div class="ttc" id="class_w_i_i_html_af61f57d34b81f2a878f0126a074e3af4"><div class="ttname"><a href="class_w_i_i.html#af61f57d34b81f2a878f0126a074e3af4">WII::gyroPitch</a></div><div class="ttdeci">double gyroPitch</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8h_source.html#l00247">Wii.h:247</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_acdcb0586ca7e9d357279bf4fba8b5257"><div class="ttname"><a href="_b_t_d_8h.html#acdcb0586ca7e9d357279bf4fba8b5257">WII_INIT_MOTION_PLUS_STATE</a></div><div class="ttdeci">#define WII_INIT_MOTION_PLUS_STATE</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00133">BTD.h:133</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01193">BTD.cpp:1193</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01268">BTD.cpp:1268</a></div></div>
<div class="ttc" id="class_b_t_d_html_aad7d8ef46e60b48ff4aaabefb0b290e7"><div class="ttname"><a href="class_b_t_d.html#aad7d8ef46e60b48ff4aaabefb0b290e7">BTD::L2CAP_Command</a></div><div class="ttdeci">void L2CAP_Command(uint16_t handle, uint8_t *data, uint8_t nbytes, uint8_t channelLow=0x01, uint8_t channelHigh=0x00)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01190">BTD.cpp:1190</a></div></div>
<div class="ttc" id="class_b_t_d_html_a792ac4529b65235698ecf3d37982c05e"><div class="ttname"><a href="class_b_t_d.html#a792ac4529b65235698ecf3d37982c05e">BTD::l2cap_config_response</a></div><div class="ttdeci">void l2cap_config_response(uint16_t handle, uint8_t rxid, uint8_t *scid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01265">BTD.cpp:1265</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a9960d0d5ae92fc92c70bbb84c2a5c0cc"><div class="ttname"><a href="_b_t_d_8h.html#a9960d0d5ae92fc92c70bbb84c2a5c0cc">PENDING</a></div><div class="ttdeci">#define PENDING</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00176">BTD.h:176</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_aad823543553cc7500ac49d7479eb858f"><div class="ttname"><a href="_b_t_d_8h.html#aad823543553cc7500ac49d7479eb858f">L2CAP_FLAG_INTERRUPT_CONNECTED</a></div><div class="ttdeci">#define L2CAP_FLAG_INTERRUPT_CONNECTED</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00144">BTD.h:144</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a5f035450f226204f021e69ad1faa2e3a"><div class="ttname"><a href="_b_t_d_8h.html#a5f035450f226204f021e69ad1faa2e3a">l2cap_set_flag</a></div><div class="ttdeci">#define l2cap_set_flag(flag)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00161">BTD.h:161</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01251">BTD.cpp:1251</a></div></div>
<div class="ttc" id="class_b_t_d_html_ab646a59311344966f139bb3b78f30233"><div class="ttname"><a href="class_b_t_d.html#ab646a59311344966f139bb3b78f30233">BTD::l2cap_config_request</a></div><div class="ttdeci">void l2cap_config_request(uint16_t handle, uint8_t rxid, uint8_t *dcid)</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8cpp_source.html#l01248">BTD.cpp:1248</a></div></div>
<div class="ttc" id="controller_enums_8h_html_a34dad8f0a0927471137c403216597093af3f3925efa9762c4e9e71ac7da7a94a3"><div class="ttname"><a href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093af3f3925efa9762c4e9e71ac7da7a94a3">LeftHatY</a></div><div class="ttdef"><b>Definition:</b> <a href="controller_enums_8h_source.html#l00120">controllerEnums.h:120</a></div></div>
<div class="ttc" id="class_w_i_i_html_a7b183fe1809c1c595438e930b8f3f4de"><div class="ttname"><a href="class_w_i_i.html#a7b183fe1809c1c595438e930b8f3f4de">WII::getButtonPress</a></div><div class="ttdeci">bool getButtonPress(ButtonEnum b)</div><div class="ttdef"><b>Definition:</b> <a href="_wii_8cpp_source.html#l01041">Wii.cpp:1041</a></div></div>
<div class="ttc" id="_b_t_d_8h_html_a0c444d5d06ec604820d426556c2f38d7"><div class="ttname"><a href="_b_t_d_8h.html#a0c444d5d06ec604820d426556c2f38d7">L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</a></div><div class="ttdeci">#define L2CAP_FLAG_CONFIG_CONTROL_SUCCESS</div><div class="ttdef"><b>Definition:</b> <a href="_b_t_d_8h_source.html#l00137">BTD.h:137</a></div></div>

View file

@ -99,7 +99,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;</div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;Again, read through &lt;http:<span class="comment">//wiibrew.org/wiki/Wiimote#IR_Camera&gt; to get an understanding of the camera and its settings.</span></div>
<div class="ttc" id="settings_8h_html_a251a8e974ddd0680dbcefaa3a4ae9ae8"><div class="ttname"><a href="settings_8h.html#a251a8e974ddd0680dbcefaa3a4ae9ae8">ENABLE_WII_IR_CAMERA</a></div><div class="ttdeci">#define ENABLE_WII_IR_CAMERA</div><div class="ttdef"><b>Definition:</b> <a href="settings_8h_source.html#l00045">settings.h:45</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00195">PS3Enums.h:195</a></div></div>
<div class="ttc" id="_p_s3_enums_8h_html_add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679"><div class="ttname"><a href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161aea8b7c5cd8bd8eb51ee6d3fd0eac584679">Full</a></div><div class="ttdef"><b>Definition:</b> <a href="_p_s3_enums_8h_source.html#l00147">PS3Enums.h:147</a></div></div>
</div><!-- fragment --></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -144,33 +144,36 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<tr id="row_52_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_p_s4_b_t.html" target="_self">PS4BT</a></td><td class="desc"></td></tr>
<tr id="row_53_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="union_p_s4_buttons.html" target="_self">PS4Buttons</a></td><td class="desc"></td></tr>
<tr id="row_54_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_p_s4_data.html" target="_self">PS4Data</a></td><td class="desc"></td></tr>
<tr id="row_55_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_p_t_p_list_parser.html" target="_self">PTPListParser</a></td><td class="desc"></td></tr>
<tr id="row_56_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_report_desc_parser.html" target="_self">ReportDescParser</a></td><td class="desc"></td></tr>
<tr id="row_57_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_report_desc_parser2.html" target="_self">ReportDescParser2</a></td><td class="desc"></td></tr>
<tr id="row_58_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_report_desc_parser_base.html" target="_self">ReportDescParserBase</a></td><td class="desc"></td></tr>
<tr id="row_59_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_request_sense_responce.html" target="_self">RequestSenseResponce</a></td><td class="desc"></td></tr>
<tr id="row_60_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_e_t_u_p___p_k_t.html" target="_self">SETUP_PKT</a></td><td class="desc"></td></tr>
<tr id="row_61_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_sink_parser.html" target="_self">SinkParser</a></td><td class="desc"></td></tr>
<tr id="row_62_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_s_pi.html" target="_self">SPi</a></td><td class="desc"></td></tr>
<tr id="row_63_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_s_p_p.html" target="_self">SPP</a></td><td class="desc"></td></tr>
<tr id="row_64_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_t_e_l___r_i_n_g_e_r___f_u_n_c___d_e_s_c_r.html" target="_self">TEL_RINGER_FUNC_DESCR</a></td><td class="desc"></td></tr>
<tr id="row_65_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_universal_report_parser.html" target="_self">UniversalReportParser</a></td><td class="desc"></td></tr>
<tr id="row_66_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b.html" target="_self">USB</a></td><td class="desc"></td></tr>
<tr id="row_67_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___c_o_n_f_i_g_u_r_a_t_i_o_n___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_CONFIGURATION_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_68_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___d_e_v_i_c_e___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_DEVICE_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_69_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_ENDPOINT_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_70_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___h_i_d___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_HID_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_71_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___i_n_t_e_r_f_a_c_e___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_INTERFACE_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_72_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_usb_config_xtracter.html" target="_self">UsbConfigXtracter</a></td><td class="desc"></td></tr>
<tr id="row_73_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_usb_device.html" target="_self">UsbDevice</a></td><td class="desc"></td></tr>
<tr id="row_74_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_usb_device_address.html" target="_self">UsbDeviceAddress</a></td><td class="desc"></td></tr>
<tr id="row_75_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b_device_config.html" target="_self">USBDeviceConfig</a></td><td class="desc"></td></tr>
<tr id="row_76_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b_hub.html" target="_self">USBHub</a></td><td class="desc"></td></tr>
<tr id="row_77_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b_read_parser.html" target="_self">USBReadParser</a></td><td class="desc"></td></tr>
<tr id="row_78_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_w_i_i.html" target="_self">WII</a></td><td class="desc"></td></tr>
<tr id="row_79_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_x_b_o_x_o_l_d.html" target="_self">XBOXOLD</a></td><td class="desc"></td></tr>
<tr id="row_80_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_x_b_o_x_r_e_c_v.html" target="_self">XBOXRECV</a></td><td class="desc"></td></tr>
<tr id="row_81_"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_x_b_o_x_u_s_b.html" target="_self">XBOXUSB</a></td><td class="desc"></td></tr>
<tr id="row_55_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_p_s4_parser.html" target="_self">PS4Parser</a></td><td class="desc"></td></tr>
<tr id="row_56_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_p_s4_u_s_b.html" target="_self">PS4USB</a></td><td class="desc"></td></tr>
<tr id="row_57_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_p_t_p_list_parser.html" target="_self">PTPListParser</a></td><td class="desc"></td></tr>
<tr id="row_58_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_report_desc_parser.html" target="_self">ReportDescParser</a></td><td class="desc"></td></tr>
<tr id="row_59_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_report_desc_parser2.html" target="_self">ReportDescParser2</a></td><td class="desc"></td></tr>
<tr id="row_60_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_report_desc_parser_base.html" target="_self">ReportDescParserBase</a></td><td class="desc"></td></tr>
<tr id="row_61_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_request_sense_responce.html" target="_self">RequestSenseResponce</a></td><td class="desc"></td></tr>
<tr id="row_62_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_s_e_t_u_p___p_k_t.html" target="_self">SETUP_PKT</a></td><td class="desc"></td></tr>
<tr id="row_63_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_sink_parser.html" target="_self">SinkParser</a></td><td class="desc"></td></tr>
<tr id="row_64_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_s_pi.html" target="_self">SPi</a></td><td class="desc"></td></tr>
<tr id="row_65_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_s_p_p.html" target="_self">SPP</a></td><td class="desc"></td></tr>
<tr id="row_66_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_t_e_l___r_i_n_g_e_r___f_u_n_c___d_e_s_c_r.html" target="_self">TEL_RINGER_FUNC_DESCR</a></td><td class="desc"></td></tr>
<tr id="row_67_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtouchpad_x_y.html" target="_self">touchpadXY</a></td><td class="desc"></td></tr>
<tr id="row_68_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_universal_report_parser.html" target="_self">UniversalReportParser</a></td><td class="desc"></td></tr>
<tr id="row_69_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b.html" target="_self">USB</a></td><td class="desc"></td></tr>
<tr id="row_70_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___c_o_n_f_i_g_u_r_a_t_i_o_n___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_CONFIGURATION_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_71_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___d_e_v_i_c_e___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_DEVICE_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_72_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_ENDPOINT_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_73_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___h_i_d___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_HID_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_74_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_u_s_b___i_n_t_e_r_f_a_c_e___d_e_s_c_r_i_p_t_o_r.html" target="_self">USB_INTERFACE_DESCRIPTOR</a></td><td class="desc"></td></tr>
<tr id="row_75_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_usb_config_xtracter.html" target="_self">UsbConfigXtracter</a></td><td class="desc"></td></tr>
<tr id="row_76_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_usb_device.html" target="_self">UsbDevice</a></td><td class="desc"></td></tr>
<tr id="row_77_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="struct_usb_device_address.html" target="_self">UsbDeviceAddress</a></td><td class="desc"></td></tr>
<tr id="row_78_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b_device_config.html" target="_self">USBDeviceConfig</a></td><td class="desc"></td></tr>
<tr id="row_79_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b_hub.html" target="_self">USBHub</a></td><td class="desc"></td></tr>
<tr id="row_80_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_u_s_b_read_parser.html" target="_self">USBReadParser</a></td><td class="desc"></td></tr>
<tr id="row_81_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_w_i_i.html" target="_self">WII</a></td><td class="desc"></td></tr>
<tr id="row_82_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_x_b_o_x_o_l_d.html" target="_self">XBOXOLD</a></td><td class="desc"></td></tr>
<tr id="row_83_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_x_b_o_x_r_e_c_v.html" target="_self">XBOXRECV</a></td><td class="desc"></td></tr>
<tr id="row_84_" class="even"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="class_x_b_o_x_u_s_b.html" target="_self">XBOXUSB</a></td><td class="desc"></td></tr>
</table>
</div><!-- directory -->
</div><!-- contents -->

View file

@ -156,7 +156,7 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<tr><td class="entry"><a class="el" href="class_b_t_d.html#a2a9ecb996243e070e70972370e45e4fd">readPollInterval</a>()</td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_d.html#a4adfc7e51ad3b3c03e7c37d1af159e73">registerServiceClass</a>(BluetoothService *pService)</td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_d.html#aa87c23bce56a20f2db47c6a40c8eda87">Release</a>()</td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e">remote_name</a></td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa">remote_name</a></td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a12bb63558ded5bb6661bb173b07ff391">ResetHubPort</a>(uint8_t port)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_d.html#a9e5a34242007b64cd6a226cfd1901e74">rfcommConnectionClaimed</a></td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_d.html#af5e5b085cec1da5c83c75e80e95b3590">sdpConnectionClaimed</a></td><td class="entry"><a class="el" href="class_b_t_d.html">BTD</a></td><td class="entry"></td></tr>

View file

@ -225,8 +225,8 @@ Public Attributes</h2></td></tr>
<tr class="separator:aa3bb6c692701cb33dfad1ea4d68b6f98"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab23f95f12675d7b4505ca6807d379182"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_d.html#ab23f95f12675d7b4505ca6807d379182">disc_bdaddr</a> [6]</td></tr>
<tr class="separator:ab23f95f12675d7b4505ca6807d379182"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aede42d995c384c238fd49d728df01e4e"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_d.html#aede42d995c384c238fd49d728df01e4e">remote_name</a> [30]</td></tr>
<tr class="separator:aede42d995c384c238fd49d728df01e4e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa0fd5483f227e29de23c20ee31c940aa"><td class="memItemLeft" align="right" valign="top">char&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_d.html#aa0fd5483f227e29de23c20ee31c940aa">remote_name</a> [30]</td></tr>
<tr class="separator:aa0fd5483f227e29de23c20ee31c940aa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:addaddee110af23a3195ad56f631e69ea"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_d.html#addaddee110af23a3195ad56f631e69ea">hci_version</a></td></tr>
<tr class="separator:addaddee110af23a3195ad56f631e69ea"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac7caac80fb6f5f0e794af3644887d88e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_d.html#ac7caac80fb6f5f0e794af3644887d88e">connectToWii</a></td></tr>
@ -345,7 +345,7 @@ Static Protected Attributes</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Address assignment and basic initilization is done here. </p>
<p>Address assignment and basic initialization is done here. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">parent</td><td>Hub number. </td></tr>
@ -465,7 +465,7 @@ Static Protected Attributes</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Poll the <a class="el" href="class_u_s_b.html">USB</a> Input endpoins and run the state machines. </p>
<p>Poll the <a class="el" href="class_u_s_b.html">USB</a> Input endpoints and run the state machines. </p>
<dl class="section return"><dt>Returns</dt><dd>0 on success. </dd></dl>
<p>Reimplemented from <a class="el" href="class_u_s_b_device_config.html#a893ea73deab98be837c257201e7da25a">USBDeviceConfig</a>.</p>
@ -727,14 +727,14 @@ Static Protected Attributes</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Register bluetooth dongle members/services. </p>
<p>Register Bluetooth dongle members/services. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">pService</td><td>Pointer to <a class="el" href="class_bluetooth_service.html">BluetoothService</a> class instance. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>The serice ID on succes or -1 on fail. </dd></dl>
<dl class="section return"><dt>Returns</dt><dd>The service ID on success or -1 on fail. </dd></dl>
<p>Definition at line <a class="el" href="_b_t_d_8h_source.html#l00333">333</a> of file <a class="el" href="_b_t_d_8h_source.html">BTD.h</a>.</p>
@ -772,7 +772,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00922">922</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00919">919</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -790,7 +790,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Reset the Bluetooth dongle. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00927">927</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00924">924</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -808,7 +808,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Read the Bluetooth address of the dongle. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00958">958</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00955">955</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -826,7 +826,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Read the HCI Version of the Bluetooth dongle. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00967">967</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00964">964</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -851,7 +851,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01011">1011</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01008">1008</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -869,7 +869,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Enable visibility to other Bluetooth devices. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00936">936</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00933">933</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -887,7 +887,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Disable visibility to other Bluetooth devices. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00949">949</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00946">946</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -905,7 +905,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Read the remote devices name. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00992">992</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00989">989</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -923,7 +923,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Accept the connection with the Bluetooth device. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00976">976</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l00973">973</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -948,7 +948,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01145">1145</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01142">1142</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -966,7 +966,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Respond with the pin for the connection. The pin is automatically set for the Wii library, but can be customized for the <a class="el" href="class_s_p_p.html">SPP</a> library. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01071">1071</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01068">1068</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -984,7 +984,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Respons when no pin was set. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01107">1107</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01104">1104</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1002,7 +1002,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Command is used to reply to a Link Key Request event from the BR/EDR Controller if the Host does not have a stored Link Key for the connection. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01121">1121</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01118">1118</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1020,7 +1020,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Used to try to authenticate with the remote device. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01135">1135</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01132">1132</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1038,7 +1038,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Start a HCI inquiry. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01023">1023</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01020">1020</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1056,7 +1056,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Cancel a HCI inquiry. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01037">1037</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01034">1034</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1074,7 +1074,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Connect to last device communicated with. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01045">1045</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01042">1042</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1099,7 +1099,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01049">1049</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01046">1046</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1117,7 +1117,7 @@ Static Protected Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Used to a set the class of the device. </p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01157">1157</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01154">1154</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1173,7 +1173,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01193">1193</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01190">1190</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1223,7 +1223,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01221">1221</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01218">1218</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1280,7 +1280,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01234">1234</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01231">1231</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1323,7 +1323,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01251">1251</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01248">1248</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1366,7 +1366,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01268">1268</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01265">1265</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1416,7 +1416,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01287">1287</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01284">1284</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1466,7 +1466,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01300">1300</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01297">1297</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1515,7 +1515,7 @@ Static Protected Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01313">1313</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_d_8cpp_source.html#l01310">1310</a> of file <a class="el" href="_b_t_d_8cpp_source.html">BTD.cpp</a>.</p>
</div>
</div>
@ -1767,12 +1767,12 @@ Static Protected Attributes</h2></td></tr>
</div>
</div>
<a class="anchor" id="aede42d995c384c238fd49d728df01e4e"></a>
<a class="anchor" id="aa0fd5483f227e29de23c20ee31c940aa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t BTD::remote_name[30]</td>
<td class="memname">char BTD::remote_name[30]</td>
</tr>
</table>
</div><div class="memdoc">
@ -1806,7 +1806,7 @@ Static Protected Attributes</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Used to only send the ACL data to the wiimote. </p>
<p>Used to only send the ACL data to the Wiimote. </p>
<p>Definition at line <a class="el" href="_b_t_d_8h_source.html#l00503">503</a> of file <a class="el" href="_b_t_d_8h_source.html">BTD.h</a>.</p>
@ -1881,7 +1881,7 @@ Static Protected Attributes</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>Used to only send the ACL data to the wiimote. </p>
<p>Used to only send the ACL data to the Wiimote. </p>
<p>Definition at line <a class="el" href="_b_t_d_8h_source.html#l00519">519</a> of file <a class="el" href="_b_t_d_8h_source.html">BTD.h</a>.</p>

View file

@ -96,12 +96,15 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a></td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">disconnect</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">GetReportParser</a>(uint8_t id)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>(void)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421">OnInitBTHID</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>(void)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">ParseBTHID</a>(BTHID *bthid, uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">Run</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">setLeds</a>(uint8_t data)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">setProtocolMode</a>(uint8_t mode)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a>(uint8_t id, HIDReportParser *prs)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">ResetBTHID</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">Run</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">setLeds</a>(uint8_t data)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">setProtocolMode</a>(uint8_t mode)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a>(uint8_t id, HIDReportParser *prs)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -98,7 +98,7 @@ Inheritance diagram for BTHID:</div>
<div class="dyncontent">
<div class="center"><img src="class_b_t_h_i_d__inherit__graph.png" border="0" usemap="#_b_t_h_i_d_inherit__map" alt="Inheritance graph"/></div>
<map name="_b_t_h_i_d_inherit__map" id="_b_t_h_i_d_inherit__map">
<area shape="rect" id="node2" href="class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/></map>
<area shape="rect" id="node3" href="class_p_s4_b_t.html" title="PS4BT" alt="" coords="34,161,96,189"/><area shape="rect" id="node2" href="class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for BTHID:</div>
@ -138,9 +138,19 @@ Public Member Functions</h2></td></tr>
Public Attributes</h2></td></tr>
<tr class="memitem:ab3a81823a1d8805383146a6baad6ccc4"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a></td></tr>
<tr class="separator:ab3a81823a1d8805383146a6baad6ccc4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">Overridable functions</div></td></tr>
<tr class="memitem:af9a13ab2a8c9c10fc74b3ed7dde1ff52"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">ParseBTHID</a> (<a class="el" href="class_b_t_h_i_d.html">BTHID</a> *bthid, uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:af9a13ab2a8c9c10fc74b3ed7dde1ff52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6d92c1771d643172094fcd084f418421"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421">OnInitBTHID</a> ()</td></tr>
<tr class="separator:a6d92c1771d643172094fcd084f418421"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc22bf5baaa096fe09b72c812c1134f0"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">ResetBTHID</a> ()</td></tr>
<tr class="separator:acc22bf5baaa096fe09b72c812c1134f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This <a class="el" href="class_bluetooth_service.html">BluetoothService</a> class implements support for the <a class="el" href="class_h_i_d.html">HID</a> keyboard and mice. </p>
<div class="textblock"><p>This <a class="el" href="class_bluetooth_service.html">BluetoothService</a> class implements support for Bluetooth <a class="el" href="class_h_i_d.html">HID</a> devices. </p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00029">29</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
@ -219,7 +229,7 @@ Public Attributes</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_bluetooth_service.html#a8dc98310fe481357eaa86c53e49af113">BluetoothService</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8cpp_source.html#l00058">58</a> of file <a class="el" href="_b_t_h_i_d_8cpp_source.html">BTHID.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8cpp_source.html#l00059">59</a> of file <a class="el" href="_b_t_h_i_d_8cpp_source.html">BTHID.cpp</a>.</p>
</div>
</div>
@ -303,7 +313,7 @@ Public Attributes</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_bluetooth_service.html#a66ee2f09c6087b82e3920c3d652a99b2">BluetoothService</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8cpp_source.html#l00051">51</a> of file <a class="el" href="_b_t_h_i_d_8cpp_source.html">BTHID.cpp</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8cpp_source.html#l00052">52</a> of file <a class="el" href="_b_t_h_i_d_8cpp_source.html">BTHID.cpp</a>.</p>
</div>
</div>
@ -337,7 +347,7 @@ Public Attributes</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the corresponding <a class="el" href="class_h_i_d_report_parser.html">HIDReportParser</a>. Returns NULL if id is not valid. </dd></dl>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00059">59</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00058">58</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
@ -382,7 +392,7 @@ Public Attributes</h2></td></tr>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns true if the <a class="el" href="class_h_i_d_report_parser.html">HIDReportParser</a> is set. False otherwise. </dd></dl>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00071">71</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00070">70</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
@ -415,7 +425,7 @@ Public Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00082">82</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00081">81</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
@ -467,7 +477,7 @@ Public Attributes</h2></td></tr>
</div><div class="memdoc">
<p>Call this to start the paring sequence with a device </p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00096">96</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00095">95</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
@ -500,7 +510,116 @@ Public Attributes</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00105">105</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00104">104</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
<a class="anchor" id="af9a13ab2a8c9c10fc74b3ed7dde1ff52"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void BTHID::ParseBTHID </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_b_t_h_i_d.html">BTHID</a> *&#160;</td>
<td class="paramname"><em>bthid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to parse Bluetooth <a class="el" href="class_h_i_d.html">HID</a> data to any class that inherits this class. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">bthid</td><td>Pointer to this class. </td></tr>
<tr><td class="paramname">len</td><td>The length of the incoming data. </td></tr>
<tr><td class="paramname">buf</td><td>Pointer to the data buffer. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented in <a class="el" href="class_p_s4_b_t.html#a9f9e18bee9e7d9cf6538681e0370193f">PS4BT</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00116">116</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
<a class="anchor" id="a6d92c1771d643172094fcd084f418421"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void BTHID::OnInitBTHID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called when a device is connected </p>
<p>Reimplemented in <a class="el" href="class_p_s4_b_t.html#a91088a6ed093d3cebb82d8f5e208304b">PS4BT</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00120">120</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
<a class="anchor" id="acc22bf5baaa096fe09b72c812c1134f0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void BTHID::ResetBTHID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to reset any buffers in the class that inherits this </p>
<p>Reimplemented in <a class="el" href="class_p_s4_b_t.html#a4b1c9e15ccdc7ab24f7fb42fc9b5d827">PS4BT</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00124">124</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>
@ -516,7 +635,7 @@ Public Attributes</h2></td></tr>
</div><div class="memdoc">
<p>True if a device is connected </p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00093">93</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
<p>Definition at line <a class="el" href="_b_t_h_i_d_8h_source.html#l00092">92</a> of file <a class="el" href="_b_t_h_i_d_8h_source.html">BTHID.h</a>.</p>
</div>
</div>

View file

@ -1,3 +1,4 @@
<map id="BTHID" name="BTHID">
<area shape="rect" id="node3" href="$class_p_s4_b_t.html" title="PS4BT" alt="" coords="34,161,96,189"/>
<area shape="rect" id="node2" href="$class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/>
</map>

View file

@ -1 +1 @@
602320ea47f1326cceede888211e600b
84cb6c869d9ec98ca739f6ef702e34ea

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

View file

@ -97,7 +97,7 @@ Inheritance diagram for BluetoothService:</div>
<div class="dyncontent">
<div class="center"><img src="class_bluetooth_service__inherit__graph.png" border="0" usemap="#_bluetooth_service_inherit__map" alt="Inheritance graph"/></div>
<map name="_bluetooth_service_inherit__map" id="_bluetooth_service_inherit__map">
<area shape="rect" id="node2" href="class_b_t_h_i_d.html" title="BTHID" alt="" coords="5,83,67,111"/><area shape="rect" id="node3" href="class_p_s3_b_t.html" title="PS3BT" alt="" coords="91,83,153,111"/><area shape="rect" id="node4" href="class_s_p_p.html" title="SPP" alt="" coords="179,83,227,111"/><area shape="rect" id="node5" href="class_w_i_i.html" title="WII" alt="" coords="251,83,292,111"/></map>
<area shape="rect" id="node2" href="class_b_t_h_i_d.html" title="BTHID" alt="" coords="5,83,67,111"/><area shape="rect" id="node4" href="class_p_s3_b_t.html" title="PS3BT" alt="" coords="91,83,153,111"/><area shape="rect" id="node5" href="class_s_p_p.html" title="SPP" alt="" coords="179,83,227,111"/><area shape="rect" id="node6" href="class_w_i_i.html" title="WII" alt="" coords="251,83,292,111"/><area shape="rect" id="node3" href="class_p_s4_b_t.html" title="PS4BT" alt="" coords="4,161,67,189"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>

View file

@ -1,6 +1,7 @@
<map id="BluetoothService" name="BluetoothService">
<area shape="rect" id="node2" href="$class_b_t_h_i_d.html" title="BTHID" alt="" coords="5,83,67,111"/>
<area shape="rect" id="node3" href="$class_p_s3_b_t.html" title="PS3BT" alt="" coords="91,83,153,111"/>
<area shape="rect" id="node4" href="$class_s_p_p.html" title="SPP" alt="" coords="179,83,227,111"/>
<area shape="rect" id="node5" href="$class_w_i_i.html" title="WII" alt="" coords="251,83,292,111"/>
<area shape="rect" id="node4" href="$class_p_s3_b_t.html" title="PS3BT" alt="" coords="91,83,153,111"/>
<area shape="rect" id="node5" href="$class_s_p_p.html" title="SPP" alt="" coords="179,83,227,111"/>
<area shape="rect" id="node6" href="$class_w_i_i.html" title="WII" alt="" coords="251,83,292,111"/>
<area shape="rect" id="node3" href="$class_p_s4_b_t.html" title="PS4BT" alt="" coords="4,161,67,189"/>
</map>

View file

@ -1 +1 @@
79275e62170f23fa3a9f60c51db52c23
649bd2daee1f85302b66a7c86467bc90

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

@ -100,7 +100,7 @@ Inheritance diagram for HID:</div>
<div class="dyncontent">
<div class="center"><img src="class_h_i_d__inherit__graph.png" border="0" usemap="#_h_i_d_inherit__map" alt="Inheritance graph"/></div>
<map name="_h_i_d_inherit__map" id="_h_i_d_inherit__map">
<area shape="rect" id="node4" href="class_h_i_d_boot.html" title="HIDBoot\&lt; BOOT_PROTOCOL \&gt;" alt="" coords="5,161,219,189"/><area shape="rect" id="node5" href="class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="243,161,343,189"/><area shape="rect" id="node2" href="class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="63,6,191,34"/><area shape="rect" id="node3" href="class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="215,6,344,34"/></map>
<area shape="rect" id="node4" href="class_h_i_d_boot.html" title="HIDBoot\&lt; BOOT_PROTOCOL \&gt;" alt="" coords="5,161,219,189"/><area shape="rect" id="node5" href="class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="243,161,343,189"/><area shape="rect" id="node2" href="class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="63,6,191,34"/><area shape="rect" id="node3" href="class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="215,6,344,34"/><area shape="rect" id="node6" href="class_p_s4_u_s_b.html" title="PS4USB" alt="" coords="256,238,329,266"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for HID:</div>

View file

@ -3,4 +3,5 @@
<area shape="rect" id="node5" href="$class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="243,161,343,189"/>
<area shape="rect" id="node2" href="$class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="63,6,191,34"/>
<area shape="rect" id="node3" href="$class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="215,6,344,34"/>
<area shape="rect" id="node6" href="$class_p_s4_u_s_b.html" title="PS4USB" alt="" coords="256,238,329,266"/>
</map>

View file

@ -1 +1 @@
64d23b25ea5d1ffc660f46d28cb2ebf3
f9db7f4efac03670d14c3b1eb2b20c99

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View file

@ -97,7 +97,7 @@ Inheritance diagram for HIDReportParser:</div>
<div class="dyncontent">
<div class="center"><img src="class_h_i_d_report_parser__inherit__graph.png" border="0" usemap="#_h_i_d_report_parser_inherit__map" alt="Inheritance graph"/></div>
<map name="_h_i_d_report_parser_inherit__map" id="_h_i_d_report_parser_inherit__map">
<area shape="rect" id="node2" href="class_keyboard_report_parser.html" title="KeyboardReportParser" alt="" coords="5,83,163,111"/><area shape="rect" id="node3" href="class_mouse_report_parser.html" title="MouseReportParser" alt="" coords="187,83,327,111"/><area shape="rect" id="node4" href="class_p_s4_b_t.html" title="PS4BT" alt="" coords="352,83,415,111"/><area shape="rect" id="node5" href="class_universal_report_parser.html" title="UniversalReportParser" alt="" coords="439,83,595,111"/></map>
<area shape="rect" id="node2" href="class_keyboard_report_parser.html" title="KeyboardReportParser" alt="" coords="5,83,163,111"/><area shape="rect" id="node3" href="class_mouse_report_parser.html" title="MouseReportParser" alt="" coords="187,83,327,111"/><area shape="rect" id="node4" href="class_universal_report_parser.html" title="UniversalReportParser" alt="" coords="351,83,507,111"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
@ -153,7 +153,7 @@ Public Member Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>Implemented in <a class="el" href="class_universal_report_parser.html#a7b88d36949e3823cd80b3c7cece3d67e">UniversalReportParser</a>, <a class="el" href="class_keyboard_report_parser.html#a60d8d4d4d187ce5c0e0d69aee7cc772f">KeyboardReportParser</a>, <a class="el" href="class_p_s4_b_t.html#a2d0d9b579a008f681471d595843af8d1">PS4BT</a>, and <a class="el" href="class_mouse_report_parser.html#a2dd4e0add7c902300de5e7250c6d6110">MouseReportParser</a>.</p>
<p>Implemented in <a class="el" href="class_universal_report_parser.html#a7b88d36949e3823cd80b3c7cece3d67e">UniversalReportParser</a>, <a class="el" href="class_keyboard_report_parser.html#a60d8d4d4d187ce5c0e0d69aee7cc772f">KeyboardReportParser</a>, and <a class="el" href="class_mouse_report_parser.html#a2dd4e0add7c902300de5e7250c6d6110">MouseReportParser</a>.</p>
</div>
</div>

View file

@ -1,6 +1,5 @@
<map id="HIDReportParser" name="HIDReportParser">
<area shape="rect" id="node2" href="$class_keyboard_report_parser.html" title="KeyboardReportParser" alt="" coords="5,83,163,111"/>
<area shape="rect" id="node3" href="$class_mouse_report_parser.html" title="MouseReportParser" alt="" coords="187,83,327,111"/>
<area shape="rect" id="node4" href="$class_p_s4_b_t.html" title="PS4BT" alt="" coords="352,83,415,111"/>
<area shape="rect" id="node5" href="$class_universal_report_parser.html" title="UniversalReportParser" alt="" coords="439,83,595,111"/>
<area shape="rect" id="node4" href="$class_universal_report_parser.html" title="UniversalReportParser" alt="" coords="351,83,507,111"/>
</map>

View file

@ -1 +1 @@
dcf21fd85d8fe0426e091fadd5132a12
c82eb64e4e9d8248b32e0db32cbfa973

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -108,20 +108,24 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<tr><td class="entry"><a class="el" href="class_h_i_d.html#acea6b13146dc6fb351a912382ce806fd">HID</a>(USB *pusb)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#abdbac688c7e4b682055cebd82e13a595">HIDUniversal</a>(USB *p)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#a384b0e219f763e2d6407636bfd4ccea7">Init</a>(uint8_t parent, uint8_t port, bool lowspeed)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#acd92969682030cd5cac310dd7746c7c7">maxEpPerInterface</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#afe5186f46ac7b580bb3dc289e3f237b2">maxHidInterfaces</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#a60f06d86767b4b2c973d08383c7a0048">OnInitSuccessful</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#ac27e857a0d9619c8abc31be0b690c83c">Poll</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a9e2e57ffd2701ebd171842fa9a3f54bd">PrintEndpointDescriptor</a>(const USB_ENDPOINT_DESCRIPTOR *ep_ptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a733e3944b51dced26ef257f047c227dc">PrintHidDescriptor</a>(const USB_HID_DESCRIPTOR *pDesc)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a1583e665c2b930e8683c10dc271f013f">pUsb</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#af999fc50ef4b5dec0391bda79ec83bda">Release</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a12bb63558ded5bb6661bb173b07ff391">ResetHubPort</a>(uint8_t port)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a6b27ed48d16c6ab09a5ea9a97a628149">SetIdle</a>(uint8_t iface, uint8_t reportID, uint8_t duration)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a276ec67d360b59c3144d7ea2e2f5149e">SetProtocol</a>(uint8_t iface, uint8_t protocol)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a58ca963ba0f12d2a457cb247595f38e9">SetReport</a>(uint8_t ep, uint8_t iface, uint8_t report_type, uint8_t report_id, uint16_t nbytes, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#afbd599879e9c3cdea382e87afd6ab29a">SetReportParser</a>(uint8_t id, HIDReportParser *prs)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a884aa67312324e7d23a052a6dc80337e">totalEndpoints</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#aa4be95e8f5164393ea4766f68c5b0ea8">isReady</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#acd92969682030cd5cac310dd7746c7c7">maxEpPerInterface</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#afe5186f46ac7b580bb3dc289e3f237b2">maxHidInterfaces</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#a60f06d86767b4b2c973d08383c7a0048">OnInitSuccessful</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#abac95ce57e678236993d85cbbf0c6c32">ParseHIDData</a>(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">PID</a></td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#ac27e857a0d9619c8abc31be0b690c83c">Poll</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a9e2e57ffd2701ebd171842fa9a3f54bd">PrintEndpointDescriptor</a>(const USB_ENDPOINT_DESCRIPTOR *ep_ptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a733e3944b51dced26ef257f047c227dc">PrintHidDescriptor</a>(const USB_HID_DESCRIPTOR *pDesc)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a1583e665c2b930e8683c10dc271f013f">pUsb</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#af999fc50ef4b5dec0391bda79ec83bda">Release</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a12bb63558ded5bb6661bb173b07ff391">ResetHubPort</a>(uint8_t port)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a6b27ed48d16c6ab09a5ea9a97a628149">SetIdle</a>(uint8_t iface, uint8_t reportID, uint8_t duration)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a276ec67d360b59c3144d7ea2e2f5149e">SetProtocol</a>(uint8_t iface, uint8_t protocol)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a58ca963ba0f12d2a457cb247595f38e9">SetReport</a>(uint8_t ep, uint8_t iface, uint8_t report_type, uint8_t report_id, uint16_t nbytes, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#afbd599879e9c3cdea382e87afd6ab29a">SetReportParser</a>(uint8_t id, HIDReportParser *prs)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a884aa67312324e7d23a052a6dc80337e">totalEndpoints</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">VID</a></td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a1cf695242e2e22893eea9c892282221b">VIDPIDOK</a>(uint16_t vid, uint16_t pid)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->

View file

@ -100,7 +100,7 @@ Inheritance diagram for HIDUniversal:</div>
<div class="dyncontent">
<div class="center"><img src="class_h_i_d_universal__inherit__graph.png" border="0" usemap="#_h_i_d_universal_inherit__map" alt="Inheritance graph"/></div>
<map name="_h_i_d_universal_inherit__map" id="_h_i_d_universal_inherit__map">
<area shape="rect" id="node2" href="class_h_i_d.html" title="HID" alt="" coords="123,83,167,111"/><area shape="rect" id="node3" href="class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,6,133,34"/><area shape="rect" id="node4" href="class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,6,287,34"/></map>
<area shape="rect" id="node5" href="class_p_s4_u_s_b.html" title="PS4USB" alt="" coords="108,238,181,266"/><area shape="rect" id="node2" href="class_h_i_d.html" title="HID" alt="" coords="123,83,167,111"/><area shape="rect" id="node3" href="class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,6,133,34"/><area shape="rect" id="node4" href="class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,6,287,34"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for HIDUniversal:</div>
@ -124,6 +124,8 @@ Public Member Functions</h2></td></tr>
<tr class="separator:ac27e857a0d9619c8abc31be0b690c83c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcc6921b7beaf0aac2acbcdddd535626"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#abcc6921b7beaf0aac2acbcdddd535626">GetAddress</a> ()</td></tr>
<tr class="separator:abcc6921b7beaf0aac2acbcdddd535626"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4be95e8f5164393ea4766f68c5b0ea8"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#aa4be95e8f5164393ea4766f68c5b0ea8">isReady</a> ()</td></tr>
<tr class="separator:aa4be95e8f5164393ea4766f68c5b0ea8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9b13f27eca16e0accc14fff9bd318e2"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#ab9b13f27eca16e0accc14fff9bd318e2">EndpointXtract</a> (uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const <a class="el" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html">USB_ENDPOINT_DESCRIPTOR</a> *ep)</td></tr>
<tr class="separator:ab9b13f27eca16e0accc14fff9bd318e2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
@ -163,6 +165,8 @@ Protected Member Functions</h2></td></tr>
<tr class="separator:aff53de37b98aa1e4a6e45be701ddcc65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60f06d86767b4b2c973d08383c7a0048"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#a60f06d86767b4b2c973d08383c7a0048">OnInitSuccessful</a> ()</td></tr>
<tr class="separator:a60f06d86767b4b2c973d08383c7a0048"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abac95ce57e678236993d85cbbf0c6c32"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#abac95ce57e678236993d85cbbf0c6c32">ParseHIDData</a> (<a class="el" href="class_h_i_d.html">HID</a> *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:abac95ce57e678236993d85cbbf0c6c32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
<tr class="memitem:a9e2e57ffd2701ebd171842fa9a3f54bd inherit pro_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a9e2e57ffd2701ebd171842fa9a3f54bd">PrintEndpointDescriptor</a> (const <a class="el" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html">USB_ENDPOINT_DESCRIPTOR</a> *ep_ptr)</td></tr>
<tr class="separator:a9e2e57ffd2701ebd171842fa9a3f54bd inherit pro_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -173,6 +177,10 @@ Protected Member Functions</h2></td></tr>
Protected Attributes</h2></td></tr>
<tr class="memitem:a1c333e67c1bd0e69db565d6976d063b1"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#a1c333e67c1bd0e69db565d6976d063b1">bHasReportId</a></td></tr>
<tr class="separator:a1c333e67c1bd0e69db565d6976d063b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc609e49d66fa6260e7cdcd2c4ff0a5a"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">PID</a></td></tr>
<tr class="separator:abc609e49d66fa6260e7cdcd2c4ff0a5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f2123d1f20327600bb9e49a1ef5b0c7"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">VID</a></td></tr>
<tr class="separator:a7f2123d1f20327600bb9e49a1ef5b0c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
<tr class="memitem:a1583e665c2b930e8683c10dc271f013f inherit pro_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_u_s_b.html">USB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a1583e665c2b930e8683c10dc271f013f">pUsb</a></td></tr>
<tr class="separator:a1583e665c2b930e8683c10dc271f013f inherit pro_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -240,7 +248,7 @@ Additional Inherited Members</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_h_i_d.html#ac51c88a0be514a748598008d312adc1d">HID</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00065">65</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00067">67</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
</div>
</div>
@ -265,7 +273,59 @@ Additional Inherited Members</h2></td></tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00056">56</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
<p>Reimplemented in <a class="el" href="class_p_s4_u_s_b.html#a591218572aa8c5f5402483d19c1eebc6">PS4USB</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00059">59</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>
<a class="anchor" id="abac95ce57e678236993d85cbbf0c6c32"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void HIDUniversal::ParseHIDData </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_h_i_d.html">HID</a> *&#160;</td>
<td class="paramname"><em>hid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_rpt_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Reimplemented in <a class="el" href="class_p_s4_u_s_b.html#acf805149a0417d40895d5315b6ead9e6">PS4USB</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00063">63</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>
@ -303,7 +363,7 @@ Additional Inherited Members</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_h_i_d.html#ae3b964d20c828fb27076f50d220fe275">HID</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00054">54</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00056">56</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
</div>
</div>
@ -347,7 +407,7 @@ Additional Inherited Members</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_u_s_b_device_config.html#a3706cf6b18785aff823171e280bab738">USBDeviceConfig</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00076">76</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00078">78</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
</div>
</div>
@ -374,7 +434,7 @@ Additional Inherited Members</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_u_s_b_device_config.html#a61e301efedae55c6ac12c6cce154e432">USBDeviceConfig</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00315">315</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00323">323</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
</div>
</div>
@ -401,7 +461,7 @@ Additional Inherited Members</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_u_s_b_device_config.html#a893ea73deab98be837c257201e7da25a">USBDeviceConfig</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00342">342</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00350">350</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
</div>
</div>
@ -428,7 +488,32 @@ Additional Inherited Members</h2></td></tr>
<p>Reimplemented from <a class="el" href="class_u_s_b_device_config.html#a2bfde6c290d32888a6f4e97fa1e222f1">USBDeviceConfig</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00071">71</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00078">78</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>
<a class="anchor" id="aa4be95e8f5164393ea4766f68c5b0ea8"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual bool HIDUniversal::isReady </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00082">82</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>
@ -484,7 +569,7 @@ Additional Inherited Members</h2></td></tr>
<p>Implements <a class="el" href="class_usb_config_xtracter.html#aceb5da8339172cbb2e9ce2064e34e5ef">UsbConfigXtracter</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00272">272</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8cpp_source.html#l00277">277</a> of file <a class="el" href="hiduniversal_8cpp_source.html">hiduniversal.cpp</a>.</p>
</div>
</div>
@ -507,7 +592,51 @@ Additional Inherited Members</h2></td></tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00051">51</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00052">52</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>
<a class="anchor" id="abc609e49d66fa6260e7cdcd2c4ff0a5a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t HIDUniversal::PID</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00054">54</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>
<a class="anchor" id="a7f2123d1f20327600bb9e49a1ef5b0c7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t HIDUniversal::VID</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="hiduniversal_8h_source.html#l00054">54</a> of file <a class="el" href="hiduniversal_8h_source.html">hiduniversal.h</a>.</p>
</div>
</div>

View file

@ -1,4 +1,5 @@
<map id="HIDUniversal" name="HIDUniversal">
<area shape="rect" id="node5" href="$class_p_s4_u_s_b.html" title="PS4USB" alt="" coords="108,238,181,266"/>
<area shape="rect" id="node2" href="$class_h_i_d.html" title="HID" alt="" coords="123,83,167,111"/>
<area shape="rect" id="node3" href="$class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,6,133,34"/>
<area shape="rect" id="node4" href="$class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,6,287,34"/>

View file

@ -1 +1 @@
104f2874dba516962bd5d60f53e1a99e
7e1f33aeafc56f44989a59297a6d0fee

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

@ -130,11 +130,11 @@ Public Member Functions</h2></td></tr>
<tr class="separator:a6dac11972fc4b1f5984d43365be1a954"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a648e2bfeb06e2dc1603202e95324b206"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#a648e2bfeb06e2dc1603202e95324b206">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a648e2bfeb06e2dc1603202e95324b206"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a07c8dcb809005e8492bbef4e1f4b9d24"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a> (<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a)</td></tr>
<tr class="memitem:a07c8dcb809005e8492bbef4e1f4b9d24"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#a07c8dcb809005e8492bbef4e1f4b9d24">getSensor</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a)</td></tr>
<tr class="separator:a07c8dcb809005e8492bbef4e1f4b9d24"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1e00364c5ff214274438bf54c3cf743"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">getAngle</a> (<a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="memitem:ae1e00364c5ff214274438bf54c3cf743"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#ae1e00364c5ff214274438bf54c3cf743">getAngle</a> (<a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="separator:ae1e00364c5ff214274438bf54c3cf743"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae6596ca28c65db105392a9fed8698ef2"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">get9DOFValues</a> (<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a)</td></tr>
<tr class="memitem:ae6596ca28c65db105392a9fed8698ef2"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#ae6596ca28c65db105392a9fed8698ef2">get9DOFValues</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a)</td></tr>
<tr class="separator:ae6596ca28c65db105392a9fed8698ef2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5062acbd19a52d88a998f19060fbc46a"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_b_t.html#a5062acbd19a52d88a998f19060fbc46a">getStatus</a> (<a class="el" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> c)</td></tr>
<tr class="separator:a5062acbd19a52d88a998f19060fbc46a"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -485,7 +485,7 @@ Public Attributes</h2></td></tr>
<tr>
<td class="memname">int16_t PS3BT::getSensor </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
@ -511,16 +511,16 @@ Public Attributes</h2></td></tr>
<tr>
<td class="memname">double PS3BT::getAngle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a>&#160;</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Use this to get <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> and <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a> calculated using the accelerometer. </p>
<p>Use this to get <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> and <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a> calculated using the accelerometer. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>Either <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> or <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a>. </td></tr>
<tr><td class="paramname">a</td><td>Either <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> or <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a>. </td></tr>
</table>
</dd>
</dl>
@ -537,7 +537,7 @@ Public Attributes</h2></td></tr>
<tr>
<td class="memname">double PS3BT::get9DOFValues </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
@ -546,7 +546,7 @@ Public Attributes</h2></td></tr>
<p>Read the sensors inside the Move controller. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td><a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a>, <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a>, and <a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a>. </td></tr>
<tr><td class="paramname">a</td><td><a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a832ceb5090692e95e93982849f740de7">aXmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a5c436ac329e20e6b7661152c74e82199">aYmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a077e283d0c3f06568c20adf90ced0a3f">aZmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a1851ce90f7a3f6acb062de46e78ca731">gXmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9c538a78bbc03fb258e1141acdc69a91">gYmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9ea1d99ce7ddecd65fcb39f30c77037d">gZmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a>, <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51aee1254b85fe360243299d2041323aa78">mYmove</a>, and <a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51a9d1f82ecbf55d931c3f49858d86d4d68">mXmove</a>. </td></tr>
</table>
</dd>
</dl>

View file

@ -145,9 +145,9 @@ Public Member Functions</h2></td></tr>
<tr class="separator:a6844111657a882b1997ca30d2649bd1c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0de554815afcb66f57d8ac0045f19f2c"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_u_s_b.html#a0de554815afcb66f57d8ac0045f19f2c">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a0de554815afcb66f57d8ac0045f19f2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa01170072ec7fd0e557959ea1d79011e"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a> (<a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a)</td></tr>
<tr class="memitem:aa01170072ec7fd0e557959ea1d79011e"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_u_s_b.html#aa01170072ec7fd0e557959ea1d79011e">getSensor</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> a)</td></tr>
<tr class="separator:aa01170072ec7fd0e557959ea1d79011e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae5c5316b4c8dae5927b2a2721a28f6c0"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">getAngle</a> (<a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="memitem:ae5c5316b4c8dae5927b2a2721a28f6c0"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_u_s_b.html#ae5c5316b4c8dae5927b2a2721a28f6c0">getAngle</a> (<a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="separator:ae5c5316b4c8dae5927b2a2721a28f6c0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0887b415c3ba180789781a713d98be8"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s3_u_s_b.html#ad0887b415c3ba180789781a713d98be8">getStatus</a> (<a class="el" href="_p_s3_enums_8h.html#add5c7a32e8138b44244caf07232161ae">StatusEnum</a> c)</td></tr>
<tr class="separator:ad0887b415c3ba180789781a713d98be8"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -734,7 +734,7 @@ Protected Attributes</h2></td></tr>
<tr>
<td class="memname">uint16_t PS3USB::getSensor </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_p_s3_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
@ -760,16 +760,16 @@ Protected Attributes</h2></td></tr>
<tr>
<td class="memname">double PS3USB::getAngle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a>&#160;</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Use this to get <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> and <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a> calculated using the accelerometer. </p>
<p>Use this to get <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> and <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a> calculated using the accelerometer. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>Either <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> or <a class="el" href="_p_s3_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a>. </td></tr>
<tr><td class="paramname">a</td><td>Either <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> or <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a>. </td></tr>
</table>
</dd>
</dl>

View file

@ -90,17 +90,36 @@ var searchBox = new SearchBox("searchBox", "search",false,'Search');
<p>This is the complete list of members for <a class="el" href="class_p_s4_b_t.html">PS4BT</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">attachOnInit</a>(void(*funcOnInit)(void))</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">ACLData</a>(uint8_t *ACLData)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">attachOnInit</a>(void(*funcOnInit)(void))</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a5ee874513852b83d6a04b991ab892f54">BTHID</a>(BTD *p, bool pair=false, const char *pin=&quot;0000&quot;)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405">connected</a>()</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#abe83edc43707665dc9c1233d824dcae4">disconnect</a>()</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#ad9668449b50b4e28a2f269c04f628af8">getAnalogButton</a>(ButtonEnum a)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#a889b1b544fc439b2bcc7a041272701da">getAnalogHat</a>(AnalogHatEnum a)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a61f45e4cc254de9f4437d3e9866a24e9">pair</a>(void)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#a2d0d9b579a008f681471d595843af8d1">Parse</a>(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#abf535806616e6cacf6707dc96279f1c1">PS4BT</a>(BTHID *p)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0">Reset</a>()</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">BTHID::connected</a></td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">disconnect</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a>(AnalogHatEnum a)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a>(AngleEnum a)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">GetReportParser</a>(uint8_t id)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a>(SensorEnum s)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a91088a6ed093d3cebb82d8f5e208304b">OnInitBTHID</a>()</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>(void)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a>(uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_b_t.html#a9f9e18bee9e7d9cf6538681e0370193f">ParseBTHID</a>(BTHID *bthid, uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a616d5167f795b14c5955910807b5024b">PS4BT</a>(BTD *p, bool pair=false, const char *pin=&quot;0000&quot;)</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a>()</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">BTHID::Reset</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">PS4Parser::Reset</a>()</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_b_t.html#a4b1c9e15ccdc7ab24f7fb42fc9b5d827">ResetBTHID</a>()</td><td class="entry"><a class="el" href="class_p_s4_b_t.html">PS4BT</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">Run</a>()</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">setLeds</a>(uint8_t data)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">setProtocolMode</a>(uint8_t mode)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a>(uint8_t id, HIDReportParser *prs)</td><td class="entry"><a class="el" href="class_b_t_h_i_d.html">BTHID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>

View file

@ -97,48 +97,99 @@ Inheritance diagram for PS4BT:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s4_b_t__inherit__graph.png" border="0" usemap="#_p_s4_b_t_inherit__map" alt="Inheritance graph"/></div>
<map name="_p_s4_b_t_inherit__map" id="_p_s4_b_t_inherit__map">
<area shape="rect" id="node2" href="class_h_i_d_report_parser.html" title="HIDReportParser" alt="" coords="5,6,128,34"/></map>
<area shape="rect" id="node2" href="class_b_t_h_i_d.html" title="BTHID" alt="" coords="35,83,96,111"/><area shape="rect" id="node3" href="class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/><area shape="rect" id="node4" href="class_p_s4_parser.html" title="PS4Parser" alt="" coords="120,83,205,111"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for PS4BT:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s4_b_t__coll__graph.png" border="0" usemap="#_p_s4_b_t_coll__map" alt="Collaboration graph"/></div>
<map name="_p_s4_b_t_coll__map" id="_p_s4_b_t_coll__map">
<area shape="rect" id="node2" href="class_h_i_d_report_parser.html" title="HIDReportParser" alt="" coords="5,6,128,34"/></map>
<area shape="rect" id="node2" href="class_b_t_h_i_d.html" title="BTHID" alt="" coords="35,83,96,111"/><area shape="rect" id="node3" href="class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/><area shape="rect" id="node4" href="class_p_s4_parser.html" title="PS4Parser" alt="" coords="120,83,205,111"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abf535806616e6cacf6707dc96279f1c1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#abf535806616e6cacf6707dc96279f1c1">PS4BT</a> (<a class="el" href="class_b_t_h_i_d.html">BTHID</a> *p)</td></tr>
<tr class="separator:abf535806616e6cacf6707dc96279f1c1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d0d9b579a008f681471d595843af8d1"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a2d0d9b579a008f681471d595843af8d1">Parse</a> (<a class="el" href="class_h_i_d.html">HID</a> *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:a2d0d9b579a008f681471d595843af8d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a616d5167f795b14c5955910807b5024b"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a616d5167f795b14c5955910807b5024b">PS4BT</a> (<a class="el" href="class_b_t_d.html">BTD</a> *p, bool <a class="el" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>=false, const char *pin=&quot;0000&quot;)</td></tr>
<tr class="separator:a616d5167f795b14c5955910807b5024b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08a857b8533e59f6eb872e4c8f727405"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a08a857b8533e59f6eb872e4c8f727405">connected</a> ()</td></tr>
<tr class="separator:a08a857b8533e59f6eb872e4c8f727405"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe83edc43707665dc9c1233d824dcae4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#abe83edc43707665dc9c1233d824dcae4">disconnect</a> ()</td></tr>
<tr class="separator:abe83edc43707665dc9c1233d824dcae4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61f45e4cc254de9f4437d3e9866a24e9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a61f45e4cc254de9f4437d3e9866a24e9">pair</a> (void)</td></tr>
<tr class="separator:a61f45e4cc254de9f4437d3e9866a24e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a60d9bd17b809303cf2840f2892698bd0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a60d9bd17b809303cf2840f2892698bd0">Reset</a> ()</td></tr>
<tr class="separator:a60d9bd17b809303cf2840f2892698bd0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a63c57ecc5c678da13e7787792e385ec9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a63c57ecc5c678da13e7787792e385ec9">attachOnInit</a> (void(*funcOnInit)(void))</td></tr>
<tr class="separator:a63c57ecc5c678da13e7787792e385ec9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">PS4 Controller functions</div></td></tr>
<tr class="memitem:a1a7935eca7794b2fb0da4a0b175a1974"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a1a7935eca7794b2fb0da4a0b175a1974"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7019f43cfd9ef4860dea0ffb5b580254"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a7019f43cfd9ef4860dea0ffb5b580254"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9668449b50b4e28a2f269c04f628af8"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#ad9668449b50b4e28a2f269c04f628af8">getAnalogButton</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> a)</td></tr>
<tr class="separator:ad9668449b50b4e28a2f269c04f628af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a889b1b544fc439b2bcc7a041272701da"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a889b1b544fc439b2bcc7a041272701da">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a889b1b544fc439b2bcc7a041272701da"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_b_t_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_b_t_h_i_d')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_b_t_h_i_d.html">BTHID</a></td></tr>
<tr class="memitem:a5ee874513852b83d6a04b991ab892f54 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#a5ee874513852b83d6a04b991ab892f54">BTHID</a> (<a class="el" href="class_b_t_d.html">BTD</a> *p, bool <a class="el" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a>=false, const char *pin=&quot;0000&quot;)</td></tr>
<tr class="separator:a5ee874513852b83d6a04b991ab892f54 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ade1924514bc9c9cd71f54a1f37529575 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_h_i_d_report_parser.html">HIDReportParser</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#ade1924514bc9c9cd71f54a1f37529575">GetReportParser</a> (uint8_t id)</td></tr>
<tr class="separator:ade1924514bc9c9cd71f54a1f37529575 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0e903f0b5040f3561e5de6c4431027b1 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#a0e903f0b5040f3561e5de6c4431027b1">SetReportParser</a> (uint8_t id, <a class="el" href="class_h_i_d_report_parser.html">HIDReportParser</a> *prs)</td></tr>
<tr class="separator:a0e903f0b5040f3561e5de6c4431027b1 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afceaafc89581441da40b141170b98595 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#afceaafc89581441da40b141170b98595">setProtocolMode</a> (uint8_t mode)</td></tr>
<tr class="separator:afceaafc89581441da40b141170b98595 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae222e33ac617620c4cab5c1b23b89310 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#ae222e33ac617620c4cab5c1b23b89310">setLeds</a> (uint8_t data)</td></tr>
<tr class="separator:ae222e33ac617620c4cab5c1b23b89310 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb19720b65cda69d910416c7a689dd45 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#afb19720b65cda69d910416c7a689dd45">pair</a> (void)</td></tr>
<tr class="separator:afb19720b65cda69d910416c7a689dd45 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2d67e173774e344bca86fbd0ed5a10c inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#ac2d67e173774e344bca86fbd0ed5a10c">attachOnInit</a> (void(*funcOnInit)(void))</td></tr>
<tr class="separator:ac2d67e173774e344bca86fbd0ed5a10c inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a84eb1b910027f2d78741f65225c14e54 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#a84eb1b910027f2d78741f65225c14e54">ACLData</a> (uint8_t *ACLData)</td></tr>
<tr class="separator:a84eb1b910027f2d78741f65225c14e54 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a938eab04e406a29cc9324dad3ccb52cc inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#a938eab04e406a29cc9324dad3ccb52cc">Run</a> ()</td></tr>
<tr class="separator:a938eab04e406a29cc9324dad3ccb52cc inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af4c58b81414a037910dd6fb78f97b96e inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#af4c58b81414a037910dd6fb78f97b96e">Reset</a> ()</td></tr>
<tr class="separator:af4c58b81414a037910dd6fb78f97b96e inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae1ee62d7b9951ec7960f122c9fc2d2d0 inherit pub_methods_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#ae1ee62d7b9951ec7960f122c9fc2d2d0">disconnect</a> ()</td></tr>
<tr class="separator:ae1ee62d7b9951ec7960f122c9fc2d2d0 inherit pub_methods_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_p_s4_parser"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_p_s4_parser')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_p_s4_parser.html">PS4Parser</a></td></tr>
<tr class="memitem:a3ef06f8737f1088dbdbbc351b576c1cf inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a> ()</td></tr>
<tr class="separator:a3ef06f8737f1088dbdbbc351b576c1cf inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad352f30e4ab772246574bbf654248906 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:ad352f30e4ab772246574bbf654248906 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92a4ea3d328426b9f86be05cabaad91c inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a92a4ea3d328426b9f86be05cabaad91c inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66151c4e4601f80492cd5b2451a2f87a inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a66151c4e4601f80492cd5b2451a2f87a inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b11c5b27f9c9501fdb4f616cb3b194c inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a9b11c5b27f9c9501fdb4f616cb3b194c inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa149326d97c6231087f81d954a994493 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:aa149326d97c6231087f81d954a994493 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9972eeb87f2ed4a96dcdccf2dabbbc5a inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a9972eeb87f2ed4a96dcdccf2dabbbc5a inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6770a72c17062c2e00fb3602435fcade inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a6770a72c17062c2e00fb3602435fcade inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b3de008ae8aaa057c571081b1b64e88 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a0b3de008ae8aaa057c571081b1b64e88 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4b7e6c29af23a88d41a83e82c87c888 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a> (<a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="separator:ac4b7e6c29af23a88d41a83e82c87c888 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b06200adee0c8ed616c4d18c23a584a inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> s)</td></tr>
<tr class="separator:a2b06200adee0c8ed616c4d18c23a584a inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">BTHID implementation</div></td></tr>
<tr class="memitem:a9f9e18bee9e7d9cf6538681e0370193f"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a9f9e18bee9e7d9cf6538681e0370193f">ParseBTHID</a> (<a class="el" href="class_b_t_h_i_d.html">BTHID</a> *bthid, uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:a9f9e18bee9e7d9cf6538681e0370193f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a91088a6ed093d3cebb82d8f5e208304b"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a91088a6ed093d3cebb82d8f5e208304b">OnInitBTHID</a> ()</td></tr>
<tr class="separator:a91088a6ed093d3cebb82d8f5e208304b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b1c9e15ccdc7ab24f7fb42fc9b5d827"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_b_t.html#a4b1c9e15ccdc7ab24f7fb42fc9b5d827">ResetBTHID</a> ()</td></tr>
<tr class="separator:a4b1c9e15ccdc7ab24f7fb42fc9b5d827"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Overridable functions</div></td></tr>
<tr class="inherit_header pro_methods_class_p_s4_parser"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_p_s4_parser')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_p_s4_parser.html">PS4Parser</a></td></tr>
<tr class="memitem:a6498fdeb767364e84ce09ef208980622 inherit pro_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a> (uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:a6498fdeb767364e84ce09ef208980622 inherit pro_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24640b2362b0f6f51785fbd3dd4f13f9 inherit pro_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a> ()</td></tr>
<tr class="separator:a24640b2362b0f6f51785fbd3dd4f13f9 inherit pro_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pub_attribs_class_b_t_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pub_attribs_class_b_t_h_i_d')"><img src="closed.png" alt="-"/>&#160;Public Attributes inherited from <a class="el" href="class_b_t_h_i_d.html">BTHID</a></td></tr>
<tr class="memitem:ab3a81823a1d8805383146a6baad6ccc4 inherit pub_attribs_class_b_t_h_i_d"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_b_t_h_i_d.html#ab3a81823a1d8805383146a6baad6ccc4">connected</a></td></tr>
<tr class="separator:ab3a81823a1d8805383146a6baad6ccc4 inherit pub_attribs_class_b_t_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This <a class="el" href="class_bluetooth_service.html">BluetoothService</a> class implements support for the PS4 controller via Bluetooth. </p>
<div class="textblock"><p>This class implements support for the PS4 controller via Bluetooth. It uses the <a class="el" href="class_b_t_h_i_d.html">BTHID</a> class for all the Bluetooth communication. </p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00067">67</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00028">28</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="abf535806616e6cacf6707dc96279f1c1"></a>
<a class="anchor" id="a616d5167f795b14c5955910807b5024b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
@ -148,9 +199,25 @@ Public Member Functions</h2></td></tr>
<tr>
<td class="memname">PS4BT::PS4BT </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_b_t_h_i_d.html">BTHID</a> *&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td class="paramtype"><a class="el" href="class_b_t_d.html">BTD</a> *&#160;</td>
<td class="paramname"><em>p</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>pair</em> = <code>false</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const char *&#160;</td>
<td class="paramname"><em>pin</em> = <code>&quot;0000&quot;</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
@ -163,173 +230,17 @@ Public Member Functions</h2></td></tr>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p</td><td>Pointer to the <a class="el" href="class_b_t_d.html">BTD</a> class instance. </td></tr>
<tr><td class="paramname">pair</td><td>Set this to true in order to pair with the device. If the argument is omitted then it will not pair with it. One can use <a class="el" href="_b_t_d_8h.html#a8f0b5b0dedaf5c25c4887f03ebfdd425">PAIR</a> to set it to true. </td></tr>
<tr><td class="paramname">pin</td><td>Write the pin to <a class="el" href="class_b_t_d.html#a215cb939c01ed3ff56db37841224546c">BTD::btdPin</a>. If argument is omitted, then "0000" will be used. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00073">73</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00036">36</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a2d0d9b579a008f681471d595843af8d1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4BT::Parse </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_h_i_d.html">HID</a> *&#160;</td>
<td class="paramname"><em>hid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_rpt_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Implements <a class="el" href="class_h_i_d_report_parser.html#ad2837f3d78c7ac3f1c2b3a4815420d97">HIDReportParser</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8cpp_source.html#l00097">97</a> of file <a class="el" href="_p_s4_b_t_8cpp_source.html">PS4BT.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a1a7935eca7794b2fb0da4a0b175a1974"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool PS4BT::getButtonPress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a>&#160;</td>
<td class="paramname"><em>b</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress(ButtonEnum b)</a> will return true as long as the button is held down.</p>
<p>While <a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick(ButtonEnum b)</a> will only return it once.</p>
<p>So you instance if you need to increase a variable once you would use <a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick(ButtonEnum b)</a>, but if you need to drive a robot forward you would use <a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress(ButtonEnum b)</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">b</td><td><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> to read. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress(ButtonEnum b)</a> will return a true as long as a button is held down, while <a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick(ButtonEnum b)</a> will return true once for each button press. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8cpp_source.html#l00060">60</a> of file <a class="el" href="_p_s4_b_t_8cpp_source.html">PS4BT.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a7019f43cfd9ef4860dea0ffb5b580254"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool PS4BT::getButtonClick </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a>&#160;</td>
<td class="paramname"><em>b</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress(ButtonEnum b)</a> will return true as long as the button is held down.</p>
<p>While <a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick(ButtonEnum b)</a> will only return it once.</p>
<p>So you instance if you need to increase a variable once you would use <a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick(ButtonEnum b)</a>, but if you need to drive a robot forward you would use <a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress(ButtonEnum b)</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">b</td><td><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> to read. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="class_p_s4_b_t.html#a1a7935eca7794b2fb0da4a0b175a1974">getButtonPress(ButtonEnum b)</a> will return a true as long as a button is held down, while <a class="el" href="class_p_s4_b_t.html#a7019f43cfd9ef4860dea0ffb5b580254">getButtonClick(ButtonEnum b)</a> will return true once for each button press. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8cpp_source.html#l00071">71</a> of file <a class="el" href="_p_s4_b_t_8cpp_source.html">PS4BT.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="ad9668449b50b4e28a2f269c04f628af8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t PS4BT::getAnalogButton </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to get the analog value from button presses. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>The <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> to read. The supported buttons are: <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdae5bc7ee7d6dda5340a28f91834f10543">L1</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda0adffb24dae0c41be5b803f4d444f066">L2</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaf8d87ff07efe24755164f550526f4dac">R1</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda629d7b403cea5f826352f3aefb9a6d6a">R2</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda2fd33892864d1c342d3bead2f2d9ad56">TRIANGLE</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaa79c827759ea48f0735386c4b1188911">CIRCLE</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdad699bdf1731bd839b56c299536ba1d9d">CROSS</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda4233fbf0cafb86abcee94b38d769fc59">SQUARE</a>, and <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda21f40778b7db9343a6ca75ec2c41ccce">T</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Analog value in the range of 0-255. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8cpp_source.html#l00089">89</a> of file <a class="el" href="_p_s4_b_t_8cpp_source.html">PS4BT.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a889b1b544fc439b2bcc7a041272701da"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t PS4BT::getAnalogHat </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to read the analog joystick. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td><a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093a383cb8895dd296b7f69ce845ed16b0ca">LeftHatX</a>, <a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093af3f3925efa9762c4e9e71ac7da7a94a3">LeftHatY</a>, <a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093aaeb027a0ae5bbc6ba25e1c78a6486c7b">RightHatX</a>, and <a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093a7f1fb2db5381286691f4dec179ed5d5a">RightHatY</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Return the analog value in the range of 0-255. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8cpp_source.html#l00093">93</a> of file <a class="el" href="_p_s4_b_t_8cpp_source.html">PS4BT.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a08a857b8533e59f6eb872e4c8f727405"></a>
<div class="memitem">
<div class="memproto">
@ -350,87 +261,10 @@ Public Member Functions</h2></td></tr>
</tr>
</table>
</div><div class="memdoc">
<p>True if a device is connected </p>
<p>Used to check if a PS4 controller is connected. </p>
<dl class="section return"><dt>Returns</dt><dd>Returns true if it is connected. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00115">115</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<a class="anchor" id="abe83edc43707665dc9c1233d824dcae4"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4BT::disconnect </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used this to disconnect the devices. </p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00122">122</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<a class="anchor" id="a61f45e4cc254de9f4437d3e9866a24e9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4BT::pair </td>
<td>(</td>
<td class="paramtype">void&#160;</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Call this to start the paring sequence with a device </p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00128">128</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<a class="anchor" id="a60d9bd17b809303cf2840f2892698bd0"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4BT::Reset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00133">133</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00045">45</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
@ -463,13 +297,121 @@ Public Member Functions</h2></td></tr>
</dd>
</dl>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00153">153</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00053">53</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<a class="anchor" id="a9f9e18bee9e7d9cf6538681e0370193f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void PS4BT::ParseBTHID </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_b_t_h_i_d.html">BTHID</a> *&#160;</td>
<td class="paramname"><em>bthid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to parse Bluetooth <a class="el" href="class_h_i_d.html">HID</a> data. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">bthid</td><td>Pointer to the <a class="el" href="class_b_t_h_i_d.html">BTHID</a> class. </td></tr>
<tr><td class="paramname">len</td><td>The length of the incoming data. </td></tr>
<tr><td class="paramname">buf</td><td>Pointer to the data buffer. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="class_b_t_h_i_d.html#af9a13ab2a8c9c10fc74b3ed7dde1ff52">BTHID</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00065">65</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<a class="anchor" id="a91088a6ed093d3cebb82d8f5e208304b"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void PS4BT::OnInitBTHID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called when a device is successfully initialized. Use attachOnInit(void (*funcOnInit)(void)) to call your own function. This is useful for instance if you want to set the LEDs in a specific way. </p>
<p>Reimplemented from <a class="el" href="class_b_t_h_i_d.html#a6d92c1771d643172094fcd084f418421">BTHID</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00074">74</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<a class="anchor" id="a4b1c9e15ccdc7ab24f7fb42fc9b5d827"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void PS4BT::ResetBTHID </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to reset the different buffers to there default values </p>
<p>Reimplemented from <a class="el" href="class_b_t_h_i_d.html#acc22bf5baaa096fe09b72c812c1134f0">BTHID</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_b_t_8h_source.html#l00080">80</a> of file <a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_p_s4_b_t_8h_source.html">PS4BT.h</a></li>
<li><a class="el" href="_p_s4_b_t_8cpp_source.html">PS4BT.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->

View file

@ -1,3 +1,5 @@
<map id="PS4BT" name="PS4BT">
<area shape="rect" id="node2" href="$class_h_i_d_report_parser.html" title="HIDReportParser" alt="" coords="5,6,128,34"/>
<area shape="rect" id="node2" href="$class_b_t_h_i_d.html" title="BTHID" alt="" coords="35,83,96,111"/>
<area shape="rect" id="node3" href="$class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/>
<area shape="rect" id="node4" href="$class_p_s4_parser.html" title="PS4Parser" alt="" coords="120,83,205,111"/>
</map>

View file

@ -1 +1 @@
408acd7d3781421cc89212fb3d8b08a9
6968257051e0d345ab838bb416a09380

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

View file

@ -1,3 +1,5 @@
<map id="PS4BT" name="PS4BT">
<area shape="rect" id="node2" href="$class_h_i_d_report_parser.html" title="HIDReportParser" alt="" coords="5,6,128,34"/>
<area shape="rect" id="node2" href="$class_b_t_h_i_d.html" title="BTHID" alt="" coords="35,83,96,111"/>
<area shape="rect" id="node3" href="$class_bluetooth_service.html" title="BluetoothService" alt="" coords="4,6,125,34"/>
<area shape="rect" id="node4" href="$class_p_s4_parser.html" title="PS4Parser" alt="" coords="120,83,205,111"/>
</map>

View file

@ -1 +1 @@
408acd7d3781421cc89212fb3d8b08a9
6968257051e0d345ab838bb416a09380

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

After

Width:  |  Height:  |  Size: 8.3 KiB

View file

@ -0,0 +1,114 @@
<!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.6"/>
<title>USB Host Shield 2.0: Member List</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><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="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">PS4Parser Member List</div> </div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_p_s4_parser.html">PS4Parser</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a>(AnalogHatEnum a)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a>(AngleEnum a)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a>(SensorEnum s)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a>(uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a>()</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a>()</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

608
class_p_s4_parser.html Normal file
View file

@ -0,0 +1,608 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4Parser Class 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><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="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="class_p_s4_parser-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">PS4Parser Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for PS4Parser:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s4_parser__inherit__graph.png" border="0" usemap="#_p_s4_parser_inherit__map" alt="Inheritance graph"/></div>
<map name="_p_s4_parser_inherit__map" id="_p_s4_parser_inherit__map">
<area shape="rect" id="node2" href="class_p_s4_b_t.html" title="PS4BT" alt="" coords="4,83,67,111"/><area shape="rect" id="node3" href="class_p_s4_u_s_b.html" title="PS4USB" alt="" coords="92,83,165,111"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a3ef06f8737f1088dbdbbc351b576c1cf"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a> ()</td></tr>
<tr class="separator:a3ef06f8737f1088dbdbbc351b576c1cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">PS4 Controller functions</div></td></tr>
<tr class="memitem:ad352f30e4ab772246574bbf654248906"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:ad352f30e4ab772246574bbf654248906"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92a4ea3d328426b9f86be05cabaad91c"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a92a4ea3d328426b9f86be05cabaad91c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66151c4e4601f80492cd5b2451a2f87a"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a66151c4e4601f80492cd5b2451a2f87a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b11c5b27f9c9501fdb4f616cb3b194c"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a9b11c5b27f9c9501fdb4f616cb3b194c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr><td colspan="2"><div class="groupHeader">Only available via USB at the moment</div></td></tr>
<tr class="memitem:aa149326d97c6231087f81d954a994493"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:aa149326d97c6231087f81d954a994493"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9972eeb87f2ed4a96dcdccf2dabbbc5a"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a9972eeb87f2ed4a96dcdccf2dabbbc5a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6770a72c17062c2e00fb3602435fcade"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a6770a72c17062c2e00fb3602435fcade"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b3de008ae8aaa057c571081b1b64e88"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a0b3de008ae8aaa057c571081b1b64e88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4b7e6c29af23a88d41a83e82c87c888"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a> (<a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="separator:ac4b7e6c29af23a88d41a83e82c87c888"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b06200adee0c8ed616c4d18c23a584a"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> s)</td></tr>
<tr class="separator:a2b06200adee0c8ed616c4d18c23a584a"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a6498fdeb767364e84ce09ef208980622"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a> (uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:a6498fdeb767364e84ce09ef208980622"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24640b2362b0f6f51785fbd3dd4f13f9"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a> ()</td></tr>
<tr class="separator:a24640b2362b0f6f51785fbd3dd4f13f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This class parses all the data sent by the PS4 controller </p>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00125">125</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a3ef06f8737f1088dbdbbc351b576c1cf"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">PS4Parser::PS4Parser </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor for the <a class="el" href="class_p_s4_parser.html">PS4Parser</a> class. </p>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00128">128</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="ad352f30e4ab772246574bbf654248906"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool PS4Parser::getButtonPress </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a>&#160;</td>
<td class="paramname"><em>b</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress(ButtonEnum b)</a> will return true as long as the button is held down.</p>
<p>While <a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick(ButtonEnum b)</a> will only return it once.</p>
<p>So you instance if you need to increase a variable once you would use <a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick(ButtonEnum b)</a>, but if you need to drive a robot forward you would use <a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress(ButtonEnum b)</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">b</td><td><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> to read. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress(ButtonEnum b)</a> will return a true as long as a button is held down, while <a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick(ButtonEnum b)</a> will return true once for each button press. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8cpp_source.html#l00038">38</a> of file <a class="el" href="_p_s4_parser_8cpp_source.html">PS4Parser.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a92a4ea3d328426b9f86be05cabaad91c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool PS4Parser::getButtonClick </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a>&#160;</td>
<td class="paramname"><em>b</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress(ButtonEnum b)</a> will return true as long as the button is held down.</p>
<p>While <a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick(ButtonEnum b)</a> will only return it once.</p>
<p>So you instance if you need to increase a variable once you would use <a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick(ButtonEnum b)</a>, but if you need to drive a robot forward you would use <a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress(ButtonEnum b)</a>. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">b</td><td><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> to read. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress(ButtonEnum b)</a> will return a true as long as a button is held down, while <a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick(ButtonEnum b)</a> will return true once for each button press. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8cpp_source.html#l00049">49</a> of file <a class="el" href="_p_s4_parser_8cpp_source.html">PS4Parser.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a66151c4e4601f80492cd5b2451a2f87a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t PS4Parser::getAnalogButton </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a>&#160;</td>
<td class="paramname"><em>b</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to get the analog value from button presses. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">b</td><td>The <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> to read. The supported buttons are: <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaba595d8bca8bc5e67c37c0a9d89becfa">UP</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaec8379af7490bb9eaaf579cf17876f38">RIGHT</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda9b0b4a95b99523966e0e34ffdadac9da">DOWN</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdadb45120aafd37a973140edee24708065">LEFT</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdae5bc7ee7d6dda5340a28f91834f10543">L1</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda0adffb24dae0c41be5b803f4d444f066">L2</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaf8d87ff07efe24755164f550526f4dac">R1</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda629d7b403cea5f826352f3aefb9a6d6a">R2</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda2fd33892864d1c342d3bead2f2d9ad56">TRIANGLE</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdaa79c827759ea48f0735386c4b1188911">CIRCLE</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fdad699bdf1731bd839b56c299536ba1d9d">CROSS</a>, <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda4233fbf0cafb86abcee94b38d769fc59">SQUARE</a>, and <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda21f40778b7db9343a6ca75ec2c41ccce">T</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Analog value in the range of 0-255. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8cpp_source.html#l00064">64</a> of file <a class="el" href="_p_s4_parser_8cpp_source.html">PS4Parser.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a9b11c5b27f9c9501fdb4f616cb3b194c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t PS4Parser::getAnalogHat </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to read the analog joystick. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td><a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093a383cb8895dd296b7f69ce845ed16b0ca">LeftHatX</a>, <a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093af3f3925efa9762c4e9e71ac7da7a94a3">LeftHatY</a>, <a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093aaeb027a0ae5bbc6ba25e1c78a6486c7b">RightHatX</a>, and <a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093a7f1fb2db5381286691f4dec179ed5d5a">RightHatY</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Return the analog value in the range of 0-255. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8cpp_source.html#l00072">72</a> of file <a class="el" href="_p_s4_parser_8cpp_source.html">PS4Parser.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="aa149326d97c6231087f81d954a994493"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t PS4Parser::getX </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>xyId</em> = <code>0</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the x-coordinate of the touchpad. Position 0 is in the top left. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">finger</td><td>0 = first finger, 1 = second finger. If omitted, then 0 will be used. </td></tr>
<tr><td class="paramname">xyId</td><td>The controller sends out three packets with the same structure. The third one will contain the last measure, but if you read from the controller then there is only be data in the first one. For that reason it will be set to 0 if the argument is omitted. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the x-coordinate of the finger. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00174">174</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<a class="anchor" id="a9972eeb87f2ed4a96dcdccf2dabbbc5a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t PS4Parser::getY </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>xyId</em> = <code>0</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the y-coordinate of the touchpad. Position 0 is in the top left. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">finger</td><td>0 = first finger, 1 = second finger. If omitted, then 0 will be used. </td></tr>
<tr><td class="paramname">xyId</td><td>The controller sends out three packets with the same structure. The third one will contain the last measure, but if you read from the controller then there is only be data in the first one. For that reason it will be set to 0 if the argument is omitted. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the y-coordinate of the finger. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00186">186</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<a class="anchor" id="a6770a72c17062c2e00fb3602435fcade"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool PS4Parser::isTouching </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>xyId</em> = <code>0</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns whenever the user is toucing the touchpad. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">finger</td><td>0 = first finger, 1 = second finger. If omitted, then 0 will be used. </td></tr>
<tr><td class="paramname">xyId</td><td>The controller sends out three packets with the same structure. The third one will contain the last measure, but if you read from the controller then there is only be data in the first one. For that reason it will be set to 0 if the argument is omitted. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns true if the specific finger is touching the touchpad. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00198">198</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<a class="anchor" id="a0b3de008ae8aaa057c571081b1b64e88"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint8_t PS4Parser::getTouchCounter </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>xyId</em> = <code>0</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>This counter increments every time a finger touches the touchpad. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">finger</td><td>0 = first finger, 1 = second finger. If omitted, then 0 will be used. </td></tr>
<tr><td class="paramname">xyId</td><td>The controller sends out three packets with the same structure. The third one will contain the last measure, but if you read from the controller then there is only be data in the first one. For that reason it will be set to 0 if the argument is omitted. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Return the value of the counter, note that it is only a 7-bit value. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00210">210</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<a class="anchor" id="ac4b7e6c29af23a88d41a83e82c87c888"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">double PS4Parser::getAngle </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a>&#160;</td>
<td class="paramname"><em>a</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Get the angle of the controller calculated using the accelerometer. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">a</td><td>Either <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6ae3a34b760fa4a6854f28852e91d8bb47">Pitch</a> or <a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6a9d80e5f030503ccac779c6491826a173">Roll</a>. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Return the angle in the range of 0-360. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00219">219</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<a class="anchor" id="a2b06200adee0c8ed616c4d18c23a584a"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t PS4Parser::getSensor </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a>&#160;</td>
<td class="paramname"><em>s</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to get the raw values from the 3-axis gyroscope and 3-axis accelerometer inside the PS4 controller. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">s</td><td>The sensor to read. </td></tr>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the raw sensor reading. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00231">231</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<a class="anchor" id="a6498fdeb767364e84ce09ef208980622"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4Parser::Parse </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to parse data sent from the PS4 controller. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">len</td><td>Length of the data. </td></tr>
<tr><td class="paramname">buf</td><td>Pointer to the data buffer. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="_p_s4_parser_8cpp_source.html#l00076">76</a> of file <a class="el" href="_p_s4_parser_8cpp_source.html">PS4Parser.cpp</a>.</p>
</div>
</div>
<a class="anchor" id="a24640b2362b0f6f51785fbd3dd4f13f9"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4Parser::Reset </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to reset the different buffers to their default values </p>
<p>Definition at line <a class="el" href="_p_s4_parser_8h_source.html#l00260">260</a> of file <a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="_p_s4_parser_8h_source.html">PS4Parser.h</a></li>
<li><a class="el" href="_p_s4_parser_8cpp_source.html">PS4Parser.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

View file

@ -0,0 +1,4 @@
<map id="PS4Parser" name="PS4Parser">
<area shape="rect" id="node2" href="$class_p_s4_b_t.html" title="PS4BT" alt="" coords="4,83,67,111"/>
<area shape="rect" id="node3" href="$class_p_s4_u_s_b.html" title="PS4USB" alt="" coords="92,83,165,111"/>
</map>

View file

@ -0,0 +1 @@
3640c7e8714d328b9cdd367ff0a243af

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

View file

@ -0,0 +1,154 @@
<!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.6"/>
<title>USB Host Shield 2.0: Member List</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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><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="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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><!-- top -->
<div class="header">
<div class="headertitle">
<div class="title">PS4USB Member List</div> </div>
</div><!--header-->
<div class="contents">
<p>This is the complete list of members for <a class="el" href="class_p_s4_u_s_b.html">PS4USB</a>, including all inherited members.</p>
<table class="directory">
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_u_s_b.html#abe78ea9b765b11c08b060f923ae9d8cd">attachOnInit</a>(void(*funcOnInit)(void))</td><td class="entry"><a class="el" href="class_p_s4_u_s_b.html">PS4USB</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a525edb36c2cd8470eae703d3b236e4a7">bAddress</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#a1c333e67c1bd0e69db565d6976d063b1">bHasReportId</a></td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_u_s_b_device_config.html#aef77a1e62f78c04a1aad53e8795ec89e">ConfigureDevice</a>(uint8_t parent, uint8_t port, bool lowspeed)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_u_s_b.html#a3dd2b4e19516fb76d9442937102ea97f">connected</a>()</td><td class="entry"><a class="el" href="class_p_s4_u_s_b.html">PS4USB</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a7f13c42ed2c8e72e1f63562576ca82d2">DEVCLASSOK</a>(uint8_t klass)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#ab9b13f27eca16e0accc14fff9bd318e2">EndpointXtract</a>(uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const USB_ENDPOINT_DESCRIPTOR *ep)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a845b9961830a6778c296e8571759dd38">epInterruptInIndex</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#aeb7fc07fe6dbc98d518967fdbc441ab3">epInterruptOutIndex</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#abcc6921b7beaf0aac2acbcdddd535626">GetAddress</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a>(AnalogHatEnum a)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a>(AngleEnum a)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a>(ButtonEnum b)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a13dccfb3aa8144626ba587969e3ef3b0">GetHidDescr</a>(uint8_t ep, uint16_t nbytes, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a52f9c963ffe4715829ff1b84a9eac24c">GetIdle</a>(uint8_t iface, uint8_t reportID, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a70be6b7ad992954b8648d7d06e2d4e2b">GetProtocol</a>(uint8_t iface, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a4b59be9ba5dbdc09d2e47cf734c02fdc">GetReport</a>(uint8_t ep, uint8_t iface, uint8_t report_type, uint8_t report_id, uint16_t nbytes, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#abecb44a94d722becd9b95788e46d90c3">GetReportDescr</a>(uint16_t wIndex, USBReadParser *parser=NULL)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#aff53de37b98aa1e4a6e45be701ddcc65">GetReportParser</a>(uint8_t id)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a>(SensorEnum s)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#afd4bcb073a263f662dd5433139d6ebf3">GetUsb</a>()</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#acea6b13146dc6fb351a912382ce806fd">HID</a>(USB *pusb)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#abdbac688c7e4b682055cebd82e13a595">HIDUniversal</a>(USB *p)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#a384b0e219f763e2d6407636bfd4ccea7">Init</a>(uint8_t parent, uint8_t port, bool lowspeed)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#aa4be95e8f5164393ea4766f68c5b0ea8">isReady</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a>(uint8_t finger=0, uint8_t xyId=0)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#acd92969682030cd5cac310dd7746c7c7">maxEpPerInterface</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#afe5186f46ac7b580bb3dc289e3f237b2">maxHidInterfaces</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_u_s_b.html#a591218572aa8c5f5402483d19c1eebc6">OnInitSuccessful</a>()</td><td class="entry"><a class="el" href="class_p_s4_u_s_b.html">PS4USB</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a>(uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_u_s_b.html#acf805149a0417d40895d5315b6ead9e6">ParseHIDData</a>(HID *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</td><td class="entry"><a class="el" href="class_p_s4_u_s_b.html">PS4USB</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">PID</a></td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#ac27e857a0d9619c8abc31be0b690c83c">Poll</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a9e2e57ffd2701ebd171842fa9a3f54bd">PrintEndpointDescriptor</a>(const USB_ENDPOINT_DESCRIPTOR *ep_ptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a733e3944b51dced26ef257f047c227dc">PrintHidDescriptor</a>(const USB_HID_DESCRIPTOR *pDesc)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a>()</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr><td class="entry"><a class="el" href="class_p_s4_u_s_b.html#a1ace884e418a0b8fe0f37bba7ea240e7">PS4USB</a>(USB *p)</td><td class="entry"><a class="el" href="class_p_s4_u_s_b.html">PS4USB</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a1583e665c2b930e8683c10dc271f013f">pUsb</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#af999fc50ef4b5dec0391bda79ec83bda">Release</a>()</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a>()</td><td class="entry"><a class="el" href="class_p_s4_parser.html">PS4Parser</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span></td></tr>
<tr><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a12bb63558ded5bb6661bb173b07ff391">ResetHubPort</a>(uint8_t port)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a6b27ed48d16c6ab09a5ea9a97a628149">SetIdle</a>(uint8_t iface, uint8_t reportID, uint8_t duration)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d.html#a276ec67d360b59c3144d7ea2e2f5149e">SetProtocol</a>(uint8_t iface, uint8_t protocol)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a58ca963ba0f12d2a457cb247595f38e9">SetReport</a>(uint8_t ep, uint8_t iface, uint8_t report_type, uint8_t report_id, uint16_t nbytes, uint8_t *dataptr)</td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#afbd599879e9c3cdea382e87afd6ab29a">SetReportParser</a>(uint8_t id, HIDReportParser *prs)</td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">virtual</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_h_i_d.html#a884aa67312324e7d23a052a6dc80337e">totalEndpoints</a></td><td class="entry"><a class="el" href="class_h_i_d.html">HID</a></td><td class="entry"><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
<tr><td class="entry"><a class="el" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">VID</a></td><td class="entry"><a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
<tr class="even"><td class="entry"><a class="el" href="class_u_s_b_device_config.html#a1cf695242e2e22893eea9c892282221b">VIDPIDOK</a>(uint16_t vid, uint16_t pid)</td><td class="entry"><a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
</table></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

434
class_p_s4_u_s_b.html Normal file
View file

@ -0,0 +1,434 @@
<!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.6"/>
<title>USB Host Shield 2.0: PS4USB Class 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/search.js"></script>
<script type="text/javascript">
$(document).ready(function() { searchBox.OnSelectItem(0); });
</script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="imageStyle.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 style="padding-left: 0.5em;">
<div id="projectname">USB Host Shield 2.0
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<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 class="current"><a href="annotated.html"><span>Classes</span></a></li>
<li><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="annotated.html"><span>Class&#160;List</span></a></li>
<li><a href="classes.html"><span>Class&#160;Index</span></a></li>
<li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
<li><a href="functions.html"><span>Class&#160;Members</span></a></li>
</ul>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Pages</a></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><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="class_p_s4_u_s_b-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">PS4USB Class Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for PS4USB:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s4_u_s_b__inherit__graph.png" border="0" usemap="#_p_s4_u_s_b_inherit__map" alt="Inheritance graph"/></div>
<map name="_p_s4_u_s_b_inherit__map" id="_p_s4_u_s_b_inherit__map">
<area shape="rect" id="node2" href="class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="95,161,195,189"/><area shape="rect" id="node3" href="class_h_i_d.html" title="HID" alt="" coords="123,83,167,111"/><area shape="rect" id="node4" href="class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,6,133,34"/><area shape="rect" id="node5" href="class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,6,287,34"/><area shape="rect" id="node6" href="class_p_s4_parser.html" title="PS4Parser" alt="" coords="220,161,305,189"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for PS4USB:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s4_u_s_b__coll__graph.png" border="0" usemap="#_p_s4_u_s_b_coll__map" alt="Collaboration graph"/></div>
<map name="_p_s4_u_s_b_coll__map" id="_p_s4_u_s_b_coll__map">
<area shape="rect" id="node2" href="class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="173,259,272,287"/><area shape="rect" id="node3" href="class_h_i_d.html" title="HID" alt="" coords="201,179,244,207"/><area shape="rect" id="node4" href="class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,86,133,114"/><area shape="rect" id="node5" href="class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,86,287,114"/><area shape="rect" id="node6" href="class_u_s_b.html" title="USB" alt="" coords="312,86,360,114"/><area shape="rect" id="node7" href="class_m_a_x3421e.html" title="MAX3421E" alt="" coords="292,6,380,34"/><area shape="rect" id="node8" href="class_p_s4_parser.html" title="PS4Parser" alt="" coords="297,259,383,287"/></map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:a1ace884e418a0b8fe0f37bba7ea240e7"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_u_s_b.html#a1ace884e418a0b8fe0f37bba7ea240e7">PS4USB</a> (<a class="el" href="class_u_s_b.html">USB</a> *p)</td></tr>
<tr class="separator:a1ace884e418a0b8fe0f37bba7ea240e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3dd2b4e19516fb76d9442937102ea97f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_u_s_b.html#a3dd2b4e19516fb76d9442937102ea97f">connected</a> ()</td></tr>
<tr class="separator:a3dd2b4e19516fb76d9442937102ea97f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abe78ea9b765b11c08b060f923ae9d8cd"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_u_s_b.html#abe78ea9b765b11c08b060f923ae9d8cd">attachOnInit</a> (void(*funcOnInit)(void))</td></tr>
<tr class="separator:abe78ea9b765b11c08b060f923ae9d8cd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_h_i_d_universal"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_i_d_universal')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td></tr>
<tr class="memitem:abdbac688c7e4b682055cebd82e13a595 inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#abdbac688c7e4b682055cebd82e13a595">HIDUniversal</a> (<a class="el" href="class_u_s_b.html">USB</a> *p)</td></tr>
<tr class="separator:abdbac688c7e4b682055cebd82e13a595 inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbd599879e9c3cdea382e87afd6ab29a inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#afbd599879e9c3cdea382e87afd6ab29a">SetReportParser</a> (uint8_t id, <a class="el" href="class_h_i_d_report_parser.html">HIDReportParser</a> *prs)</td></tr>
<tr class="separator:afbd599879e9c3cdea382e87afd6ab29a inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a384b0e219f763e2d6407636bfd4ccea7 inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#a384b0e219f763e2d6407636bfd4ccea7">Init</a> (uint8_t parent, uint8_t port, bool lowspeed)</td></tr>
<tr class="separator:a384b0e219f763e2d6407636bfd4ccea7 inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af999fc50ef4b5dec0391bda79ec83bda inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#af999fc50ef4b5dec0391bda79ec83bda">Release</a> ()</td></tr>
<tr class="separator:af999fc50ef4b5dec0391bda79ec83bda inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac27e857a0d9619c8abc31be0b690c83c inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#ac27e857a0d9619c8abc31be0b690c83c">Poll</a> ()</td></tr>
<tr class="separator:ac27e857a0d9619c8abc31be0b690c83c inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcc6921b7beaf0aac2acbcdddd535626 inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#abcc6921b7beaf0aac2acbcdddd535626">GetAddress</a> ()</td></tr>
<tr class="separator:abcc6921b7beaf0aac2acbcdddd535626 inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa4be95e8f5164393ea4766f68c5b0ea8 inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#aa4be95e8f5164393ea4766f68c5b0ea8">isReady</a> ()</td></tr>
<tr class="separator:aa4be95e8f5164393ea4766f68c5b0ea8 inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9b13f27eca16e0accc14fff9bd318e2 inherit pub_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#ab9b13f27eca16e0accc14fff9bd318e2">EndpointXtract</a> (uint8_t conf, uint8_t iface, uint8_t alt, uint8_t proto, const <a class="el" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html">USB_ENDPOINT_DESCRIPTOR</a> *ep)</td></tr>
<tr class="separator:ab9b13f27eca16e0accc14fff9bd318e2 inherit pub_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
<tr class="memitem:acea6b13146dc6fb351a912382ce806fd inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#acea6b13146dc6fb351a912382ce806fd">HID</a> (<a class="el" href="class_u_s_b.html">USB</a> *pusb)</td></tr>
<tr class="separator:acea6b13146dc6fb351a912382ce806fd inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd4bcb073a263f662dd5433139d6ebf3 inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_u_s_b.html">USB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#afd4bcb073a263f662dd5433139d6ebf3">GetUsb</a> ()</td></tr>
<tr class="separator:afd4bcb073a263f662dd5433139d6ebf3 inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a276ec67d360b59c3144d7ea2e2f5149e inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a276ec67d360b59c3144d7ea2e2f5149e">SetProtocol</a> (uint8_t iface, uint8_t protocol)</td></tr>
<tr class="separator:a276ec67d360b59c3144d7ea2e2f5149e inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70be6b7ad992954b8648d7d06e2d4e2b inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a70be6b7ad992954b8648d7d06e2d4e2b">GetProtocol</a> (uint8_t iface, uint8_t *dataptr)</td></tr>
<tr class="separator:a70be6b7ad992954b8648d7d06e2d4e2b inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52f9c963ffe4715829ff1b84a9eac24c inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a52f9c963ffe4715829ff1b84a9eac24c">GetIdle</a> (uint8_t iface, uint8_t reportID, uint8_t *dataptr)</td></tr>
<tr class="separator:a52f9c963ffe4715829ff1b84a9eac24c inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6b27ed48d16c6ab09a5ea9a97a628149 inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a6b27ed48d16c6ab09a5ea9a97a628149">SetIdle</a> (uint8_t iface, uint8_t reportID, uint8_t duration)</td></tr>
<tr class="separator:a6b27ed48d16c6ab09a5ea9a97a628149 inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abecb44a94d722becd9b95788e46d90c3 inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#abecb44a94d722becd9b95788e46d90c3">GetReportDescr</a> (uint16_t wIndex, <a class="el" href="class_u_s_b_read_parser.html">USBReadParser</a> *parser=NULL)</td></tr>
<tr class="separator:abecb44a94d722becd9b95788e46d90c3 inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13dccfb3aa8144626ba587969e3ef3b0 inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a13dccfb3aa8144626ba587969e3ef3b0">GetHidDescr</a> (uint8_t ep, uint16_t nbytes, uint8_t *dataptr)</td></tr>
<tr class="separator:a13dccfb3aa8144626ba587969e3ef3b0 inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b59be9ba5dbdc09d2e47cf734c02fdc inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a4b59be9ba5dbdc09d2e47cf734c02fdc">GetReport</a> (uint8_t ep, uint8_t iface, uint8_t report_type, uint8_t report_id, uint16_t nbytes, uint8_t *dataptr)</td></tr>
<tr class="separator:a4b59be9ba5dbdc09d2e47cf734c02fdc inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58ca963ba0f12d2a457cb247595f38e9 inherit pub_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a58ca963ba0f12d2a457cb247595f38e9">SetReport</a> (uint8_t ep, uint8_t iface, uint8_t report_type, uint8_t report_id, uint16_t nbytes, uint8_t *dataptr)</td></tr>
<tr class="separator:a58ca963ba0f12d2a457cb247595f38e9 inherit pub_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_u_s_b_device_config"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_u_s_b_device_config')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_u_s_b_device_config.html">USBDeviceConfig</a></td></tr>
<tr class="memitem:aef77a1e62f78c04a1aad53e8795ec89e inherit pub_methods_class_u_s_b_device_config"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_s_b_device_config.html#aef77a1e62f78c04a1aad53e8795ec89e">ConfigureDevice</a> (uint8_t parent, uint8_t port, bool lowspeed)</td></tr>
<tr class="separator:aef77a1e62f78c04a1aad53e8795ec89e inherit pub_methods_class_u_s_b_device_config"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a12bb63558ded5bb6661bb173b07ff391 inherit pub_methods_class_u_s_b_device_config"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_s_b_device_config.html#a12bb63558ded5bb6661bb173b07ff391">ResetHubPort</a> (uint8_t port)</td></tr>
<tr class="separator:a12bb63558ded5bb6661bb173b07ff391 inherit pub_methods_class_u_s_b_device_config"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1cf695242e2e22893eea9c892282221b inherit pub_methods_class_u_s_b_device_config"><td class="memItemLeft" align="right" valign="top">virtual boolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_s_b_device_config.html#a1cf695242e2e22893eea9c892282221b">VIDPIDOK</a> (uint16_t vid, uint16_t pid)</td></tr>
<tr class="separator:a1cf695242e2e22893eea9c892282221b inherit pub_methods_class_u_s_b_device_config"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f13c42ed2c8e72e1f63562576ca82d2 inherit pub_methods_class_u_s_b_device_config"><td class="memItemLeft" align="right" valign="top">virtual boolean&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_u_s_b_device_config.html#a7f13c42ed2c8e72e1f63562576ca82d2">DEVCLASSOK</a> (uint8_t klass)</td></tr>
<tr class="separator:a7f13c42ed2c8e72e1f63562576ca82d2 inherit pub_methods_class_u_s_b_device_config"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pub_methods_class_p_s4_parser"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_class_p_s4_parser')"><img src="closed.png" alt="-"/>&#160;Public Member Functions inherited from <a class="el" href="class_p_s4_parser.html">PS4Parser</a></td></tr>
<tr class="memitem:a3ef06f8737f1088dbdbbc351b576c1cf inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a3ef06f8737f1088dbdbbc351b576c1cf">PS4Parser</a> ()</td></tr>
<tr class="separator:a3ef06f8737f1088dbdbbc351b576c1cf inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad352f30e4ab772246574bbf654248906 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#ad352f30e4ab772246574bbf654248906">getButtonPress</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:ad352f30e4ab772246574bbf654248906 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92a4ea3d328426b9f86be05cabaad91c inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a92a4ea3d328426b9f86be05cabaad91c">getButtonClick</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a92a4ea3d328426b9f86be05cabaad91c inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a66151c4e4601f80492cd5b2451a2f87a inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a66151c4e4601f80492cd5b2451a2f87a">getAnalogButton</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a66151c4e4601f80492cd5b2451a2f87a inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b11c5b27f9c9501fdb4f616cb3b194c inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a9b11c5b27f9c9501fdb4f616cb3b194c">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a9b11c5b27f9c9501fdb4f616cb3b194c inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa149326d97c6231087f81d954a994493 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#aa149326d97c6231087f81d954a994493">getX</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:aa149326d97c6231087f81d954a994493 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9972eeb87f2ed4a96dcdccf2dabbbc5a inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a9972eeb87f2ed4a96dcdccf2dabbbc5a">getY</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a9972eeb87f2ed4a96dcdccf2dabbbc5a inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6770a72c17062c2e00fb3602435fcade inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a6770a72c17062c2e00fb3602435fcade">isTouching</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a6770a72c17062c2e00fb3602435fcade inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b3de008ae8aaa057c571081b1b64e88 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a0b3de008ae8aaa057c571081b1b64e88">getTouchCounter</a> (uint8_t finger=0, uint8_t xyId=0)</td></tr>
<tr class="separator:a0b3de008ae8aaa057c571081b1b64e88 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac4b7e6c29af23a88d41a83e82c87c888 inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#ac4b7e6c29af23a88d41a83e82c87c888">getAngle</a> (<a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="separator:ac4b7e6c29af23a88d41a83e82c87c888 inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2b06200adee0c8ed616c4d18c23a584a inherit pub_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a2b06200adee0c8ed616c4d18c23a584a">getSensor</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> s)</td></tr>
<tr class="separator:a2b06200adee0c8ed616c4d18c23a584a inherit pub_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr><td colspan="2"><div class="groupHeader">HIDUniversal implementation</div></td></tr>
<tr class="memitem:acf805149a0417d40895d5315b6ead9e6"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_u_s_b.html#acf805149a0417d40895d5315b6ead9e6">ParseHIDData</a> (<a class="el" href="class_h_i_d.html">HID</a> *hid, bool is_rpt_id, uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:acf805149a0417d40895d5315b6ead9e6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a591218572aa8c5f5402483d19c1eebc6"><td class="memItemLeft" align="right" valign="top">virtual uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_u_s_b.html#a591218572aa8c5f5402483d19c1eebc6">OnInitSuccessful</a> ()</td></tr>
<tr class="separator:a591218572aa8c5f5402483d19c1eebc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_h_i_d_universal"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_i_d_universal')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td></tr>
<tr class="memitem:aff53de37b98aa1e4a6e45be701ddcc65 inherit pro_methods_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="class_h_i_d_report_parser.html">HIDReportParser</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#aff53de37b98aa1e4a6e45be701ddcc65">GetReportParser</a> (uint8_t id)</td></tr>
<tr class="separator:aff53de37b98aa1e4a6e45be701ddcc65 inherit pro_methods_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
<tr class="memitem:a9e2e57ffd2701ebd171842fa9a3f54bd inherit pro_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a9e2e57ffd2701ebd171842fa9a3f54bd">PrintEndpointDescriptor</a> (const <a class="el" href="struct_u_s_b___e_n_d_p_o_i_n_t___d_e_s_c_r_i_p_t_o_r.html">USB_ENDPOINT_DESCRIPTOR</a> *ep_ptr)</td></tr>
<tr class="separator:a9e2e57ffd2701ebd171842fa9a3f54bd inherit pro_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a733e3944b51dced26ef257f047c227dc inherit pro_methods_class_h_i_d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a733e3944b51dced26ef257f047c227dc">PrintHidDescriptor</a> (const <a class="el" href="struct_u_s_b___h_i_d___d_e_s_c_r_i_p_t_o_r.html">USB_HID_DESCRIPTOR</a> *pDesc)</td></tr>
<tr class="separator:a733e3944b51dced26ef257f047c227dc inherit pro_methods_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_methods_class_p_s4_parser"><td colspan="2" onclick="javascript:toggleInherit('pro_methods_class_p_s4_parser')"><img src="closed.png" alt="-"/>&#160;Protected Member Functions inherited from <a class="el" href="class_p_s4_parser.html">PS4Parser</a></td></tr>
<tr class="memitem:a6498fdeb767364e84ce09ef208980622 inherit pro_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a6498fdeb767364e84ce09ef208980622">Parse</a> (uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:a6498fdeb767364e84ce09ef208980622 inherit pro_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24640b2362b0f6f51785fbd3dd4f13f9 inherit pro_methods_class_p_s4_parser"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s4_parser.html#a24640b2362b0f6f51785fbd3dd4f13f9">Reset</a> ()</td></tr>
<tr class="separator:a24640b2362b0f6f51785fbd3dd4f13f9 inherit pro_methods_class_p_s4_parser"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
Additional Inherited Members</h2></td></tr>
<tr class="inherit_header pro_attribs_class_h_i_d_universal"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_i_d_universal')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_i_d_universal.html">HIDUniversal</a></td></tr>
<tr class="memitem:a1c333e67c1bd0e69db565d6976d063b1 inherit pro_attribs_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#a1c333e67c1bd0e69db565d6976d063b1">bHasReportId</a></td></tr>
<tr class="separator:a1c333e67c1bd0e69db565d6976d063b1 inherit pro_attribs_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abc609e49d66fa6260e7cdcd2c4ff0a5a inherit pro_attribs_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#abc609e49d66fa6260e7cdcd2c4ff0a5a">PID</a></td></tr>
<tr class="separator:abc609e49d66fa6260e7cdcd2c4ff0a5a inherit pro_attribs_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f2123d1f20327600bb9e49a1ef5b0c7 inherit pro_attribs_class_h_i_d_universal"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d_universal.html#a7f2123d1f20327600bb9e49a1ef5b0c7">VID</a></td></tr>
<tr class="separator:a7f2123d1f20327600bb9e49a1ef5b0c7 inherit pro_attribs_class_h_i_d_universal"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_attribs_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
<tr class="memitem:a1583e665c2b930e8683c10dc271f013f inherit pro_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_u_s_b.html">USB</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a1583e665c2b930e8683c10dc271f013f">pUsb</a></td></tr>
<tr class="separator:a1583e665c2b930e8683c10dc271f013f inherit pro_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a525edb36c2cd8470eae703d3b236e4a7 inherit pro_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a525edb36c2cd8470eae703d3b236e4a7">bAddress</a></td></tr>
<tr class="separator:a525edb36c2cd8470eae703d3b236e4a7 inherit pro_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="inherit_header pro_static_attribs_class_h_i_d"><td colspan="2" onclick="javascript:toggleInherit('pro_static_attribs_class_h_i_d')"><img src="closed.png" alt="-"/>&#160;Static Protected Attributes inherited from <a class="el" href="class_h_i_d.html">HID</a></td></tr>
<tr class="memitem:a845b9961830a6778c296e8571759dd38 inherit pro_static_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top">static const uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a845b9961830a6778c296e8571759dd38">epInterruptInIndex</a> = 1</td></tr>
<tr class="separator:a845b9961830a6778c296e8571759dd38 inherit pro_static_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb7fc07fe6dbc98d518967fdbc441ab3 inherit pro_static_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top">static const uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#aeb7fc07fe6dbc98d518967fdbc441ab3">epInterruptOutIndex</a> = 2</td></tr>
<tr class="separator:aeb7fc07fe6dbc98d518967fdbc441ab3 inherit pro_static_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afe5186f46ac7b580bb3dc289e3f237b2 inherit pro_static_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top">static const uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#afe5186f46ac7b580bb3dc289e3f237b2">maxHidInterfaces</a> = 3</td></tr>
<tr class="separator:afe5186f46ac7b580bb3dc289e3f237b2 inherit pro_static_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acd92969682030cd5cac310dd7746c7c7 inherit pro_static_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top">static const uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#acd92969682030cd5cac310dd7746c7c7">maxEpPerInterface</a> = 2</td></tr>
<tr class="separator:acd92969682030cd5cac310dd7746c7c7 inherit pro_static_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a884aa67312324e7d23a052a6dc80337e inherit pro_static_attribs_class_h_i_d"><td class="memItemLeft" align="right" valign="top">static const uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_h_i_d.html#a884aa67312324e7d23a052a6dc80337e">totalEndpoints</a> = (<a class="el" href="class_h_i_d.html#afe5186f46ac7b580bb3dc289e3f237b2">maxHidInterfaces</a> * <a class="el" href="class_h_i_d.html#acd92969682030cd5cac310dd7746c7c7">maxEpPerInterface</a> + 1)</td></tr>
<tr class="separator:a884aa67312324e7d23a052a6dc80337e inherit pro_static_attribs_class_h_i_d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>This class implements support for the PS4 controller via <a class="el" href="class_u_s_b.html">USB</a>. It uses the <a class="el" href="class_h_i_d_universal.html">HIDUniversal</a> class for all the <a class="el" href="class_u_s_b.html">USB</a> communication. </p>
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00031">31</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a1ace884e418a0b8fe0f37bba7ea240e7"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">PS4USB::PS4USB </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_u_s_b.html">USB</a> *&#160;</td>
<td class="paramname"><em>p</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Constructor for the <a class="el" href="class_p_s4_u_s_b.html">PS4USB</a> class. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">p</td><td>Pointer to the <a class="el" href="class_u_s_b.html">USB</a> class instance. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00037">37</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a class="anchor" id="a3dd2b4e19516fb76d9442937102ea97f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool PS4USB::connected </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to check if a PS4 controller is connected. </p>
<dl class="section return"><dt>Returns</dt><dd>Returns true if it is connected. </dd></dl>
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00046">46</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
<a class="anchor" id="abe78ea9b765b11c08b060f923ae9d8cd"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS4USB::attachOnInit </td>
<td>(</td>
<td class="paramtype">void(*)(void)&#160;</td>
<td class="paramname"><em>funcOnInit</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to call your own function when the device is successfully initialized. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">funcOnInit</td><td>Function to call. </td></tr>
</table>
</dd>
</dl>
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00054">54</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
<a class="anchor" id="acf805149a0417d40895d5315b6ead9e6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void PS4USB::ParseHIDData </td>
<td>(</td>
<td class="paramtype"><a class="el" href="class_h_i_d.html">HID</a> *&#160;</td>
<td class="paramname"><em>hid</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>is_rpt_id</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>len</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t *&#160;</td>
<td class="paramname"><em>buf</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to parse <a class="el" href="class_u_s_b.html">USB</a> <a class="el" href="class_h_i_d.html">HID</a> data. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">hid</td><td>Pointer to the <a class="el" href="class_h_i_d.html">HID</a> class. </td></tr>
<tr><td class="paramname">is_rpt_id</td><td>Only used for Hubs. </td></tr>
<tr><td class="paramname">len</td><td>The length of the incoming data. </td></tr>
<tr><td class="paramname">buf</td><td>Pointer to the data buffer. </td></tr>
</table>
</dd>
</dl>
<p>Reimplemented from <a class="el" href="class_h_i_d_universal.html#abac95ce57e678236993d85cbbf0c6c32">HIDUniversal</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00067">67</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
<a class="anchor" id="a591218572aa8c5f5402483d19c1eebc6"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual uint8_t PS4USB::OnInitSuccessful </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Called when a device is successfully initialized. Use attachOnInit(void (*funcOnInit)(void)) to call your own function. This is useful for instance if you want to set the LEDs in a specific way. </p>
<p>Reimplemented from <a class="el" href="class_h_i_d_universal.html#a60f06d86767b4b2c973d08383c7a0048">HIDUniversal</a>.</p>
<p>Definition at line <a class="el" href="_p_s4_u_s_b_8h_source.html#l00077">77</a> of file <a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_p_s4_u_s_b_8h_source.html">PS4USB.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>

View file

@ -0,0 +1,9 @@
<map id="PS4USB" name="PS4USB">
<area shape="rect" id="node2" href="$class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="173,259,272,287"/>
<area shape="rect" id="node3" href="$class_h_i_d.html" title="HID" alt="" coords="201,179,244,207"/>
<area shape="rect" id="node4" href="$class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,86,133,114"/>
<area shape="rect" id="node5" href="$class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,86,287,114"/>
<area shape="rect" id="node6" href="$class_u_s_b.html" title="USB" alt="" coords="312,86,360,114"/>
<area shape="rect" id="node7" href="$class_m_a_x3421e.html" title="MAX3421E" alt="" coords="292,6,380,34"/>
<area shape="rect" id="node8" href="$class_p_s4_parser.html" title="PS4Parser" alt="" coords="297,259,383,287"/>
</map>

View file

@ -0,0 +1 @@
13107348fb6e96840b44b50b9104436e

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

View file

@ -0,0 +1,7 @@
<map id="PS4USB" name="PS4USB">
<area shape="rect" id="node2" href="$class_h_i_d_universal.html" title="HIDUniversal" alt="" coords="95,161,195,189"/>
<area shape="rect" id="node3" href="$class_h_i_d.html" title="HID" alt="" coords="123,83,167,111"/>
<area shape="rect" id="node4" href="$class_u_s_b_device_config.html" title="USBDeviceConfig" alt="" coords="5,6,133,34"/>
<area shape="rect" id="node5" href="$class_usb_config_xtracter.html" title="UsbConfigXtracter" alt="" coords="158,6,287,34"/>
<area shape="rect" id="node6" href="$class_p_s4_parser.html" title="PS4Parser" alt="" coords="220,161,305,189"/>
</map>

View file

@ -0,0 +1 @@
cfbb24c41aff07d80752a0c75e594196

Some files were not shown because too many files have changed in this diff Show more