USB_Host_Shield_2.0/class_p_s5_parser.html

1065 lines
52 KiB
HTML
Raw Permalink Normal View History

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.9.1"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>USB Host Shield 2.0: PS5Parser 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/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></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 id="projectalign" 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.9.1 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search','.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="class_p_s5_parser-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">PS5Parser Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for PS5Parser:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s5_parser__inherit__graph.png" border="0" usemap="#a_p_s5_parser_inherit__map" alt="Inheritance graph"/></div>
<map name="a_p_s5_parser_inherit__map" id="a_p_s5_parser_inherit__map">
<area shape="rect" title=" " alt="" coords="39,5,125,32"/>
<area shape="rect" href="class_p_s5_b_t.html" title=" " alt="" coords="5,80,68,107"/>
<area shape="rect" href="class_p_s5_u_s_b.html" title=" " alt="" coords="92,80,165,107"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<div class="dynheader">
Collaboration diagram for PS5Parser:</div>
<div class="dyncontent">
<div class="center"><img src="class_p_s5_parser__coll__graph.png" border="0" usemap="#a_p_s5_parser_coll__map" alt="Collaboration graph"/></div>
<map name="a_p_s5_parser_coll__map" id="a_p_s5_parser_coll__map">
<area shape="rect" title=" " alt="" coords="7,109,94,136"/>
<area shape="rect" href="class_p_s5_trigger.html" title=" " alt="" coords="5,5,96,32"/>
</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:a415a2549a733de3a988fcdf0acdfa5f1"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a415a2549a733de3a988fcdf0acdfa5f1">PS5Parser</a> ()</td></tr>
<tr class="separator:a415a2549a733de3a988fcdf0acdfa5f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a819cd1faa12a83cd8525be60bc8c8b83"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_s5_trigger.html">PS5Trigger</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a819cd1faa12a83cd8525be60bc8c8b83">leftTrigger</a></td></tr>
<tr class="separator:a819cd1faa12a83cd8525be60bc8c8b83"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3a6cf326963a4bd8b08ee4b22d456df4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_p_s5_trigger.html">PS5Trigger</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a3a6cf326963a4bd8b08ee4b22d456df4">rightTrigger</a></td></tr>
<tr class="separator:a3a6cf326963a4bd8b08ee4b22d456df4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader">PS5 Controller functions</h2></td></tr>
<tr class="memitem:a481808a0aecbee31d0fa52343a8d87a0"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">getButtonPress</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a481808a0aecbee31d0fa52343a8d87a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4b8f61bc96190a433ab59821adaf4b33"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">getButtonClick</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:a4b8f61bc96190a433ab59821adaf4b33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ada92d3b0b2c966f2884a2563615ea7ae"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#ada92d3b0b2c966f2884a2563615ea7ae">getAnalogButton</a> (<a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fd">ButtonEnum</a> b)</td></tr>
<tr class="separator:ada92d3b0b2c966f2884a2563615ea7ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79c2339d1b370c09ed3960b6c4fad6c9"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a79c2339d1b370c09ed3960b6c4fad6c9">getAnalogHat</a> (<a class="el" href="controller_enums_8h.html#a34dad8f0a0927471137c403216597093">AnalogHatEnum</a> a)</td></tr>
<tr class="separator:a79c2339d1b370c09ed3960b6c4fad6c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2817e10d7ef1f823545f8513602f25a"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#ae2817e10d7ef1f823545f8513602f25a">getX</a> (uint8_t finger=0)</td></tr>
<tr class="separator:ae2817e10d7ef1f823545f8513602f25a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20e1565de39e21f4a3d5fec534b7dda7"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a20e1565de39e21f4a3d5fec534b7dda7">getY</a> (uint8_t finger=0)</td></tr>
<tr class="separator:a20e1565de39e21f4a3d5fec534b7dda7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1a1940d1382ff854f49b896d49bc949"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#ad1a1940d1382ff854f49b896d49bc949">isTouching</a> (uint8_t finger=0)</td></tr>
<tr class="separator:ad1a1940d1382ff854f49b896d49bc949"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad71e6f6cd11f55e688ab40aa5e1e2934"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#ad71e6f6cd11f55e688ab40aa5e1e2934">getTouchCounter</a> (uint8_t finger=0)</td></tr>
<tr class="separator:ad71e6f6cd11f55e688ab40aa5e1e2934"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2cfd147d798af0c45ef7b752ad8ce63"><td class="memItemLeft" align="right" valign="top">float&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#ac2cfd147d798af0c45ef7b752ad8ce63">getAngle</a> (<a class="el" href="controller_enums_8h.html#a7c7824a10a9ffa8fea85602fcf4d84e6">AngleEnum</a> a)</td></tr>
<tr class="separator:ac2cfd147d798af0c45ef7b752ad8ce63"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5711382b0e798160bba2d6f92fe28af2"><td class="memItemLeft" align="right" valign="top">int16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a5711382b0e798160bba2d6f92fe28af2">getSensor</a> (<a class="el" href="controller_enums_8h.html#a00d5030559c481763282483889597d51">SensorEnum</a> s)</td></tr>
<tr class="separator:a5711382b0e798160bba2d6f92fe28af2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a47da338f276ce95436a57196bb92442f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a47da338f276ce95436a57196bb92442f">setAllOff</a> ()</td></tr>
<tr class="separator:a47da338f276ce95436a57196bb92442f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc771bcd563447e3385b37593f8d727f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#acc771bcd563447e3385b37593f8d727f">setRumbleOff</a> ()</td></tr>
<tr class="separator:acc771bcd563447e3385b37593f8d727f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa98b3193b374c59179d57a03e973f748"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#aa98b3193b374c59179d57a03e973f748">setRumbleOn</a> (<a class="el" href="controller_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a> mode)</td></tr>
<tr class="separator:aa98b3193b374c59179d57a03e973f748"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb0f8db56bff6d61b89e9ba8bb972224"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#adb0f8db56bff6d61b89e9ba8bb972224">setRumbleOn</a> (uint8_t bigRumble, uint8_t smallRumble)</td></tr>
<tr class="separator:adb0f8db56bff6d61b89e9ba8bb972224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39a725ebb4b95a8cf59e0440576319f8"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a39a725ebb4b95a8cf59e0440576319f8">setLedOff</a> ()</td></tr>
<tr class="separator:a39a725ebb4b95a8cf59e0440576319f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1269586cdd5447aa60ad9d32a84a8260"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a1269586cdd5447aa60ad9d32a84a8260">setLed</a> (uint8_t r, uint8_t g, uint8_t b)</td></tr>
<tr class="separator:a1269586cdd5447aa60ad9d32a84a8260"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa543ae953a5fab2e438142fc9f168a9c"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#aa543ae953a5fab2e438142fc9f168a9c">setLed</a> (<a class="el" href="controller_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a> color)</td></tr>
<tr class="separator:aa543ae953a5fab2e438142fc9f168a9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4a8c060d1eb8d2eb949beadb27019d58"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a4a8c060d1eb8d2eb949beadb27019d58">setPlayerLedOff</a> ()</td></tr>
<tr class="separator:a4a8c060d1eb8d2eb949beadb27019d58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8dfbe24dbd5a79a3f6a1c76cbd9554a7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a8dfbe24dbd5a79a3f6a1c76cbd9554a7">setPlayerLed</a> (uint8_t mask)</td></tr>
<tr class="separator:a8dfbe24dbd5a79a3f6a1c76cbd9554a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a85b48b47b6976786e54d9f0684203d05"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a85b48b47b6976786e54d9f0684203d05">setMicLedOff</a> ()</td></tr>
<tr class="separator:a85b48b47b6976786e54d9f0684203d05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a398a544b4b2ad38ca00ecd19ab4ff9b0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a398a544b4b2ad38ca00ecd19ab4ff9b0">setMicLed</a> (bool on)</td></tr>
<tr class="separator:a398a544b4b2ad38ca00ecd19ab4ff9b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8ea1c748821b20c47db4f26a01fa887d"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a8ea1c748821b20c47db4f26a01fa887d">getMessageCounter</a> ()</td></tr>
<tr class="separator:a8ea1c748821b20c47db4f26a01fa887d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a396efb4b210f86095dc21a4ba2afffed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a396efb4b210f86095dc21a4ba2afffed">Parse</a> (uint8_t len, uint8_t *buf)</td></tr>
<tr class="separator:a396efb4b210f86095dc21a4ba2afffed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a136b97d303936a6f3c13bb74fad521d1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#a136b97d303936a6f3c13bb74fad521d1">Reset</a> ()</td></tr>
<tr class="separator:a136b97d303936a6f3c13bb74fad521d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad35f2e7d60ce26a5b220267e20d6cfa3"><td class="memItemLeft" align="right" valign="top">virtual void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_p_s5_parser.html#ad35f2e7d60ce26a5b220267e20d6cfa3">sendOutputReport</a> (<a class="el" href="struct_p_s5_output.html">PS5Output</a> *output)=0</td></tr>
<tr class="separator:ad35f2e7d60ce26a5b220267e20d6cfa3"><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 PS5 controller </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00149">149</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="a415a2549a733de3a988fcdf0acdfa5f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a415a2549a733de3a988fcdf0acdfa5f1">&#9670;&nbsp;</a></span>PS5Parser()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">PS5Parser::PS5Parser </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_s5_parser.html">PS5Parser</a> class. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00152">152</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="a481808a0aecbee31d0fa52343a8d87a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a481808a0aecbee31d0fa52343a8d87a0">&#9670;&nbsp;</a></span>getButtonPress()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool PS5Parser::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_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">getButtonPress(ButtonEnum b)</a> will return true as long as the button is held down.</p>
<p>While <a class="el" href="class_p_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">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_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">getButtonClick(ButtonEnum b)</a>, but if you need to drive a robot forward you would use <a class="el" href="class_p_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">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_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">getButtonPress(ButtonEnum b)</a> will return a true as long as a button is held down, while <a class="el" href="class_p_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">getButtonClick(ButtonEnum b)</a> will return true once for each button press. </dd></dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8cpp_source.html#l00060">60</a> of file <a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a>.</p>
</div>
</div>
<a id="a4b8f61bc96190a433ab59821adaf4b33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4b8f61bc96190a433ab59821adaf4b33">&#9670;&nbsp;</a></span>getButtonClick()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">bool PS5Parser::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_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">getButtonPress(ButtonEnum b)</a> will return true as long as the button is held down.</p>
<p>While <a class="el" href="class_p_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">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_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">getButtonClick(ButtonEnum b)</a>, but if you need to drive a robot forward you would use <a class="el" href="class_p_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">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_s5_parser.html#a481808a0aecbee31d0fa52343a8d87a0">getButtonPress(ButtonEnum b)</a> will return a true as long as a button is held down, while <a class="el" href="class_p_s5_parser.html#a4b8f61bc96190a433ab59821adaf4b33">getButtonClick(ButtonEnum b)</a> will return true once for each button press. </dd></dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8cpp_source.html#l00068">68</a> of file <a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a>.</p>
</div>
</div>
<a id="ada92d3b0b2c966f2884a2563615ea7ae"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ada92d3b0b2c966f2884a2563615ea7ae">&#9670;&nbsp;</a></span>getAnalogButton()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t PS5Parser::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#a94f7389d205c78830a5441370d7870fda0adffb24dae0c41be5b803f4d444f066">L2</a> and <a class="el" href="controller_enums_8h.html#a94f7389d205c78830a5441370d7870fda629d7b403cea5f826352f3aefb9a6d6a">R2</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 class="definition">Definition at line <a class="el" href="_p_s5_parser_8cpp_source.html#l00076">76</a> of file <a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a>.</p>
</div>
</div>
<a id="a79c2339d1b370c09ed3960b6c4fad6c9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a79c2339d1b370c09ed3960b6c4fad6c9">&#9670;&nbsp;</a></span>getAnalogHat()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">uint8_t PS5Parser::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 class="definition">Definition at line <a class="el" href="_p_s5_parser_8cpp_source.html#l00085">85</a> of file <a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a>.</p>
</div>
</div>
<a id="ae2817e10d7ef1f823545f8513602f25a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2817e10d7ef1f823545f8513602f25a">&#9670;&nbsp;</a></span>getX()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t PS5Parser::getX </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code></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>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00194">194</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a20e1565de39e21f4a3d5fec534b7dda7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a20e1565de39e21f4a3d5fec534b7dda7">&#9670;&nbsp;</a></span>getY()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t PS5Parser::getY </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code></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>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns the y-coordinate of the finger. </dd></dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00203">203</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="ad1a1940d1382ff854f49b896d49bc949"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad1a1940d1382ff854f49b896d49bc949">&#9670;&nbsp;</a></span>isTouching()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">bool PS5Parser::isTouching </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code></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>
</table>
</dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Returns true if the specific finger is touching the touchpad. </dd></dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00212">212</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="ad71e6f6cd11f55e688ab40aa5e1e2934"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad71e6f6cd11f55e688ab40aa5e1e2934">&#9670;&nbsp;</a></span>getTouchCounter()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint8_t PS5Parser::getTouchCounter </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>finger</em> = <code>0</code></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>
</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 class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00221">221</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="ac2cfd147d798af0c45ef7b752ad8ce63"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2cfd147d798af0c45ef7b752ad8ce63">&#9670;&nbsp;</a></span>getAngle()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">float PS5Parser::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 class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00230">230</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a5711382b0e798160bba2d6f92fe28af2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5711382b0e798160bba2d6f92fe28af2">&#9670;&nbsp;</a></span>getSensor()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">int16_t PS5Parser::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 PS5 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 class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00242">242</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a47da338f276ce95436a57196bb92442f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a47da338f276ce95436a57196bb92442f">&#9670;&nbsp;</a></span>setAllOff()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setAllOff </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>Turn both rumble and the LEDs off. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00298">298</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="acc771bcd563447e3385b37593f8d727f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc771bcd563447e3385b37593f8d727f">&#9670;&nbsp;</a></span>setRumbleOff()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setRumbleOff </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>Set rumble off. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00304">304</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="aa98b3193b374c59179d57a03e973f748"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa98b3193b374c59179d57a03e973f748">&#9670;&nbsp;</a></span>setRumbleOn() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setRumbleOn </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#ab195293384292950ebc2166bfe360fd1">RumbleEnum</a>&#160;</td>
<td class="paramname"><em>mode</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>Turn on rumble. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mode</td><td>Either <a class="el" href="controller_enums_8h.html#ab195293384292950ebc2166bfe360fd1a5819f165165589a8e65b07bf46c7382b">RumbleHigh</a> or <a class="el" href="controller_enums_8h.html#ab195293384292950ebc2166bfe360fd1a080b52389e532b79b9e48f43ae6086ac">RumbleLow</a>. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00312">312</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="adb0f8db56bff6d61b89e9ba8bb972224"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adb0f8db56bff6d61b89e9ba8bb972224">&#9670;&nbsp;</a></span>setRumbleOn() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setRumbleOn </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>bigRumble</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>smallRumble</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> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Turn on rumble. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">bigRumble</td><td>Value for big motor. </td></tr>
<tr><td class="paramname">smallRumble</td><td>Value for small motor. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00324">324</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a39a725ebb4b95a8cf59e0440576319f8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39a725ebb4b95a8cf59e0440576319f8">&#9670;&nbsp;</a></span>setLedOff()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setLedOff </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>Turn all LEDs off. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00331">331</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a1269586cdd5447aa60ad9d32a84a8260"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1269586cdd5447aa60ad9d32a84a8260">&#9670;&nbsp;</a></span>setLed() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setLed </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>r</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>g</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>b</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> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Use this to set the color using RGB values. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">r,g,b</td><td>RGB value. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00339">339</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="aa543ae953a5fab2e438142fc9f168a9c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa543ae953a5fab2e438142fc9f168a9c">&#9670;&nbsp;</a></span>setLed() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setLed </td>
<td>(</td>
<td class="paramtype"><a class="el" href="controller_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a>&#160;</td>
<td class="paramname"><em>color</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>Use this to set the color using the predefined colors in <a class="el" href="controller_enums_8h.html#aac6fa7b0395b95cc528deaad0ce884a2">ColorsEnum</a>. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">color</td><td>The desired color. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00350">350</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a4a8c060d1eb8d2eb949beadb27019d58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4a8c060d1eb8d2eb949beadb27019d58">&#9670;&nbsp;</a></span>setPlayerLedOff()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setPlayerLedOff </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>Turn all player LEDs off. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00355">355</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a8dfbe24dbd5a79a3f6a1c76cbd9554a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8dfbe24dbd5a79a3f6a1c76cbd9554a7">&#9670;&nbsp;</a></span>setPlayerLed()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setPlayerLed </td>
<td>(</td>
<td class="paramtype">uint8_t&#160;</td>
<td class="paramname"><em>mask</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>Use this to set five player LEDs. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">mask</td><td>Bit mask to set the five player LEDs. The first 5 bits represent a LED each. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00363">363</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a85b48b47b6976786e54d9f0684203d05"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a85b48b47b6976786e54d9f0684203d05">&#9670;&nbsp;</a></span>setMicLedOff()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setMicLedOff </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>Use to turn the microphone LED off. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00369">369</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a398a544b4b2ad38ca00ecd19ab4ff9b0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a398a544b4b2ad38ca00ecd19ab4ff9b0">&#9670;&nbsp;</a></span>setMicLed()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::setMicLed </td>
<td>(</td>
<td class="paramtype">bool&#160;</td>
<td class="paramname"><em>on</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>Use this to turn the microphone LED on/off. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">on</td><td>Turn the microphone LED on/off. </td></tr>
</table>
</dd>
</dl>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00377">377</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a8ea1c748821b20c47db4f26a01fa887d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8ea1c748821b20c47db4f26a01fa887d">&#9670;&nbsp;</a></span>getMessageCounter()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">uint16_t PS5Parser::getMessageCounter </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>Get the incoming message count. </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00383">383</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a396efb4b210f86095dc21a4ba2afffed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a396efb4b210f86095dc21a4ba2afffed">&#9670;&nbsp;</a></span>Parse()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::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 PS5 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 class="definition">Definition at line <a class="el" href="_p_s5_parser_8cpp_source.html#l00089">89</a> of file <a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a>.</p>
</div>
</div>
<a id="a136b97d303936a6f3c13bb74fad521d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a136b97d303936a6f3c13bb74fad521d1">&#9670;&nbsp;</a></span>Reset()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void PS5Parser::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">protected</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Used to reset the different buffers to their default values </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8cpp_source.html#l00149">149</a> of file <a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a>.</p>
</div>
</div>
<a id="ad35f2e7d60ce26a5b220267e20d6cfa3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad35f2e7d60ce26a5b220267e20d6cfa3">&#9670;&nbsp;</a></span>sendOutputReport()</h2>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">virtual void PS5Parser::sendOutputReport </td>
<td>(</td>
<td class="paramtype"><a class="el" href="struct_p_s5_output.html">PS5Output</a> *&#160;</td>
<td class="paramname"><em>output</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">protected</span><span class="mlabel">pure virtual</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p>Send the output to the PS5 controller. This is implemented in <a class="el" href="_p_s5_b_t_8h.html">PS5BT.h</a> and <a class="el" href="_p_s5_u_s_b_8h.html">PS5USB.h</a>. </p><dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">output</td><td>Pointer to <a class="el" href="struct_p_s5_output.html">PS5Output</a> buffer; </td></tr>
</table>
</dd>
</dl>
<p>Implemented in <a class="el" href="class_p_s5_u_s_b.html#a2d64e8b4db4729a7370cc4a191c8399c">PS5USB</a>, and <a class="el" href="class_p_s5_b_t.html#a1c55a37b59d84c204c3460f2163b06fa">PS5BT</a>.</p>
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a819cd1faa12a83cd8525be60bc8c8b83"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a819cd1faa12a83cd8525be60bc8c8b83">&#9670;&nbsp;</a></span>leftTrigger</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_p_s5_trigger.html">PS5Trigger</a> PS5Parser::leftTrigger</td>
</tr>
</table>
</div><div class="memdoc">
<p>Used these to manipulate the haptic triggers </p>
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00157">157</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<a id="a3a6cf326963a4bd8b08ee4b22d456df4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3a6cf326963a4bd8b08ee4b22d456df4">&#9670;&nbsp;</a></span>rightTrigger</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="class_p_s5_trigger.html">PS5Trigger</a> PS5Parser::rightTrigger</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="_p_s5_parser_8h_source.html#l00157">157</a> of file <a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="_p_s5_parser_8h_source.html">PS5Parser.h</a></li>
<li><a class="el" href="_p_s5_parser_8cpp_source.html">PS5Parser.cpp</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.1
</small></address>
</body>
</html>