Version 4.2.1

This commit is contained in:
Armin 2024-01-27 22:49:46 +01:00
parent 3f18870edd
commit 68a3de8dcb
626 changed files with 19244 additions and 33250 deletions

View File

@ -1,2 +0,0 @@
[Picasa]
P2category=Lib

View File

@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('Contributing_8md.html',''); initResiza
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="Contributing_8md.html">Contributing.md</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('Contributors_8md.html',''); initResiza
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="Contributors_8md.html">Contributors.md</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,5 +0,0 @@
var IRFeedbackLEDDefs_8h =
[
[ "FEEDBACK_LED_OFF", "group__FeedbackLEDHardware.html#gabff30102e0a56a5abd21369c912dda4a", null ],
[ "FEEDBACK_LED_ON", "group__FeedbackLEDHardware.html#gaa50fbed29c2410ad6d6185a86cf88cf5", null ]
];

View File

@ -1,5 +0,0 @@
<map id="src/private/IRFeedbackLEDDefs.h" name="src/private/IRFeedbackLEDDefs.h">
<area shape="rect" id="node1" title="All feedback LED definitions are contained in this file." alt="" coords="5,5,221,32"/>
<area shape="rect" id="node2" href="$IRFeedbackLED_8cpp_8h.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="26,80,201,107"/>
<area shape="rect" id="node3" href="$IRremote_8h.html" title="Public API to the library." alt="" coords="60,155,167,181"/>
</map>

View File

@ -1 +0,0 @@
9d6eaeeca0e02d72f189a36ca357204c

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

View File

@ -1,173 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/private/IRFeedbackLEDDefs.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRFeedbackLEDDefs_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IRFeedbackLEDDefs.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="IRFeedbackLEDDefs_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; </div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="preprocessor">#ifndef IRFeedbackLEDDefs_h</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="preprocessor">#define IRFeedbackLEDDefs_h</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; </div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#ifdef DOXYGEN</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() digitalWrite(LED_BUILTIN, HIGH)</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"><a class="line" href="group__FeedbackLEDHardware.html#gaa50fbed29c2410ad6d6185a86cf88cf5"> 22</a></span>&#160; </div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() digitalWrite(LED_BUILTIN, LOW)</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"><a class="line" href="group__FeedbackLEDHardware.html#gabff30102e0a56a5abd21369c912dda4a"> 27</a></span>&#160; </div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment">// Sparkfun Pro Micro is __AVR_ATmega32U4__ but has different external circuit</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#elif defined(ARDUINO_AVR_PROMICRO)</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment">// We have no built in LED at pin 13 -&gt; reuse RX LED</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="preprocessor">#undef LED_BUILTIN</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#define LED_BUILTIN LED_BUILTIN_RX</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() RXLED1</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() RXLED0</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;<span class="comment">// Arduino Leonardo + others</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#elif defined(__AVR_ATmega32U4__)</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() (PORTC |= B10000000)</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() (PORTC &amp;= B01111111)</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;<span class="comment">// Arduino Uno, Nano etc</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#elif defined(__AVR_ATmega328P__) || defined(__AVR_ATmega328PB__) || defined(__AVR_ATmega168__)</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() (PORTB |= B00100000)</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() (PORTB &amp;= B11011111)</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;<span class="preprocessor">#elif defined(__AVR_ATmega1280__) || defined(__AVR_ATmega2560__)</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#define LED_BUILTIN 13</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() (PORTB |= B10000000)</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() (PORTB &amp;= B01111111)</span></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;<span class="preprocessor">#elif defined(__AVR_ATmega644P__) || defined(__AVR_ATmega644__) || defined(__AVR_ATtiny88__)</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define LED_BUILTIN 0</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() (PORTD |= B00000001)</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() (PORTD &amp;= B11111110)</span></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;<span class="comment">// TinyCore boards</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#elif defined(__AVR_ATtiny1616__) || defined(__AVR_ATtiny3216__) || defined(__AVR_ATtiny3217__)</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="comment">// No LED available on the board, take LED_BUILTIN which is also the DAC output</span></div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() (PORTC.OUTSET = _BV(6))</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() (PORTC.OUTCLR = _BV(6))</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; </div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="preprocessor">#elif defined(PARTICLE)</span></div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#define LED_BUILTIN D7</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() digitalWrite(LED_BUILTIN, 1)</span></div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() digitalWrite(LED_BUILTIN, 0)</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="comment">// Arduino Zero and BluePill and ESP8266 have an LED which is active low</span></div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#elif defined(__STM32F1__) || defined(STM32F1xx) || defined(ESP8266)</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() digitalWrite(LED_BUILTIN, LOW)</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() digitalWrite(LED_BUILTIN, HIGH)</span></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"> 72</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * Default case suitable for most boards</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"># if defined(LED_BUILTIN)</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_ON() digitalWrite(LED_BUILTIN, HIGH)</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor">#define FEEDBACK_LED_OFF() digitalWrite(LED_BUILTIN, LOW)</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> * print a warning</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="preprocessor">#warning No definition for LED_BUILTIN for default feedback LED found. Check private/IRFeedbackLEDDefs.h.</span></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">#endif</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">#endif // ! IRFeedbackLEDDefs_h</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#pragma once</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d49b597d86ed44de6eb8a459f0ed40df.html">private</a></li><li class="navelem"><a class="el" href="IRFeedbackLEDDefs_8h.html">IRFeedbackLEDDefs.h</a></li>
<li class="footer">Generated on Wed Dec 8 2021 14:58:14 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,170 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRFeedbackLED.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRFeedbackLED_8cpp_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">IRFeedbackLED.cpp.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>All Feedback LED specific functions are contained in this file.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="IRFeedbackLEDDefs_8h_source.html">private/IRFeedbackLEDDefs.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for IRFeedbackLED.cpp.h:</div>
<div class="dyncontent">
<div class="center"><img src="IRFeedbackLED_8cpp_8h__incl.png" border="0" usemap="#src_2IRFeedbackLED_8cpp_8h" alt=""/></div>
<map name="src_2IRFeedbackLED_8cpp_8h" id="src_2IRFeedbackLED_8cpp_8h">
<area shape="rect" title="All Feedback LED specific functions are contained in this file." alt="" coords="15,5,190,32"/>
<area shape="rect" href="IRFeedbackLEDDefs_8h.html" title="All feedback LED definitions are contained in this file." alt="" coords="5,80,200,107"/>
</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="IRFeedbackLED_8cpp_8h__dep__incl.png" border="0" usemap="#src_2IRFeedbackLED_8cpp_8hdep" alt=""/></div>
<map name="src_2IRFeedbackLED_8cpp_8hdep" id="src_2IRFeedbackLED_8cpp_8hdep">
<area shape="rect" title="All Feedback LED specific functions are contained in this file." alt="" coords="5,5,180,32"/>
<area shape="rect" href="IRremote_8h.html" title="Public API to the library." alt="" coords="39,80,146,107"/>
</map>
</div>
</div>
<p><a href="IRFeedbackLED_8cpp_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">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structFeedbackLEDControlStruct.html">FeedbackLEDControlStruct</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Contains pin number and enable status of the feedback LED. <a href="structFeedbackLEDControlStruct.html#details">More...</a><br /></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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gaa5949b509ec061d9239867caa628cfec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a> (uint8_t aFeedbackLEDPin, bool aEnableLEDFeedback)</td></tr>
<tr class="memdesc:gaa5949b509ec061d9239867caa628cfec"><td class="mdescLeft">&#160;</td><td class="mdescRight">Enable/disable blinking of Feedback LED (LED_BUILTIN is taken as default) on IR sending and receiving. <a href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">More...</a><br /></td></tr>
<tr class="separator:gaa5949b509ec061d9239867caa628cfec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1150b1e371cd7d424d53dbcae6619e54"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54">enableLEDFeedback</a> ()</td></tr>
<tr class="separator:ga1150b1e371cd7d424d53dbcae6619e54"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab72e6123a449de7feaaa1c3dcb9f8630"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630">disableLEDFeedback</a> ()</td></tr>
<tr class="separator:gab72e6123a449de7feaaa1c3dcb9f8630"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga072624eeba964d8aa105822da00090ba"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a> (bool aSwitchLedOn)</td></tr>
<tr class="memdesc:ga072624eeba964d8aa105822da00090ba"><td class="mdescLeft">&#160;</td><td class="mdescRight">Flash LED while receiving IR data, if enabled. <a href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">More...</a><br /></td></tr>
<tr class="separator:ga072624eeba964d8aa105822da00090ba"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5e5e9b8c7f3d8280d3ed6314eee64645"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#ga5e5e9b8c7f3d8280d3ed6314eee64645">blink13</a> (bool aEnableLEDFeedback)</td></tr>
<tr class="memdesc:ga5e5e9b8c7f3d8280d3ed6314eee64645"><td class="mdescLeft">&#160;</td><td class="mdescRight">Old deprecated function name for <a class="el" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec" title="Enable/disable blinking of Feedback LED (LED_BUILTIN is taken as default) on IR sending and receiving...">setLEDFeedback()</a> or <a class="el" href="group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54">enableLEDFeedback()</a> / <a class="el" href="group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630">disableLEDFeedback()</a> <a href="group__FeedbackLEDFunctions.html#ga5e5e9b8c7f3d8280d3ed6314eee64645">More...</a><br /></td></tr>
<tr class="separator:ga5e5e9b8c7f3d8280d3ed6314eee64645"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f1d479f43dcd56febf146e97a3904db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">setBlinkPin</a> (uint8_t aBlinkPin)</td></tr>
<tr class="memdesc:ga5f1d479f43dcd56febf146e97a3904db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Old deprecated function name for <a class="el" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec" title="Enable/disable blinking of Feedback LED (LED_BUILTIN is taken as default) on IR sending and receiving...">setLEDFeedback()</a> <a href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">More...</a><br /></td></tr>
<tr class="separator:ga5f1d479f43dcd56febf146e97a3904db"><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:ga456f04616e9881e7d85eb56c941942d2"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structFeedbackLEDControlStruct.html">FeedbackLEDControlStruct</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a></td></tr>
<tr class="memdesc:ga456f04616e9881e7d85eb56c941942d2"><td class="mdescLeft">&#160;</td><td class="mdescRight">The feedback LED control instance. <a href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">More...</a><br /></td></tr>
<tr class="separator:ga456f04616e9881e7d85eb56c941942d2"><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>All Feedback LED specific functions are contained in this file. </p>
<p>This file is part of Arduino-IRremote <a href="https://github.com/Arduino-IRremote/Arduino-IRremote">https://github.com/Arduino-IRremote/Arduino-IRremote</a>.</p>
<p>MIT License</p>
<p>Copyright (c) 2021 Armin Joachimsmeyer</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </p>
<p class="definition">Definition in file <a class="el" href="IRFeedbackLED_8cpp_8h_source.html">IRFeedbackLED.cpp.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRFeedbackLED_8cpp_8h.html">IRFeedbackLED.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:01 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,10 +0,0 @@
var IRFeedbackLED_8cpp_8h =
[
[ "blink13", "group__FeedbackLEDFunctions.html#ga5e5e9b8c7f3d8280d3ed6314eee64645", null ],
[ "disableLEDFeedback", "group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630", null ],
[ "enableLEDFeedback", "group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54", null ],
[ "setBlinkPin", "group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db", null ],
[ "setFeedbackLED", "group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba", null ],
[ "setLEDFeedback", "group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec", null ],
[ "FeedbackLEDControl", "group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2", null ]
];

View File

@ -1,4 +0,0 @@
<map id="src/IRFeedbackLED.cpp.h" name="src/IRFeedbackLED.cpp.h">
<area shape="rect" id="node1" title="All Feedback LED specific functions are contained in this file." alt="" coords="5,5,180,32"/>
<area shape="rect" id="node2" href="$IRremote_8h.html" title="Public API to the library." alt="" coords="39,80,146,107"/>
</map>

View File

@ -1 +0,0 @@
e7b58d8950888240e59008e424d1857a

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,4 +0,0 @@
<map id="src/IRFeedbackLED.cpp.h" name="src/IRFeedbackLED.cpp.h">
<area shape="rect" id="node1" title="All Feedback LED specific functions are contained in this file." alt="" coords="15,5,190,32"/>
<area shape="rect" id="node2" href="$IRFeedbackLEDDefs_8h.html" title="All feedback LED definitions are contained in this file." alt="" coords="5,80,200,107"/>
</map>

View File

@ -1 +0,0 @@
9cb7008d68e66b50efcc57c822be913a

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

View File

@ -1,187 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRFeedbackLED.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRFeedbackLED_8cpp_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IRFeedbackLED.cpp.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="IRFeedbackLED_8cpp_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"><a class="line" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2"> 1</a></span>&#160; </div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRFeedbackLEDDefs_8h.html">private/IRFeedbackLEDDefs.h</a>&quot;</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; </div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="structFeedbackLEDControlStruct.html"> 41</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structFeedbackLEDControlStruct.html">FeedbackLEDControlStruct</a> {</div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c"> 42</a></span>&#160; uint8_t <a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a>; </div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500"> 43</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">LedFeedbackEnabled</a>; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;};</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;<span class="keyword">struct </span><a class="code" href="structFeedbackLEDControlStruct.html">FeedbackLEDControlStruct</a> <a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>; </div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; </div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec"> 53</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a>(uint8_t aFeedbackLEDPin, <span class="keywordtype">bool</span> aEnableLEDFeedback) {</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a> = aFeedbackLEDPin; <span class="comment">// default is 0</span></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; <a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">LedFeedbackEnabled</a> = aEnableLEDFeedback;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160; <span class="keywordflow">if</span> (aEnableLEDFeedback) {</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keywordflow">if</span> (aFeedbackLEDPin != <a class="code" href="IRremoteInt_8h.html#a575e74508c30d1ccf92f7e142a43dd3d">USE_DEFAULT_FEEDBACK_LED_PIN</a>) {</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160; pinMode(aFeedbackLEDPin, OUTPUT);</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="preprocessor">#ifdef LED_BUILTIN</span></div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160; pinMode(LED_BUILTIN, OUTPUT);</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif</span></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="l00066"></a><span class="lineno"> 66</span>&#160;}</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"><a class="line" href="group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54"> 68</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54">enableLEDFeedback</a>() {</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">LedFeedbackEnabled</a> = <span class="keyword">true</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"> 71</span>&#160; </div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630"> 72</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630">disableLEDFeedback</a>() {</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">LedFeedbackEnabled</a> = <span class="keyword">false</span>;</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="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor">#if defined(ESP32)</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;IRAM_ATTR</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba"> 83</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a>(<span class="keywordtype">bool</span> aSwitchLedOn) {</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">LedFeedbackEnabled</a>) {</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keywordflow">if</span> (aSwitchLedOn) {</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a> != <a class="code" href="IRremoteInt_8h.html#a575e74508c30d1ccf92f7e142a43dd3d">USE_DEFAULT_FEEDBACK_LED_PIN</a>) {</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="preprocessor">#if defined(FEEDBACK_LED_IS_ACTIVE_LOW)</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; digitalWrite(<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a>, LOW); <span class="comment">// Turn user defined pin LED on</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; digitalWrite(<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a>, HIGH); <span class="comment">// Turn user defined pin LED on</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">#ifdef FEEDBACK_LED_ON</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; <a class="code" href="group__FeedbackLEDHardware.html#gaa50fbed29c2410ad6d6185a86cf88cf5">FEEDBACK_LED_ON</a>(); <span class="comment">// if no user defined LED pin, turn default LED pin for the hardware on</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="preprocessor">#endif</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="keywordflow">else</span> {</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a> != <a class="code" href="IRremoteInt_8h.html#a575e74508c30d1ccf92f7e142a43dd3d">USE_DEFAULT_FEEDBACK_LED_PIN</a>) {</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">#if defined(FEEDBACK_LED_IS_ACTIVE_LOW)</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; digitalWrite(<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a>, HIGH); <span class="comment">// Turn user defined pin LED off</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160; digitalWrite(<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a>, LOW); <span class="comment">// Turn user defined pin LED off</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#ifdef FEEDBACK_LED_OFF</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <a class="code" href="group__FeedbackLEDHardware.html#gabff30102e0a56a5abd21369c912dda4a">FEEDBACK_LED_OFF</a>(); <span class="comment">// if no user defined LED pin, turn default LED pin for the hardware on</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#endif</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; }</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"> 112</span>&#160; </div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="group__FeedbackLEDFunctions.html#ga5e5e9b8c7f3d8280d3ed6314eee64645"> 116</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__FeedbackLEDFunctions.html#ga5e5e9b8c7f3d8280d3ed6314eee64645">blink13</a>(<span class="keywordtype">bool</span> aEnableLEDFeedback) {</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a>(<a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDPin</a>, aEnableLEDFeedback);</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;}</div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db"> 122</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">setBlinkPin</a>(uint8_t aBlinkPin) {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a>(aBlinkPin, <a class="code" href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a>.<a class="code" href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">LedFeedbackEnabled</a>);</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;}</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga072624eeba964d8aa105822da00090ba"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a></div><div class="ttdeci">void setFeedbackLED(bool aSwitchLedOn)</div><div class="ttdoc">Flash LED while receiving IR data, if enabled.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00083">IRFeedbackLED.cpp.h:83</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga5f1d479f43dcd56febf146e97a3904db"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">setBlinkPin</a></div><div class="ttdeci">void setBlinkPin(uint8_t aBlinkPin)</div><div class="ttdoc">Old deprecated function name for setLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00122">IRFeedbackLED.cpp.h:122</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga1150b1e371cd7d424d53dbcae6619e54"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54">enableLEDFeedback</a></div><div class="ttdeci">void enableLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00068">IRFeedbackLED.cpp.h:68</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_gaa5949b509ec061d9239867caa628cfec"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a></div><div class="ttdeci">void setLEDFeedback(uint8_t aFeedbackLEDPin, bool aEnableLEDFeedback)</div><div class="ttdoc">Enable/disable blinking of Feedback LED (LED_BUILTIN is taken as default) on IR sending and receiving...</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00053">IRFeedbackLED.cpp.h:53</a></div></div>
<div class="ttc" id="astructFeedbackLEDControlStruct_html"><div class="ttname"><a href="structFeedbackLEDControlStruct.html">FeedbackLEDControlStruct</a></div><div class="ttdoc">Contains pin number and enable status of the feedback LED.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00041">IRFeedbackLED.cpp.h:41</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDHardware_html_gaa50fbed29c2410ad6d6185a86cf88cf5"><div class="ttname"><a href="group__FeedbackLEDHardware.html#gaa50fbed29c2410ad6d6185a86cf88cf5">FEEDBACK_LED_ON</a></div><div class="ttdeci">#define FEEDBACK_LED_ON()</div><div class="ttdoc">Board dependent macro to turn LED_BUILTIN on.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLEDDefs_8h_source.html#l00022">IRFeedbackLEDDefs.h:21</a></div></div>
<div class="ttc" id="astructFeedbackLEDControlStruct_html_a759f018b8bdb93695bd4ebb0d61a3c4c"><div class="ttname"><a href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDControlStruct::FeedbackLEDPin</a></div><div class="ttdeci">uint8_t FeedbackLEDPin</div><div class="ttdoc">if 0, then take board specific FEEDBACK_LED_ON() and FEEDBACK_LED_OFF() functions</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00042">IRFeedbackLED.cpp.h:42</a></div></div>
<div class="ttc" id="astructFeedbackLEDControlStruct_html_a49467187b92e40e5122b14d82a9fa500"><div class="ttname"><a href="structFeedbackLEDControlStruct.html#a49467187b92e40e5122b14d82a9fa500">FeedbackLEDControlStruct::LedFeedbackEnabled</a></div><div class="ttdeci">bool LedFeedbackEnabled</div><div class="ttdoc">true -&gt; enable blinking of pin on IR processing</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00043">IRFeedbackLED.cpp.h:43</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_gab72e6123a449de7feaaa1c3dcb9f8630"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630">disableLEDFeedback</a></div><div class="ttdeci">void disableLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00072">IRFeedbackLED.cpp.h:72</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga5e5e9b8c7f3d8280d3ed6314eee64645"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga5e5e9b8c7f3d8280d3ed6314eee64645">blink13</a></div><div class="ttdeci">void blink13(bool aEnableLEDFeedback)</div><div class="ttdoc">Old deprecated function name for setLEDFeedback() or enableLEDFeedback() / disableLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00116">IRFeedbackLED.cpp.h:116</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDHardware_html_gabff30102e0a56a5abd21369c912dda4a"><div class="ttname"><a href="group__FeedbackLEDHardware.html#gabff30102e0a56a5abd21369c912dda4a">FEEDBACK_LED_OFF</a></div><div class="ttdeci">#define FEEDBACK_LED_OFF()</div><div class="ttdoc">Board dependent macro to turn LED_BUILTIN off.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLEDDefs_8h_source.html#l00027">IRFeedbackLEDDefs.h:26</a></div></div>
<div class="ttc" id="aIRFeedbackLEDDefs_8h_html"><div class="ttname"><a href="IRFeedbackLEDDefs_8h.html">IRFeedbackLEDDefs.h</a></div><div class="ttdoc">All feedback LED definitions are contained in this file.</div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga456f04616e9881e7d85eb56c941942d2"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a></div><div class="ttdeci">struct FeedbackLEDControlStruct FeedbackLEDControl</div><div class="ttdoc">The feedback LED control instance.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00001">IRFeedbackLED.cpp.h:46</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a575e74508c30d1ccf92f7e142a43dd3d"><div class="ttname"><a href="IRremoteInt_8h.html#a575e74508c30d1ccf92f7e142a43dd3d">USE_DEFAULT_FEEDBACK_LED_PIN</a></div><div class="ttdeci">#define USE_DEFAULT_FEEDBACK_LED_PIN</div><div class="ttdoc">Just for better readability of code.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00178">IRremoteInt.h:177</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRFeedbackLED_8cpp_8h.html">IRFeedbackLED.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:00 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -155,7 +155,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRFeedbackLED_8hpp.html">IRFeedbackLED.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -193,18 +193,18 @@ $(document).ready(function(){initNavTree('IRFeedbackLED_8hpp_source.html',''); i
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga072624eeba964d8aa105822da00090ba"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a></div><div class="ttdeci">void setFeedbackLED(bool aSwitchLedOn)</div><div class="ttdoc">Flash LED while receiving or sending IR data.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00108">IRFeedbackLED.hpp:108</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga5f1d479f43dcd56febf146e97a3904db"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">setBlinkPin</a></div><div class="ttdeci">void setBlinkPin(uint8_t aBlinkPin)</div><div class="ttdoc">Old deprecated function name for setLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00153">IRFeedbackLED.hpp:153</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga1150b1e371cd7d424d53dbcae6619e54"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54">enableLEDFeedback</a></div><div class="ttdeci">void enableLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00085">IRFeedbackLED.hpp:85</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a99fa3e1d72f2f1a9ffba996b06767a39"><div class="ttname"><a href="digitalWriteFast_8h.html#a99fa3e1d72f2f1a9ffba996b06767a39">pinModeFast</a></div><div class="ttdeci">#define pinModeFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00356">digitalWriteFast.h:355</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a9bef074dfc5a83ffbb27929185ef9597"><div class="ttname"><a href="digitalWriteFast_8h.html#a9bef074dfc5a83ffbb27929185ef9597">digitalWriteFast</a></div><div class="ttdeci">#define digitalWriteFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00324">digitalWriteFast.h:323</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a99fa3e1d72f2f1a9ffba996b06767a39"><div class="ttname"><a href="digitalWriteFast_8h.html#a99fa3e1d72f2f1a9ffba996b06767a39">pinModeFast</a></div><div class="ttdeci">#define pinModeFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00372">digitalWriteFast.h:371</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a9bef074dfc5a83ffbb27929185ef9597"><div class="ttname"><a href="digitalWriteFast_8h.html#a9bef074dfc5a83ffbb27929185ef9597">digitalWriteFast</a></div><div class="ttdeci">#define digitalWriteFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00340">digitalWriteFast.h:339</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga880ead90165a961244c8fc7da2375083"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga880ead90165a961244c8fc7da2375083">disableLEDFeedbackForSend</a></div><div class="ttdeci">void disableLEDFeedbackForSend()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00097">IRFeedbackLED.hpp:97</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_gac7fc50c7e08b8c339b2c1c912a0c6e89"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#gac7fc50c7e08b8c339b2c1c912a0c6e89">IRrecv::blink13</a></div><div class="ttdeci">void blink13(uint8_t aEnableLEDFeedback) __attribute__((deprecated(&quot;Please use setLEDFeedback() or enableLEDFeedback() / disableLEDFeedback().&quot;)))</div><div class="ttdoc">Old deprecated function name for setLEDFeedback() or enableLEDFeedback() / disableLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00147">IRFeedbackLED.hpp:147</a></div></div>
<div class="ttc" id="astructFeedbackLEDControlStruct_html"><div class="ttname"><a href="structFeedbackLEDControlStruct.html">FeedbackLEDControlStruct</a></div><div class="ttdoc">Contains pin number and enable status of the feedback LED.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00042">IRFeedbackLED.hpp:42</a></div></div>
<div class="ttc" id="astructFeedbackLEDControlStruct_html_aaca16b47301e6cc0fcd0c76216f76417"><div class="ttname"><a href="structFeedbackLEDControlStruct.html#aaca16b47301e6cc0fcd0c76216f76417">FeedbackLEDControlStruct::LedFeedbackEnabled</a></div><div class="ttdeci">uint8_t LedFeedbackEnabled</div><div class="ttdoc">LED_FEEDBACK_ENABLED_FOR_RECEIVE or LED_FEEDBACK_ENABLED_FOR_SEND -&gt; enable blinking of pin on IR pro...</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00044">IRFeedbackLED.hpp:44</a></div></div>
<div class="ttc" id="astructFeedbackLEDControlStruct_html_a759f018b8bdb93695bd4ebb0d61a3c4c"><div class="ttname"><a href="structFeedbackLEDControlStruct.html#a759f018b8bdb93695bd4ebb0d61a3c4c">FeedbackLEDControlStruct::FeedbackLEDPin</a></div><div class="ttdeci">uint8_t FeedbackLEDPin</div><div class="ttdoc">if 0, then take board specific FEEDBACK_LED_ON() and FEEDBACK_LED_OFF() functions</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00043">IRFeedbackLED.hpp:43</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a98da0891dfea82ad6fa9b7769afe550e"><div class="ttname"><a href="IRremoteInt_8h.html#a98da0891dfea82ad6fa9b7769afe550e">LED_FEEDBACK_ENABLED_FOR_SEND</a></div><div class="ttdeci">#define LED_FEEDBACK_ENABLED_FOR_SEND</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00342">IRremoteInt.h:341</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a98da0891dfea82ad6fa9b7769afe550e"><div class="ttname"><a href="IRremoteInt_8h.html#a98da0891dfea82ad6fa9b7769afe550e">LED_FEEDBACK_ENABLED_FOR_SEND</a></div><div class="ttdeci">#define LED_FEEDBACK_ENABLED_FOR_SEND</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00354">IRremoteInt.h:353</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_gab72e6123a449de7feaaa1c3dcb9f8630"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#gab72e6123a449de7feaaa1c3dcb9f8630">disableLEDFeedback</a></div><div class="ttdeci">void disableLEDFeedback()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00089">IRFeedbackLED.hpp:89</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a20df6d7738730db43a872d88e744b411"><div class="ttname"><a href="IRremoteInt_8h.html#a20df6d7738730db43a872d88e744b411">DO_NOT_ENABLE_LED_FEEDBACK</a></div><div class="ttdeci">#define DO_NOT_ENABLE_LED_FEEDBACK</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00339">IRremoteInt.h:338</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a89f956d1675afae9fe0e421c322af7c9"><div class="ttname"><a href="IRremoteInt_8h.html#a89f956d1675afae9fe0e421c322af7c9">LED_FEEDBACK_ENABLED_FOR_RECEIVE</a></div><div class="ttdeci">#define LED_FEEDBACK_ENABLED_FOR_RECEIVE</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00341">IRremoteInt.h:340</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a72176857aa388ce2705ca50d62327809"><div class="ttname"><a href="IRremoteInt_8h.html#a72176857aa388ce2705ca50d62327809">LED_FEEDBACK_DISABLED_COMPLETELY</a></div><div class="ttdeci">#define LED_FEEDBACK_DISABLED_COMPLETELY</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00340">IRremoteInt.h:339</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a20df6d7738730db43a872d88e744b411"><div class="ttname"><a href="IRremoteInt_8h.html#a20df6d7738730db43a872d88e744b411">DO_NOT_ENABLE_LED_FEEDBACK</a></div><div class="ttdeci">#define DO_NOT_ENABLE_LED_FEEDBACK</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00351">IRremoteInt.h:350</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a89f956d1675afae9fe0e421c322af7c9"><div class="ttname"><a href="IRremoteInt_8h.html#a89f956d1675afae9fe0e421c322af7c9">LED_FEEDBACK_ENABLED_FOR_RECEIVE</a></div><div class="ttdeci">#define LED_FEEDBACK_ENABLED_FOR_RECEIVE</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00353">IRremoteInt.h:352</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a72176857aa388ce2705ca50d62327809"><div class="ttname"><a href="IRremoteInt_8h.html#a72176857aa388ce2705ca50d62327809">LED_FEEDBACK_DISABLED_COMPLETELY</a></div><div class="ttdeci">#define LED_FEEDBACK_DISABLED_COMPLETELY</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00352">IRremoteInt.h:351</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga69bc794d3cfd1600a264a1dbbdd28ef7"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga69bc794d3cfd1600a264a1dbbdd28ef7">enableLEDFeedbackForSend</a></div><div class="ttdeci">void enableLEDFeedbackForSend()</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00093">IRFeedbackLED.hpp:93</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga456f04616e9881e7d85eb56c941942d2"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga456f04616e9881e7d85eb56c941942d2">FeedbackLEDControl</a></div><div class="ttdeci">struct FeedbackLEDControlStruct FeedbackLEDControl</div><div class="ttdoc">The feedback LED control instance.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8hpp_source.html#l00001">IRFeedbackLED.hpp:47</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a575e74508c30d1ccf92f7e142a43dd3d"><div class="ttname"><a href="IRremoteInt_8h.html#a575e74508c30d1ccf92f7e142a43dd3d">USE_DEFAULT_FEEDBACK_LED_PIN</a></div><div class="ttdeci">#define USE_DEFAULT_FEEDBACK_LED_PIN</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00065">IRremoteInt.h:64</a></div></div>
@ -213,7 +213,7 @@ $(document).ready(function(){initNavTree('IRFeedbackLED_8hpp_source.html',''); i
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRFeedbackLED_8hpp.html">IRFeedbackLED.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -110,46 +110,62 @@ This graph shows which files directly or indirectly include this file:</div>
<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">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structPulseDistanceWidthProtocolConstants.html">PulseDistanceWidthProtocolConstants</a></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structDistanceWidthTimingInfoStruct.html">DistanceWidthTimingInfoStruct</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="structIRData.html">IRData</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Data structure for the user application, available as decodedIRData. <a href="structIRData.html#details">More...</a><br /></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="structPulseDistanceWidthProtocolConstants.html">PulseDistanceWidthProtocolConstants</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:a8a2dbf77031a92783a200b9902c8459b"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a8a2dbf77031a92783a200b9902c8459b">SIRCS_12_PROTOCOL</a>&#160;&#160;&#160;12</td></tr>
<tr class="separator:a8a2dbf77031a92783a200b9902c8459b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a75fe4989c11b3e3176262acfa9bce2ce"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a75fe4989c11b3e3176262acfa9bce2ce">SIRCS_15_PROTOCOL</a>&#160;&#160;&#160;15</td></tr>
<tr class="separator:a75fe4989c11b3e3176262acfa9bce2ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4014bf0435ac7da04aa0bb1b0949eb8e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a4014bf0435ac7da04aa0bb1b0949eb8e">SIRCS_20_PROTOCOL</a>&#160;&#160;&#160;20</td></tr>
<tr class="separator:a4014bf0435ac7da04aa0bb1b0949eb8e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad670ce496c4a3352cb9929284db11928"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#ad670ce496c4a3352cb9929284db11928">IRDATA_FLAGS_EMPTY</a>&#160;&#160;&#160;0x00</td></tr>
<tr class="separator:ad670ce496c4a3352cb9929284db11928"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aaa9952cd64b58083c28873484c494abf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#aaa9952cd64b58083c28873484c494abf">IRDATA_FLAGS_IS_REPEAT</a>&#160;&#160;&#160;0x01</td></tr>
<tr class="memdesc:aaa9952cd64b58083c28873484c494abf"><td class="mdescLeft">&#160;</td><td class="mdescRight">The gap between the preceding frame is as smaller than the maximum gap expected for a repeat. !!!We do not check for changed command or address, because it is almost not possible to press 2 different buttons on the remote within around 100 ms!!! <a href="IRProtocol_8h.html#aaa9952cd64b58083c28873484c494abf">More...</a><br /></td></tr>
<tr class="separator:aaa9952cd64b58083c28873484c494abf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c5e6ae69aa440bfa132550d120ace08"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a5c5e6ae69aa440bfa132550d120ace08">IRDATA_FLAGS_IS_AUTO_REPEAT</a>&#160;&#160;&#160;0x02</td></tr>
<tr class="memdesc:a5c5e6ae69aa440bfa132550d120ace08"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current repeat frame is a repeat, that is always sent after a regular frame and cannot be avoided. Only specified for protocols DENON, and LEGO. <a href="IRProtocol_8h.html#a5c5e6ae69aa440bfa132550d120ace08">More...</a><br /></td></tr>
<tr class="separator:a5c5e6ae69aa440bfa132550d120ace08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1a60f95f0885b1865dc5514ddd80e093"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093">IRDATA_FLAGS_PARITY_FAILED</a>&#160;&#160;&#160;0x04</td></tr>
<tr class="memdesc:a1a60f95f0885b1865dc5514ddd80e093"><td class="mdescLeft">&#160;</td><td class="mdescRight">the current (autorepeat) frame violated parity check <a href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093">More...</a><br /></td></tr>
<tr class="memdesc:a1a60f95f0885b1865dc5514ddd80e093"><td class="mdescLeft">&#160;</td><td class="mdescRight">The current (autorepeat) frame violated parity check. <a href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093">More...</a><br /></td></tr>
<tr class="separator:a1a60f95f0885b1865dc5514ddd80e093"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a169a0ae23ab363f24027f769881db0b0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0">IRDATA_FLAGS_TOGGLE_BIT</a>&#160;&#160;&#160;0x08</td></tr>
<tr class="memdesc:a169a0ae23ab363f24027f769881db0b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">is set if RC5 or RC6 toggle bit is set <a href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0">More...</a><br /></td></tr>
<tr class="memdesc:a169a0ae23ab363f24027f769881db0b0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Is set if RC5 or RC6 toggle bit is set. <a href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0">More...</a><br /></td></tr>
<tr class="separator:a169a0ae23ab363f24027f769881db0b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a8eaa19dc6174814fedc9d5b495560c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a6a8eaa19dc6174814fedc9d5b495560c">IRDATA_TOGGLE_BIT_MASK</a>&#160;&#160;&#160;0x08</td></tr>
<tr class="memdesc:a6a8eaa19dc6174814fedc9d5b495560c"><td class="mdescLeft">&#160;</td><td class="mdescRight">deprecated -is set if RC5 or RC6 toggle bit is set. <a href="IRProtocol_8h.html#a6a8eaa19dc6174814fedc9d5b495560c">More...</a><br /></td></tr>
<tr class="separator:a6a8eaa19dc6174814fedc9d5b495560c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf3b16f9ab35f4e4b95c8c362aca2d71"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71">IRDATA_FLAGS_EXTRA_INFO</a>&#160;&#160;&#160;0x10</td></tr>
<tr class="memdesc:abf3b16f9ab35f4e4b95c8c362aca2d71"><td class="mdescLeft">&#160;</td><td class="mdescRight">There is extra info not contained in address and data (e.g. Kaseikyo unknown vendor ID, or in decodedRawDataArray) <a href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71">More...</a><br /></td></tr>
<tr class="memdesc:abf3b16f9ab35f4e4b95c8c362aca2d71"><td class="mdescLeft">&#160;</td><td class="mdescRight">There is extra info not contained in address and data (e.g. Kaseikyo unknown vendor ID, or in decodedRawDataArray). <a href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71">More...</a><br /></td></tr>
<tr class="separator:abf3b16f9ab35f4e4b95c8c362aca2d71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1acaa14d5a437ad317e17489e845f401"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401">IRDATA_FLAGS_WAS_OVERFLOW</a>&#160;&#160;&#160;0x40</td></tr>
<tr class="memdesc:a1acaa14d5a437ad317e17489e845f401"><td class="mdescLeft">&#160;</td><td class="mdescRight">irparams.rawlen is set to 0 in this case to avoid endless OverflowFlag <a href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401">More...</a><br /></td></tr>
<tr class="memdesc:a1acaa14d5a437ad317e17489e845f401"><td class="mdescLeft">&#160;</td><td class="mdescRight">irparams.rawlen is set to 0 in this case to avoid endless OverflowFlag. <a href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401">More...</a><br /></td></tr>
<tr class="separator:a1acaa14d5a437ad317e17489e845f401"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f6872e6f83c0571e3150ba86428af4c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c">IRDATA_FLAGS_IS_MSB_FIRST</a>&#160;&#160;&#160;0x80</td></tr>
<tr class="memdesc:a7f6872e6f83c0571e3150ba86428af4c"><td class="mdescLeft">&#160;</td><td class="mdescRight">Value is mainly determined by the (known) protocol. <a href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c">More...</a><br /></td></tr>
<tr class="separator:a7f6872e6f83c0571e3150ba86428af4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a035e96118f9daf6d8e5152a1ae466538"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a035e96118f9daf6d8e5152a1ae466538">IRDATA_FLAGS_IS_LSB_FIRST</a>&#160;&#160;&#160;0x00</td></tr>
<tr class="separator:a035e96118f9daf6d8e5152a1ae466538"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6a8eaa19dc6174814fedc9d5b495560c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a6a8eaa19dc6174814fedc9d5b495560c">IRDATA_TOGGLE_BIT_MASK</a>&#160;&#160;&#160;0x08</td></tr>
<tr class="memdesc:a6a8eaa19dc6174814fedc9d5b495560c"><td class="mdescLeft">&#160;</td><td class="mdescRight">is set if RC5 or RC6 toggle bit is set <a href="IRProtocol_8h.html#a6a8eaa19dc6174814fedc9d5b495560c">More...</a><br /></td></tr>
<tr class="separator:a6a8eaa19dc6174814fedc9d5b495560c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1ad0810b4eae20c260180a1c4d9f359e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e">RAW_DATA_ARRAY_SIZE</a>&#160;&#160;&#160;((((<a class="el" href="IRremoteInt_8h.html#a589aa40429eeb37b6e83a2c09854a47b">RAW_BUFFER_LENGTH</a> - 2) - 1) / 64) + 1)</td></tr>
<tr class="memitem:a1ad0810b4eae20c260180a1c4d9f359e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e">RAW_DATA_ARRAY_SIZE</a>&#160;&#160;&#160;((((<a class="el" href="IRremoteInt_8h.html#a589aa40429eeb37b6e83a2c09854a47b">RAW_BUFFER_LENGTH</a> - 2) - 1) / (2 * <a class="el" href="IRremoteInt_8h.html#a7687558679e30d4e0b460e58198da55e">BITS_IN_RAW_DATA_TYPE</a>)) + 1)</td></tr>
<tr class="separator:a1ad0810b4eae20c260180a1c4d9f359e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8717702b4019c982727719bd40af7630"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a8717702b4019c982727719bd40af7630">PROTOCOL_IS_LSB_FIRST</a>&#160;&#160;&#160;false</td></tr>
<tr class="separator:a8717702b4019c982727719bd40af7630"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db53e8319cd3f5de758337fa08552d0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a2db53e8319cd3f5de758337fa08552d0">PROTOCOL_IS_MSB_FIRST</a>&#160;&#160;&#160;true</td></tr>
<tr class="memitem:adbc2fb58befbed8b45912fa31eb2dbcf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#adbc2fb58befbed8b45912fa31eb2dbcf">SUPPRESS_STOP_BIT_FOR_THIS_DATA</a>&#160;&#160;&#160;0x20</td></tr>
<tr class="separator:adbc2fb58befbed8b45912fa31eb2dbcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2db53e8319cd3f5de758337fa08552d0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a2db53e8319cd3f5de758337fa08552d0">PROTOCOL_IS_MSB_FIRST</a>&#160;&#160;&#160;<a class="el" href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c">IRDATA_FLAGS_IS_MSB_FIRST</a></td></tr>
<tr class="separator:a2db53e8319cd3f5de758337fa08552d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8717702b4019c982727719bd40af7630"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a8717702b4019c982727719bd40af7630">PROTOCOL_IS_LSB_FIRST</a>&#160;&#160;&#160;<a class="el" href="IRProtocol_8h.html#a035e96118f9daf6d8e5152a1ae466538">IRDATA_FLAGS_IS_LSB_FIRST</a></td></tr>
<tr class="separator:a8717702b4019c982727719bd40af7630"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48e176b38988494bc725ac4fa98c534a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a48e176b38988494bc725ac4fa98c534a">SEND_STOP_BIT</a>&#160;&#160;&#160;true</td></tr>
<tr class="separator:a48e176b38988494bc725ac4fa98c534a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8683da8ac98548ba8f446f3ccfc83c11"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a8683da8ac98548ba8f446f3ccfc83c11">SEND_NO_STOP_BIT</a>&#160;&#160;&#160;false</td></tr>
<tr class="separator:a8683da8ac98548ba8f446f3ccfc83c11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28c405223cc0e826050ab76e204238ac"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a28c405223cc0e826050ab76e204238ac">BEO_KHZ</a>&#160;&#160;&#160;455</td></tr>
<tr class="separator:a28c405223cc0e826050ab76e204238ac"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5dcaa6ec48a7a0b663e5de0ce853a541"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRProtocol_8h.html#a5dcaa6ec48a7a0b663e5de0ce853a541">SONY_KHZ</a>&#160;&#160;&#160;40</td></tr>
@ -209,7 +225,8 @@ Enumerations</h2></td></tr>
<a class="el" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510">LEGO_PF</a>,
<a class="el" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100">MAGIQUEST</a>,
<br />
&#160;&#160;<a class="el" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c">WHYNTER</a>
&#160;&#160;<a class="el" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c">WHYNTER</a>,
<a class="el" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de">FAST</a>
<br />
}</td></tr>
<tr class="memdesc:ad5b287a488a8c1b7b8661f029ab56fad"><td class="mdescLeft">&#160;</td><td class="mdescRight">An enum consisting of all supported formats. <a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">More...</a><br /></td></tr>
@ -231,7 +248,7 @@ Functions</h2></td></tr>
<div class="textblock"><p>Common declarations for receiving and sending. </p>
<p>This file is part of Arduino-IRremote <a href="https://github.com/Arduino-IRremote/Arduino-IRremote">https://github.com/Arduino-IRremote/Arduino-IRremote</a>.</p>
<p>MIT License</p>
<p>Copyright (c) 2020-2022 Armin Joachimsmeyer</p>
<p>Copyright (c) 2020-2023 Armin Joachimsmeyer</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </p>
@ -250,7 +267,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00137">137</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00147">147</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -266,7 +283,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00140">140</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00150">150</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -282,7 +299,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00141">141</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00151">151</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -298,7 +315,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00094">94</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00092">92</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -314,9 +331,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>There is extra info not contained in address and data (e.g. Kaseikyo unknown vendor ID, or in decodedRawDataArray) </p>
<p>There is extra info not contained in address and data (e.g. Kaseikyo unknown vendor ID, or in decodedRawDataArray). </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00099">99</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00098">98</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -332,7 +349,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00096">96</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p>The current repeat frame is a repeat, that is always sent after a regular frame and cannot be avoided. Only specified for protocols DENON, and LEGO. </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00094">94</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -348,7 +367,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00102">102</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00101">101</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -366,7 +385,7 @@ Functions</h2></td></tr>
<p>Value is mainly determined by the (known) protocol. </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00101">101</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00100">100</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -382,7 +401,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00095">95</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p>The gap between the preceding frame is as smaller than the maximum gap expected for a repeat. !!!We do not check for changed command or address, because it is almost not possible to press 2 different buttons on the remote within around 100 ms!!! </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00093">93</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -398,9 +419,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>the current (autorepeat) frame violated parity check </p>
<p>The current (autorepeat) frame violated parity check. </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00097">97</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00095">95</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -416,9 +437,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>is set if RC5 or RC6 toggle bit is set </p>
<p>Is set if RC5 or RC6 toggle bit is set. </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00098">98</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00096">96</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -434,9 +455,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>irparams.rawlen is set to 0 in this case to avoid endless OverflowFlag </p>
<p>irparams.rawlen is set to 0 in this case to avoid endless OverflowFlag. </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00100">100</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00099">99</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -452,9 +473,9 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p>is set if RC5 or RC6 toggle bit is set </p>
<p>deprecated -is set if RC5 or RC6 toggle bit is set. </p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00105">105</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00097">97</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -470,7 +491,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00142">142</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00152">152</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -486,7 +507,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00146">146</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00156">156</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -502,7 +523,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00143">143</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00153">153</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -518,7 +539,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00144">144</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00154">154</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -529,12 +550,12 @@ Functions</h2></td></tr>
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PROTOCOL_IS_LSB_FIRST&#160;&#160;&#160;false</td>
<td class="memname">#define PROTOCOL_IS_LSB_FIRST&#160;&#160;&#160;<a class="el" href="IRProtocol_8h.html#a035e96118f9daf6d8e5152a1ae466538">IRDATA_FLAGS_IS_LSB_FIRST</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00130">130</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00138">138</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -545,12 +566,12 @@ Functions</h2></td></tr>
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define PROTOCOL_IS_MSB_FIRST&#160;&#160;&#160;true</td>
<td class="memname">#define PROTOCOL_IS_MSB_FIRST&#160;&#160;&#160;<a class="el" href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c">IRDATA_FLAGS_IS_MSB_FIRST</a></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00131">131</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00137">137</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -561,12 +582,12 @@ Functions</h2></td></tr>
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define RAW_DATA_ARRAY_SIZE&#160;&#160;&#160;((((<a class="el" href="IRremoteInt_8h.html#a589aa40429eeb37b6e83a2c09854a47b">RAW_BUFFER_LENGTH</a> - 2) - 1) / 64) + 1)</td>
<td class="memname">#define RAW_DATA_ARRAY_SIZE&#160;&#160;&#160;((((<a class="el" href="IRremoteInt_8h.html#a589aa40429eeb37b6e83a2c09854a47b">RAW_BUFFER_LENGTH</a> - 2) - 1) / (2 * <a class="el" href="IRremoteInt_8h.html#a7687558679e30d4e0b460e58198da55e">BITS_IN_RAW_DATA_TYPE</a>)) + 1)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00108">108</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00103">103</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -582,7 +603,7 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00147">147</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00157">157</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -598,7 +619,87 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00145">145</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00155">155</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
<a id="a8683da8ac98548ba8f446f3ccfc83c11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8683da8ac98548ba8f446f3ccfc83c11">&#9670;&nbsp;</a></span>SEND_NO_STOP_BIT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SEND_NO_STOP_BIT&#160;&#160;&#160;false</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00141">141</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
<a id="a48e176b38988494bc725ac4fa98c534a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48e176b38988494bc725ac4fa98c534a">&#9670;&nbsp;</a></span>SEND_STOP_BIT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SEND_STOP_BIT&#160;&#160;&#160;true</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00140">140</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
<a id="a8a2dbf77031a92783a200b9902c8459b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8a2dbf77031a92783a200b9902c8459b">&#9670;&nbsp;</a></span>SIRCS_12_PROTOCOL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SIRCS_12_PROTOCOL&#160;&#160;&#160;12</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00076">76</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
<a id="a75fe4989c11b3e3176262acfa9bce2ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a75fe4989c11b3e3176262acfa9bce2ce">&#9670;&nbsp;</a></span>SIRCS_15_PROTOCOL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SIRCS_15_PROTOCOL&#160;&#160;&#160;15</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00077">77</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
<a id="a4014bf0435ac7da04aa0bb1b0949eb8e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4014bf0435ac7da04aa0bb1b0949eb8e">&#9670;&nbsp;</a></span>SIRCS_20_PROTOCOL</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SIRCS_20_PROTOCOL&#160;&#160;&#160;20</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00078">78</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -614,7 +715,23 @@ Functions</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00139">139</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00149">149</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
<a id="adbc2fb58befbed8b45912fa31eb2dbcf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adbc2fb58befbed8b45912fa31eb2dbcf">&#9670;&nbsp;</a></span>SUPPRESS_STOP_BIT_FOR_THIS_DATA</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SUPPRESS_STOP_BIT_FOR_THIS_DATA&#160;&#160;&#160;0x20</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00136">136</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
</div>
</div>
@ -663,6 +780,7 @@ Functions</h2></td></tr>
<tr><td class="fieldname"><a id="ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510"></a>LEGO_PF&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100"></a>MAGIQUEST&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c"></a>WHYNTER&#160;</td><td class="fielddoc"></td></tr>
<tr><td class="fieldname"><a id="ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de"></a>FAST&#160;</td><td class="fielddoc"></td></tr>
</table>
<p class="definition">Definition at line <a class="el" href="IRProtocol_8h_source.html#l00040">40</a> of file <a class="el" href="IRProtocol_8h_source.html">IRProtocol.h</a>.</p>
@ -675,7 +793,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRProtocol_8h.html">IRProtocol.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,7 +1,8 @@
var IRProtocol_8h =
[
[ "PulseDistanceWidthProtocolConstants", "structPulseDistanceWidthProtocolConstants.html", "structPulseDistanceWidthProtocolConstants" ],
[ "DistanceWidthTimingInfoStruct", "structDistanceWidthTimingInfoStruct.html", "structDistanceWidthTimingInfoStruct" ],
[ "IRData", "structIRData.html", "structIRData" ],
[ "PulseDistanceWidthProtocolConstants", "structPulseDistanceWidthProtocolConstants.html", "structPulseDistanceWidthProtocolConstants" ],
[ "BEO_KHZ", "IRProtocol_8h.html#a28c405223cc0e826050ab76e204238ac", null ],
[ "BOSEWAVE_KHZ", "IRProtocol_8h.html#a5e8586b46bb336ab800f4239b9bc46d1", null ],
[ "DENON_KHZ", "IRProtocol_8h.html#ad2ebee0d7bd6593a38e1998ddd6b0c90", null ],
@ -24,7 +25,13 @@ var IRProtocol_8h =
[ "RAW_DATA_ARRAY_SIZE", "IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e", null ],
[ "RC5_RC6_KHZ", "IRProtocol_8h.html#a1e8fcd1e00b7fa15e99fae5ea30f35ae", null ],
[ "SAMSUNG_KHZ", "IRProtocol_8h.html#ac386480bc33f2fa50193da38a023b8ce", null ],
[ "SEND_NO_STOP_BIT", "IRProtocol_8h.html#a8683da8ac98548ba8f446f3ccfc83c11", null ],
[ "SEND_STOP_BIT", "IRProtocol_8h.html#a48e176b38988494bc725ac4fa98c534a", null ],
[ "SIRCS_12_PROTOCOL", "IRProtocol_8h.html#a8a2dbf77031a92783a200b9902c8459b", null ],
[ "SIRCS_15_PROTOCOL", "IRProtocol_8h.html#a75fe4989c11b3e3176262acfa9bce2ce", null ],
[ "SIRCS_20_PROTOCOL", "IRProtocol_8h.html#a4014bf0435ac7da04aa0bb1b0949eb8e", null ],
[ "SONY_KHZ", "IRProtocol_8h.html#a5dcaa6ec48a7a0b663e5de0ce853a541", null ],
[ "SUPPRESS_STOP_BIT_FOR_THIS_DATA", "IRProtocol_8h.html#adbc2fb58befbed8b45912fa31eb2dbcf", null ],
[ "decode_type_t", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad", [
[ "UNKNOWN", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada6ce26a62afab55d7606ad4e92428b30c", null ],
[ "PULSE_WIDTH", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada783253fd89cb09e1dbdb2bcdbc0400e3", null ],
@ -54,7 +61,8 @@ var IRProtocol_8h =
[ "BOSEWAVE", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20736b037c0e7444d4dc7ff06e9dea54", null ],
[ "LEGO_PF", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510", null ],
[ "MAGIQUEST", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100", null ],
[ "WHYNTER", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c", null ]
[ "WHYNTER", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c", null ],
[ "FAST", "IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de", null ]
] ],
[ "bitreverse32Bit", "group__Receiving.html#gad7c345c1b554ca8f3069b5fb767f07d6", null ],
[ "bitreverseOneByte", "group__Receiving.html#ga95e4a5acb86af8c967f8cae7e75062cb", null ],

View File

@ -1,4 +0,0 @@
<map id="src/IRProtocol.h" name="src/IRProtocol.h">
<area shape="rect" id="node1" title="Common declarations for receiving and sending." alt="" coords="5,5,120,32"/>
<area shape="rect" id="node2" title=" " alt="" coords="24,80,101,107"/>
</map>

View File

@ -1 +0,0 @@
324878022e29a0520444505c6ddafca2

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

View File

@ -120,160 +120,172 @@ $(document).ready(function(){initNavTree('IRProtocol_8h_source.html',''); initRe
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510"> 68</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510">LEGO_PF</a>,</div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100"> 69</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100">MAGIQUEST</a>,</div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c"> 70</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c">WHYNTER</a>,</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"> 72</span>&#160;} <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de">FAST</a></div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de"> 72</a></span>&#160;} <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a>;</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="structPulseDistanceWidthProtocolConstants.html"> 74</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structPulseDistanceWidthProtocolConstants.html">PulseDistanceWidthProtocolConstants</a> {</div>
<div class="line"><a name="l00075"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#afac964e3780f921bd65787c3d20b55b3"> 75</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#afac964e3780f921bd65787c3d20b55b3">ProtocolIndex</a>;</div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a6171ae6af196b51aa32ad8f8cb9939e1"> 76</a></span>&#160; uint_fast8_t <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a6171ae6af196b51aa32ad8f8cb9939e1">FrequencyKHz</a>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#aab0409e881621b957bad0c6befa607df"> 77</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#aab0409e881621b957bad0c6befa607df">HeaderMarkMicros</a>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#afdc3c2089084739677bb0c36174e1e6b"> 78</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#afdc3c2089084739677bb0c36174e1e6b">HeaderSpaceMicros</a>;</div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#ab3fb8c56c943296e15f2412ca65480bd"> 79</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#ab3fb8c56c943296e15f2412ca65480bd">OneMarkMicros</a>;</div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a0907f019085f52b0c561dc00c3384682"> 80</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a0907f019085f52b0c561dc00c3384682">OneSpaceMicros</a>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#adc423327bee17abf4d3f4df0bae2eee0"> 81</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#adc423327bee17abf4d3f4df0bae2eee0">ZeroMarkMicros</a>;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a3889c8a7565d5c5bcd56a9cddacfb468"> 82</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a3889c8a7565d5c5bcd56a9cddacfb468">ZeroSpaceMicros</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a259aab6bbe068f89dba20d77915b1482"> 83</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a259aab6bbe068f89dba20d77915b1482">isMSBFirst</a>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a4f92d4e9942103d3be51f5d88e8fe2a7"> 84</a></span>&#160; <span class="keywordtype">bool</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a4f92d4e9942103d3be51f5d88e8fe2a7">hasStopBit</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a8c119fecf1b42ecbec61b000e177e7b0"> 85</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a8c119fecf1b42ecbec61b000e177e7b0">RepeatPeriodMillis</a>;</div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a513cc9084132eadaf6d5bc4f8c3395d9"> 86</a></span>&#160; void (*<a class="code" href="structPulseDistanceWidthProtocolConstants.html#a513cc9084132eadaf6d5bc4f8c3395d9">SpecialSendRepeatFunction</a>)(); <span class="comment">// using non member functions here saves up to 250 bytes for send demo</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">// void (IRsend::*SpecialSendRepeatFunction)();</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;};</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> * Definitions for member IRData.flags</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_EMPTY 0x00</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad670ce496c4a3352cb9929284db11928"> 94</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_REPEAT 0x01</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#aaa9952cd64b58083c28873484c494abf"> 95</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_AUTO_REPEAT 0x02</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a5c5e6ae69aa440bfa132550d120ace08"> 96</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_PARITY_FAILED 0x04 </span></div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093"> 97</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_TOGGLE_BIT 0x08 </span></div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0"> 98</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_EXTRA_INFO 0x10 </span></div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71"> 99</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_WAS_OVERFLOW 0x40 </span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401"> 100</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_MSB_FIRST 0x80 </span></div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c"> 101</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_LSB_FIRST 0x00</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a035e96118f9daf6d8e5152a1ae466538"> 102</a></span>&#160; </div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">// deprecated</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="preprocessor">#define IRDATA_TOGGLE_BIT_MASK 0x08 </span></div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a6a8eaa19dc6174814fedc9d5b495560c"> 105</a></span>&#160;<span class="preprocessor"></span> </div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#if __INT_WIDTH__ &lt; 32</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#define RAW_DATA_ARRAY_SIZE ((((RAW_BUFFER_LENGTH - 2) - 1) / 64) + 1) // The -2 is for initial gap + stop bit mark, 64 mark + spaces for 32 bit.</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e"> 108</a></span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="preprocessor">#define RAW_DATA_ARRAY_SIZE ((((RAW_BUFFER_LENGTH - 2) - 1) / 128) + 1) // The -2 is for initial gap + stop bit mark, 128 mark + spaces for 64 bit.</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; </div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="structIRData.html"> 115</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structIRData.html">IRData</a> {</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="structIRData.html#a703592faec26bab5cbe465f53ef14245"> 116</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> <a class="code" href="structIRData.html#a703592faec26bab5cbe465f53ef14245">protocol</a>; </div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c"> 117</a></span>&#160; uint16_t <a class="code" href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">address</a>; </div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7"> 118</a></span>&#160; uint16_t <a class="code" href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">command</a>; </div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f"> 119</a></span>&#160; uint16_t <a class="code" href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f">extra</a>; </div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200"> 120</a></span>&#160; uint16_t <a class="code" href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200">numberOfBits</a>; </div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51"> 121</a></span>&#160; uint8_t <a class="code" href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">flags</a>; </div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="structIRData.html#a1aca80950279db7f8631f96268f012d9"> 122</a></span>&#160; <a class="code" href="IRremoteInt_8h.html#a5f80a14df19acb8907b21cd1ee154d53">IRRawDataType</a> <a class="code" href="structIRData.html#a1aca80950279db7f8631f96268f012d9">decodedRawData</a>; </div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="preprocessor">#if defined(DECODE_DISTANCE_WIDTH)</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; <a class="code" href="IRremoteInt_8h.html#a5f80a14df19acb8907b21cd1ee154d53">IRRawDataType</a> decodedRawDataArray[<a class="code" href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e">RAW_DATA_ARRAY_SIZE</a>]; </div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08"> 126</a></span>&#160; <a class="code" href="structirparams__struct.html">irparams_struct</a> *<a class="code" href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">rawDataPtr</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; </div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor">#define PROTOCOL_IS_LSB_FIRST false</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a8717702b4019c982727719bd40af7630"> 130</a></span>&#160;<span class="preprocessor">#define PROTOCOL_IS_MSB_FIRST true</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a2db53e8319cd3f5de758337fa08552d0"> 131</a></span>&#160; </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;<span class="preprocessor">#define SIRCS_12_PROTOCOL 12</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a8a2dbf77031a92783a200b9902c8459b"> 76</a></span>&#160;<span class="preprocessor">#define SIRCS_15_PROTOCOL 15</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a75fe4989c11b3e3176262acfa9bce2ce"> 77</a></span>&#160;<span class="preprocessor">#define SIRCS_20_PROTOCOL 20</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a4014bf0435ac7da04aa0bb1b0949eb8e"> 78</a></span>&#160; </div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html"> 79</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structDistanceWidthTimingInfoStruct.html">DistanceWidthTimingInfoStruct</a> {</div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html#a4fb48d6cf4788359d3038c0693eff0de"> 80</a></span>&#160; uint16_t <a class="code" href="structDistanceWidthTimingInfoStruct.html#a4fb48d6cf4788359d3038c0693eff0de">HeaderMarkMicros</a>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html#a2ba4577a6ae1a2c017f9ec2298e9f129"> 81</a></span>&#160; uint16_t <a class="code" href="structDistanceWidthTimingInfoStruct.html#a2ba4577a6ae1a2c017f9ec2298e9f129">HeaderSpaceMicros</a>;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html#a998b111c212b2352d1afc2b2b8c7adbd"> 82</a></span>&#160; uint16_t <a class="code" href="structDistanceWidthTimingInfoStruct.html#a998b111c212b2352d1afc2b2b8c7adbd">OneMarkMicros</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html#a7485df89cd6280a36c9388e896f6cb5c"> 83</a></span>&#160; uint16_t <a class="code" href="structDistanceWidthTimingInfoStruct.html#a7485df89cd6280a36c9388e896f6cb5c">OneSpaceMicros</a>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html#a49e0680a4f7253ba1622b710b6f67a70"> 84</a></span>&#160; uint16_t <a class="code" href="structDistanceWidthTimingInfoStruct.html#a49e0680a4f7253ba1622b710b6f67a70">ZeroMarkMicros</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="structDistanceWidthTimingInfoStruct.html#a5ecc71cd75d7275f6d905bc0d5dd1215"> 85</a></span>&#160; uint16_t <a class="code" href="structDistanceWidthTimingInfoStruct.html#a5ecc71cd75d7275f6d905bc0d5dd1215">ZeroSpaceMicros</a>;</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"> 88</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> * Definitions for member IRData.flags</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_EMPTY 0x00</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad670ce496c4a3352cb9929284db11928"> 92</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_REPEAT 0x01 </span></div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#aaa9952cd64b58083c28873484c494abf"> 93</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_AUTO_REPEAT 0x02 </span></div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a5c5e6ae69aa440bfa132550d120ace08"> 94</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_PARITY_FAILED 0x04 </span></div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093"> 95</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_TOGGLE_BIT 0x08 </span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0"> 96</a></span>&#160;<span class="preprocessor">#define IRDATA_TOGGLE_BIT_MASK 0x08 </span></div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a6a8eaa19dc6174814fedc9d5b495560c"> 97</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_EXTRA_INFO 0x10 </span></div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71"> 98</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_WAS_OVERFLOW 0x40 </span></div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401"> 99</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_MSB_FIRST 0x80 </span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c"> 100</a></span>&#160;<span class="preprocessor">#define IRDATA_FLAGS_IS_LSB_FIRST 0x00</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a035e96118f9daf6d8e5152a1ae466538"> 101</a></span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">#define RAW_DATA_ARRAY_SIZE ((((RAW_BUFFER_LENGTH - 2) - 1) / (2 * BITS_IN_RAW_DATA_TYPE)) + 1) // The -2 is for initial gap + stop bit mark, 128 mark + spaces for 64 bit.</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e"> 103</a></span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="structIRData.html"> 107</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structIRData.html">IRData</a> {</div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="structIRData.html#a703592faec26bab5cbe465f53ef14245"> 108</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> <a class="code" href="structIRData.html#a703592faec26bab5cbe465f53ef14245">protocol</a>; </div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c"> 109</a></span>&#160; uint16_t <a class="code" href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">address</a>; </div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7"> 110</a></span>&#160; uint16_t <a class="code" href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">command</a>; </div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f"> 111</a></span>&#160; uint16_t <a class="code" href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f">extra</a>; </div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="structIRData.html#a1aca80950279db7f8631f96268f012d9"> 112</a></span>&#160; <a class="code" href="IRremoteInt_8h.html#a5f80a14df19acb8907b21cd1ee154d53">IRRawDataType</a> <a class="code" href="structIRData.html#a1aca80950279db7f8631f96268f012d9">decodedRawData</a>; </div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#if defined(DECODE_DISTANCE_WIDTH)</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">// This replaces the address, command, extra and decodedRawData in case of protocol == PULSE_DISTANCE or -rather seldom- protocol == PULSE_WIDTH.</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <a class="code" href="structDistanceWidthTimingInfoStruct.html">DistanceWidthTimingInfoStruct</a> DistanceWidthTimingInfo; <span class="comment">// 12 bytes</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; <a class="code" href="IRremoteInt_8h.html#a5f80a14df19acb8907b21cd1ee154d53">IRRawDataType</a> decodedRawDataArray[<a class="code" href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e">RAW_DATA_ARRAY_SIZE</a>]; </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"><a class="line" href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200"> 118</a></span>&#160; uint16_t <a class="code" href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200">numberOfBits</a>; </div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51"> 119</a></span>&#160; uint8_t <a class="code" href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">flags</a>; </div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08"> 120</a></span>&#160; <a class="code" href="structirparams__struct.html">irparams_struct</a> *<a class="code" href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">rawDataPtr</a>; </div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;};</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"><a class="line" href="structPulseDistanceWidthProtocolConstants.html"> 123</a></span>&#160;<span class="keyword">struct </span><a class="code" href="structPulseDistanceWidthProtocolConstants.html">PulseDistanceWidthProtocolConstants</a> {</div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#afac964e3780f921bd65787c3d20b55b3"> 124</a></span>&#160; <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#afac964e3780f921bd65787c3d20b55b3">ProtocolIndex</a>;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a6171ae6af196b51aa32ad8f8cb9939e1"> 125</a></span>&#160; uint_fast8_t <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a6171ae6af196b51aa32ad8f8cb9939e1">FrequencyKHz</a>;</div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#aa7e9164be5b2227f1a8ac41d1a5e07e7"> 126</a></span>&#160; <a class="code" href="structDistanceWidthTimingInfoStruct.html">DistanceWidthTimingInfoStruct</a> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#aa7e9164be5b2227f1a8ac41d1a5e07e7">DistanceWidthTimingInfo</a>;</div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a254c0862391ddcacd26a17351481d27b"> 127</a></span>&#160; uint8_t <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a254c0862391ddcacd26a17351481d27b">Flags</a>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a8c119fecf1b42ecbec61b000e177e7b0"> 128</a></span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structPulseDistanceWidthProtocolConstants.html#a8c119fecf1b42ecbec61b000e177e7b0">RepeatPeriodMillis</a>;</div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="structPulseDistanceWidthProtocolConstants.html#a513cc9084132eadaf6d5bc4f8c3395d9"> 129</a></span>&#160; void (*<a class="code" href="structPulseDistanceWidthProtocolConstants.html#a513cc9084132eadaf6d5bc4f8c3395d9">SpecialSendRepeatFunction</a>)(); <span class="comment">// using non member functions here saves up to 250 bytes for send demo</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment">// void (IRsend::*SpecialSendRepeatFunction)();</span></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;<span class="comment">/*</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> * Carrier frequencies for various protocols</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment"> * Definitions for member PulseDistanceWidthProtocolConstants.Flags</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor">#if !defined(BEO_KHZ) // guard used for unit test, which sends and receive Bang&amp;Olufsen with 38 kHz.</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="preprocessor">#define BEO_KHZ 455</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a28c405223cc0e826050ab76e204238ac"> 137</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="preprocessor">#define SONY_KHZ 40</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a5dcaa6ec48a7a0b663e5de0ce853a541"> 139</a></span>&#160;<span class="preprocessor">#define BOSEWAVE_KHZ 38</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a5e8586b46bb336ab800f4239b9bc46d1"> 140</a></span>&#160;<span class="preprocessor">#define DENON_KHZ 38</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad2ebee0d7bd6593a38e1998ddd6b0c90"> 141</a></span>&#160;<span class="preprocessor">#define JVC_KHZ 38</span></div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#abcc6e2b61050500362daed1341bef91b"> 142</a></span>&#160;<span class="preprocessor">#define LG_KHZ 38</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ada5cace06e49eefd0eceb54fa57ad824"> 143</a></span>&#160;<span class="preprocessor">#define NEC_KHZ 38</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ae1333ec007e3f586daf2b4af76894fc9"> 144</a></span>&#160;<span class="preprocessor">#define SAMSUNG_KHZ 38</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ac386480bc33f2fa50193da38a023b8ce"> 145</a></span>&#160;<span class="preprocessor">#define KASEIKYO_KHZ 37</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ae59fcf8145e60472b2b94f7e72a1d441"> 146</a></span>&#160;<span class="preprocessor">#define RC5_RC6_KHZ 36</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1e8fcd1e00b7fa15e99fae5ea30f35ae"> 147</a></span>&#160; </div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="preprocessor">#if defined(__AVR__)</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="keyword">const</span> __FlashStringHelper* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol);</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol);</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="keywordtype">void</span> <a class="code" href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a>(Print *aSerial, <a class="code" href="structIRData.html">IRData</a> *aIRDataPtr, <span class="keywordtype">bool</span> aPrintGap); <span class="comment">// A static function to be able to print send or copied received data.</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">/*</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160;<span class="comment"> * Convenience functions to convert MSB to LSB values</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;uint8_t <a class="code" href="group__Receiving.html#ga95e4a5acb86af8c967f8cae7e75062cb">bitreverseOneByte</a>(uint8_t aValue);</div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;uint32_t <a class="code" href="group__Receiving.html#gad7c345c1b554ca8f3069b5fb767f07d6">bitreverse32Bit</a>(uint32_t aInput);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; </div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor">#endif // _IR_PROTOCOL_H</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor">#define SUPPRESS_STOP_BIT_FOR_THIS_DATA 0x20</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#adbc2fb58befbed8b45912fa31eb2dbcf"> 136</a></span>&#160;<span class="preprocessor">#define PROTOCOL_IS_MSB_FIRST IRDATA_FLAGS_IS_MSB_FIRST</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a2db53e8319cd3f5de758337fa08552d0"> 137</a></span>&#160;<span class="preprocessor">#define PROTOCOL_IS_LSB_FIRST IRDATA_FLAGS_IS_LSB_FIRST</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a8717702b4019c982727719bd40af7630"> 138</a></span>&#160;<span class="comment">// 2 definitions for deprecated parameter bool aSendStopBit</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="preprocessor">#define SEND_STOP_BIT true</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a48e176b38988494bc725ac4fa98c534a"> 140</a></span>&#160;<span class="preprocessor">#define SEND_NO_STOP_BIT false</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a8683da8ac98548ba8f446f3ccfc83c11"> 141</a></span>&#160; </div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="comment"> * Carrier frequencies for various protocols</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160;<span class="preprocessor">#if !defined(BEO_KHZ) // guard used for unit test, which sends and receive Bang&amp;Olufsen with 38 kHz.</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="preprocessor">#define BEO_KHZ 455</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a28c405223cc0e826050ab76e204238ac"> 147</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="preprocessor">#define SONY_KHZ 40</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a5dcaa6ec48a7a0b663e5de0ce853a541"> 149</a></span>&#160;<span class="preprocessor">#define BOSEWAVE_KHZ 38</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a5e8586b46bb336ab800f4239b9bc46d1"> 150</a></span>&#160;<span class="preprocessor">#define DENON_KHZ 38</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ad2ebee0d7bd6593a38e1998ddd6b0c90"> 151</a></span>&#160;<span class="preprocessor">#define JVC_KHZ 38</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#abcc6e2b61050500362daed1341bef91b"> 152</a></span>&#160;<span class="preprocessor">#define LG_KHZ 38</span></div>
<div class="line"><a name="l00153"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ada5cace06e49eefd0eceb54fa57ad824"> 153</a></span>&#160;<span class="preprocessor">#define NEC_KHZ 38</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ae1333ec007e3f586daf2b4af76894fc9"> 154</a></span>&#160;<span class="preprocessor">#define SAMSUNG_KHZ 38</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ac386480bc33f2fa50193da38a023b8ce"> 155</a></span>&#160;<span class="preprocessor">#define KASEIKYO_KHZ 37</span></div>
<div class="line"><a name="l00156"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#ae59fcf8145e60472b2b94f7e72a1d441"> 156</a></span>&#160;<span class="preprocessor">#define RC5_RC6_KHZ 36</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"><a class="line" href="IRProtocol_8h.html#a1e8fcd1e00b7fa15e99fae5ea30f35ae"> 157</a></span>&#160; </div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="preprocessor">#if defined(__AVR__)</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="keyword">const</span> __FlashStringHelper* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol);</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol);</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a>(Print *aSerial, <a class="code" href="structIRData.html">IRData</a> *aIRDataPtr, <span class="keywordtype">bool</span> aPrintGap); <span class="comment">// A static function to be able to print send or copied received data.</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; </div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="comment"> * Convenience functions to convert MSB to LSB values</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;uint8_t <a class="code" href="group__Receiving.html#ga95e4a5acb86af8c967f8cae7e75062cb">bitreverseOneByte</a>(uint8_t aValue);</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;uint32_t <a class="code" href="group__Receiving.html#gad7c345c1b554ca8f3069b5fb767f07d6">bitreverse32Bit</a>(uint32_t aInput);</div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160;<span class="preprocessor">#endif // _IR_PROTOCOL_H</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="astructIRData_html_a1255a5b7d704d34fda83dcabcb903d4c"><div class="ttname"><a href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">IRData::address</a></div><div class="ttdeci">uint16_t address</div><div class="ttdoc">Decoded address, Distance protocol (tMarkTicksLong (if tMarkTicksLong == 0, then tMarkTicksShort) &lt;&lt; ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00117">IRProtocol.h:117</a></div></div>
<div class="ttc" id="astructIRData_html_a1255a5b7d704d34fda83dcabcb903d4c"><div class="ttname"><a href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">IRData::address</a></div><div class="ttdeci">uint16_t address</div><div class="ttdoc">Decoded address, Distance protocol (tMarkTicksLong (if tMarkTicksLong == 0, then tMarkTicksShort) &lt;&lt; ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00109">IRProtocol.h:109</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada20603784a6e8d35a82b2476366010344"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20603784a6e8d35a82b2476366010344">ONKYO</a></div><div class="ttdeci">@ ONKYO</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00051">IRProtocol.h:51</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html_a4fb48d6cf4788359d3038c0693eff0de"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html#a4fb48d6cf4788359d3038c0693eff0de">DistanceWidthTimingInfoStruct::HeaderMarkMicros</a></div><div class="ttdeci">uint16_t HeaderMarkMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00080">IRProtocol.h:80</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada4cb93fe0fe3dbe0681b8764a9294733b"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada4cb93fe0fe3dbe0681b8764a9294733b">KASEIKYO_DENON</a></div><div class="ttdeci">@ KASEIKYO_DENON</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00054">IRProtocol.h:54</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada5b6f507fb4bbd70ee70be4e2e0b0371d"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada5b6f507fb4bbd70ee70be4e2e0b0371d">JVC</a></div><div class="ttdeci">@ JVC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00046">IRProtocol.h:46</a></div></div>
<div class="ttc" id="astructIRData_html_a945c41b8463a36cf00b0f38b0aa73200"><div class="ttname"><a href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200">IRData::numberOfBits</a></div><div class="ttdeci">uint16_t numberOfBits</div><div class="ttdoc">Number of bits received for data (address + command + parity) - to determine protocol length if diffe...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00120">IRProtocol.h:120</a></div></div>
<div class="ttc" id="astructIRData_html_a945c41b8463a36cf00b0f38b0aa73200"><div class="ttname"><a href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200">IRData::numberOfBits</a></div><div class="ttdeci">uint16_t numberOfBits</div><div class="ttdoc">Number of bits received for data (address + command + parity) - to determine protocol length if diffe...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00118">IRProtocol.h:118</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gad7c345c1b554ca8f3069b5fb767f07d6"><div class="ttname"><a href="group__Receiving.html#gad7c345c1b554ca8f3069b5fb767f07d6">bitreverse32Bit</a></div><div class="ttdeci">uint32_t bitreverse32Bit(uint32_t aInput)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00274">IRProtocol.hpp:274</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada181746513f88dba0d824c5dfeeec68b6"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada181746513f88dba0d824c5dfeeec68b6">KASEIKYO_SHARP</a></div><div class="ttdeci">@ KASEIKYO_SHARP</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00055">IRProtocol.h:55</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf84c11ba888e499a8a282a3e6f5de7de">FAST</a></div><div class="ttdeci">@ FAST</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00072">IRProtocol.h:71</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada72d58193d4d25517202d22b7e57a65c3"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada72d58193d4d25517202d22b7e57a65c3">SONY</a></div><div class="ttdeci">@ SONY</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00064">IRProtocol.h:64</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada6b221b79427a02288ea41683a7d04841"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada6b221b79427a02288ea41683a7d04841">KASEIKYO_JVC</a></div><div class="ttdeci">@ KASEIKYO_JVC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00056">IRProtocol.h:56</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada783253fd89cb09e1dbdb2bcdbc0400e3"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada783253fd89cb09e1dbdb2bcdbc0400e3">PULSE_WIDTH</a></div><div class="ttdeci">@ PULSE_WIDTH</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00042">IRProtocol.h:42</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a513cc9084132eadaf6d5bc4f8c3395d9"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a513cc9084132eadaf6d5bc4f8c3395d9">PulseDistanceWidthProtocolConstants::SpecialSendRepeatFunction</a></div><div class="ttdeci">void(* SpecialSendRepeatFunction)()</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00086">IRProtocol.h:86</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a513cc9084132eadaf6d5bc4f8c3395d9"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a513cc9084132eadaf6d5bc4f8c3395d9">PulseDistanceWidthProtocolConstants::SpecialSendRepeatFunction</a></div><div class="ttdeci">void(* SpecialSendRepeatFunction)()</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00129">IRProtocol.h:129</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fad"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a></div><div class="ttdeci">decode_type_t</div><div class="ttdoc">An enum consisting of all supported formats.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00040">IRProtocol.h:40</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_afac964e3780f921bd65787c3d20b55b3"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#afac964e3780f921bd65787c3d20b55b3">PulseDistanceWidthProtocolConstants::ProtocolIndex</a></div><div class="ttdeci">decode_type_t ProtocolIndex</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00075">IRProtocol.h:75</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_afac964e3780f921bd65787c3d20b55b3"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#afac964e3780f921bd65787c3d20b55b3">PulseDistanceWidthProtocolConstants::ProtocolIndex</a></div><div class="ttdeci">decode_type_t ProtocolIndex</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00124">IRProtocol.h:124</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada2b451b6e7bebbf070d0913ec77d5d438"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2b451b6e7bebbf070d0913ec77d5d438">SAMSUNG</a></div><div class="ttdeci">@ SAMSUNG</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00060">IRProtocol.h:60</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada20736b037c0e7444d4dc7ff06e9dea54"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20736b037c0e7444d4dc7ff06e9dea54">BOSEWAVE</a></div><div class="ttdeci">@ BOSEWAVE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00067">IRProtocol.h:67</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a4f92d4e9942103d3be51f5d88e8fe2a7"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a4f92d4e9942103d3be51f5d88e8fe2a7">PulseDistanceWidthProtocolConstants::hasStopBit</a></div><div class="ttdeci">bool hasStopBit</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00084">IRProtocol.h:84</a></div></div>
<div class="ttc" id="astructIRData_html_a8d7c987d63874731ff2e1120b21a1a08"><div class="ttname"><a href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">IRData::rawDataPtr</a></div><div class="ttdeci">irparams_struct * rawDataPtr</div><div class="ttdoc">Pointer of the raw timing data to be decoded. Mainly the OverflowFlag and the data buffer filled by r...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00126">IRProtocol.h:126</a></div></div>
<div class="ttc" id="astructIRData_html_a1aca80950279db7f8631f96268f012d9"><div class="ttname"><a href="structIRData.html#a1aca80950279db7f8631f96268f012d9">IRData::decodedRawData</a></div><div class="ttdeci">IRRawDataType decodedRawData</div><div class="ttdoc">Up to 32/64 bit decoded raw data, to be used for send functions.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00122">IRProtocol.h:122</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html_a7485df89cd6280a36c9388e896f6cb5c"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html#a7485df89cd6280a36c9388e896f6cb5c">DistanceWidthTimingInfoStruct::OneSpaceMicros</a></div><div class="ttdeci">uint16_t OneSpaceMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00083">IRProtocol.h:83</a></div></div>
<div class="ttc" id="astructIRData_html_a8d7c987d63874731ff2e1120b21a1a08"><div class="ttname"><a href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">IRData::rawDataPtr</a></div><div class="ttdeci">irparams_struct * rawDataPtr</div><div class="ttdoc">Pointer of the raw timing data to be decoded. Mainly the OverflowFlag and the data buffer filled by r...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00120">IRProtocol.h:120</a></div></div>
<div class="ttc" id="astructIRData_html_a1aca80950279db7f8631f96268f012d9"><div class="ttname"><a href="structIRData.html#a1aca80950279db7f8631f96268f012d9">IRData::decodedRawData</a></div><div class="ttdeci">IRRawDataType decodedRawData</div><div class="ttdoc">Up to 32/64 bit decoded raw data, to be used for send functions.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00112">IRProtocol.h:112</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadab60e0c1f01cfceb2dc9d5f2005f6dfc0"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadab60e0c1f01cfceb2dc9d5f2005f6dfc0">PULSE_DISTANCE</a></div><div class="ttdeci">@ PULSE_DISTANCE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00043">IRProtocol.h:43</a></div></div>
<div class="ttc" id="astructirparams__struct_html"><div class="ttname"><a href="structirparams__struct.html">irparams_struct</a></div><div class="ttdoc">This struct contains the data and control used for receiver static functions and the ISR (interrupt s...</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00095">IRremoteInt.h:95</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html_a49e0680a4f7253ba1622b710b6f67a70"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html#a49e0680a4f7253ba1622b710b6f67a70">DistanceWidthTimingInfoStruct::ZeroMarkMicros</a></div><div class="ttdeci">uint16_t ZeroMarkMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00084">IRProtocol.h:84</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada3be750ce1687bc1a92fee05b0c511100">MAGIQUEST</a></div><div class="ttdeci">@ MAGIQUEST</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00069">IRProtocol.h:69</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada0d099dee601264bd3c752705c1dab624"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada0d099dee601264bd3c752705c1dab624">NEC2</a></div><div class="ttdeci">@ NEC2</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00050">IRProtocol.h:50</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gac45e8ead5e96868e61c65cd354758d4d"><div class="ttname"><a href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a></div><div class="ttdeci">void printIRResultShort(Print *aSerial, IRData *aIRDataPtr, bool aPrintGap)</div><div class="ttdoc">Function to print decoded result and flags in one line.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00166">IRProtocol.hpp:166</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html">PulseDistanceWidthProtocolConstants</a></div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00074">IRProtocol.h:74</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a254c0862391ddcacd26a17351481d27b"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a254c0862391ddcacd26a17351481d27b">PulseDistanceWidthProtocolConstants::Flags</a></div><div class="ttdeci">uint8_t Flags</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00127">IRProtocol.h:127</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gac45e8ead5e96868e61c65cd354758d4d"><div class="ttname"><a href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a></div><div class="ttdeci">void printIRResultShort(Print *aSerial, IRData *aIRDataPtr, bool aPrintGap)</div><div class="ttdoc">Function to print decoded result and flags in one line.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00162">IRProtocol.hpp:162</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html">DistanceWidthTimingInfoStruct</a></div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00079">IRProtocol.h:79</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html">PulseDistanceWidthProtocolConstants</a></div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00123">IRProtocol.h:123</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaf87c99938d26a1f77d4f082c070d4660"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf87c99938d26a1f77d4f082c070d4660">PANASONIC</a></div><div class="ttdeci">@ PANASONIC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00052">IRProtocol.h:52</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada1b8f950b7f75e9b76ad4a5092575b4f4"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada1b8f950b7f75e9b76ad4a5092575b4f4">SAMSUNG_LG</a></div><div class="ttdeci">@ SAMSUNG_LG</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00062">IRProtocol.h:62</a></div></div>
<div class="ttc" id="astructIRData_html"><div class="ttname"><a href="structIRData.html">IRData</a></div><div class="ttdoc">Data structure for the user application, available as decodedIRData.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00115">IRProtocol.h:115</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_adc423327bee17abf4d3f4df0bae2eee0"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#adc423327bee17abf4d3f4df0bae2eee0">PulseDistanceWidthProtocolConstants::ZeroMarkMicros</a></div><div class="ttdeci">unsigned int ZeroMarkMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00081">IRProtocol.h:81</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a1ad0810b4eae20c260180a1c4d9f359e"><div class="ttname"><a href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e">RAW_DATA_ARRAY_SIZE</a></div><div class="ttdeci">#define RAW_DATA_ARRAY_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00108">IRProtocol.h:107</a></div></div>
<div class="ttc" id="astructIRData_html_aaaad48fc0d90e5c6daec601987848a51"><div class="ttname"><a href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">IRData::flags</a></div><div class="ttdeci">uint8_t flags</div><div class="ttdoc">See IRDATA_FLAGS_* definitions above.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00121">IRProtocol.h:121</a></div></div>
<div class="ttc" id="astructIRData_html"><div class="ttname"><a href="structIRData.html">IRData</a></div><div class="ttdoc">Data structure for the user application, available as decodedIRData.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00107">IRProtocol.h:107</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a1ad0810b4eae20c260180a1c4d9f359e"><div class="ttname"><a href="IRProtocol_8h.html#a1ad0810b4eae20c260180a1c4d9f359e">RAW_DATA_ARRAY_SIZE</a></div><div class="ttdeci">#define RAW_DATA_ARRAY_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00103">IRProtocol.h:102</a></div></div>
<div class="ttc" id="astructIRData_html_aaaad48fc0d90e5c6daec601987848a51"><div class="ttname"><a href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">IRData::flags</a></div><div class="ttdeci">uint8_t flags</div><div class="ttdoc">IRDATA_FLAGS_IS_REPEAT, IRDATA_FLAGS_WAS_OVERFLOW etc. See IRDATA_FLAGS_* definitions above.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00119">IRProtocol.h:119</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html_a998b111c212b2352d1afc2b2b8c7adbd"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html#a998b111c212b2352d1afc2b2b8c7adbd">DistanceWidthTimingInfoStruct::OneMarkMicros</a></div><div class="ttdeci">uint16_t OneMarkMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00082">IRProtocol.h:82</a></div></div>
<div class="ttc" id="agroup__Receiving_html_ga95e4a5acb86af8c967f8cae7e75062cb"><div class="ttname"><a href="group__Receiving.html#ga95e4a5acb86af8c967f8cae7e75062cb">bitreverseOneByte</a></div><div class="ttdeci">uint8_t bitreverseOneByte(uint8_t aValue)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00261">IRProtocol.hpp:261</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_afdc3c2089084739677bb0c36174e1e6b"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#afdc3c2089084739677bb0c36174e1e6b">PulseDistanceWidthProtocolConstants::HeaderSpaceMicros</a></div><div class="ttdeci">unsigned int HeaderSpaceMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00078">IRProtocol.h:78</a></div></div>
<div class="ttc" id="astructIRData_html_ab0ce2b36765ea429e8c4bfa0706a45e7"><div class="ttname"><a href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">IRData::command</a></div><div class="ttdeci">uint16_t command</div><div class="ttdoc">Decoded command, Distance protocol (tMarkTicksShort &lt;&lt; 8) | tSpaceTicksShort.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00118">IRProtocol.h:118</a></div></div>
<div class="ttc" id="astructIRData_html_ab0ce2b36765ea429e8c4bfa0706a45e7"><div class="ttname"><a href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">IRData::command</a></div><div class="ttdeci">uint16_t command</div><div class="ttdoc">Decoded command, Distance protocol (tMarkTicksShort &lt;&lt; 8) | tSpaceTicksShort.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00110">IRProtocol.h:110</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada0811f93a25b0873e21979d569eeac05e"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada0811f93a25b0873e21979d569eeac05e">NEC</a></div><div class="ttdeci">@ NEC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00049">IRProtocol.h:49</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadacfe86b309838e200c12f1078c0d81799"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadacfe86b309838e200c12f1078c0d81799">BANG_OLUFSEN</a></div><div class="ttdeci">@ BANG_OLUFSEN</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00066">IRProtocol.h:66</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada5484ec37ffd1fcffb7aba549a4839910"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada5484ec37ffd1fcffb7aba549a4839910">APPLE</a></div><div class="ttdeci">@ APPLE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00044">IRProtocol.h:44</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510">LEGO_PF</a></div><div class="ttdeci">@ LEGO_PF</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00068">IRProtocol.h:68</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html_a5ecc71cd75d7275f6d905bc0d5dd1215"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html#a5ecc71cd75d7275f6d905bc0d5dd1215">DistanceWidthTimingInfoStruct::ZeroSpaceMicros</a></div><div class="ttdeci">uint16_t ZeroSpaceMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00085">IRProtocol.h:85</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a5f80a14df19acb8907b21cd1ee154d53"><div class="ttname"><a href="IRremoteInt_8h.html#a5f80a14df19acb8907b21cd1ee154d53">IRRawDataType</a></div><div class="ttdeci">uint32_t IRRawDataType</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00117">IRremoteInt.h:117</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada2516be3bdfd7614bb64961800fa49e43"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2516be3bdfd7614bb64961800fa49e43">KASEIKYO_MITSUBISHI</a></div><div class="ttdeci">@ KASEIKYO_MITSUBISHI</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00057">IRProtocol.h:57</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaf2d8443e083aa95f191f26d438c6b953"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf2d8443e083aa95f191f26d438c6b953">KASEIKYO</a></div><div class="ttdeci">@ KASEIKYO</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00053">IRProtocol.h:53</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada2bda37b76abb290d1675c3e027e3c2e1"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2bda37b76abb290d1675c3e027e3c2e1">DENON</a></div><div class="ttdeci">@ DENON</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00045">IRProtocol.h:45</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_ab3fb8c56c943296e15f2412ca65480bd"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#ab3fb8c56c943296e15f2412ca65480bd">PulseDistanceWidthProtocolConstants::OneMarkMicros</a></div><div class="ttdeci">unsigned int OneMarkMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00079">IRProtocol.h:79</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadac3c0a3883a1488209bcd91730ece33b2"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadac3c0a3883a1488209bcd91730ece33b2">RC5</a></div><div class="ttdeci">@ RC5</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00058">IRProtocol.h:58</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada8402547ec0b99b9b0efe97dec65badf9"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada8402547ec0b99b9b0efe97dec65badf9">LG2</a></div><div class="ttdeci">@ LG2</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00048">IRProtocol.h:48</a></div></div>
<div class="ttc" id="astructIRData_html_a0b71fa1a17e3ab0ae9bc9462b795213f"><div class="ttname"><a href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f">IRData::extra</a></div><div class="ttdeci">uint16_t extra</div><div class="ttdoc">Contains upper 16 bit of Magiquest WandID, Kaseikyo unknown vendor ID and Distance protocol (HeaderMa...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00119">IRProtocol.h:119</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_aab0409e881621b957bad0c6befa607df"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#aab0409e881621b957bad0c6befa607df">PulseDistanceWidthProtocolConstants::HeaderMarkMicros</a></div><div class="ttdeci">unsigned int HeaderMarkMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00077">IRProtocol.h:77</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a0907f019085f52b0c561dc00c3384682"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a0907f019085f52b0c561dc00c3384682">PulseDistanceWidthProtocolConstants::OneSpaceMicros</a></div><div class="ttdeci">unsigned int OneSpaceMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00080">IRProtocol.h:80</a></div></div>
<div class="ttc" id="astructIRData_html_a0b71fa1a17e3ab0ae9bc9462b795213f"><div class="ttname"><a href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f">IRData::extra</a></div><div class="ttdeci">uint16_t extra</div><div class="ttdoc">Contains upper 16 bit of Magiquest WandID, Kaseikyo unknown vendor ID and Distance protocol (HeaderMa...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00111">IRProtocol.h:111</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_aa7e9164be5b2227f1a8ac41d1a5e07e7"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#aa7e9164be5b2227f1a8ac41d1a5e07e7">PulseDistanceWidthProtocolConstants::DistanceWidthTimingInfo</a></div><div class="ttdeci">DistanceWidthTimingInfoStruct DistanceWidthTimingInfo</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00126">IRProtocol.h:126</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada7f7247f15587eb3812846f424b941abe"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada7f7247f15587eb3812846f424b941abe">RC6</a></div><div class="ttdeci">@ RC6</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00059">IRProtocol.h:59</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada6ce26a62afab55d7606ad4e92428b30c"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada6ce26a62afab55d7606ad4e92428b30c">UNKNOWN</a></div><div class="ttdeci">@ UNKNOWN</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00041">IRProtocol.h:41</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada458cdd7fa2b29dc8617c694696580c0c">WHYNTER</a></div><div class="ttdeci">@ WHYNTER</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00070">IRProtocol.h:70</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a259aab6bbe068f89dba20d77915b1482"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a259aab6bbe068f89dba20d77915b1482">PulseDistanceWidthProtocolConstants::isMSBFirst</a></div><div class="ttdeci">bool isMSBFirst</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00083">IRProtocol.h:83</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a8c119fecf1b42ecbec61b000e177e7b0"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a8c119fecf1b42ecbec61b000e177e7b0">PulseDistanceWidthProtocolConstants::RepeatPeriodMillis</a></div><div class="ttdeci">unsigned int RepeatPeriodMillis</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00085">IRProtocol.h:85</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a3889c8a7565d5c5bcd56a9cddacfb468"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a3889c8a7565d5c5bcd56a9cddacfb468">PulseDistanceWidthProtocolConstants::ZeroSpaceMicros</a></div><div class="ttdeci">unsigned int ZeroSpaceMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00082">IRProtocol.h:82</a></div></div>
<div class="ttc" id="astructIRData_html_a703592faec26bab5cbe465f53ef14245"><div class="ttname"><a href="structIRData.html#a703592faec26bab5cbe465f53ef14245">IRData::protocol</a></div><div class="ttdeci">decode_type_t protocol</div><div class="ttdoc">UNKNOWN, NEC, SONY, RC5, PULSE_DISTANCE, ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00116">IRProtocol.h:116</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a8c119fecf1b42ecbec61b000e177e7b0"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a8c119fecf1b42ecbec61b000e177e7b0">PulseDistanceWidthProtocolConstants::RepeatPeriodMillis</a></div><div class="ttdeci">unsigned int RepeatPeriodMillis</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00128">IRProtocol.h:128</a></div></div>
<div class="ttc" id="astructIRData_html_a703592faec26bab5cbe465f53ef14245"><div class="ttname"><a href="structIRData.html#a703592faec26bab5cbe465f53ef14245">IRData::protocol</a></div><div class="ttdeci">decode_type_t protocol</div><div class="ttdoc">UNKNOWN, NEC, SONY, RC5, PULSE_DISTANCE, ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00108">IRProtocol.h:108</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada230f52f19cb835b5299ad0369a46a9e7"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada230f52f19cb835b5299ad0369a46a9e7">SAMSUNG48</a></div><div class="ttdeci">@ SAMSUNG48</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00061">IRProtocol.h:61</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a6171ae6af196b51aa32ad8f8cb9939e1"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a6171ae6af196b51aa32ad8f8cb9939e1">PulseDistanceWidthProtocolConstants::FrequencyKHz</a></div><div class="ttdeci">uint_fast8_t FrequencyKHz</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00076">IRProtocol.h:76</a></div></div>
<div class="ttc" id="astructPulseDistanceWidthProtocolConstants_html_a6171ae6af196b51aa32ad8f8cb9939e1"><div class="ttname"><a href="structPulseDistanceWidthProtocolConstants.html#a6171ae6af196b51aa32ad8f8cb9939e1">PulseDistanceWidthProtocolConstants::FrequencyKHz</a></div><div class="ttdeci">uint_fast8_t FrequencyKHz</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00125">IRProtocol.h:125</a></div></div>
<div class="ttc" id="astructDistanceWidthTimingInfoStruct_html_a2ba4577a6ae1a2c017f9ec2298e9f129"><div class="ttname"><a href="structDistanceWidthTimingInfoStruct.html#a2ba4577a6ae1a2c017f9ec2298e9f129">DistanceWidthTimingInfoStruct::HeaderSpaceMicros</a></div><div class="ttdeci">uint16_t HeaderSpaceMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00081">IRProtocol.h:81</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadadf6c249ac7d923229f9e623eff9a61f4"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadadf6c249ac7d923229f9e623eff9a61f4">LG</a></div><div class="ttdeci">@ LG</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00047">IRProtocol.h:47</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gab93c1433c1d6ab5e5bcdcb37339b2fb7"><div class="ttname"><a href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a></div><div class="ttdeci">const char * getProtocolString(decode_type_t aProtocol)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00100">IRProtocol.hpp:100</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gab93c1433c1d6ab5e5bcdcb37339b2fb7"><div class="ttname"><a href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a></div><div class="ttdeci">const char * getProtocolString(decode_type_t aProtocol)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00096">IRProtocol.hpp:96</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaad63db67a2284cd7e3ffe382b6d6ea82"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaad63db67a2284cd7e3ffe382b6d6ea82">SHARP</a></div><div class="ttdeci">@ SHARP</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00063">IRProtocol.h:63</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRProtocol_8h.html">IRProtocol.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -124,7 +124,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRProtocol_8hpp.html">IRProtocol.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -96,7 +96,7 @@ $(document).ready(function(){initNavTree('IRProtocol_8hpp_source.html',''); init
<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"> * MIT License</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"> * Copyright (c) 2009-2022 Ken Shirriff, Rafi Khan, Armin Joachimsmeyer</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * Copyright (c) 2009-2023 Ken Shirriff, Rafi Khan, Armin Joachimsmeyer</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining a copy</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * of this software and associated documentation files (the &quot;Software&quot;), to deal</span></div>
@ -126,117 +126,117 @@ $(document).ready(function(){initNavTree('IRProtocol_8hpp_source.html',''); init
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="comment">//#define LOCAL_DEBUG // This enables debug output only for this file</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="comment"> * Check for additional characteristics of timing like length of mark for a constant mark protocol,</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment"> * where space length determines the bit value. Requires up to 194 additional bytes of program memory.</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">//#define DECODE_STRICT_CHECKS</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"><a class="line" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e"> 51</a></span>&#160;<span class="comment"></span><span class="keyword">const</span> <span class="keywordtype">char</span> string_Unknown[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_PulseWidth[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;PulseWidth&quot;</span>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_PulseDistance[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;PulseDistance&quot;</span>;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Apple[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Apple&quot;</span>;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Denon[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Denon&quot;</span>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_JVC[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;JVC&quot;</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_LG[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;LG&quot;</span>;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_LG2[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;LG2&quot;</span>;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_NEC[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;NEC&quot;</span>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_NEC2[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;NEC2&quot;</span>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Onkyo[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Onkyo&quot;</span>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Panasonic[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Panasonic&quot;</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo&quot;</span>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_Denon[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_Denon&quot;</span>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_Sharp[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_Sharp&quot;</span>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_JVC[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_JVC&quot;</span>;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_Mitsubishi[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_Mitsubishi&quot;</span>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_RC5[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;RC5&quot;</span>;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_RC6[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;RC6&quot;</span>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Samsung[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Samsung&quot;</span>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Samsung48[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Samsung48&quot;</span>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_SamsungLG[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;SamsungLG&quot;</span>;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Sharp[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Sharp&quot;</span>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Sony[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Sony&quot;</span>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_BangOlufsen[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Bang&amp;Olufsen&quot;</span>;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_BoseWave[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;BoseWave&quot;</span>;</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Lego[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Lego&quot;</span>;</div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_MagiQuest[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;MagiQuest&quot;</span>;</div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Whynter[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Whynter&quot;</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="comment">/*</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * !!Must be the same order as in decode_type_t in IRProtocol.h!!!</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<span class="keyword">const</span> ProtocolNames[]</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = { string_Unknown, string_PulseWidth, string_PulseDistance, string_Apple, string_Denon, string_JVC, string_LG, string_LG2,</div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; string_NEC, string_NEC2, string_Onkyo, string_Panasonic, string_Kaseikyo, string_Kaseikyo_Denon, string_Kaseikyo_Sharp,</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; string_Kaseikyo_JVC, string_Kaseikyo_Mitsubishi, string_RC5, string_RC6, string_Samsung, string_Samsung48, string_SamsungLG, string_Sharp,</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; string_Sony</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">#if !defined(EXCLUDE_EXOTIC_PROTOCOLS)</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; , string_BangOlufsen, string_BoseWave, string_Lego, string_MagiQuest, string_Whynter</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">#endif</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="preprocessor">#if defined(__AVR__)</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="keyword">const</span> __FlashStringHelper* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol) {</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *tProtocolStringPtr = (<span class="keywordtype">char</span>*) pgm_read_word(&amp;ProtocolNames[aProtocol]);</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> ((__FlashStringHelper*) (tProtocolStringPtr));</div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e"> 46</a></span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Unknown[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;UNKNOWN&quot;</span>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_PulseWidth[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;PulseWidth&quot;</span>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_PulseDistance[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;PulseDistance&quot;</span>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Apple[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Apple&quot;</span>;</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Denon[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Denon&quot;</span>;</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_JVC[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;JVC&quot;</span>;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_LG[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;LG&quot;</span>;</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_LG2[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;LG2&quot;</span>;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_NEC[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;NEC&quot;</span>;</div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_NEC2[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;NEC2&quot;</span>;</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Onkyo[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Onkyo&quot;</span>;</div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Panasonic[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Panasonic&quot;</span>;</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo&quot;</span>;</div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_Denon[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_Denon&quot;</span>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_Sharp[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_Sharp&quot;</span>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_JVC[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_JVC&quot;</span>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Kaseikyo_Mitsubishi[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Kaseikyo_Mitsubishi&quot;</span>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_RC5[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;RC5&quot;</span>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_RC6[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;RC6&quot;</span>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Samsung[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Samsung&quot;</span>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Samsung48[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Samsung48&quot;</span>;</div>
<div class="line"><a name="l00067"></a><span class="lineno"> 67</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_SamsungLG[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;SamsungLG&quot;</span>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Sharp[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Sharp&quot;</span>;</div>
<div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Sony[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Sony&quot;</span>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_BangOlufsen[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Bang&amp;Olufsen&quot;</span>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_BoseWave[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;BoseWave&quot;</span>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Lego[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Lego&quot;</span>;</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_MagiQuest[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;MagiQuest&quot;</span>;</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_Whynter[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;Whynter&quot;</span>;</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> string_FAST[] <a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = <span class="stringliteral">&quot;FAST&quot;</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;<span class="comment">/*</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> * !!Must be the same order as in decode_type_t in IRProtocol.h!!!</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span> *<span class="keyword">const</span> ProtocolNames[]</div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<a class="code" href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a> = { string_Unknown, string_PulseWidth, string_PulseDistance, string_Apple, string_Denon, string_JVC, string_LG, string_LG2,</div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160; string_NEC, string_NEC2, string_Onkyo, string_Panasonic, string_Kaseikyo, string_Kaseikyo_Denon, string_Kaseikyo_Sharp,</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; string_Kaseikyo_JVC, string_Kaseikyo_Mitsubishi, string_RC5, string_RC6, string_Samsung, string_Samsung48, string_SamsungLG,</div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; string_Sharp, string_Sony</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="preprocessor">#if !defined(EXCLUDE_EXOTIC_PROTOCOLS)</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; , string_BangOlufsen, string_BoseWave, string_Lego, string_MagiQuest, string_Whynter, string_FAST</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; };</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">#if defined(__AVR__)</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="keyword">const</span> __FlashStringHelper* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol) {</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *tProtocolStringPtr = (<span class="keywordtype">char</span>*) pgm_read_word(&amp;ProtocolNames[aProtocol]);</div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; <span class="keywordflow">return</span> ((__FlashStringHelper*) (tProtocolStringPtr));</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="preprocessor">#else</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7"> 96</a></span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol) {</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> ProtocolNames[aProtocol];</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;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7"> 100</a></span>&#160;<span class="keyword">const</span> <span class="keywordtype">char</span>* <a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(<a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol) {</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; <span class="keywordflow">return</span> ProtocolNames[aProtocol];</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;}</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="preprocessor">#endif</span></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="preprocessor">#if (__INT_WIDTH__ &gt;= 32)</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor"># if __has_include(&lt;type_traits&gt;)</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment"> * This code to handle the missing print(unsigned long long...) function of seeduino core was contributed by sklott</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment"> * https://stackoverflow.com/questions/74622227/avoid-calling-of-function-size-t-printprintunsigned-long-long-n-int-base-if</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="preprocessor">#include &lt;type_traits&gt;</span></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;<span class="comment">// If you have C++17 you can just use std::void_t, or use this for all versions</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="preprocessor">#if __cpp_lib_void_t &gt;= 201411L</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="keyword">using</span> void_t = std::void_t&lt;T&gt;;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> ... Ts&gt; <span class="keyword">struct </span>make_void {</div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; <span class="keyword">typedef</span> <span class="keywordtype">void</span> type;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;};</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> ... Ts&gt; <span class="keyword">using</span> void_t = <span class="keyword">typename</span> make_void&lt;Ts...&gt;::type;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">// Detecting if we have print(unsigned long long value, int base) / print(0ull, 0) overload</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> = <span class="keywordtype">void</span>&gt;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="keyword">struct </span>has_ull_print: std::false_type {</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="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keyword">struct </span>has_ull_print&lt;T, void_t&lt;decltype(std::declval&lt;T&gt;().print(0ull, 0))&gt;&gt; : std::true_type {</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="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment">// Must be namespace, to avoid public and static declarations for class</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="keyword">namespace </span>PrintULL {</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;template&lt;typename PrintImplType, typename std::enable_if&lt;!has_ull_print&lt;PrintImplType&gt;::value, <span class="keywordtype">bool</span>&gt;::type = <span class="keyword">true</span>&gt;</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="keywordtype">size_t</span> print(PrintImplType *p, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> value, <span class="keywordtype">int</span> base) {</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="keywordtype">size_t</span> tLength = p-&gt;print(<span class="keyword">static_cast&lt;</span>uint32_t<span class="keyword">&gt;</span>(value &gt;&gt; 32), base);</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; tLength += p-&gt;print(<span class="keyword">static_cast&lt;</span>uint32_t<span class="keyword">&gt;</span>(value), base);</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="keywordflow">return</span> tLength;</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; </div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;template&lt;typename PrintImplType, typename std::enable_if&lt;has_ull_print&lt;PrintImplType&gt;::value, <span class="keywordtype">bool</span>&gt;::type = <span class="keyword">true</span>&gt;</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;<span class="keywordtype">size_t</span> print(PrintImplType *p, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> value, <span class="keywordtype">int</span> base) {</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="keywordflow">return</span> p-&gt;print(value, base);</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;}</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;;</div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="keyword">namespace </span>PrintULL {</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="keywordtype">size_t</span> print(Print *aSerial, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> n, <span class="keywordtype">int</span> base) {</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">return</span> aSerial-&gt;print(n, base);</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; }</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;};</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00166"></a><span class="lineno"><a class="line" href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d"> 166</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a>(Print *aSerial, <a class="code" href="structIRData.html">IRData</a> *aIRDataPtr, <span class="keywordtype">bool</span> aPrintRepeatGap) {</div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">#endif</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;<span class="preprocessor">#if (__INT_WIDTH__ &gt;= 32)</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor"># if __has_include(&lt;type_traits&gt;)</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> * This code to handle the missing print(unsigned long long...) function of seeduino core was contributed by sklott</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> * https://stackoverflow.com/questions/74622227/avoid-calling-of-function-size-t-printprintunsigned-long-long-n-int-base-if</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#include &lt;type_traits&gt;</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">// If you have C++17 you can just use std::void_t, or use this for all versions</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="preprocessor">#if __cpp_lib_void_t &gt;= 201411L</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="keyword">using</span> void_t = std::void_t&lt;T&gt;;</div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> ... Ts&gt; <span class="keyword">struct </span>make_void {</div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; <span class="keyword">typedef</span> <span class="keywordtype">void</span> type;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;};</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> ... Ts&gt; <span class="keyword">using</span> void_t = <span class="keyword">typename</span> make_void&lt;Ts...&gt;::type;</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor">#endif</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;<span class="comment">// Detecting if we have print(unsigned long long value, int base) / print(0ull, 0) overload</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T, <span class="keyword">typename</span> = <span class="keywordtype">void</span>&gt;</div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="keyword">struct </span>has_ull_print: std::false_type {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;};</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="keyword">template</span>&lt;<span class="keyword">typename</span> T&gt;</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="keyword">struct </span>has_ull_print&lt;T, void_t&lt;decltype(std::declval&lt;T&gt;().print(0ull, 0))&gt;&gt; : std::true_type {</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; </div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment">// Must be namespace, to avoid public and static declarations for class</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="keyword">namespace </span>PrintULL {</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;template&lt;typename PrintImplType, typename std::enable_if&lt;!has_ull_print&lt;PrintImplType&gt;::value, <span class="keywordtype">bool</span>&gt;::type = <span class="keyword">true</span>&gt;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="keywordtype">size_t</span> print(PrintImplType *p, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> value, <span class="keywordtype">int</span> base) {</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; <span class="keywordtype">size_t</span> tLength = p-&gt;print(<span class="keyword">static_cast&lt;</span>uint32_t<span class="keyword">&gt;</span>(value &gt;&gt; 32), base);</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; tLength += p-&gt;print(<span class="keyword">static_cast&lt;</span>uint32_t<span class="keyword">&gt;</span>(value), base);</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keywordflow">return</span> tLength;</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="l00137"></a><span class="lineno"> 137</span>&#160;template&lt;typename PrintImplType, typename std::enable_if&lt;has_ull_print&lt;PrintImplType&gt;::value, <span class="keywordtype">bool</span>&gt;::type = <span class="keyword">true</span>&gt;</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="keywordtype">size_t</span> print(PrintImplType *p, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> value, <span class="keywordtype">int</span> base) {</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <span class="keywordflow">return</span> p-&gt;print(value, base);</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;}</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;;</div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="keyword">namespace </span>PrintULL {</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordtype">size_t</span> print(Print *aSerial, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> n, <span class="keywordtype">int</span> base) {</div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160; <span class="keywordflow">return</span> aSerial-&gt;print(n, base);</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="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d"> 162</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a>(Print *aSerial, <a class="code" href="structIRData.html">IRData</a> *aIRDataPtr, <span class="keywordtype">bool</span> aPrintRepeatGap) {</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="keywordflow">if</span> (aIRDataPtr-&gt;<a class="code" href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">flags</a> &amp; <a class="code" href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401">IRDATA_FLAGS_WAS_OVERFLOW</a>) {</div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; aSerial-&gt;println(F(<span class="stringliteral">&quot;Overflow&quot;</span>));</div>
<div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160; <span class="keywordflow">return</span>;</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; aSerial-&gt;print(F(<span class="stringliteral">&quot;Protocol=&quot;</span>));</div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; aSerial-&gt;print(<a class="code" href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a>(aIRDataPtr-&gt;<a class="code" href="structIRData.html#a703592faec26bab5cbe465f53ef14245">protocol</a>));</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <span class="keywordflow">if</span> (aIRDataPtr-&gt;<a class="code" href="structIRData.html#a703592faec26bab5cbe465f53ef14245">protocol</a> == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada6ce26a62afab55d7606ad4e92428b30c">UNKNOWN</a>) {</div>
@ -291,7 +291,7 @@ $(document).ready(function(){initNavTree('IRProtocol_8hpp_source.html',''); init
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160;<span class="preprocessor">#if !defined(DISABLE_CODE_FOR_RECEIVER)</span></div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; <span class="keywordflow">if</span> (aPrintRepeatGap) {</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; aSerial-&gt;print(F(<span class="stringliteral">&quot; gap=&quot;</span>));</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; aSerial-&gt;print((uint32_t) aIRDataPtr-&gt;<a class="code" href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">rawDataPtr</a>-&gt;<a class="code" href="structirparams__struct.html#a6652c81270d0bbcb0d81e7631770fc02">rawbuf</a>[0] * <a class="code" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>);</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; aSerial-&gt;print((uint32_t) aIRDataPtr-&gt;<a class="code" href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">rawDataPtr</a>-&gt;<a class="code" href="structirparams__struct.html#a7aa7b811dcc0fb5ab0da7c0bddaf97f8">rawbuf</a>[0] * <a class="code" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>);</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; aSerial-&gt;print(F(<span class="stringliteral">&quot;us&quot;</span>));</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; }</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="preprocessor">#else</span></div>
@ -360,45 +360,46 @@ $(document).ready(function(){initNavTree('IRProtocol_8hpp_source.html',''); init
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="preprocessor">#endif // _IR_PROTOCOL_HPP</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="astructIRData_html_a1255a5b7d704d34fda83dcabcb903d4c"><div class="ttname"><a href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">IRData::address</a></div><div class="ttdeci">uint16_t address</div><div class="ttdoc">Decoded address, Distance protocol (tMarkTicksLong (if tMarkTicksLong == 0, then tMarkTicksShort) &lt;&lt; ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00117">IRProtocol.h:117</a></div></div>
<div class="ttc" id="aIRremote_8hpp_html_a1c7eebb527483c272812530caa313d20"><div class="ttname"><a href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a></div><div class="ttdeci">#define MICROS_PER_TICK</div><div class="ttdoc">microseconds per clock interrupt tick</div><div class="ttdef"><b>Definition:</b> <a href="IRremote_8hpp_source.html#l00259">IRremote.hpp:258</a></div></div>
<div class="ttc" id="aunionLongUnion_html"><div class="ttname"><a href="unionLongUnion.html">LongUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 32 bit Long without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00057">LongUnion.h:57</a></div></div>
<div class="ttc" id="astructIRData_html_a945c41b8463a36cf00b0f38b0aa73200"><div class="ttname"><a href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200">IRData::numberOfBits</a></div><div class="ttdeci">uint16_t numberOfBits</div><div class="ttdoc">Number of bits received for data (address + command + parity) - to determine protocol length if diffe...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00120">IRProtocol.h:120</a></div></div>
<div class="ttc" id="astructIRData_html_a1255a5b7d704d34fda83dcabcb903d4c"><div class="ttname"><a href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">IRData::address</a></div><div class="ttdeci">uint16_t address</div><div class="ttdoc">Decoded address, Distance protocol (tMarkTicksLong (if tMarkTicksLong == 0, then tMarkTicksShort) &lt;&lt; ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00109">IRProtocol.h:109</a></div></div>
<div class="ttc" id="aIRremote_8hpp_html_a1c7eebb527483c272812530caa313d20"><div class="ttname"><a href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a></div><div class="ttdeci">#define MICROS_PER_TICK</div><div class="ttdoc">microseconds per clock interrupt tick</div><div class="ttdef"><b>Definition:</b> <a href="IRremote_8hpp_source.html#l00250">IRremote.hpp:249</a></div></div>
<div class="ttc" id="aunionLongUnion_html"><div class="ttname"><a href="unionLongUnion.html">LongUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 32 bit Long without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00059">LongUnion.h:59</a></div></div>
<div class="ttc" id="astructIRData_html_a945c41b8463a36cf00b0f38b0aa73200"><div class="ttname"><a href="structIRData.html#a945c41b8463a36cf00b0f38b0aa73200">IRData::numberOfBits</a></div><div class="ttdeci">uint16_t numberOfBits</div><div class="ttdoc">Number of bits received for data (address + command + parity) - to determine protocol length if diffe...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00118">IRProtocol.h:118</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gad7c345c1b554ca8f3069b5fb767f07d6"><div class="ttname"><a href="group__Receiving.html#gad7c345c1b554ca8f3069b5fb767f07d6">bitreverse32Bit</a></div><div class="ttdeci">uint32_t bitreverse32Bit(uint32_t aInput)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00274">IRProtocol.hpp:274</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a2a351107fefa4b5173dbc8198607515e"><div class="ttname"><a href="unionLongUnion.html#a2a351107fefa4b5173dbc8198607515e">LongUnion::UByte</a></div><div class="ttdeci">struct LongUnion::@4 UByte</div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada783253fd89cb09e1dbdb2bcdbc0400e3"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada783253fd89cb09e1dbdb2bcdbc0400e3">PULSE_WIDTH</a></div><div class="ttdeci">@ PULSE_WIDTH</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00042">IRProtocol.h:42</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_aaa9952cd64b58083c28873484c494abf"><div class="ttname"><a href="IRProtocol_8h.html#aaa9952cd64b58083c28873484c494abf">IRDATA_FLAGS_IS_REPEAT</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_REPEAT</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00095">IRProtocol.h:94</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_aaa9952cd64b58083c28873484c494abf"><div class="ttname"><a href="IRProtocol_8h.html#aaa9952cd64b58083c28873484c494abf">IRDATA_FLAGS_IS_REPEAT</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_REPEAT</div><div class="ttdoc">The gap between the preceding frame is as smaller than the maximum gap expected for a repeat....</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00093">IRProtocol.h:92</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fad"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a></div><div class="ttdeci">decode_type_t</div><div class="ttdoc">An enum consisting of all supported formats.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00040">IRProtocol.h:40</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aa41368107679917a1c39f30999f4e9d9"><div class="ttname"><a href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LongUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00059">LongUnion.h:59</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a67e1514b7a6ccc4d017eb6928c327e5c"><div class="ttname"><a href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c">LongUnion::HighByte</a></div><div class="ttdeci">uint8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00062">LongUnion.h:62</a></div></div>
<div class="ttc" id="astructIRData_html_a8d7c987d63874731ff2e1120b21a1a08"><div class="ttname"><a href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">IRData::rawDataPtr</a></div><div class="ttdeci">irparams_struct * rawDataPtr</div><div class="ttdoc">Pointer of the raw timing data to be decoded. Mainly the OverflowFlag and the data buffer filled by r...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00126">IRProtocol.h:126</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a5c5e6ae69aa440bfa132550d120ace08"><div class="ttname"><a href="IRProtocol_8h.html#a5c5e6ae69aa440bfa132550d120ace08">IRDATA_FLAGS_IS_AUTO_REPEAT</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_AUTO_REPEAT</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00096">IRProtocol.h:95</a></div></div>
<div class="ttc" id="astructIRData_html_a1aca80950279db7f8631f96268f012d9"><div class="ttname"><a href="structIRData.html#a1aca80950279db7f8631f96268f012d9">IRData::decodedRawData</a></div><div class="ttdeci">IRRawDataType decodedRawData</div><div class="ttdoc">Up to 32/64 bit decoded raw data, to be used for send functions.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00122">IRProtocol.h:122</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aa41368107679917a1c39f30999f4e9d9"><div class="ttname"><a href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LongUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00061">LongUnion.h:61</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a67e1514b7a6ccc4d017eb6928c327e5c"><div class="ttname"><a href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c">LongUnion::HighByte</a></div><div class="ttdeci">uint8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00064">LongUnion.h:64</a></div></div>
<div class="ttc" id="astructirparams__struct_html_a7aa7b811dcc0fb5ab0da7c0bddaf97f8"><div class="ttname"><a href="structirparams__struct.html#a7aa7b811dcc0fb5ab0da7c0bddaf97f8">irparams_struct::rawbuf</a></div><div class="ttdeci">uint16_t rawbuf[RAW_BUFFER_LENGTH]</div><div class="ttdoc">raw data / tick counts per mark/space, first entry is the length of the gap between previous and curr...</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00113">IRremoteInt.h:113</a></div></div>
<div class="ttc" id="astructIRData_html_a8d7c987d63874731ff2e1120b21a1a08"><div class="ttname"><a href="structIRData.html#a8d7c987d63874731ff2e1120b21a1a08">IRData::rawDataPtr</a></div><div class="ttdeci">irparams_struct * rawDataPtr</div><div class="ttdoc">Pointer of the raw timing data to be decoded. Mainly the OverflowFlag and the data buffer filled by r...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00120">IRProtocol.h:120</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a5c5e6ae69aa440bfa132550d120ace08"><div class="ttname"><a href="IRProtocol_8h.html#a5c5e6ae69aa440bfa132550d120ace08">IRDATA_FLAGS_IS_AUTO_REPEAT</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_AUTO_REPEAT</div><div class="ttdoc">The current repeat frame is a repeat, that is always sent after a regular frame and cannot be avoided...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00094">IRProtocol.h:93</a></div></div>
<div class="ttc" id="astructIRData_html_a1aca80950279db7f8631f96268f012d9"><div class="ttname"><a href="structIRData.html#a1aca80950279db7f8631f96268f012d9">IRData::decodedRawData</a></div><div class="ttdeci">IRRawDataType decodedRawData</div><div class="ttdoc">Up to 32/64 bit decoded raw data, to be used for send functions.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00112">IRProtocol.h:112</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadab60e0c1f01cfceb2dc9d5f2005f6dfc0"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadab60e0c1f01cfceb2dc9d5f2005f6dfc0">PULSE_DISTANCE</a></div><div class="ttdeci">@ PULSE_DISTANCE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00043">IRProtocol.h:43</a></div></div>
<div class="ttc" id="astructirparams__struct_html_a98a83a61e15fc371e5ce7db12dbd0475"><div class="ttname"><a href="structirparams__struct.html#a98a83a61e15fc371e5ce7db12dbd0475">irparams_struct::rawlen</a></div><div class="ttdeci">uint_fast8_t rawlen</div><div class="ttdoc">counter of entries in rawbuf</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00109">IRremoteInt.h:109</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gac45e8ead5e96868e61c65cd354758d4d"><div class="ttname"><a href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a></div><div class="ttdeci">void printIRResultShort(Print *aSerial, IRData *aIRDataPtr, bool aPrintRepeatGap)</div><div class="ttdoc">Function to print decoded result and flags in one line.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00166">IRProtocol.hpp:166</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a1a60f95f0885b1865dc5514ddd80e093"><div class="ttname"><a href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093">IRDATA_FLAGS_PARITY_FAILED</a></div><div class="ttdeci">#define IRDATA_FLAGS_PARITY_FAILED</div><div class="ttdoc">the current (autorepeat) frame violated parity check</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00097">IRProtocol.h:96</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aeed69e051ef3c5c3d03e0efa260226b1"><div class="ttname"><a href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">LongUnion::MidLowByte</a></div><div class="ttdeci">uint8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00060">LongUnion.h:60</a></div></div>
<div class="ttc" id="astructIRData_html"><div class="ttname"><a href="structIRData.html">IRData</a></div><div class="ttdoc">Data structure for the user application, available as decodedIRData.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00115">IRProtocol.h:115</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_abf3b16f9ab35f4e4b95c8c362aca2d71"><div class="ttname"><a href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71">IRDATA_FLAGS_EXTRA_INFO</a></div><div class="ttdeci">#define IRDATA_FLAGS_EXTRA_INFO</div><div class="ttdoc">There is extra info not contained in address and data (e.g. Kaseikyo unknown vendor ID,...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00099">IRProtocol.h:98</a></div></div>
<div class="ttc" id="astructIRData_html_aaaad48fc0d90e5c6daec601987848a51"><div class="ttname"><a href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">IRData::flags</a></div><div class="ttdeci">uint8_t flags</div><div class="ttdoc">See IRDATA_FLAGS_* definitions above.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00121">IRProtocol.h:121</a></div></div>
<div class="ttc" id="astructirparams__struct_html_a6652c81270d0bbcb0d81e7631770fc02"><div class="ttname"><a href="structirparams__struct.html#a6652c81270d0bbcb0d81e7631770fc02">irparams_struct::rawbuf</a></div><div class="ttdeci">unsigned int rawbuf[RAW_BUFFER_LENGTH]</div><div class="ttdoc">raw data / tick counts per mark/space, first entry is the length of the gap between previous and curr...</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00113">IRremoteInt.h:113</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gac45e8ead5e96868e61c65cd354758d4d"><div class="ttname"><a href="group__Receiving.html#gac45e8ead5e96868e61c65cd354758d4d">printIRResultShort</a></div><div class="ttdeci">void printIRResultShort(Print *aSerial, IRData *aIRDataPtr, bool aPrintRepeatGap)</div><div class="ttdoc">Function to print decoded result and flags in one line.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00162">IRProtocol.hpp:162</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a1a60f95f0885b1865dc5514ddd80e093"><div class="ttname"><a href="IRProtocol_8h.html#a1a60f95f0885b1865dc5514ddd80e093">IRDATA_FLAGS_PARITY_FAILED</a></div><div class="ttdeci">#define IRDATA_FLAGS_PARITY_FAILED</div><div class="ttdoc">The current (autorepeat) frame violated parity check.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00095">IRProtocol.h:94</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aeed69e051ef3c5c3d03e0efa260226b1"><div class="ttname"><a href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">LongUnion::MidLowByte</a></div><div class="ttdeci">uint8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00062">LongUnion.h:62</a></div></div>
<div class="ttc" id="astructIRData_html"><div class="ttname"><a href="structIRData.html">IRData</a></div><div class="ttdoc">Data structure for the user application, available as decodedIRData.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00107">IRProtocol.h:107</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_abf3b16f9ab35f4e4b95c8c362aca2d71"><div class="ttname"><a href="IRProtocol_8h.html#abf3b16f9ab35f4e4b95c8c362aca2d71">IRDATA_FLAGS_EXTRA_INFO</a></div><div class="ttdeci">#define IRDATA_FLAGS_EXTRA_INFO</div><div class="ttdoc">There is extra info not contained in address and data (e.g. Kaseikyo unknown vendor ID,...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00098">IRProtocol.h:97</a></div></div>
<div class="ttc" id="astructIRData_html_aaaad48fc0d90e5c6daec601987848a51"><div class="ttname"><a href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">IRData::flags</a></div><div class="ttdeci">uint8_t flags</div><div class="ttdoc">IRDATA_FLAGS_IS_REPEAT, IRDATA_FLAGS_WAS_OVERFLOW etc. See IRDATA_FLAGS_* definitions above.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00119">IRProtocol.h:119</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a1acaa14d5a437ad317e17489e845f401"><div class="ttname"><a href="IRProtocol_8h.html#a1acaa14d5a437ad317e17489e845f401">IRDATA_FLAGS_WAS_OVERFLOW</a></div><div class="ttdeci">#define IRDATA_FLAGS_WAS_OVERFLOW</div><div class="ttdoc">irparams.rawlen is set to 0 in this case to avoid endless OverflowFlag.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00099">IRProtocol.h:98</a></div></div>
<div class="ttc" id="agroup__Receiving_html_ga95e4a5acb86af8c967f8cae7e75062cb"><div class="ttname"><a href="group__Receiving.html#ga95e4a5acb86af8c967f8cae7e75062cb">bitreverseOneByte</a></div><div class="ttdeci">uint8_t bitreverseOneByte(uint8_t aValue)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00261">IRProtocol.hpp:261</a></div></div>
<div class="ttc" id="astructIRData_html_ab0ce2b36765ea429e8c4bfa0706a45e7"><div class="ttname"><a href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">IRData::command</a></div><div class="ttdeci">uint16_t command</div><div class="ttdoc">Decoded command, Distance protocol (tMarkTicksShort &lt;&lt; 8) | tSpaceTicksShort.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00118">IRProtocol.h:118</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aaf8815ca810b2d8386b5912f127586a7"><div class="ttname"><a href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">LongUnion::ULong</a></div><div class="ttdeci">uint32_t ULong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00093">LongUnion.h:93</a></div></div>
<div class="ttc" id="agroup__Receiving_html_ga40297ba8cf5a1c89fea2e9844c5e8d9e"><div class="ttname"><a href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a></div><div class="ttdeci">const char string_Unknown[] PROGMEM</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00051">IRProtocol.hpp:51</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a7f6872e6f83c0571e3150ba86428af4c"><div class="ttname"><a href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c">IRDATA_FLAGS_IS_MSB_FIRST</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_MSB_FIRST</div><div class="ttdoc">Value is mainly determined by the (known) protocol.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00101">IRProtocol.h:100</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a169a0ae23ab363f24027f769881db0b0"><div class="ttname"><a href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0">IRDATA_FLAGS_TOGGLE_BIT</a></div><div class="ttdeci">#define IRDATA_FLAGS_TOGGLE_BIT</div><div class="ttdoc">is set if RC5 or RC6 toggle bit is set</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00098">IRProtocol.h:97</a></div></div>
<div class="ttc" id="astructIRData_html_a0b71fa1a17e3ab0ae9bc9462b795213f"><div class="ttname"><a href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f">IRData::extra</a></div><div class="ttdeci">uint16_t extra</div><div class="ttdoc">Contains upper 16 bit of Magiquest WandID, Kaseikyo unknown vendor ID and Distance protocol (HeaderMa...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00119">IRProtocol.h:119</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aba027b17010803cf910996cae9201f32"><div class="ttname"><a href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">LongUnion::MidHighByte</a></div><div class="ttdeci">uint8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00061">LongUnion.h:61</a></div></div>
<div class="ttc" id="astructIRData_html_ab0ce2b36765ea429e8c4bfa0706a45e7"><div class="ttname"><a href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">IRData::command</a></div><div class="ttdeci">uint16_t command</div><div class="ttdoc">Decoded command, Distance protocol (tMarkTicksShort &lt;&lt; 8) | tSpaceTicksShort.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00110">IRProtocol.h:110</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aaf8815ca810b2d8386b5912f127586a7"><div class="ttname"><a href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">LongUnion::ULong</a></div><div class="ttdeci">uint32_t ULong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00095">LongUnion.h:95</a></div></div>
<div class="ttc" id="agroup__Receiving_html_ga40297ba8cf5a1c89fea2e9844c5e8d9e"><div class="ttname"><a href="group__Receiving.html#ga40297ba8cf5a1c89fea2e9844c5e8d9e">PROGMEM</a></div><div class="ttdeci">const char string_Unknown[] PROGMEM</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00046">IRProtocol.hpp:46</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a7f6872e6f83c0571e3150ba86428af4c"><div class="ttname"><a href="IRProtocol_8h.html#a7f6872e6f83c0571e3150ba86428af4c">IRDATA_FLAGS_IS_MSB_FIRST</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_MSB_FIRST</div><div class="ttdoc">Value is mainly determined by the (known) protocol.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00100">IRProtocol.h:99</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_a169a0ae23ab363f24027f769881db0b0"><div class="ttname"><a href="IRProtocol_8h.html#a169a0ae23ab363f24027f769881db0b0">IRDATA_FLAGS_TOGGLE_BIT</a></div><div class="ttdeci">#define IRDATA_FLAGS_TOGGLE_BIT</div><div class="ttdoc">Is set if RC5 or RC6 toggle bit is set.</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00096">IRProtocol.h:95</a></div></div>
<div class="ttc" id="astructIRData_html_a0b71fa1a17e3ab0ae9bc9462b795213f"><div class="ttname"><a href="structIRData.html#a0b71fa1a17e3ab0ae9bc9462b795213f">IRData::extra</a></div><div class="ttdeci">uint16_t extra</div><div class="ttdoc">Contains upper 16 bit of Magiquest WandID, Kaseikyo unknown vendor ID and Distance protocol (HeaderMa...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00111">IRProtocol.h:111</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aba027b17010803cf910996cae9201f32"><div class="ttname"><a href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">LongUnion::MidHighByte</a></div><div class="ttdeci">uint8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00063">LongUnion.h:63</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada6ce26a62afab55d7606ad4e92428b30c"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada6ce26a62afab55d7606ad4e92428b30c">UNKNOWN</a></div><div class="ttdeci">@ UNKNOWN</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00041">IRProtocol.h:41</a></div></div>
<div class="ttc" id="astructIRData_html_a703592faec26bab5cbe465f53ef14245"><div class="ttname"><a href="structIRData.html#a703592faec26bab5cbe465f53ef14245">IRData::protocol</a></div><div class="ttdeci">decode_type_t protocol</div><div class="ttdoc">UNKNOWN, NEC, SONY, RC5, PULSE_DISTANCE, ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00116">IRProtocol.h:116</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gab93c1433c1d6ab5e5bcdcb37339b2fb7"><div class="ttname"><a href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a></div><div class="ttdeci">const char * getProtocolString(decode_type_t aProtocol)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00100">IRProtocol.hpp:100</a></div></div>
<div class="ttc" id="astructIRData_html_a703592faec26bab5cbe465f53ef14245"><div class="ttname"><a href="structIRData.html#a703592faec26bab5cbe465f53ef14245">IRData::protocol</a></div><div class="ttdeci">decode_type_t protocol</div><div class="ttdoc">UNKNOWN, NEC, SONY, RC5, PULSE_DISTANCE, ...</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00108">IRProtocol.h:108</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gab93c1433c1d6ab5e5bcdcb37339b2fb7"><div class="ttname"><a href="group__Receiving.html#gab93c1433c1d6ab5e5bcdcb37339b2fb7">getProtocolString</a></div><div class="ttdeci">const char * getProtocolString(decode_type_t aProtocol)</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8hpp_source.html#l00096">IRProtocol.hpp:96</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRProtocol_8hpp.html">IRProtocol.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,161 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRReceive.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRReceive_8cpp_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">IRReceive.cpp.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<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="IRReceive_8cpp_8h__dep__incl.png" border="0" usemap="#src_2IRReceive_8cpp_8hdep" alt=""/></div>
<map name="src_2IRReceive_8cpp_8hdep" id="src_2IRReceive_8cpp_8hdep">
<area shape="rect" title=" " alt="" coords="5,5,143,32"/>
<area shape="rect" href="IRremote_8h.html" title="Public API to the library." alt="" coords="21,80,127,107"/>
</map>
</div>
</div>
<p><a href="IRReceive_8cpp_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga495b7f49ff71cde1289b118fac0f0674"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674">matchTicks</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga495b7f49ff71cde1289b118fac0f0674"><td class="mdescLeft">&#160;</td><td class="mdescRight">Match function without compensating for marks exceeded or spaces shortened by demodulator hardware Currently not used. <a href="group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674">More...</a><br /></td></tr>
<tr class="separator:ga495b7f49ff71cde1289b118fac0f0674"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f9263ab71af2d2895add92f72a05ee9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga0f9263ab71af2d2895add92f72a05ee9">MATCH</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:ga0f9263ab71af2d2895add92f72a05ee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb">matchMark</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for marks exceeded by demodulator hardware. <a href="group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb">More...</a><br /></td></tr>
<tr class="separator:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadab293a71386f20571db6d779d1d84b7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gadab293a71386f20571db6d779d1d84b7">MATCH_MARK</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:gadab293a71386f20571db6d779d1d84b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b">matchSpace</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for spaces shortened by demodulator hardware. <a href="group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b">More...</a><br /></td></tr>
<tr class="separator:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab91e763e3ae44501f7c4f7b7ff8aca0f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab91e763e3ae44501f7c4f7b7ff8aca0f">MATCH_SPACE</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:gab91e763e3ae44501f7c4f7b7ff8aca0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863">getMarkExcessMicros</a> ()</td></tr>
<tr class="memdesc:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="mdescLeft">&#160;</td><td class="mdescRight">Getter function for MARK_EXCESS_MICROS. <a href="group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863">More...</a><br /></td></tr>
<tr class="separator:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0ad570723cf65cad6721117ae1a6d598"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga0ad570723cf65cad6721117ae1a6d598">CheckForRecordGapsMicros</a> (Print *aSerial, <a class="el" href="structIRData.html">IRData</a> *aIRDataPtr)</td></tr>
<tr class="separator:ga0ad570723cf65cad6721117ae1a6d598"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga545a2c08c0d21af0e95d65b052670bae"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga545a2c08c0d21af0e95d65b052670bae">printIRResultShort</a> (Print *aSerial, <a class="el" href="structIRData.html">IRData</a> *aIRDataPtr, uint16_t aLeadingSpaceTicks)</td></tr>
<tr class="memdesc:ga545a2c08c0d21af0e95d65b052670bae"><td class="mdescLeft">&#160;</td><td class="mdescRight">Internal function to print decoded result and flags in one line. <a href="group__Receiving.html#ga545a2c08c0d21af0e95d65b052670bae">More...</a><br /></td></tr>
<tr class="separator:ga545a2c08c0d21af0e95d65b052670bae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga77bf675537483ace83da089dea3a50a2"><td class="memItemLeft" align="right" valign="top">const __FlashStringHelper *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga77bf675537483ace83da089dea3a50a2">getProtocolString</a> (<a class="el" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fad">decode_type_t</a> aProtocol)</td></tr>
<tr class="separator:ga77bf675537483ace83da089dea3a50a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8c5af507063503eacfa11a27c993a90"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a> ()</td></tr>
<tr class="separator:gaa8c5af507063503eacfa11a27c993a90"><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:ga6813a2b456e5359ce674699c85a61cf9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIRrecv.html">IRrecv</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga6813a2b456e5359ce674699c85a61cf9">IrReceiver</a></td></tr>
<tr class="memdesc:ga6813a2b456e5359ce674699c85a61cf9"><td class="mdescLeft">&#160;</td><td class="mdescRight">The receiver instance. <a href="group__Receiving.html#ga6813a2b456e5359ce674699c85a61cf9">More...</a><br /></td></tr>
<tr class="separator:ga6813a2b456e5359ce674699c85a61cf9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga938046a49af083b7d470e61fd77e12ed"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="structirparams__struct.html">irparams_struct</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga938046a49af083b7d470e61fd77e12ed">irparams</a></td></tr>
<tr class="separator:ga938046a49af083b7d470e61fd77e12ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3f8125d5a7cde4fca3ece58e361296f9"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga3f8125d5a7cde4fca3ece58e361296f9">sBiphaseDecodeRawbuffOffset</a></td></tr>
<tr class="separator:ga3f8125d5a7cde4fca3ece58e361296f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga800106974e301f9dedf8acb891800e0b"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga800106974e301f9dedf8acb891800e0b">sCurrentTimingIntervals</a></td></tr>
<tr class="separator:ga800106974e301f9dedf8acb891800e0b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1b4a7361ca04152a3dd0a8681a721325"><td class="memItemLeft" align="right" valign="top">uint8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga1b4a7361ca04152a3dd0a8681a721325">sUsedTimingIntervals</a></td></tr>
<tr class="separator:ga1b4a7361ca04152a3dd0a8681a721325"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae25d907bed7a0f0298f9cf105d89f86f"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gae25d907bed7a0f0298f9cf105d89f86f">sBiphaseTimeUnit</a></td></tr>
<tr class="separator:gae25d907bed7a0f0298f9cf105d89f86f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRReceive_8cpp_8h.html">IRReceive.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:01 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,20 +0,0 @@
var IRReceive_8cpp_8h =
[
[ "CheckForRecordGapsMicros", "group__Receiving.html#ga0ad570723cf65cad6721117ae1a6d598", null ],
[ "getMarkExcessMicros", "group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863", null ],
[ "getProtocolString", "group__Receiving.html#ga77bf675537483ace83da089dea3a50a2", null ],
[ "ISR", "group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90", null ],
[ "MATCH", "group__Receiving.html#ga0f9263ab71af2d2895add92f72a05ee9", null ],
[ "MATCH_MARK", "group__Receiving.html#gadab293a71386f20571db6d779d1d84b7", null ],
[ "MATCH_SPACE", "group__Receiving.html#gab91e763e3ae44501f7c4f7b7ff8aca0f", null ],
[ "matchMark", "group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb", null ],
[ "matchSpace", "group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b", null ],
[ "matchTicks", "group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674", null ],
[ "printIRResultShort", "group__Receiving.html#ga545a2c08c0d21af0e95d65b052670bae", null ],
[ "irparams", "group__Receiving.html#ga938046a49af083b7d470e61fd77e12ed", null ],
[ "IrReceiver", "group__Receiving.html#ga6813a2b456e5359ce674699c85a61cf9", null ],
[ "sBiphaseDecodeRawbuffOffset", "group__Receiving.html#ga3f8125d5a7cde4fca3ece58e361296f9", null ],
[ "sBiphaseTimeUnit", "group__Receiving.html#gae25d907bed7a0f0298f9cf105d89f86f", null ],
[ "sCurrentTimingIntervals", "group__Receiving.html#ga800106974e301f9dedf8acb891800e0b", null ],
[ "sUsedTimingIntervals", "group__Receiving.html#ga1b4a7361ca04152a3dd0a8681a721325", null ]
];

View File

@ -1,4 +0,0 @@
<map id="src/IRReceive.cpp.h" name="src/IRReceive.cpp.h">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,143,32"/>
<area shape="rect" id="node2" href="$IRremote_8h.html" title="Public API to the library." alt="" coords="21,80,127,107"/>
</map>

View File

@ -1 +0,0 @@
4e8de11e39a8846099c5130e4599a85c

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

File diff suppressed because it is too large Load Diff

View File

@ -103,27 +103,23 @@ This graph shows which files directly or indirectly include this file:</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga73d34b2f45a5bb3d4185a271c72ad7ce"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga73d34b2f45a5bb3d4185a271c72ad7ce">if</a> (irparams.TickCounterForISR&lt; UINT16_MAX)</td></tr>
<tr class="separator:ga73d34b2f45a5bb3d4185a271c72ad7ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga47588a2a67c0e7891009595ea44d92ab"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga47588a2a67c0e7891009595ea44d92ab">if</a> (irparams.StateForISR==<a class="el" href="IRremoteInt_8h.html#a92edad56cde0f027e20711dcf83da843">IR_REC_STATE_IDLE</a>)</td></tr>
<tr class="separator:ga47588a2a67c0e7891009595ea44d92ab"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4367f524f85947913000864838af5e79"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga4367f524f85947913000864838af5e79">if</a> (FeedbackLEDControl.LedFeedbackEnabled==<a class="el" href="IRremoteInt_8h.html#a89f956d1675afae9fe0e421c322af7c9">LED_FEEDBACK_ENABLED_FOR_RECEIVE</a>)</td></tr>
<tr class="separator:ga4367f524f85947913000864838af5e79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7e916f5e40dbb6db37fff67191857ff9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7e916f5e40dbb6db37fff67191857ff9">matchTicks</a> (unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)</td></tr>
<tr class="memdesc:ga7e916f5e40dbb6db37fff67191857ff9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Match function without compensating for marks exceeded or spaces shortened by demodulator hardware Currently not used. <a href="group__Receiving.html#ga7e916f5e40dbb6db37fff67191857ff9">More...</a><br /></td></tr>
<tr class="separator:ga7e916f5e40dbb6db37fff67191857ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab42e5cf55dacb8b5849563ef0c5d9138"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab42e5cf55dacb8b5849563ef0c5d9138">MATCH</a> (unsigned int measured_ticks, unsigned int desired_us)</td></tr>
<tr class="separator:gab42e5cf55dacb8b5849563ef0c5d9138"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5e9aceb0b9c38a1125ad080ba4e4198f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga5e9aceb0b9c38a1125ad080ba4e4198f">matchMark</a> (unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)</td></tr>
<tr class="memdesc:ga5e9aceb0b9c38a1125ad080ba4e4198f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for marks exceeded by demodulator hardware. <a href="group__Receiving.html#ga5e9aceb0b9c38a1125ad080ba4e4198f">More...</a><br /></td></tr>
<tr class="separator:ga5e9aceb0b9c38a1125ad080ba4e4198f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7aa109ed6e93766bb746a50fd7e54526"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7aa109ed6e93766bb746a50fd7e54526">MATCH_MARK</a> (unsigned int measured_ticks, unsigned int desired_us)</td></tr>
<tr class="separator:ga7aa109ed6e93766bb746a50fd7e54526"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga791733ef19a2995f0b952b3aba0eaf1f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga791733ef19a2995f0b952b3aba0eaf1f">matchSpace</a> (unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)</td></tr>
<tr class="memdesc:ga791733ef19a2995f0b952b3aba0eaf1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for spaces shortened by demodulator hardware. <a href="group__Receiving.html#ga791733ef19a2995f0b952b3aba0eaf1f">More...</a><br /></td></tr>
<tr class="separator:ga791733ef19a2995f0b952b3aba0eaf1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93abce496bc1c03f2e689b5c7fbaab41"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga93abce496bc1c03f2e689b5c7fbaab41">MATCH_SPACE</a> (unsigned int measured_ticks, unsigned int desired_us)</td></tr>
<tr class="separator:ga93abce496bc1c03f2e689b5c7fbaab41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga770e03720a79491d7ddf347ad4b9e484"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga770e03720a79491d7ddf347ad4b9e484">IRReceiveTimerInterruptHandler</a> ()</td></tr>
<tr class="separator:ga770e03720a79491d7ddf347ad4b9e484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga495b7f49ff71cde1289b118fac0f0674"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674">matchTicks</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga495b7f49ff71cde1289b118fac0f0674"><td class="mdescLeft">&#160;</td><td class="mdescRight">Match function without compensating for marks exceeded or spaces shortened by demodulator hardware Currently not used. <a href="group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674">More...</a><br /></td></tr>
<tr class="separator:ga495b7f49ff71cde1289b118fac0f0674"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f9263ab71af2d2895add92f72a05ee9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga0f9263ab71af2d2895add92f72a05ee9">MATCH</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:ga0f9263ab71af2d2895add92f72a05ee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb">matchMark</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for marks exceeded by demodulator hardware. <a href="group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb">More...</a><br /></td></tr>
<tr class="separator:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadab293a71386f20571db6d779d1d84b7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gadab293a71386f20571db6d779d1d84b7">MATCH_MARK</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:gadab293a71386f20571db6d779d1d84b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b">matchSpace</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for spaces shortened by demodulator hardware. <a href="group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b">More...</a><br /></td></tr>
<tr class="separator:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab91e763e3ae44501f7c4f7b7ff8aca0f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab91e763e3ae44501f7c4f7b7ff8aca0f">MATCH_SPACE</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:gab91e763e3ae44501f7c4f7b7ff8aca0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863">getMarkExcessMicros</a> ()</td></tr>
<tr class="memdesc:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="mdescLeft">&#160;</td><td class="mdescRight">Getter function for MARK_EXCESS_MICROS. <a href="group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863">More...</a><br /></td></tr>
<tr class="separator:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -139,12 +135,12 @@ Variables</h2></td></tr>
<tr class="separator:ga938046a49af083b7d470e61fd77e12ed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8aabdbfa5a0a6090e938212745b4871e"><td class="memItemLeft" align="right" valign="top">uint_fast8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga8aabdbfa5a0a6090e938212745b4871e">sBiphaseDecodeRawbuffOffset</a></td></tr>
<tr class="separator:ga8aabdbfa5a0a6090e938212745b4871e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae47668593174992e2c581a6db4686e4b"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gae47668593174992e2c581a6db4686e4b">sBiphaseCurrentTimingIntervals</a></td></tr>
<tr class="separator:gae47668593174992e2c581a6db4686e4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac33950d3b355b78a28d6f54b6af6e7b8"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gac33950d3b355b78a28d6f54b6af6e7b8">sBiphaseCurrentTimingIntervals</a></td></tr>
<tr class="separator:gac33950d3b355b78a28d6f54b6af6e7b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gafa340a1dbbee30ea603df9f63bb55027"><td class="memItemLeft" align="right" valign="top">uint_fast8_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gafa340a1dbbee30ea603df9f63bb55027">sBiphaseUsedTimingIntervals</a></td></tr>
<tr class="separator:gafa340a1dbbee30ea603df9f63bb55027"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7804f9e5e8ae0e6e6736ecc504f8a1d0"><td class="memItemLeft" align="right" valign="top">unsigned int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7804f9e5e8ae0e6e6736ecc504f8a1d0">sBiphaseTimeUnit</a></td></tr>
<tr class="separator:ga7804f9e5e8ae0e6e6736ecc504f8a1d0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae25d907bed7a0f0298f9cf105d89f86f"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gae25d907bed7a0f0298f9cf105d89f86f">sBiphaseTimeUnit</a></td></tr>
<tr class="separator:gae25d907bed7a0f0298f9cf105d89f86f"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
@ -152,7 +148,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRReceive_8hpp.html">IRReceive.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,20 +1,18 @@
var IRReceive_8hpp =
[
[ "getMarkExcessMicros", "group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863", null ],
[ "if", "group__Receiving.html#ga4367f524f85947913000864838af5e79", null ],
[ "if", "group__Receiving.html#ga47588a2a67c0e7891009595ea44d92ab", null ],
[ "if", "group__Receiving.html#ga73d34b2f45a5bb3d4185a271c72ad7ce", null ],
[ "MATCH", "group__Receiving.html#gab42e5cf55dacb8b5849563ef0c5d9138", null ],
[ "MATCH_MARK", "group__Receiving.html#ga7aa109ed6e93766bb746a50fd7e54526", null ],
[ "MATCH_SPACE", "group__Receiving.html#ga93abce496bc1c03f2e689b5c7fbaab41", null ],
[ "matchMark", "group__Receiving.html#ga5e9aceb0b9c38a1125ad080ba4e4198f", null ],
[ "matchSpace", "group__Receiving.html#ga791733ef19a2995f0b952b3aba0eaf1f", null ],
[ "matchTicks", "group__Receiving.html#ga7e916f5e40dbb6db37fff67191857ff9", null ],
[ "IRReceiveTimerInterruptHandler", "group__Receiving.html#ga770e03720a79491d7ddf347ad4b9e484", null ],
[ "MATCH", "group__Receiving.html#ga0f9263ab71af2d2895add92f72a05ee9", null ],
[ "MATCH_MARK", "group__Receiving.html#gadab293a71386f20571db6d779d1d84b7", null ],
[ "MATCH_SPACE", "group__Receiving.html#gab91e763e3ae44501f7c4f7b7ff8aca0f", null ],
[ "matchMark", "group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb", null ],
[ "matchSpace", "group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b", null ],
[ "matchTicks", "group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674", null ],
[ "printActiveIRProtocols", "group__Receiving.html#gada0f2fe0704a217c16ee497ba7b3630e", null ],
[ "irparams", "group__Receiving.html#ga938046a49af083b7d470e61fd77e12ed", null ],
[ "IrReceiver", "group__Receiving.html#ga6813a2b456e5359ce674699c85a61cf9", null ],
[ "sBiphaseCurrentTimingIntervals", "group__Receiving.html#gae47668593174992e2c581a6db4686e4b", null ],
[ "sBiphaseCurrentTimingIntervals", "group__Receiving.html#gac33950d3b355b78a28d6f54b6af6e7b8", null ],
[ "sBiphaseDecodeRawbuffOffset", "group__Receiving.html#ga8aabdbfa5a0a6090e938212745b4871e", null ],
[ "sBiphaseTimeUnit", "group__Receiving.html#ga7804f9e5e8ae0e6e6736ecc504f8a1d0", null ],
[ "sBiphaseTimeUnit", "group__Receiving.html#gae25d907bed7a0f0298f9cf105d89f86f", null ],
[ "sBiphaseUsedTimingIntervals", "group__Receiving.html#gafa340a1dbbee30ea603df9f63bb55027", null ]
];

File diff suppressed because it is too large Load Diff

View File

@ -1,156 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRSend.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRSend_8cpp_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">IRSend.cpp.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for IRSend.cpp.h:</div>
<div class="dyncontent">
<div class="center"><img src="IRSend_8cpp_8h__incl.png" border="0" usemap="#src_2IRSend_8cpp_8h" alt=""/></div>
<map name="src_2IRSend_8cpp_8h" id="src_2IRSend_8cpp_8h">
<area shape="rect" title=" " alt="" coords="37,5,160,32"/>
<area shape="rect" href="IRremoteInt_8h.html" title="Contains all declarations required for the internal functions." alt="" coords="49,80,148,107"/>
<area shape="rect" title=" " alt="" coords="5,155,83,181"/>
<area shape="rect" href="IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,155,200,181"/>
</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="IRSend_8cpp_8h__dep__incl.png" border="0" usemap="#src_2IRSend_8cpp_8hdep" alt=""/></div>
<map name="src_2IRSend_8cpp_8hdep" id="src_2IRSend_8cpp_8hdep">
<area shape="rect" title=" " alt="" coords="5,5,128,32"/>
<area shape="rect" href="IRremote_8h.html" title="Public API to the library." alt="" coords="13,80,120,107"/>
</map>
</div>
</div>
<p><a href="IRSend_8cpp_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ad6293c728a8c6847fd0f841393589a3c"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRSend_8cpp_8h.html#ad6293c728a8c6847fd0f841393589a3c">__attribute</a> ((error(&quot;Version &gt; 3.0.1&quot;))) void UsageError(const char *details)</td></tr>
<tr class="separator:ad6293c728a8c6847fd0f841393589a3c"><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:gafba8232b747be85f72c1c4612780d5cf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classIRsend.html">IRsend</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Sending.html#gafba8232b747be85f72c1c4612780d5cf">IrSender</a></td></tr>
<tr class="separator:gafba8232b747be85f72c1c4612780d5cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Function Documentation</h2>
<a id="ad6293c728a8c6847fd0f841393589a3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad6293c728a8c6847fd0f841393589a3c">&#9670;&nbsp;</a></span>__attribute()</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">__attribute </td>
<td>(</td>
<td class="paramtype">(error(&quot;Version &gt; 3.0.1&quot;))&#160;</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRSend_8cpp_8h.html">IRSend.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:01 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,5 +0,0 @@
var IRSend_8cpp_8h =
[
[ "__attribute", "IRSend_8cpp_8h.html#ad6293c728a8c6847fd0f841393589a3c", null ],
[ "IrSender", "group__Sending.html#gafba8232b747be85f72c1c4612780d5cf", null ]
];

View File

@ -1,4 +0,0 @@
<map id="src/IRSend.cpp.h" name="src/IRSend.cpp.h">
<area shape="rect" id="node1" title=" " alt="" coords="5,5,128,32"/>
<area shape="rect" id="node2" href="$IRremote_8h.html" title="Public API to the library." alt="" coords="13,80,120,107"/>
</map>

View File

@ -1 +0,0 @@
05cc655c584cba244bba7a873824ec15

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

View File

@ -1,6 +0,0 @@
<map id="src/IRSend.cpp.h" name="src/IRSend.cpp.h">
<area shape="rect" id="node1" title=" " alt="" coords="37,5,160,32"/>
<area shape="rect" id="node2" href="$IRremoteInt_8h.html" title="Contains all declarations required for the internal functions." alt="" coords="49,80,148,107"/>
<area shape="rect" id="node3" title=" " alt="" coords="5,155,83,181"/>
<area shape="rect" id="node4" href="$IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,155,200,181"/>
</map>

View File

@ -1 +0,0 @@
a3707d669629cd100743eb8c2f376f6b

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.2 KiB

View File

@ -1,573 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRSend.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRSend_8cpp_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IRSend.cpp.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="IRSend_8cpp_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">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * IRSend.cpp.h</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Contains common functions for sending</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * This file is part of Arduino-IRremote https://github.com/Arduino-IRremote/Arduino-IRremote.</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> ************************************************************************************</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * MIT License</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * Copyright (c) 2009-2021 Ken Shirriff, Rafi Khan, Armin Joachimsmeyer</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"> * Permission is hereby granted, free of charge, to any person obtaining a copy</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * of this software and associated documentation files (the &quot;Software&quot;), to deal</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * in the Software without restriction, including without limitation the rights</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * copies of the Software, and to permit persons to whom the Software is furnished</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * to do so, subject to the following conditions:</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * The above copyright notice and this permission notice shall be included in all</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * copies or substantial portions of the Software.</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * THE SOFTWARE IS PROVIDED &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> ************************************************************************************</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; </div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteInt_8h.html">IRremoteInt.h</a>&quot;</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment">//#include &quot;digitalWriteFast.h&quot;</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"><a class="line" href="IRSend_8cpp_8h.html#ad6293c728a8c6847fd0f841393589a3c"> 36</a></span>&#160;<a class="code" href="IRSend_8cpp_8h.html#ad6293c728a8c6847fd0f841393589a3c">__attribute</a>((error(<span class="stringliteral">&quot;Version &gt; 3.0.1&quot;</span>))) void UsageError(const <span class="keywordtype">char</span> *details);</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="comment">// The sender instance</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="group__Sending.html#gafba8232b747be85f72c1c4612780d5cf"> 43</a></span>&#160;<a class="code" href="classIRsend.html">IRsend</a> <a class="code" href="group__Sending.html#gafba8232b747be85f72c1c4612780d5cf">IrSender</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="group__Sending.html#ga047d9e3f47864869afaa5076579c9f63"> 45</a></span>&#160;<a class="code" href="classIRsend.html">IRsend</a>::<a class="code" href="classIRsend.html">IRsend</a>() {</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="preprocessor">#if defined(IR_SEND_PIN)</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; sendPin = <a class="code" href="group__Timer.html#ga4cb394b3b749f9302940902fb05bd920">IR_SEND_PIN</a>; <span class="comment">// take IR_SEND_PIN as default</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a>(0, <span class="keyword">false</span>);</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="group__Sending.html#gabf55f45c8cfe3558053130bea46e7f14"> 52</a></span>&#160;<a class="code" href="group__Sending.html#ga047d9e3f47864869afaa5076579c9f63">IRsend::IRsend</a>(uint8_t aSendPin) {</div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160; <a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a> = aSendPin;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="group__Sending.html#ga5f592984c8cda2db23aa533cd0d7e827"> 55</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga5f592984c8cda2db23aa533cd0d7e827">IRsend::setSendPin</a>(uint8_t aSendPin) {</div>
<div class="line"><a name="l00056"></a><span class="lineno"> 56</span>&#160; <a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a> = aSendPin;</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="l00064"></a><span class="lineno"><a class="line" href="group__Sending.html#ga07229be2d3e919b985a058aa6015aa2c"> 64</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga07229be2d3e919b985a058aa6015aa2c">IRsend::begin</a>(uint8_t aSendPin, <span class="keywordtype">bool</span> aEnableLEDFeedback, uint8_t aLEDFeedbackPin) {</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; <a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a> = aSendPin;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a>(aLEDFeedbackPin, aEnableLEDFeedback);</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="l00073"></a><span class="lineno"><a class="line" href="group__Sending.html#ga466097ca44126e8278a523c8903064be"> 73</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga07229be2d3e919b985a058aa6015aa2c">IRsend::begin</a>(<span class="keywordtype">bool</span> aEnableLEDFeedback, uint8_t aLEDFeedbackPin) {</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; <span class="comment">// must exclude cores by MCUdude, MEGATINYCORE, NRF5, SAMD and ESP32 because they do not use the -flto flag for compile</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#if (!defined(SEND_PWM_BY_TIMER) || defined(USE_NO_SEND_PWM)) \</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="preprocessor"> &amp;&amp; !defined(SUPPRESS_ERROR_MESSAGE_FOR_BEGIN) \</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor"> &amp;&amp; !(defined(NRF5) || defined(ARDUINO_ARCH_NRF52840)) &amp;&amp; !defined(ARDUINO_ARCH_SAMD) \</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="preprocessor"> &amp;&amp; !defined(ESP32) &amp;&amp; !defined(ESP8266) &amp;&amp; !defined(MEGATINYCORE) \</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor"> &amp;&amp; !defined(MINICORE) &amp;&amp; !defined(MIGHTYCORE) &amp;&amp; !defined(MEGACORE) &amp;&amp; !defined(MAJORCORE) \</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="preprocessor"> &amp;&amp; !(defined(__STM32F1__) || defined(ARDUINO_ARCH_STM32F1)) &amp;&amp; !(defined(STM32F1xx) || defined(ARDUINO_ARCH_STM32))</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * This error shows up, if this function is really used/called by the user program.</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> * This check works only if lto is enabled, otherwise it always pops up :-(.</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> * In this case activate the line #define SUPPRESS_ERROR_MESSAGE_FOR_BEGIN in IRremote.h to suppress this message.</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> * I know now way to check for lto flag here.</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; UsageError(</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; <span class="stringliteral">&quot;Error: You must use begin(&lt;sendPin&gt;, &lt;EnableLEDFeedback&gt;, &lt;LEDFeedbackPin&gt;) if SEND_PWM_BY_TIMER is not defined or USE_NO_SEND_PWM is defined or enable lto or activate the line #define SUPPRESS_ERROR_MESSAGE_FOR_BEGIN in IRremote.h.&quot;</span>);</div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160; </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; </div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a>(aLEDFeedbackPin, aEnableLEDFeedback);</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; </div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="keywordtype">size_t</span> IRsend::write(<a class="code" href="structIRData.html">IRData</a> *aIRSendData, uint_fast8_t aNumberOfRepeats) {</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="keyword">auto</span> tProtocol = aIRSendData-&gt;<a class="code" href="structIRData.html#a703592faec26bab5cbe465f53ef14245">protocol</a>;</div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160; <span class="keyword">auto</span> tAddress = aIRSendData-&gt;<a class="code" href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">address</a>;</div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160; <span class="keyword">auto</span> tCommand = aIRSendData-&gt;<a class="code" href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">command</a>;</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keywordtype">bool</span> tSendRepeat = (aIRSendData-&gt;<a class="code" href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">flags</a> &amp; <a class="code" href="IRremoteInt_8h.html#aaa9952cd64b58083c28873484c494abf">IRDATA_FLAGS_IS_REPEAT</a>);</div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">// switch (tProtocol) { // 26 bytes bigger than if, else if, else</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="comment">// case NEC:</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="comment">// sendNEC(tAddress, tCommand, aNumberOfRepeats, tSendRepeat);</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"> 109</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160;<span class="comment">// case SAMSUNG:</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment">// sendSamsung(tAddress, tCommand, aNumberOfRepeats, tSendRepeat);</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160;<span class="comment">// case SONY:</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160;<span class="comment">// sendSony(tAddress, tCommand, aNumberOfRepeats, aIRSendData-&gt;numberOfBits);</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="comment">// case PANASONIC:</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="comment">// sendPanasonic(tAddress, tCommand, aNumberOfRepeats);</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="comment">// case DENON:</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="comment">// sendDenon(tAddress, tCommand, aNumberOfRepeats);</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment">// case SHARP:</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160;<span class="comment">// sendSharp(tAddress, tCommand, aNumberOfRepeats);</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="comment">// case JVC:</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment">// sendJVC((uint8_t) tAddress, (uint8_t) tCommand, aNumberOfRepeats); // casts are required to specify the right function</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="comment">// case RC5:</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="comment">// sendRC5(tAddress, tCommand, aNumberOfRepeats, !tSendRepeat); // No toggle for repeats</span></div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment">// case RC6:</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment">// // No toggle for repeats// sendRC6(tAddress, tCommand, aNumberOfRepeats, !tSendRepeat); // No toggle for repeats</span></div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="comment">// default:</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="comment">// break;</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;<span class="comment">// }</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; </div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;<span class="comment"> * Order of protocols is in guessed relevance :-)</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada0811f93a25b0873e21979d569eeac05e">NEC</a>) {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <a class="code" href="group__Decoder.html#gacc081690ddf61dec5d3f1c55000da7f5">sendNEC</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, tSendRepeat);</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2b451b6e7bebbf070d0913ec77d5d438">SAMSUNG</a>) {</div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <a class="code" href="group__Decoder.html#ga5d194d783811b52669eb1c1ab17a3a0f">sendSamsung</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, tSendRepeat);</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada72d58193d4d25517202d22b7e57a65c3">SONY</a>) {</div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160; <a class="code" href="group__Decoder.html#ga64cfeb90c005e597c62586ea19b93b12">sendSony</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, aIRSendData-&gt;<a class="code" href="structIRData.html#a6ce420b23a912c4008f4317cb5d710aa">numberOfBits</a>);</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; </div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf87c99938d26a1f77d4f082c070d4660">PANASONIC</a>) {</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <a class="code" href="group__Decoder.html#gad3a14e1a94a402a4cbe0eeeded312173">sendPanasonic</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>);</div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2bda37b76abb290d1675c3e027e3c2e1">DENON</a>) {</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <a class="code" href="group__Decoder.html#ga342baabd2418ed33d6d847ea5f53f165">sendDenon</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>);</div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; </div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaad63db67a2284cd7e3ffe382b6d6ea82">SHARP</a>) {</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <a class="code" href="group__Decoder.html#ga81b608682a7f7f89e0b1fd00756bb714">sendSharp</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>);</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="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadadf6c249ac7d923229f9e623eff9a61f4">LG</a>) {</div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="group__Decoder.html#gaf5095df5a6598fe2651510e4a8d5e018">sendLG</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, tSendRepeat);</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada5b6f507fb4bbd70ee70be4e2e0b0371d">JVC</a>) {</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <a class="code" href="group__Decoder.html#ga5b226cb8ff607ec666fbab236fcd1ec9">sendJVC</a>((uint8_t) tAddress, (uint8_t) tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>); <span class="comment">// casts are required to specify the right function</span></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> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadac3c0a3883a1488209bcd91730ece33b2">RC5</a>) {</div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="group__Decoder.html#ga55808fcce8aaf429ebbb1d34cb7f5ee5">sendRC5</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, !tSendRepeat); <span class="comment">// No toggle for repeats</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; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada7f7247f15587eb3812846f424b941abe">RC6</a>) {</div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160; <a class="code" href="group__Decoder.html#gad26a55d87f9f8cc64a77b4571ae79e5f">sendRC6</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, !tSendRepeat); <span class="comment">// No toggle for repeats</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20603784a6e8d35a82b2476366010344">ONKYO</a>) {</div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <a class="code" href="group__Decoder.html#ga857b05f2b99e8b705cb6d00470c4e78b">sendOnkyo</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, tSendRepeat);</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada5484ec37ffd1fcffb7aba549a4839910">APPLE</a>) {</div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160; <a class="code" href="group__Decoder.html#ga15fbc8a08b929395d6be6549cb296db5">sendApple</a>(tAddress, tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>, tSendRepeat);</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;<span class="preprocessor">#if !defined(EXCLUDE_EXOTIC_PROTOCOLS)</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20736b037c0e7444d4dc7ff06e9dea54">BOSEWAVE</a>) {</div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; <a class="code" href="group__Decoder.html#ga56bfe794dedefda7cc2487301fe1f1f3">sendBoseWave</a>(tCommand, <a class="code" href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">aNumberOfRepeats</a>);</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="keywordflow">else</span> <span class="keywordflow">if</span> (tProtocol == <a class="code" href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510">LEGO_PF</a>) {</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; <a class="code" href="group__Decoder.html#gaa62e64650aaae09b6f001a53a31f00b8">sendLegoPowerFunctions</a>(tAddress, tCommand, tCommand &gt;&gt; 4, tSendRepeat); <span class="comment">// send 5 autorepeats</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; </div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; }</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; <span class="keywordflow">return</span> 1;</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;}</div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; </div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="group__Sending.html#gacdb18ddcfd936246e214e0a9519209bf"> 193</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga1c9027bc86e6a726295219ac11e06a1b">IRsend::sendRaw</a>(<span class="keyword">const</span> uint16_t aBufferWithMicroseconds[], uint_fast8_t aLengthOfBuffer, uint_fast8_t aIRFrequencyKilohertz) {</div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment">// Set IR carrier frequency</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <a class="code" href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5">enableIROut</a>(aIRFrequencyKilohertz);</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="comment">/*</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> * Raw data starts with a mark.</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; <span class="keywordflow">for</span> (uint_fast8_t i = 0; i &lt; aLengthOfBuffer; i++) {</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160; <span class="keywordflow">if</span> (i &amp; 1) {</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; <span class="comment">// Odd</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aBufferWithMicroseconds[i]);</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aBufferWithMicroseconds[i]);</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; }</div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; }</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; </div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="comment">// ledOff(); // Always end with the LED off</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;}</div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; </div>
<div class="line"><a name="l00216"></a><span class="lineno"><a class="line" href="group__Sending.html#ga1c9027bc86e6a726295219ac11e06a1b"> 216</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga1c9027bc86e6a726295219ac11e06a1b">IRsend::sendRaw</a>(<span class="keyword">const</span> uint8_t aBufferWithTicks[], uint_fast8_t aLengthOfBuffer, uint_fast8_t aIRFrequencyKilohertz) {</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160;<span class="comment">// Set IR carrier frequency</span></div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; <a class="code" href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5">enableIROut</a>(aIRFrequencyKilohertz);</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; </div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="keywordflow">for</span> (uint_fast8_t i = 0; i &lt; aLengthOfBuffer; i++) {</div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; <span class="keywordflow">if</span> (i &amp; 1) {</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; <span class="comment">// Odd</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aBufferWithTicks[i] * <a class="code" href="IRremoteInt_8h.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>);</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aBufferWithTicks[i] * <a class="code" href="IRremoteInt_8h.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>);</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; }</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <a class="code" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRLedOff</a>(); <span class="comment">// Always end with the LED off</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;}</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; </div>
<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="group__Sending.html#ga34540fe390a44b055bfea3da6a79008c"> 235</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#gac351cb665bc0a5c863bc7a070b3aee4e">IRsend::sendRaw_P</a>(<span class="keyword">const</span> uint16_t aBufferWithMicroseconds[], uint_fast8_t aLengthOfBuffer, uint_fast8_t aIRFrequencyKilohertz) {</div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="preprocessor">#if !defined(__AVR__)</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <a class="code" href="group__Sending.html#ga1c9027bc86e6a726295219ac11e06a1b">sendRaw</a>(aBufferWithMicroseconds, aLengthOfBuffer, aIRFrequencyKilohertz); <span class="comment">// Let the function work for non AVR platforms</span></div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="comment">// Set IR carrier frequency</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <a class="code" href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5">enableIROut</a>(aIRFrequencyKilohertz);</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="comment"> * Raw data starts with a mark</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">for</span> (uint_fast8_t i = 0; i &lt; aLengthOfBuffer; i++) {</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; uint16_t duration = <a class="code" href="digitalWriteFast_8h.html#a910fb5f01313d339d3b835d45e1e5ad0">pgm_read_word</a>(&amp;aBufferWithMicroseconds[i]);</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">if</span> (i &amp; 1) {</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; <span class="comment">// Odd</span></div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(duration);</div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(duration);</div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; }</div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160; }</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment">// ledOff(); // Always end with the LED off</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;}</div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; </div>
<div class="line"><a name="l00261"></a><span class="lineno"><a class="line" href="group__Sending.html#gac351cb665bc0a5c863bc7a070b3aee4e"> 261</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#gac351cb665bc0a5c863bc7a070b3aee4e">IRsend::sendRaw_P</a>(<span class="keyword">const</span> uint8_t aBufferWithTicks[], uint_fast8_t aLengthOfBuffer, uint_fast8_t aIRFrequencyKilohertz) {</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;<span class="preprocessor">#if !defined(__AVR__)</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; <a class="code" href="group__Sending.html#ga1c9027bc86e6a726295219ac11e06a1b">sendRaw</a>(aBufferWithTicks, aLengthOfBuffer, aIRFrequencyKilohertz); <span class="comment">// Let the function work for non AVR platforms</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="comment">// Set IR carrier frequency</span></div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; <a class="code" href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5">enableIROut</a>(aIRFrequencyKilohertz);</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> (uint_fast8_t i = 0; i &lt; aLengthOfBuffer; i++) {</div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160; uint16_t duration = <a class="code" href="digitalWriteFast_8h.html#a48c60b057902adf805797f183286728d">pgm_read_byte</a>(&amp;aBufferWithTicks[i]) * (uint16_t) <a class="code" href="IRremoteInt_8h.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>;</div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="keywordflow">if</span> (i &amp; 1) {</div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="comment">// Odd</span></div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(duration);</div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(duration);</div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; }</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160; }</div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; <a class="code" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRLedOff</a>(); <span class="comment">// Always end with the LED off</span></div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="preprocessor">#endif</span></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="l00285"></a><span class="lineno"><a class="line" href="group__Sending.html#ga6904a411999a4c9f7306dba49851eb7b"> 285</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga6904a411999a4c9f7306dba49851eb7b">IRsend::sendPulseDistanceWidthData</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aOneMarkMicros, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aOneSpaceMicros, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aZeroMarkMicros,</div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aZeroSpaceMicros, uint32_t aData, uint8_t aNumberOfBits, <span class="keywordtype">bool</span> aMSBfirst, <span class="keywordtype">bool</span> aSendStopBit) {</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="keywordflow">if</span> (aMSBfirst) { <span class="comment">// Send the MSB first.</span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <span class="comment">// send data from MSB to LSB until mask bit is shifted out</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="keywordflow">for</span> (uint32_t tMask = 1UL &lt;&lt; (aNumberOfBits - 1); tMask; tMask &gt;&gt;= 1) {</div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; <span class="keywordflow">if</span> (aData &amp; tMask) {</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;1&#39;</span>);</div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aOneMarkMicros);</div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aOneSpaceMicros);</div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;0&#39;</span>);</div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aZeroMarkMicros);</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aZeroSpaceMicros);</div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; }</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160; }</div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160; } <span class="keywordflow">else</span> { <span class="comment">// Send the Least Significant Bit (LSB) first / MSB last.</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160; <span class="keywordflow">for</span> (uint_fast8_t bit = 0; bit &lt; aNumberOfBits; bit++, aData &gt;&gt;= 1)</div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160; <span class="keywordflow">if</span> (aData &amp; 1) { <span class="comment">// Send a 1</span></div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;1&#39;</span>);</div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aOneMarkMicros);</div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aOneSpaceMicros);</div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160; } <span class="keywordflow">else</span> { <span class="comment">// Send a 0</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;0&#39;</span>);</div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aZeroMarkMicros);</div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aZeroSpaceMicros);</div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; }</div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; }</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keywordflow">if</span> (aSendStopBit) {</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;S&#39;</span>);</div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aZeroMarkMicros); <span class="comment">// seems like this is used for stop bits</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; }</div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <a class="code" href="IRremoteInt_8h.html#a6901cce4dcd0260721fb1364a7d705cb">TRACE_PRINTLN</a>(<span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;}</div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; </div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;<span class="comment"> * Sends Biphase data MSB first</span></div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="comment"> * Always send start bit, do not send the trailing space of the start bit</span></div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160;<span class="comment"> * 0 -&gt; mark+space</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160;<span class="comment"> * 1 -&gt; space+mark</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160;<span class="comment"> * The output always ends with a space</span></div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00327"></a><span class="lineno"><a class="line" href="group__Sending.html#ga50162b158e0fa94b105d3717318b8b2c"> 327</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga50162b158e0fa94b105d3717318b8b2c">IRsend::sendBiphaseData</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aBiphaseTimeUnit, uint32_t aData, uint_fast8_t aNumberOfBits) {</div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; </div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160;<span class="comment">// do not send the trailing space of the start bit</span></div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aBiphaseTimeUnit);</div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; </div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;S&#39;</span>);</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; uint8_t tLastBitValue = 1; <span class="comment">// Start bit is a 1</span></div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; </div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="comment">// Data - Biphase code MSB first</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160; <span class="keywordflow">for</span> (uint32_t tMask = 1UL &lt;&lt; (aNumberOfBits - 1); tMask; tMask &gt;&gt;= 1) {</div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160; <span class="keywordflow">if</span> (aData &amp; tMask) {</div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;1&#39;</span>);</div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aBiphaseTimeUnit);</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aBiphaseTimeUnit);</div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160; tLastBitValue = 1;</div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160; </div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a>(<span class="charliteral">&#39;0&#39;</span>);</div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="preprocessor">#if defined(SEND_PWM_BY_TIMER) || defined(USE_NO_SEND_PWM)</span></div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160; <span class="keywordflow">if</span> (tLastBitValue) {</div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160; <span class="comment">// Extend the current mark in order to generate a continuous signal without short breaks</span></div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; delayMicroseconds(aBiphaseTimeUnit);</div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aBiphaseTimeUnit);</div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160; }</div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160; (void) tLastBitValue; <span class="comment">// to avoid compiler warnings</span></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160; <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">mark</a>(aBiphaseTimeUnit); <span class="comment">// can not eventually delay here, we must call mark to generate the signal</span></div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160; <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">space</a>(aBiphaseTimeUnit);</div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160; tLastBitValue = 0;</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; }</div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160; }</div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160; <a class="code" href="IRremoteInt_8h.html#a6901cce4dcd0260721fb1364a7d705cb">TRACE_PRINTLN</a>(<span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160;}</div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160; </div>
<div class="line"><a name="l00369"></a><span class="lineno"><a class="line" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674"> 369</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">IRsend::mark</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aMarkMicros) {</div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a>(<span class="keyword">true</span>);</div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160; </div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<span class="preprocessor">#if defined(SEND_PWM_BY_TIMER) || defined(ESP32)</span></div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; ENABLE_SEND_PWM_BY_TIMER; <span class="comment">// Enable timer or ledcWrite() generated PWM output</span></div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <a class="code" href="group__Sending.html#ga78e52089f1ee53b3d080db7d8c25f798">customDelayMicroseconds</a>(aMarkMicros);</div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRLedOff</a>();</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; </div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160;<span class="preprocessor">#elif defined(USE_NO_SEND_PWM)</span></div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; digitalWrite(<a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a>, LOW); <span class="comment">// Set output to active low.</span></div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160; <a class="code" href="group__Sending.html#ga78e52089f1ee53b3d080db7d8c25f798">customDelayMicroseconds</a>(aMarkMicros);</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRLedOff</a>();</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160; </div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start = micros();</div>
<div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> nextPeriodEnding = start;</div>
<div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> tMicros;</div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160; <span class="keywordflow">do</span> {</div>
<div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<span class="comment">// digitalToggleFast(IR_TIMING_TEST_PIN);</span></div>
<div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160; <span class="comment">// Output the PWM pulse</span></div>
<div class="line"><a name="l00389"></a><span class="lineno"> 389</span>&#160; noInterrupts(); <span class="comment">// do not let interrupts extend the short on period</span></div>
<div class="line"><a name="l00390"></a><span class="lineno"> 390</span>&#160; digitalWrite(<a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a>, HIGH); <span class="comment">// 4.3 us from do{ to pin setting</span></div>
<div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160; delayMicroseconds(<a class="code" href="classIRsend.html#a09e9265c2c7b55632d8c2feae4c08203">periodOnTimeMicros</a>); <span class="comment">// this is normally implemented by a blocking wait</span></div>
<div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160; </div>
<div class="line"><a name="l00393"></a><span class="lineno"> 393</span>&#160; <span class="comment">// Output the PWM pause</span></div>
<div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160; digitalWrite(<a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a>, LOW);</div>
<div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160; interrupts(); <span class="comment">// Enable interrupts -to keep micros correct- for the longer off period 3.4 us until receive ISR is active (for 7 us + pop&#39;s)</span></div>
<div class="line"><a name="l00396"></a><span class="lineno"> 396</span>&#160; nextPeriodEnding += <a class="code" href="classIRsend.html#a4793a33b9ac0066d198d6938d6dd2256">periodTimeMicros</a>;</div>
<div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160; <span class="keywordflow">do</span> {</div>
<div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160; tMicros = micros(); <span class="comment">// we have only 4 us resolution for and AVR @16MHz</span></div>
<div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;<span class="comment">// digitalToggleFast(IR_TIMING_TEST_PIN); // 3.0 us per call @16MHz</span></div>
<div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160; } <span class="keywordflow">while</span> (tMicros &lt; nextPeriodEnding); <span class="comment">// 3.4 us @16MHz</span></div>
<div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160; } <span class="keywordflow">while</span> (tMicros - start &lt; aMarkMicros);</div>
<div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a>(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00404"></a><span class="lineno"> 404</span>&#160;}</div>
<div class="line"><a name="l00405"></a><span class="lineno"> 405</span>&#160; </div>
<div class="line"><a name="l00411"></a><span class="lineno"><a class="line" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0"> 411</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRsend::IRLedOff</a>() {</div>
<div class="line"><a name="l00412"></a><span class="lineno"> 412</span>&#160;<span class="preprocessor">#if defined(SEND_PWM_BY_TIMER) || defined(ESP32)</span></div>
<div class="line"><a name="l00413"></a><span class="lineno"> 413</span>&#160; DISABLE_SEND_PWM_BY_TIMER; <span class="comment">// Disable PWM output</span></div>
<div class="line"><a name="l00414"></a><span class="lineno"> 414</span>&#160;<span class="preprocessor">#elif defined(USE_NO_SEND_PWM)</span></div>
<div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160; digitalWrite(<a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a>, HIGH); <span class="comment">// Set output to inactive high.</span></div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; digitalWrite(<a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a>, LOW);</div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; </div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160; <a class="code" href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a>(<span class="keyword">false</span>);</div>
<div class="line"><a name="l00421"></a><span class="lineno"> 421</span>&#160;}</div>
<div class="line"><a name="l00422"></a><span class="lineno"> 422</span>&#160; </div>
<div class="line"><a name="l00427"></a><span class="lineno"><a class="line" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527"> 427</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">IRsend::space</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> aSpaceMicros) {</div>
<div class="line"><a name="l00428"></a><span class="lineno"> 428</span>&#160; <a class="code" href="group__Sending.html#ga78e52089f1ee53b3d080db7d8c25f798">customDelayMicroseconds</a>(aSpaceMicros);</div>
<div class="line"><a name="l00429"></a><span class="lineno"> 429</span>&#160;}</div>
<div class="line"><a name="l00430"></a><span class="lineno"> 430</span>&#160; </div>
<div class="line"><a name="l00435"></a><span class="lineno"><a class="line" href="group__Sending.html#ga78e52089f1ee53b3d080db7d8c25f798"> 435</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga78e52089f1ee53b3d080db7d8c25f798">IRsend::customDelayMicroseconds</a>(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> aMicroseconds) {</div>
<div class="line"><a name="l00436"></a><span class="lineno"> 436</span>&#160; <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> start = micros();</div>
<div class="line"><a name="l00437"></a><span class="lineno"> 437</span>&#160; <span class="comment">// overflow invariant comparison :-)</span></div>
<div class="line"><a name="l00438"></a><span class="lineno"> 438</span>&#160; <span class="keywordflow">while</span> (micros() - start &lt; aMicroseconds) {</div>
<div class="line"><a name="l00439"></a><span class="lineno"> 439</span>&#160; }</div>
<div class="line"><a name="l00440"></a><span class="lineno"> 440</span>&#160;}</div>
<div class="line"><a name="l00441"></a><span class="lineno"> 441</span>&#160; </div>
<div class="line"><a name="l00454"></a><span class="lineno"><a class="line" href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5"> 454</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5">IRsend::enableIROut</a>(uint8_t aFrequencyKHz) {</div>
<div class="line"><a name="l00455"></a><span class="lineno"> 455</span>&#160;<span class="preprocessor">#if defined(SEND_PWM_BY_TIMER) || defined(ESP32)</span></div>
<div class="line"><a name="l00456"></a><span class="lineno"> 456</span>&#160;<span class="preprocessor"># if defined(SEND_PWM_BY_TIMER)</span></div>
<div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160; TIMER_DISABLE_RECEIVE_INTR;</div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; timerConfigForSend(aFrequencyKHz);</div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; </div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160;<span class="preprocessor">#elif defined(USE_NO_SEND_PWM)</span></div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; (void) aFrequencyKHz;</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160; </div>
<div class="line"><a name="l00464"></a><span class="lineno"> 464</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00465"></a><span class="lineno"> 465</span>&#160; <a class="code" href="classIRsend.html#a4793a33b9ac0066d198d6938d6dd2256">periodTimeMicros</a> = (1000U + aFrequencyKHz / 2) / aFrequencyKHz; <span class="comment">// rounded value -&gt; 26 for 38 kHz</span></div>
<div class="line"><a name="l00466"></a><span class="lineno"> 466</span>&#160; <a class="code" href="classIRsend.html#a09e9265c2c7b55632d8c2feae4c08203">periodOnTimeMicros</a> = (((<a class="code" href="classIRsend.html#a4793a33b9ac0066d198d6938d6dd2256">periodTimeMicros</a> * <a class="code" href="IRremoteInt_8h.html#ac534825448d4687e6471c3855bf71cf5">IR_SEND_DUTY_CYCLE</a>) + 50 - (<a class="code" href="IRremote_8h.html#ac836377a7a04f6f4044daab71d9660f9">PULSE_CORRECTION_NANOS</a> / 10)) / 100U); <span class="comment">// +50 for rounding</span></div>
<div class="line"><a name="l00467"></a><span class="lineno"> 467</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00468"></a><span class="lineno"> 468</span>&#160; </div>
<div class="line"><a name="l00469"></a><span class="lineno"> 469</span>&#160; pinMode(<a class="code" href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">sendPin</a>, OUTPUT);</div>
<div class="line"><a name="l00470"></a><span class="lineno"> 470</span>&#160; <a class="code" href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRLedOff</a>(); <span class="comment">// When not sending, we want it low/inactive</span></div>
<div class="line"><a name="l00471"></a><span class="lineno"> 471</span>&#160;}</div>
<div class="line"><a name="l00472"></a><span class="lineno"> 472</span>&#160; </div>
<div class="line"><a name="l00473"></a><span class="lineno"><a class="line" href="group__Sending.html#ga39034e110ba58c6a5effb7711801d74a"> 473</a></span>&#160;<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="group__Sending.html#ga39034e110ba58c6a5effb7711801d74a">IRsend::getPulseCorrectionNanos</a>() {</div>
<div class="line"><a name="l00474"></a><span class="lineno"> 474</span>&#160; <span class="keywordflow">return</span> <a class="code" href="IRremote_8h.html#ac836377a7a04f6f4044daab71d9660f9">PULSE_CORRECTION_NANOS</a>;</div>
<div class="line"><a name="l00475"></a><span class="lineno"> 475</span>&#160;}</div>
<div class="line"><a name="l00476"></a><span class="lineno"> 476</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="astructIRData_html_a1255a5b7d704d34fda83dcabcb903d4c"><div class="ttname"><a href="structIRData.html#a1255a5b7d704d34fda83dcabcb903d4c">IRData::address</a></div><div class="ttdeci">uint16_t address</div><div class="ttdoc">Decoded address.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00165">IRremoteInt.h:165</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada20603784a6e8d35a82b2476366010344"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20603784a6e8d35a82b2476366010344">ONKYO</a></div><div class="ttdeci">@ ONKYO</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00060">IRProtocol.h:60</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_ga072624eeba964d8aa105822da00090ba"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#ga072624eeba964d8aa105822da00090ba">setFeedbackLED</a></div><div class="ttdeci">void setFeedbackLED(bool aSwitchLedOn)</div><div class="ttdoc">Flash LED while receiving IR data, if enabled.</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00083">IRFeedbackLED.cpp.h:83</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada5b6f507fb4bbd70ee70be4e2e0b0371d"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada5b6f507fb4bbd70ee70be4e2e0b0371d">JVC</a></div><div class="ttdeci">@ JVC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00045">IRProtocol.h:45</a></div></div>
<div class="ttc" id="aclassIRsend_html_aff233b57d2382a713926797ce5da0fd3"><div class="ttname"><a href="classIRsend.html#aff233b57d2382a713926797ce5da0fd3">IRsend::aNumberOfRepeats</a></div><div class="ttdeci">void uint_fast8_t aNumberOfRepeats</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00407">IRremoteInt.h:407</a></div></div>
<div class="ttc" id="aclassIRsend_html_a39f9782dd884b804bcf0034ab71ac202"><div class="ttname"><a href="classIRsend.html#a39f9782dd884b804bcf0034ab71ac202">IRsend::sendPin</a></div><div class="ttdeci">uint8_t sendPin</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00512">IRremoteInt.h:512</a></div></div>
<div class="ttc" id="astructIRData_html_a6ce420b23a912c4008f4317cb5d710aa"><div class="ttname"><a href="structIRData.html#a6ce420b23a912c4008f4317cb5d710aa">IRData::numberOfBits</a></div><div class="ttdeci">uint8_t numberOfBits</div><div class="ttdoc">Number of bits received for data (address + command + parity) - to determine protocol length if diffe...</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00168">IRremoteInt.h:168</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga7328943560a5f60f4e9e13d677716674"><div class="ttname"><a href="group__Sending.html#ga7328943560a5f60f4e9e13d677716674">IRsend::mark</a></div><div class="ttdeci">void mark(unsigned int aMarkMicros)</div><div class="ttdoc">Sends an IR mark for the specified number of microseconds.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00369">IRSend.cpp.h:369</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada72d58193d4d25517202d22b7e57a65c3"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada72d58193d4d25517202d22b7e57a65c3">SONY</a></div><div class="ttdeci">@ SONY</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00059">IRProtocol.h:59</a></div></div>
<div class="ttc" id="agroup__Timer_html_ga4cb394b3b749f9302940902fb05bd920"><div class="ttname"><a href="group__Timer.html#ga4cb394b3b749f9302940902fb05bd920">IR_SEND_PIN</a></div><div class="ttdeci">#define IR_SEND_PIN</div><div class="ttdoc">Hardware / timer dependent pin number for sending IR if SEND_PWM_BY_TIMER is defined.</div><div class="ttdef"><b>Definition:</b> <a href="IRTimer_8cpp_8h_source.html#l00062">IRTimer.cpp.h:61</a></div></div>
<div class="ttc" id="aclassIRsend_html_a4793a33b9ac0066d198d6938d6dd2256"><div class="ttname"><a href="classIRsend.html#a4793a33b9ac0066d198d6938d6dd2256">IRsend::periodTimeMicros</a></div><div class="ttdeci">unsigned int periodTimeMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00514">IRremoteInt.h:514</a></div></div>
<div class="ttc" id="agroup__FeedbackLEDFunctions_html_gaa5949b509ec061d9239867caa628cfec"><div class="ttname"><a href="group__FeedbackLEDFunctions.html#gaa5949b509ec061d9239867caa628cfec">setLEDFeedback</a></div><div class="ttdeci">void setLEDFeedback(uint8_t aFeedbackLEDPin, bool aEnableLEDFeedback)</div><div class="ttdoc">Enable/disable blinking of Feedback LED (LED_BUILTIN is taken as default) on IR sending and receiving...</div><div class="ttdef"><b>Definition:</b> <a href="IRFeedbackLED_8cpp_8h_source.html#l00053">IRFeedbackLED.cpp.h:53</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga15fbc8a08b929395d6be6549cb296db5"><div class="ttname"><a href="group__Decoder.html#ga15fbc8a08b929395d6be6549cb296db5">IRsend::sendApple</a></div><div class="ttdeci">void sendApple(uint8_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats, bool aIsRepeat=false)</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00136">ir_NEC.cpp:136</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga42c04af63d252b320c017ffa2bfc90e5"><div class="ttname"><a href="group__Sending.html#ga42c04af63d252b320c017ffa2bfc90e5">IRsend::enableIROut</a></div><div class="ttdeci">void enableIROut(uint8_t aFrequencyKHz)</div><div class="ttdoc">Enables IR output.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00454">IRSend.cpp.h:454</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga78e52089f1ee53b3d080db7d8c25f798"><div class="ttname"><a href="group__Sending.html#ga78e52089f1ee53b3d080db7d8c25f798">IRsend::customDelayMicroseconds</a></div><div class="ttdeci">void customDelayMicroseconds(unsigned long aMicroseconds)</div><div class="ttdoc">Custom delay function that circumvents Arduino's delayMicroseconds 16 bit limit and is (mostly) not e...</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00435">IRSend.cpp.h:435</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga047d9e3f47864869afaa5076579c9f63"><div class="ttname"><a href="group__Sending.html#ga047d9e3f47864869afaa5076579c9f63">IRsend::IRsend</a></div><div class="ttdeci">IRsend()</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00045">IRSend.cpp.h:45</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada2b451b6e7bebbf070d0913ec77d5d438"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2b451b6e7bebbf070d0913ec77d5d438">SAMSUNG</a></div><div class="ttdeci">@ SAMSUNG</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00057">IRProtocol.h:57</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada20736b037c0e7444d4dc7ff06e9dea54"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada20736b037c0e7444d4dc7ff06e9dea54">BOSEWAVE</a></div><div class="ttdeci">@ BOSEWAVE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00062">IRProtocol.h:62</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a910fb5f01313d339d3b835d45e1e5ad0"><div class="ttname"><a href="digitalWriteFast_8h.html#a910fb5f01313d339d3b835d45e1e5ad0">pgm_read_word</a></div><div class="ttdeci">#define pgm_read_word(addr)</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00095">digitalWriteFast.h:94</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga39034e110ba58c6a5effb7711801d74a"><div class="ttname"><a href="group__Sending.html#ga39034e110ba58c6a5effb7711801d74a">IRsend::getPulseCorrectionNanos</a></div><div class="ttdeci">unsigned int getPulseCorrectionNanos()</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00473">IRSend.cpp.h:473</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga50162b158e0fa94b105d3717318b8b2c"><div class="ttname"><a href="group__Sending.html#ga50162b158e0fa94b105d3717318b8b2c">IRsend::sendBiphaseData</a></div><div class="ttdeci">void sendBiphaseData(unsigned int aBiphaseTimeUnit, uint32_t aData, uint_fast8_t aNumberOfBits)</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00327">IRSend.cpp.h:327</a></div></div>
<div class="ttc" id="aclassIRsend_html"><div class="ttname"><a href="classIRsend.html">IRsend</a></div><div class="ttdoc">Main class for sending IR signals.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00395">IRremoteInt.h:395</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga5f592984c8cda2db23aa533cd0d7e827"><div class="ttname"><a href="group__Sending.html#ga5f592984c8cda2db23aa533cd0d7e827">IRsend::setSendPin</a></div><div class="ttdeci">void setSendPin(uint8_t aSendPinNumber)</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00055">IRSend.cpp.h:55</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaf87c99938d26a1f77d4f082c070d4660"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf87c99938d26a1f77d4f082c070d4660">PANASONIC</a></div><div class="ttdeci">@ PANASONIC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00049">IRProtocol.h:49</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga1c9027bc86e6a726295219ac11e06a1b"><div class="ttname"><a href="group__Sending.html#ga1c9027bc86e6a726295219ac11e06a1b">IRsend::sendRaw</a></div><div class="ttdeci">void sendRaw(const uint8_t aBufferWithTicks[], uint_fast8_t aLengthOfBuffer, uint_fast8_t aIRFrequencyKilohertz)</div><div class="ttdoc">Function using an 8 byte timing array to save program space Raw data starts with a Mark.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00216">IRSend.cpp.h:216</a></div></div>
<div class="ttc" id="astructIRData_html"><div class="ttname"><a href="structIRData.html">IRData</a></div><div class="ttdoc">Data structure for the user application, available as decodedIRData.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00163">IRremoteInt.h:163</a></div></div>
<div class="ttc" id="aIRremote_8h_html_ac836377a7a04f6f4044daab71d9660f9"><div class="ttname"><a href="IRremote_8h.html#ac836377a7a04f6f4044daab71d9660f9">PULSE_CORRECTION_NANOS</a></div><div class="ttdeci">#define PULSE_CORRECTION_NANOS</div><div class="ttdoc">Define to disable carrier PWM generation in software and use (restricted) hardware PWM.</div><div class="ttdef"><b>Definition:</b> <a href="IRremote_8h_source.html#l00180">IRremote.h:179</a></div></div>
<div class="ttc" id="astructIRData_html_aaaad48fc0d90e5c6daec601987848a51"><div class="ttname"><a href="structIRData.html#aaaad48fc0d90e5c6daec601987848a51">IRData::flags</a></div><div class="ttdeci">uint8_t flags</div><div class="ttdoc">See IRDATA_FLAGS_* definitions above.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00169">IRremoteInt.h:169</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga342baabd2418ed33d6d847ea5f53f165"><div class="ttname"><a href="group__Decoder.html#ga342baabd2418ed33d6d847ea5f53f165">IRsend::sendDenon</a></div><div class="ttdeci">void sendDenon(uint8_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats, bool aSendSharp=false)</div><div class="ttdef"><b>Definition:</b> <a href="ir__Denon_8cpp_source.html#l00094">ir_Denon.cpp:94</a></div></div>
<div class="ttc" id="astructIRData_html_ab0ce2b36765ea429e8c4bfa0706a45e7"><div class="ttname"><a href="structIRData.html#ab0ce2b36765ea429e8c4bfa0706a45e7">IRData::command</a></div><div class="ttdeci">uint16_t command</div><div class="ttdoc">Decoded command.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00166">IRremoteInt.h:166</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada0811f93a25b0873e21979d569eeac05e"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada0811f93a25b0873e21979d569eeac05e">NEC</a></div><div class="ttdeci">@ NEC</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00048">IRProtocol.h:48</a></div></div>
<div class="ttc" id="agroup__Decoder_html_gaf5095df5a6598fe2651510e4a8d5e018"><div class="ttname"><a href="group__Decoder.html#gaf5095df5a6598fe2651510e4a8d5e018">IRsend::sendLG</a></div><div class="ttdeci">void sendLG(uint8_t aAddress, uint16_t aCommand, uint_fast8_t aNumberOfRepeats, bool aIsRepeat=false, bool aUseLG2Protocol=false)</div><div class="ttdef"><b>Definition:</b> <a href="ir__LG_8cpp_source.html#l00098">ir_LG.cpp:98</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a1c7eebb527483c272812530caa313d20"><div class="ttname"><a href="IRremoteInt_8h.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a></div><div class="ttdeci">#define MICROS_PER_TICK</div><div class="ttdoc">microseconds per clock interrupt tick</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00342">IRremoteInt.h:341</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada5484ec37ffd1fcffb7aba549a4839910"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada5484ec37ffd1fcffb7aba549a4839910">APPLE</a></div><div class="ttdeci">@ APPLE</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00061">IRProtocol.h:61</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga64cfeb90c005e597c62586ea19b93b12"><div class="ttname"><a href="group__Decoder.html#ga64cfeb90c005e597c62586ea19b93b12">IRsend::sendSony</a></div><div class="ttdeci">void sendSony(uint16_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats, uint8_t numberOfBits=SIRCS_12_PROTOCOL)</div><div class="ttdef"><b>Definition:</b> <a href="ir__Sony_8cpp_source.html#l00071">ir_Sony.cpp:71</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaf47be4dad020b9c36aa255c582e25510">LEGO_PF</a></div><div class="ttdeci">@ LEGO_PF</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00063">IRProtocol.h:63</a></div></div>
<div class="ttc" id="agroup__Decoder_html_gad26a55d87f9f8cc64a77b4571ae79e5f"><div class="ttname"><a href="group__Decoder.html#gad26a55d87f9f8cc64a77b4571ae79e5f">IRsend::sendRC6</a></div><div class="ttdeci">void sendRC6(uint8_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats, bool aEnableAutomaticToggle=true)</div><div class="ttdoc">Assemble raw data for RC6 from parameters and toggle state and send We do not wait for the minimal tr...</div><div class="ttdef"><b>Definition:</b> <a href="ir__RC5__RC6_8cpp_source.html#l00304">ir_RC5_RC6.cpp:304</a></div></div>
<div class="ttc" id="agroup__Decoder_html_gad3a14e1a94a402a4cbe0eeeded312173"><div class="ttname"><a href="group__Decoder.html#gad3a14e1a94a402a4cbe0eeeded312173">IRsend::sendPanasonic</a></div><div class="ttdeci">void sendPanasonic(uint16_t aAddress, uint8_t aData, uint_fast8_t aNumberOfRepeats)</div><div class="ttdoc">Stub using Kaseikyo with PANASONIC_VENDOR_ID_CODE.</div><div class="ttdef"><b>Definition:</b> <a href="ir__Kaseikyo_8cpp_source.html#l00129">ir_Kaseikyo.cpp:129</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_aaa9952cd64b58083c28873484c494abf"><div class="ttname"><a href="IRremoteInt_8h.html#aaa9952cd64b58083c28873484c494abf">IRDATA_FLAGS_IS_REPEAT</a></div><div class="ttdeci">#define IRDATA_FLAGS_IS_REPEAT</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00151">IRremoteInt.h:150</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a48c60b057902adf805797f183286728d"><div class="ttname"><a href="digitalWriteFast_8h.html#a48c60b057902adf805797f183286728d">pgm_read_byte</a></div><div class="ttdeci">#define pgm_read_byte(addr)</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00092">digitalWriteFast.h:91</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada2bda37b76abb290d1675c3e027e3c2e1"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada2bda37b76abb290d1675c3e027e3c2e1">DENON</a></div><div class="ttdeci">@ DENON</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00043">IRProtocol.h:43</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a7fe6e015379d45242e1580bcbfd62f86"><div class="ttname"><a href="IRremoteInt_8h.html#a7fe6e015379d45242e1580bcbfd62f86">TRACE_PRINT</a></div><div class="ttdeci">#define TRACE_PRINT(...)</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00113">IRremoteInt.h:112</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga55808fcce8aaf429ebbb1d34cb7f5ee5"><div class="ttname"><a href="group__Decoder.html#ga55808fcce8aaf429ebbb1d34cb7f5ee5">IRsend::sendRC5</a></div><div class="ttdeci">void sendRC5(uint8_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats, bool aEnableAutomaticToggle=true)</div><div class="ttdef"><b>Definition:</b> <a href="ir__RC5__RC6_8cpp_source.html#l00076">ir_RC5_RC6.cpp:76</a></div></div>
<div class="ttc" id="agroup__Sending_html_gafba8232b747be85f72c1c4612780d5cf"><div class="ttname"><a href="group__Sending.html#gafba8232b747be85f72c1c4612780d5cf">IrSender</a></div><div class="ttdeci">IRsend IrSender</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00043">IRSend.cpp.h:43</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga6a653dc4b2f718ce16a2ae87abdc2527"><div class="ttname"><a href="group__Sending.html#ga6a653dc4b2f718ce16a2ae87abdc2527">IRsend::space</a></div><div class="ttdeci">void space(unsigned int aSpaceMicros)</div><div class="ttdoc">Sends an IR space for the specified number of microseconds.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00427">IRSend.cpp.h:427</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga56bfe794dedefda7cc2487301fe1f1f3"><div class="ttname"><a href="group__Decoder.html#ga56bfe794dedefda7cc2487301fe1f1f3">IRsend::sendBoseWave</a></div><div class="ttdeci">void sendBoseWave(uint8_t aCommand, uint_fast8_t aNumberOfRepeats=NO_REPEATS)</div><div class="ttdef"><b>Definition:</b> <a href="ir__BoseWave_8cpp_source.html#l00045">ir_BoseWave.cpp:45</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga857b05f2b99e8b705cb6d00470c4e78b"><div class="ttname"><a href="group__Decoder.html#ga857b05f2b99e8b705cb6d00470c4e78b">IRsend::sendOnkyo</a></div><div class="ttdeci">void sendOnkyo(uint16_t aAddress, uint16_t aCommand, uint_fast8_t aNumberOfRepeats, bool aIsRepeat=false)</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00116">ir_NEC.cpp:116</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga6904a411999a4c9f7306dba49851eb7b"><div class="ttname"><a href="group__Sending.html#ga6904a411999a4c9f7306dba49851eb7b">IRsend::sendPulseDistanceWidthData</a></div><div class="ttdeci">void sendPulseDistanceWidthData(unsigned int aOneMarkMicros, unsigned int aOneSpaceMicros, unsigned int aZeroMarkMicros, unsigned int aZeroSpaceMicros, uint32_t aData, uint8_t aNumberOfBits, bool aMSBfirst, bool aSendStopBit=false)</div><div class="ttdoc">Sends PulseDistance data The output always ends with a space.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00285">IRSend.cpp.h:285</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadac3c0a3883a1488209bcd91730ece33b2"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadac3c0a3883a1488209bcd91730ece33b2">RC5</a></div><div class="ttdeci">@ RC5</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00055">IRProtocol.h:55</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_ac534825448d4687e6471c3855bf71cf5"><div class="ttname"><a href="IRremoteInt_8h.html#ac534825448d4687e6471c3855bf71cf5">IR_SEND_DUTY_CYCLE</a></div><div class="ttdeci">#define IR_SEND_DUTY_CYCLE</div><div class="ttdoc">Duty cycle in percent for sent signals.</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00390">IRremoteInt.h:389</a></div></div>
<div class="ttc" id="agroup__Decoder_html_gacc081690ddf61dec5d3f1c55000da7f5"><div class="ttname"><a href="group__Decoder.html#gacc081690ddf61dec5d3f1c55000da7f5">IRsend::sendNEC</a></div><div class="ttdeci">void sendNEC(uint16_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats, bool aIsRepeat=false)</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00091">ir_NEC.cpp:91</a></div></div>
<div class="ttc" id="agroup__Sending_html_ga07229be2d3e919b985a058aa6015aa2c"><div class="ttname"><a href="group__Sending.html#ga07229be2d3e919b985a058aa6015aa2c">IRsend::begin</a></div><div class="ttdeci">void begin(uint8_t aSendPin, bool aEnableLEDFeedback=true, uint8_t aFeedbackLEDPin=USE_DEFAULT_FEEDBACK_LED_PIN)</div><div class="ttdoc">Initializes the send and feedback pin.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00064">IRSend.cpp.h:64</a></div></div>
<div class="ttc" id="aclassIRsend_html_a09e9265c2c7b55632d8c2feae4c08203"><div class="ttname"><a href="classIRsend.html#a09e9265c2c7b55632d8c2feae4c08203">IRsend::periodOnTimeMicros</a></div><div class="ttdeci">unsigned int periodOnTimeMicros</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00515">IRremoteInt.h:515</a></div></div>
<div class="ttc" id="agroup__Sending_html_gac351cb665bc0a5c863bc7a070b3aee4e"><div class="ttname"><a href="group__Sending.html#gac351cb665bc0a5c863bc7a070b3aee4e">IRsend::sendRaw_P</a></div><div class="ttdeci">void sendRaw_P(const uint8_t aBufferWithTicks[], uint_fast8_t aLengthOfBuffer, uint_fast8_t aIRFrequencyKilohertz)</div><div class="ttdoc">Function using an 8 byte timing array in FLASH to save program space Raw data starts with a Mark.</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00261">IRSend.cpp.h:261</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fada7f7247f15587eb3812846f424b941abe"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fada7f7247f15587eb3812846f424b941abe">RC6</a></div><div class="ttdeci">@ RC6</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00056">IRProtocol.h:56</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html_a6901cce4dcd0260721fb1364a7d705cb"><div class="ttname"><a href="IRremoteInt_8h.html#a6901cce4dcd0260721fb1364a7d705cb">TRACE_PRINTLN</a></div><div class="ttdeci">#define TRACE_PRINTLN(...)</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00114">IRremoteInt.h:113</a></div></div>
<div class="ttc" id="aIRSend_8cpp_8h_html_ad6293c728a8c6847fd0f841393589a3c"><div class="ttname"><a href="IRSend_8cpp_8h.html#ad6293c728a8c6847fd0f841393589a3c">__attribute</a></div><div class="ttdeci">__attribute((error(&quot;Version &gt; 3.0.1&quot;))) void UsageError(const char *details)</div></div>
<div class="ttc" id="agroup__Sending_html_ga5242741b8da4fbfaae237eee2b279dd0"><div class="ttname"><a href="group__Sending.html#ga5242741b8da4fbfaae237eee2b279dd0">IRsend::IRLedOff</a></div><div class="ttdeci">void IRLedOff()</div><div class="ttdoc">Just switch the IR sending LED off to send an IR space A space is &quot;no output&quot;, so the PWM output is d...</div><div class="ttdef"><b>Definition:</b> <a href="IRSend_8cpp_8h_source.html#l00411">IRSend.cpp.h:411</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga81b608682a7f7f89e0b1fd00756bb714"><div class="ttname"><a href="group__Decoder.html#ga81b608682a7f7f89e0b1fd00756bb714">IRsend::sendSharp</a></div><div class="ttdeci">void sendSharp(uint8_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats)</div><div class="ttdef"><b>Definition:</b> <a href="ir__Denon_8cpp_source.html#l00082">ir_Denon.cpp:82</a></div></div>
<div class="ttc" id="agroup__Decoder_html_gaa62e64650aaae09b6f001a53a31f00b8"><div class="ttname"><a href="group__Decoder.html#gaa62e64650aaae09b6f001a53a31f00b8">IRsend::sendLegoPowerFunctions</a></div><div class="ttdeci">void sendLegoPowerFunctions(uint8_t aChannel, uint8_t tCommand, uint8_t aMode, bool aDoSend5Times=true)</div><div class="ttdef"><b>Definition:</b> <a href="ir__Lego_8cpp_source.html#l00096">ir_Lego.cpp:96</a></div></div>
<div class="ttc" id="astructIRData_html_a703592faec26bab5cbe465f53ef14245"><div class="ttname"><a href="structIRData.html#a703592faec26bab5cbe465f53ef14245">IRData::protocol</a></div><div class="ttdeci">decode_type_t protocol</div><div class="ttdoc">UNKNOWN, NEC, SONY, RC5, ...</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00164">IRremoteInt.h:164</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html"><div class="ttname"><a href="IRremoteInt_8h.html">IRremoteInt.h</a></div><div class="ttdoc">Contains all declarations required for the internal functions.</div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadadf6c249ac7d923229f9e623eff9a61f4"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadadf6c249ac7d923229f9e623eff9a61f4">LG</a></div><div class="ttdeci">@ LG</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00046">IRProtocol.h:46</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga5d194d783811b52669eb1c1ab17a3a0f"><div class="ttname"><a href="group__Decoder.html#ga5d194d783811b52669eb1c1ab17a3a0f">IRsend::sendSamsung</a></div><div class="ttdeci">void sendSamsung(uint16_t aAddress, uint16_t aCommand, uint_fast8_t aNumberOfRepeats, bool aIsRepeat=false)</div><div class="ttdef"><b>Definition:</b> <a href="ir__Samsung_8cpp_source.html#l00084">ir_Samsung.cpp:84</a></div></div>
<div class="ttc" id="aIRProtocol_8h_html_ad5b287a488a8c1b7b8661f029ab56fadaad63db67a2284cd7e3ffe382b6d6ea82"><div class="ttname"><a href="IRProtocol_8h.html#ad5b287a488a8c1b7b8661f029ab56fadaad63db67a2284cd7e3ffe382b6d6ea82">SHARP</a></div><div class="ttdeci">@ SHARP</div><div class="ttdef"><b>Definition:</b> <a href="IRProtocol_8h_source.html#l00058">IRProtocol.h:58</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga5b226cb8ff607ec666fbab236fcd1ec9"><div class="ttname"><a href="group__Decoder.html#ga5b226cb8ff607ec666fbab236fcd1ec9">IRsend::sendJVC</a></div><div class="ttdeci">void sendJVC(uint8_t aAddress, uint8_t aCommand, uint_fast8_t aNumberOfRepeats)</div><div class="ttdef"><b>Definition:</b> <a href="ir__JVC_8cpp_source.html#l00072">ir_JVC.cpp:72</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRSend_8cpp_8h.html">IRSend.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:00 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -111,7 +111,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRSend_8hpp.html">IRSend.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:40 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

File diff suppressed because it is too large Load Diff

View File

@ -1,145 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/private/IRTimer.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRTimer_8cpp_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">IRTimer.cpp.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>All timer specific definitions are contained in this file.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for IRTimer.cpp.h:</div>
<div class="dyncontent">
<div class="center"><img src="IRTimer_8cpp_8h__incl.png" border="0" usemap="#src_2private_2IRTimer_8cpp_8h" alt=""/></div>
<map name="src_2private_2IRTimer_8cpp_8h" id="src_2private_2IRTimer_8cpp_8h">
<area shape="rect" title="All timer specific definitions are contained in this file." alt="" coords="16,5,181,32"/>
<area shape="rect" href="IRremoteInt_8h.html" title="Contains all declarations required for the internal functions." alt="" coords="49,80,148,107"/>
<area shape="rect" title=" " alt="" coords="5,155,83,181"/>
<area shape="rect" href="IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,155,200,181"/>
</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="IRTimer_8cpp_8h__dep__incl.png" border="0" usemap="#src_2private_2IRTimer_8cpp_8hdep" alt=""/></div>
<map name="src_2private_2IRTimer_8cpp_8hdep" id="src_2private_2IRTimer_8cpp_8hdep">
<area shape="rect" title="All timer specific definitions are contained in this file." alt="" coords="5,5,171,32"/>
<area shape="rect" href="IRremote_8h.html" title="Public API to the library." alt="" coords="35,80,141,107"/>
</map>
</div>
</div>
<p><a href="IRTimer_8cpp_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="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ga4cb394b3b749f9302940902fb05bd920"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Timer.html#ga4cb394b3b749f9302940902fb05bd920">IR_SEND_PIN</a></td></tr>
<tr class="memdesc:ga4cb394b3b749f9302940902fb05bd920"><td class="mdescLeft">&#160;</td><td class="mdescRight">Hardware / timer dependent pin number for sending IR if SEND_PWM_BY_TIMER is defined. <a href="group__Timer.html#ga4cb394b3b749f9302940902fb05bd920">More...</a><br /></td></tr>
<tr class="separator:ga4cb394b3b749f9302940902fb05bd920"><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>All timer specific definitions are contained in this file. </p>
<p>This file is part of Arduino-IRremote <a href="https://github.com/Arduino-IRremote/Arduino-IRremote">https://github.com/Arduino-IRremote/Arduino-IRremote</a>.</p>
<p>MIT License</p>
<p>Copyright (c) 2021 Armin Joachimsmeyer</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </p>
<p class="definition">Definition in file <a class="el" href="IRTimer_8cpp_8h_source.html">IRTimer.cpp.h</a>.</p>
</div></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d49b597d86ed44de6eb8a459f0ed40df.html">private</a></li><li class="navelem"><a class="el" href="IRTimer_8cpp_8h.html">IRTimer.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:01 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,4 +0,0 @@
var IRTimer_8cpp_8h =
[
[ "IR_SEND_PIN", "group__Timer.html#ga4cb394b3b749f9302940902fb05bd920", null ]
];

View File

@ -1,4 +0,0 @@
<map id="src/private/IRTimer.cpp.h" name="src/private/IRTimer.cpp.h">
<area shape="rect" id="node1" title="All timer specific definitions are contained in this file." alt="" coords="5,5,171,32"/>
<area shape="rect" id="node2" href="$IRremote_8h.html" title="Public API to the library." alt="" coords="35,80,141,107"/>
</map>

View File

@ -1 +0,0 @@
b771e3eb60cc93b42ee488ac976eeee2

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,6 +0,0 @@
<map id="src/private/IRTimer.cpp.h" name="src/private/IRTimer.cpp.h">
<area shape="rect" id="node1" title="All timer specific definitions are contained in this file." alt="" coords="16,5,181,32"/>
<area shape="rect" id="node2" href="$IRremoteInt_8h.html" title="Contains all declarations required for the internal functions." alt="" coords="49,80,148,107"/>
<area shape="rect" id="node3" title=" " alt="" coords="5,155,83,181"/>
<area shape="rect" id="node4" href="$IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,155,200,181"/>
</map>

View File

@ -1 +0,0 @@
387b740b17a51893162c7c8d77342bfd

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

File diff suppressed because it is too large Load Diff

View File

@ -129,16 +129,16 @@ Functions</h2></td></tr>
<tr class="memitem:ga352399811c67be16548d81a18e3cd337"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Timer.html#ga352399811c67be16548d81a18e3cd337">disableSendPWMByTimer</a> ()</td></tr>
<tr class="memdesc:ga352399811c67be16548d81a18e3cd337"><td class="mdescLeft">&#160;</td><td class="mdescRight">Disables output of the PWM signal of the timer at the timer pin and set it to inactive. <a href="group__Timer.html#ga352399811c67be16548d81a18e3cd337">More...</a><br /></td></tr>
<tr class="separator:ga352399811c67be16548d81a18e3cd337"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga45d57d84d5fee327f67afde5f8649e6d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Timer.html#ga45d57d84d5fee327f67afde5f8649e6d">timerConfigForSend</a> (uint8_t aFrequencyKHz)</td></tr>
<tr class="memdesc:ga45d57d84d5fee327f67afde5f8649e6d"><td class="mdescLeft">&#160;</td><td class="mdescRight">IF PWM should be generated not by software, but by a timer, this function sets output pin mode, configures the timer for generating a PWM with duty cycle of IR_SEND_DUTY_CYCLE_PERCENT and disables the receive interrupt if it uses the same resource. <a href="group__Timer.html#ga45d57d84d5fee327f67afde5f8649e6d">More...</a><br /></td></tr>
<tr class="separator:ga45d57d84d5fee327f67afde5f8649e6d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab4f8dc26e10c0481e8859252afa4d42b"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Timer.html#gab4f8dc26e10c0481e8859252afa4d42b">timerConfigForSend</a> (uint16_t aFrequencyKHz)</td></tr>
<tr class="memdesc:gab4f8dc26e10c0481e8859252afa4d42b"><td class="mdescLeft">&#160;</td><td class="mdescRight">IF PWM should be generated not by software, but by a timer, this function sets output pin mode, configures the timer for generating a PWM with duty cycle of IR_SEND_DUTY_CYCLE_PERCENT and disables the receive interrupt if it uses the same resource. <a href="group__Timer.html#gab4f8dc26e10c0481e8859252afa4d42b">More...</a><br /></td></tr>
<tr class="separator:gab4f8dc26e10c0481e8859252afa4d42b"><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>All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required, e.g. if SEND_PWM_BY_TIMER for AVR is defined, which restricts the output to a dedicated pin number. </p>
<p>timerConfigForSend(aFrequencyKHz) must set output pin mode and disable receive interrupt if it uses the same resource</p>
<p>This file is part of Arduino-IRremote <a href="https://github.com/Arduino-IRremote/Arduino-IRremote">https://github.com/Arduino-IRremote/Arduino-IRremote</a>.</p>
<p>MIT License</p>
<p>Copyright (c) 2021-2022 Armin Joachimsmeyer</p>
<p>Copyright (c) 2021-2023 Armin Joachimsmeyer</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </p>
@ -150,7 +150,7 @@ Functions</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="dir_d49b597d86ed44de6eb8a459f0ed40df.html">private</a></li><li class="navelem"><a class="el" href="IRTimer_8hpp.html">IRTimer.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:40 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -4,7 +4,7 @@ var IRTimer_8hpp =
[ "disableSendPWMByTimer", "group__Timer.html#ga352399811c67be16548d81a18e3cd337", null ],
[ "enableSendPWMByTimer", "group__Timer.html#gac67e6a15f31989aa182389cd4a8729c9", null ],
[ "timerConfigForReceive", "group__Timer.html#ga8cca92581b5452eaac5b3075227c6c56", null ],
[ "timerConfigForSend", "group__Timer.html#ga45d57d84d5fee327f67afde5f8649e6d", null ],
[ "timerConfigForSend", "group__Timer.html#gab4f8dc26e10c0481e8859252afa4d42b", null ],
[ "timerDisableReceiveInterrupt", "group__Timer.html#ga0b0e97d0a44ceb967a83b44aa88c6bd2", null ],
[ "timerEnableReceiveInterrupt", "group__Timer.html#gae0ec21c275dd13fff83445ce6cc900d7", null ],
[ "timerResetInterruptPending", "group__Timer.html#ga41e88e0b7edea76b3c77643ca7a3468f", null ]

File diff suppressed because it is too large Load Diff

247
docs/IRVersion_8h.html Normal file
View File

@ -0,0 +1,247 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRVersion.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRVersion_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#define-members">Macros</a> </div>
<div class="headertitle">
<div class="title">IRVersion.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<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="IRVersion_8h__dep__incl.png" border="0" usemap="#src_2IRVersion_8hdep" alt=""/></div>
<map name="src_2IRVersion_8hdep" id="src_2IRVersion_8hdep">
<area shape="rect" title=" " alt="" coords="11,5,121,32"/>
<area shape="rect" href="IRremote_8hpp.html" title="Public API to the library." alt="" coords="5,80,127,107"/>
<area shape="rect" href="IRremote_8h.html" title="Stub for backward compatibility." alt="" coords="13,155,119,181"/>
</map>
</div>
</div>
<p><a href="IRVersion_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="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ad9f03906065f749788cc9e3f68fb6253"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRVersion_8h.html#ad9f03906065f749788cc9e3f68fb6253">VERSION_IRREMOTE</a>&#160;&#160;&#160;&quot;4.2.1&quot;</td></tr>
<tr class="separator:ad9f03906065f749788cc9e3f68fb6253"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fccc9834ba25cd17b7ca45e14aa7751"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRVersion_8h.html#a5fccc9834ba25cd17b7ca45e14aa7751">VERSION_IRREMOTE_MAJOR</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a5fccc9834ba25cd17b7ca45e14aa7751"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a824e2f61336bde09dd9b835e8606683f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRVersion_8h.html#a824e2f61336bde09dd9b835e8606683f">VERSION_IRREMOTE_MINOR</a>&#160;&#160;&#160;2</td></tr>
<tr class="separator:a824e2f61336bde09dd9b835e8606683f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a190ee428ccd5ea2362e913f114718779"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRVersion_8h.html#a190ee428ccd5ea2362e913f114718779">VERSION_IRREMOTE_PATCH</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:a190ee428ccd5ea2362e913f114718779"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fe70c54038764ee815bb4940c58ad3c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRVersion_8h.html#a8fe70c54038764ee815bb4940c58ad3c">VERSION_HEX_VALUE</a>(major, minor, patch)&#160;&#160;&#160;((major &lt;&lt; 16) | (minor &lt;&lt; 8) | (patch))</td></tr>
<tr class="separator:a8fe70c54038764ee815bb4940c58ad3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRVersion_8h.html#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c">VERSION_IRREMOTE_HEX</a>&#160;&#160;&#160;<a class="el" href="IRVersion_8h.html#a8fe70c54038764ee815bb4940c58ad3c">VERSION_HEX_VALUE</a>(<a class="el" href="IRVersion_8h.html#a5fccc9834ba25cd17b7ca45e14aa7751">VERSION_IRREMOTE_MAJOR</a>, <a class="el" href="IRVersion_8h.html#a824e2f61336bde09dd9b835e8606683f">VERSION_IRREMOTE_MINOR</a>, <a class="el" href="IRVersion_8h.html#a190ee428ccd5ea2362e913f114718779">VERSION_IRREMOTE_PATCH</a>)</td></tr>
<tr class="separator:ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a8fe70c54038764ee815bb4940c58ad3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fe70c54038764ee815bb4940c58ad3c">&#9670;&nbsp;</a></span>VERSION_HEX_VALUE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_HEX_VALUE</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">major, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">minor, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">patch&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;((major &lt;&lt; 16) | (minor &lt;&lt; 8) | (patch))</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRVersion_8h_source.html#l00049">49</a> of file <a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>.</p>
</div>
</div>
<a id="ad9f03906065f749788cc9e3f68fb6253"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9f03906065f749788cc9e3f68fb6253">&#9670;&nbsp;</a></span>VERSION_IRREMOTE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE&#160;&#160;&#160;&quot;4.2.1&quot;</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRVersion_8h_source.html#l00040">40</a> of file <a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>.</p>
</div>
</div>
<a id="ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_HEX</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_HEX&#160;&#160;&#160;<a class="el" href="IRVersion_8h.html#a8fe70c54038764ee815bb4940c58ad3c">VERSION_HEX_VALUE</a>(<a class="el" href="IRVersion_8h.html#a5fccc9834ba25cd17b7ca45e14aa7751">VERSION_IRREMOTE_MAJOR</a>, <a class="el" href="IRVersion_8h.html#a824e2f61336bde09dd9b835e8606683f">VERSION_IRREMOTE_MINOR</a>, <a class="el" href="IRVersion_8h.html#a190ee428ccd5ea2362e913f114718779">VERSION_IRREMOTE_PATCH</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRVersion_8h_source.html#l00050">50</a> of file <a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>.</p>
</div>
</div>
<a id="a5fccc9834ba25cd17b7ca45e14aa7751"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5fccc9834ba25cd17b7ca45e14aa7751">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_MAJOR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_MAJOR&#160;&#160;&#160;4</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRVersion_8h_source.html#l00041">41</a> of file <a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>.</p>
</div>
</div>
<a id="a824e2f61336bde09dd9b835e8606683f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a824e2f61336bde09dd9b835e8606683f">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_MINOR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_MINOR&#160;&#160;&#160;2</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRVersion_8h_source.html#l00042">42</a> of file <a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>.</p>
</div>
</div>
<a id="a190ee428ccd5ea2362e913f114718779"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a190ee428ccd5ea2362e913f114718779">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_PATCH</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_PATCH&#160;&#160;&#160;1</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRVersion_8h_source.html#l00043">43</a> of file <a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>.</p>
</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRVersion_8h.html">IRVersion.h</a></li>
<li class="footer">Generated on Sat Jan 27 2024 22:47:40 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

9
docs/IRVersion_8h.js Normal file
View File

@ -0,0 +1,9 @@
var IRVersion_8h =
[
[ "VERSION_HEX_VALUE", "IRVersion_8h.html#a8fe70c54038764ee815bb4940c58ad3c", null ],
[ "VERSION_IRREMOTE", "IRVersion_8h.html#ad9f03906065f749788cc9e3f68fb6253", null ],
[ "VERSION_IRREMOTE_HEX", "IRVersion_8h.html#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c", null ],
[ "VERSION_IRREMOTE_MAJOR", "IRVersion_8h.html#a5fccc9834ba25cd17b7ca45e14aa7751", null ],
[ "VERSION_IRREMOTE_MINOR", "IRVersion_8h.html#a824e2f61336bde09dd9b835e8606683f", null ],
[ "VERSION_IRREMOTE_PATCH", "IRVersion_8h.html#a190ee428ccd5ea2362e913f114718779", null ]
];

View File

@ -1,4 +1,4 @@
<map id="src/ir_Dish.hpp" name="src/ir_Dish.hpp">
<map id="src/IRVersion.h" name="src/IRVersion.h">
<area shape="rect" id="node1" title=" " alt="" coords="11,5,121,32"/>
<area shape="rect" id="node2" href="$IRremote_8hpp.html" title="Public API to the library." alt="" coords="5,80,127,107"/>
<area shape="rect" id="node3" href="$IRremote_8h.html" title="Stub for backward compatibility." alt="" coords="13,155,119,181"/>

View File

@ -0,0 +1 @@
f6e64e274e6c4eb529b7838271a04a14

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

View File

@ -0,0 +1,117 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/IRVersion.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('IRVersion_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">IRVersion.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="IRVersion_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; </div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;<span class="preprocessor">#ifndef _IR_VERSION_HPP</span></div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#define _IR_VERSION_HPP</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; </div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE &quot;4.2.1&quot;</span></div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="IRVersion_8h.html#ad9f03906065f749788cc9e3f68fb6253"> 40</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_MAJOR 4</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="IRVersion_8h.html#a5fccc9834ba25cd17b7ca45e14aa7751"> 41</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_MINOR 2</span></div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="IRVersion_8h.html#a824e2f61336bde09dd9b835e8606683f"> 42</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_PATCH 1</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="IRVersion_8h.html#a190ee428ccd5ea2362e913f114718779"> 43</a></span>&#160; </div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment"> * Macro to convert 3 version parts into an integer</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment"> * To be used in preprocessor comparisons, such as #if VERSION_IRREMOTE_HEX &gt;= VERSION_HEX_VALUE(3, 7, 0)</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="preprocessor">#define VERSION_HEX_VALUE(major, minor, patch) ((major &lt;&lt; 16) | (minor &lt;&lt; 8) | (patch))</span></div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="IRVersion_8h.html#a8fe70c54038764ee815bb4940c58ad3c"> 49</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_HEX VERSION_HEX_VALUE(VERSION_IRREMOTE_MAJOR, VERSION_IRREMOTE_MINOR, VERSION_IRREMOTE_PATCH)</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"><a class="line" href="IRVersion_8h.html#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"> 50</a></span>&#160; </div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="preprocessor">#endif // _IR_VERSION_HPP</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRVersion_8h.html">IRVersion.h</a></li>
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -159,6 +159,8 @@ Macros</h2></td></tr>
<tr class="separator:acabdaf864f20981cb6d749b043490c94"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b1bdb2048293ad4cd31ff2705dec64c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a1b1bdb2048293ad4cd31ff2705dec64c">IR_REC_STATE_STOP</a>&#160;&#160;&#160;3</td></tr>
<tr class="separator:a1b1bdb2048293ad4cd31ff2705dec64c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7687558679e30d4e0b460e58198da55e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a7687558679e30d4e0b460e58198da55e">BITS_IN_RAW_DATA_TYPE</a>&#160;&#160;&#160;32</td></tr>
<tr class="separator:a7687558679e30d4e0b460e58198da55e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a093a1c04e9dd4d6845a48163554143a0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a093a1c04e9dd4d6845a48163554143a0">IR_DEBUG_PRINT</a>(...)&#160;&#160;&#160;void()</td></tr>
<tr class="memdesc:a093a1c04e9dd4d6845a48163554143a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">If DEBUG, print the arguments, otherwise do nothing. <a href="IRremoteInt_8h.html#a093a1c04e9dd4d6845a48163554143a0">More...</a><br /></td></tr>
<tr class="separator:a093a1c04e9dd4d6845a48163554143a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -185,17 +187,13 @@ Macros</h2></td></tr>
<tr class="memitem:ad3a18e82bb4b51badb0727fce56a7557"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#ad3a18e82bb4b51badb0727fce56a7557">UTOL</a>&#160;&#160;&#160;(100 + <a class="el" href="IRremoteInt_8h.html#a21dc688dd1fa862b635bf0bffdf2dee0">TOLERANCE_FOR_DECODERS_MARK_OR_SPACE_MATCHING</a>)</td></tr>
<tr class="memdesc:ad3a18e82bb4b51badb0727fce56a7557"><td class="mdescLeft">&#160;</td><td class="mdescRight">Upper tolerance for comparison of measured data. <a href="IRremoteInt_8h.html#ad3a18e82bb4b51badb0727fce56a7557">More...</a><br /></td></tr>
<tr class="separator:ad3a18e82bb4b51badb0727fce56a7557"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92632ec97aa1c7a60a990811744a6902"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a92632ec97aa1c7a60a990811744a6902">TICKS_LOW</a>(us)&#160;&#160;&#160;((unsigned int ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#abd2c46e5e893c0f5fd23fe9fed2ae49a">LTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) ))</td></tr>
<tr class="memitem:a92632ec97aa1c7a60a990811744a6902"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a92632ec97aa1c7a60a990811744a6902">TICKS_LOW</a>(us)&#160;&#160;&#160;((uint16_t ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#abd2c46e5e893c0f5fd23fe9fed2ae49a">LTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) ))</td></tr>
<tr class="separator:a92632ec97aa1c7a60a990811744a6902"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac0d006cd9c029a2e6c4bd513ee5e7951"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#ac0d006cd9c029a2e6c4bd513ee5e7951">TICKS_HIGH</a>(us)&#160;&#160;&#160;((unsigned int ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#ad3a18e82bb4b51badb0727fce56a7557">UTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) + 1))</td></tr>
<tr class="memitem:ac0d006cd9c029a2e6c4bd513ee5e7951"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#ac0d006cd9c029a2e6c4bd513ee5e7951">TICKS_HIGH</a>(us)&#160;&#160;&#160;((uint16_t ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#ad3a18e82bb4b51badb0727fce56a7557">UTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) + 1))</td></tr>
<tr class="separator:ac0d006cd9c029a2e6c4bd513ee5e7951"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d35fb37031b53f0083f8b88ae3cf2c2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a5d35fb37031b53f0083f8b88ae3cf2c2">NO_REPEATS</a>&#160;&#160;&#160;0</td></tr>
<tr class="memdesc:a5d35fb37031b53f0083f8b88ae3cf2c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Just for better readability of code. <a href="IRremoteInt_8h.html#a5d35fb37031b53f0083f8b88ae3cf2c2">More...</a><br /></td></tr>
<tr class="separator:a5d35fb37031b53f0083f8b88ae3cf2c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a48e176b38988494bc725ac4fa98c534a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a48e176b38988494bc725ac4fa98c534a">SEND_STOP_BIT</a>&#160;&#160;&#160;true</td></tr>
<tr class="separator:a48e176b38988494bc725ac4fa98c534a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8683da8ac98548ba8f446f3ccfc83c11"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a8683da8ac98548ba8f446f3ccfc83c11">SEND_NO_STOP_BIT</a>&#160;&#160;&#160;false</td></tr>
<tr class="separator:a8683da8ac98548ba8f446f3ccfc83c11"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c39eebb08a1d9a2462580ce00a89acd"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremoteInt_8h.html#a1c39eebb08a1d9a2462580ce00a89acd">SEND_REPEAT_COMMAND</a>&#160;&#160;&#160;true</td></tr>
<tr class="memdesc:a1c39eebb08a1d9a2462580ce00a89acd"><td class="mdescLeft">&#160;</td><td class="mdescRight">used for e.g. NEC, where a repeat is different from just repeating the data. <a href="IRremoteInt_8h.html#a1c39eebb08a1d9a2462580ce00a89acd">More...</a><br /></td></tr>
<tr class="separator:a1c39eebb08a1d9a2462580ce00a89acd"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -207,21 +205,21 @@ Typedefs</h2></td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga7e916f5e40dbb6db37fff67191857ff9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7e916f5e40dbb6db37fff67191857ff9">matchTicks</a> (unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)</td></tr>
<tr class="memdesc:ga7e916f5e40dbb6db37fff67191857ff9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Match function without compensating for marks exceeded or spaces shortened by demodulator hardware Currently not used. <a href="group__Receiving.html#ga7e916f5e40dbb6db37fff67191857ff9">More...</a><br /></td></tr>
<tr class="separator:ga7e916f5e40dbb6db37fff67191857ff9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5e9aceb0b9c38a1125ad080ba4e4198f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga5e9aceb0b9c38a1125ad080ba4e4198f">matchMark</a> (unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)</td></tr>
<tr class="memdesc:ga5e9aceb0b9c38a1125ad080ba4e4198f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for marks exceeded by demodulator hardware. <a href="group__Receiving.html#ga5e9aceb0b9c38a1125ad080ba4e4198f">More...</a><br /></td></tr>
<tr class="separator:ga5e9aceb0b9c38a1125ad080ba4e4198f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga791733ef19a2995f0b952b3aba0eaf1f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga791733ef19a2995f0b952b3aba0eaf1f">matchSpace</a> (unsigned int aMeasuredTicks, unsigned int aMatchValueMicros)</td></tr>
<tr class="memdesc:ga791733ef19a2995f0b952b3aba0eaf1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for spaces shortened by demodulator hardware. <a href="group__Receiving.html#ga791733ef19a2995f0b952b3aba0eaf1f">More...</a><br /></td></tr>
<tr class="separator:ga791733ef19a2995f0b952b3aba0eaf1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab42e5cf55dacb8b5849563ef0c5d9138"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab42e5cf55dacb8b5849563ef0c5d9138">MATCH</a> (unsigned int measured, unsigned int desired)</td></tr>
<tr class="separator:gab42e5cf55dacb8b5849563ef0c5d9138"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7aa109ed6e93766bb746a50fd7e54526"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7aa109ed6e93766bb746a50fd7e54526">MATCH_MARK</a> (unsigned int measured_ticks, unsigned int desired_us)</td></tr>
<tr class="separator:ga7aa109ed6e93766bb746a50fd7e54526"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga93abce496bc1c03f2e689b5c7fbaab41"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga93abce496bc1c03f2e689b5c7fbaab41">MATCH_SPACE</a> (unsigned int measured_ticks, unsigned int desired_us)</td></tr>
<tr class="separator:ga93abce496bc1c03f2e689b5c7fbaab41"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga495b7f49ff71cde1289b118fac0f0674"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674">matchTicks</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga495b7f49ff71cde1289b118fac0f0674"><td class="mdescLeft">&#160;</td><td class="mdescRight">Match function without compensating for marks exceeded or spaces shortened by demodulator hardware Currently not used. <a href="group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674">More...</a><br /></td></tr>
<tr class="separator:ga495b7f49ff71cde1289b118fac0f0674"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb">matchMark</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for marks exceeded by demodulator hardware. <a href="group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb">More...</a><br /></td></tr>
<tr class="separator:ga4472564ea96b1ee10b51f594f60d7aeb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b">matchSpace</a> (uint16_t aMeasuredTicks, uint16_t aMatchValueMicros)</td></tr>
<tr class="memdesc:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="mdescLeft">&#160;</td><td class="mdescRight">Compensate for spaces shortened by demodulator hardware. <a href="group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b">More...</a><br /></td></tr>
<tr class="separator:ga7902b620f6c01463b5b6e50ef604ac8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0f9263ab71af2d2895add92f72a05ee9"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga0f9263ab71af2d2895add92f72a05ee9">MATCH</a> (uint16_t measured, uint16_t desired)</td></tr>
<tr class="separator:ga0f9263ab71af2d2895add92f72a05ee9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadab293a71386f20571db6d779d1d84b7"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gadab293a71386f20571db6d779d1d84b7">MATCH_MARK</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:gadab293a71386f20571db6d779d1d84b7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab91e763e3ae44501f7c4f7b7ff8aca0f"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab91e763e3ae44501f7c4f7b7ff8aca0f">MATCH_SPACE</a> (uint16_t measured_ticks, uint16_t desired_us)</td></tr>
<tr class="separator:gab91e763e3ae44501f7c4f7b7ff8aca0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863">getMarkExcessMicros</a> ()</td></tr>
<tr class="memdesc:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="mdescLeft">&#160;</td><td class="mdescRight">Getter function for MARK_EXCESS_MICROS. <a href="group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863">More...</a><br /></td></tr>
<tr class="separator:gab1d28d4dd67d6bf808c0328a92e2d863"><td class="memSeparator" colspan="2">&#160;</td></tr>
@ -246,8 +244,10 @@ Functions</h2></td></tr>
<tr class="memitem:ga5f1d479f43dcd56febf146e97a3904db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">setBlinkPin</a> (uint8_t aFeedbackLEDPin) __attribute__((deprecated(&quot;Please use <a class="el" href="group__FeedbackLEDFunctions.html#ga53e5ec641a900f2c572c8bffd42da921">setLEDFeedback</a>().&quot;)))</td></tr>
<tr class="memdesc:ga5f1d479f43dcd56febf146e97a3904db"><td class="mdescLeft">&#160;</td><td class="mdescRight">Old deprecated function name for <a class="el" href="group__FeedbackLEDFunctions.html#gae8f13aac6ecee8b3c1e59d4a2e0bb019" title="Enable blinking of feedback LED (LED_BUILTIN is taken as default) on IR sending and receiving Cannot ...">setLEDFeedback()</a> <a href="group__FeedbackLEDFunctions.html#ga5f1d479f43dcd56febf146e97a3904db">More...</a><br /></td></tr>
<tr class="separator:ga5f1d479f43dcd56febf146e97a3904db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga770e03720a79491d7ddf347ad4b9e484"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Receiving.html#ga770e03720a79491d7ddf347ad4b9e484">IRReceiveTimerInterruptHandler</a> ()</td></tr>
<tr class="separator:ga770e03720a79491d7ddf347ad4b9e484"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c4ddfbbbe38d11709d079dee617f2b2"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Decoder.html#ga7c4ddfbbbe38d11709d079dee617f2b2">sendNECSpecialRepeat</a> ()</td></tr>
<tr class="memdesc:ga7c4ddfbbbe38d11709d079dee617f2b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Static function for sending special repeat frame. <a href="group__Decoder.html#ga7c4ddfbbbe38d11709d079dee617f2b2">More...</a><br /></td></tr>
<tr class="memdesc:ga7c4ddfbbbe38d11709d079dee617f2b2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Static function variant of <a class="el" href="group__Decoder.html#gae8fff4f1d8703ca18ea85a15289dc44c" title="Send special NEC repeat frame Repeat commands should be sent in a 110 ms raster.">IRsend::sendNECRepeat</a> For use in ProtocolConstants. <a href="group__Decoder.html#ga7c4ddfbbbe38d11709d079dee617f2b2">More...</a><br /></td></tr>
<tr class="separator:ga7c4ddfbbbe38d11709d079dee617f2b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaddace9c2bd03f63855063a3ce5e65acc"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__Decoder.html#gaddace9c2bd03f63855063a3ce5e65acc">sendLG2SpecialRepeat</a> ()</td></tr>
<tr class="memdesc:gaddace9c2bd03f63855063a3ce5e65acc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Static function for sending special repeat frame. <a href="group__Decoder.html#gaddace9c2bd03f63855063a3ce5e65acc">More...</a><br /></td></tr>
@ -274,13 +274,29 @@ Variables</h2></td></tr>
<div class="textblock"><p>Contains all declarations required for the interface to IRremote. Could not be named <a class="el" href="IRremote_8h.html" title="Stub for backward compatibility.">IRremote.h</a>, since this has another semantic (it must include all *.hpp files) for old example code found in the wild. </p>
<p>This file is part of Arduino-IRremote <a href="https://github.com/Arduino-IRremote/Arduino-IRremote">https://github.com/Arduino-IRremote/Arduino-IRremote</a>.</p>
<p>MIT License</p>
<p>Copyright (c) 2015-2022 Ken Shirriff <a href="http://www.righto.com">http://www.righto.com</a>, Rafi Khan, Armin Joachimsmeyer</p>
<p>Copyright (c) 2015-2023 Ken Shirriff <a href="http://www.righto.com">http://www.righto.com</a>, Rafi Khan, Armin Joachimsmeyer</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. </p>
<p class="definition">Definition in file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a id="a7687558679e30d4e0b460e58198da55e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7687558679e30d4e0b460e58198da55e">&#9670;&nbsp;</a></span>BITS_IN_RAW_DATA_TYPE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define BITS_IN_RAW_DATA_TYPE&#160;&#160;&#160;32</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00119">119</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
<a id="a3033a7d78620f2d895d7268ceb685129"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3033a7d78620f2d895d7268ceb685129">&#9670;&nbsp;</a></span>DISABLE_LED_FEEDBACK</h2>
@ -311,7 +327,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00339">339</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00351">351</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -349,7 +365,7 @@ Variables</h2></td></tr>
<p>If DEBUG, print the arguments, otherwise do nothing. </p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00134">134</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00138">138</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -371,7 +387,7 @@ Variables</h2></td></tr>
<p>If DEBUG, print the arguments as a line, otherwise do nothing. </p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00138">138</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00142">142</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -455,7 +471,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00145">145</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00149">149</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -475,7 +491,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00146">146</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00150">150</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -491,7 +507,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00340">340</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00352">352</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -507,7 +523,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00341">341</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00353">353</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -523,7 +539,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00342">342</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00354">354</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -541,7 +557,7 @@ Variables</h2></td></tr>
<p>Lower tolerance for comparison of measured data. </p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00366">366</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00378">378</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -575,7 +591,7 @@ Variables</h2></td></tr>
<p>Just for better readability of code. </p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00393">393</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00410">410</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -596,22 +612,6 @@ Variables</h2></td></tr>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00075">75</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
<a id="a8683da8ac98548ba8f446f3ccfc83c11"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8683da8ac98548ba8f446f3ccfc83c11">&#9670;&nbsp;</a></span>SEND_NO_STOP_BIT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SEND_NO_STOP_BIT&#160;&#160;&#160;false</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00395">395</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
<a id="a1c39eebb08a1d9a2462580ce00a89acd"></a>
@ -628,23 +628,7 @@ Variables</h2></td></tr>
<p>used for e.g. NEC, where a repeat is different from just repeating the data. </p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00396">396</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
<a id="a48e176b38988494bc725ac4fa98c534a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a48e176b38988494bc725ac4fa98c534a">&#9670;&nbsp;</a></span>SEND_STOP_BIT</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define SEND_STOP_BIT&#160;&#160;&#160;true</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00394">394</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00411">411</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -675,12 +659,12 @@ Variables</h2></td></tr>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">us</td><td>)</td>
<td>&#160;&#160;&#160;((unsigned int ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#ad3a18e82bb4b51badb0727fce56a7557">UTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) + 1))</td>
<td>&#160;&#160;&#160;((uint16_t ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#ad3a18e82bb4b51badb0727fce56a7557">UTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) + 1))</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00378">378</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00390">390</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -695,12 +679,12 @@ Variables</h2></td></tr>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">us</td><td>)</td>
<td>&#160;&#160;&#160;((unsigned int ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#abd2c46e5e893c0f5fd23fe9fed2ae49a">LTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) ))</td>
<td>&#160;&#160;&#160;((uint16_t ) ((long) (us) * <a class="el" href="IRremoteInt_8h.html#abd2c46e5e893c0f5fd23fe9fed2ae49a">LTOL</a> / (<a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a> * 100) ))</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00377">377</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00389">389</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -716,7 +700,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00361">361</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00373">373</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -750,7 +734,7 @@ Variables</h2></td></tr>
<p>Upper tolerance for comparison of measured data. </p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00369">369</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00381">381</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -792,7 +776,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00348">348</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00360">360</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -816,7 +800,7 @@ Variables</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00346">346</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremoteInt_8h_source.html#l00358">358</a> of file <a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>.</p>
</div>
</div>
@ -826,7 +810,7 @@ Variables</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRremoteInt_8h.html">IRremoteInt.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:40 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -4,6 +4,7 @@ var IRremoteInt_8h =
[ "decode_results", "structdecode__results.html", "structdecode__results" ],
[ "IRrecv", "classIRrecv.html", "classIRrecv" ],
[ "IRsend", "classIRsend.html", "classIRsend" ],
[ "BITS_IN_RAW_DATA_TYPE", "IRremoteInt_8h.html#a7687558679e30d4e0b460e58198da55e", null ],
[ "DISABLE_LED_FEEDBACK", "IRremoteInt_8h.html#a3033a7d78620f2d895d7268ceb685129", null ],
[ "DO_NOT_ENABLE_LED_FEEDBACK", "IRremoteInt_8h.html#a20df6d7738730db43a872d88e744b411", null ],
[ "ENABLE_LED_FEEDBACK", "IRremoteInt_8h.html#a2072e6070907411d00d0e5ca5ae1a9b2", null ],
@ -22,9 +23,7 @@ var IRremoteInt_8h =
[ "MARK", "IRremoteInt_8h.html#abeb214368f7f34cff98de9047aa6eb2f", null ],
[ "NO_REPEATS", "IRremoteInt_8h.html#a5d35fb37031b53f0083f8b88ae3cf2c2", null ],
[ "RAW_BUFFER_LENGTH", "IRremoteInt_8h.html#a589aa40429eeb37b6e83a2c09854a47b", null ],
[ "SEND_NO_STOP_BIT", "IRremoteInt_8h.html#a8683da8ac98548ba8f446f3ccfc83c11", null ],
[ "SEND_REPEAT_COMMAND", "IRremoteInt_8h.html#a1c39eebb08a1d9a2462580ce00a89acd", null ],
[ "SEND_STOP_BIT", "IRremoteInt_8h.html#a48e176b38988494bc725ac4fa98c534a", null ],
[ "SPACE", "IRremoteInt_8h.html#a5ff6e798033f03e74730e99f01936f84", null ],
[ "TICKS_HIGH", "IRremoteInt_8h.html#ac0d006cd9c029a2e6c4bd513ee5e7951", null ],
[ "TICKS_LOW", "IRremoteInt_8h.html#a92632ec97aa1c7a60a990811744a6902", null ],
@ -37,12 +36,13 @@ var IRremoteInt_8h =
[ "enableLEDFeedback", "group__FeedbackLEDFunctions.html#ga1150b1e371cd7d424d53dbcae6619e54", null ],
[ "enableLEDFeedbackForSend", "group__FeedbackLEDFunctions.html#ga69bc794d3cfd1600a264a1dbbdd28ef7", null ],
[ "getMarkExcessMicros", "group__Receiving.html#gab1d28d4dd67d6bf808c0328a92e2d863", null ],
[ "MATCH", "group__Receiving.html#gab42e5cf55dacb8b5849563ef0c5d9138", null ],
[ "MATCH_MARK", "group__Receiving.html#ga7aa109ed6e93766bb746a50fd7e54526", null ],
[ "MATCH_SPACE", "group__Receiving.html#ga93abce496bc1c03f2e689b5c7fbaab41", null ],
[ "matchMark", "group__Receiving.html#ga5e9aceb0b9c38a1125ad080ba4e4198f", null ],
[ "matchSpace", "group__Receiving.html#ga791733ef19a2995f0b952b3aba0eaf1f", null ],
[ "matchTicks", "group__Receiving.html#ga7e916f5e40dbb6db37fff67191857ff9", null ],
[ "IRReceiveTimerInterruptHandler", "group__Receiving.html#ga770e03720a79491d7ddf347ad4b9e484", null ],
[ "MATCH", "group__Receiving.html#ga0f9263ab71af2d2895add92f72a05ee9", null ],
[ "MATCH_MARK", "group__Receiving.html#gadab293a71386f20571db6d779d1d84b7", null ],
[ "MATCH_SPACE", "group__Receiving.html#gab91e763e3ae44501f7c4f7b7ff8aca0f", null ],
[ "matchMark", "group__Receiving.html#ga4472564ea96b1ee10b51f594f60d7aeb", null ],
[ "matchSpace", "group__Receiving.html#ga7902b620f6c01463b5b6e50ef604ac8b", null ],
[ "matchTicks", "group__Receiving.html#ga495b7f49ff71cde1289b118fac0f0674", null ],
[ "printActiveIRProtocols", "group__Receiving.html#gada0f2fe0704a217c16ee497ba7b3630e", null ],
[ "sendLG2SpecialRepeat", "group__Decoder.html#gaddace9c2bd03f63855063a3ce5e65acc", null ],
[ "sendNECSpecialRepeat", "group__Decoder.html#ga7c4ddfbbbe38d11709d079dee617f2b2", null ],

File diff suppressed because it is too large Load Diff

View File

@ -94,34 +94,37 @@ Include dependency graph for IRremote.h:</div>
<div class="dyncontent">
<div class="center"><img src="IRremote_8h__incl.png" border="0" usemap="#src_2IRremote_8h" alt=""/></div>
<map name="src_2IRremote_8h" id="src_2IRremote_8h">
<area shape="rect" title="Stub for backward compatibility." alt="" coords="1553,5,1660,32"/>
<area shape="rect" href="IRremote_8hpp.html" title="Public API to the library." alt="" coords="1557,80,1656,107"/>
<area shape="rect" href="IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="49,155,148,181"/>
<area shape="rect" href="digitalWriteFast_8h.html" title=" " alt="" coords="173,155,297,181"/>
<area shape="rect" href="IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="321,155,453,181"/>
<area shape="rect" href="IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="477,155,619,181"/>
<area shape="rect" href="LongUnion_8h.html" title=" " alt="" coords="643,155,738,181"/>
<area shape="rect" href="IRProtocol_8hpp.html" title=" " alt="" coords="763,155,869,181"/>
<area shape="rect" href="IRReceive_8hpp.html" title=" " alt="" coords="893,155,997,181"/>
<area shape="rect" href="IRSend_8hpp.html" title=" " alt="" coords="1022,155,1111,181"/>
<area shape="rect" href="ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1135,155,1270,181"/>
<area shape="rect" href="ir__BoseWave_8hpp.html" title=" " alt="" coords="1295,155,1417,181"/>
<area shape="rect" href="ir__Denon_8hpp.html" title=" " alt="" coords="1441,155,1540,181"/>
<area shape="rect" href="ir__JVC_8hpp.html" title=" " alt="" coords="1564,155,1649,181"/>
<area shape="rect" href="ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1673,155,1788,181"/>
<area shape="rect" href="ir__Lego_8hpp.html" title=" " alt="" coords="1813,155,1902,181"/>
<area shape="rect" href="ir__LG_8hpp.html" title=" " alt="" coords="1926,155,2005,181"/>
<area shape="rect" href="ir__MagiQuest_8hpp.html" title=" " alt="" coords="2029,155,2153,181"/>
<area shape="rect" href="ir__NEC_8hpp.html" title=" " alt="" coords="2177,155,2265,181"/>
<area shape="rect" href="ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2290,155,2409,181"/>
<area shape="rect" href="ir__Samsung_8hpp.html" title=" " alt="" coords="2433,155,2549,181"/>
<area shape="rect" href="ir__Sony_8hpp.html" title=" " alt="" coords="2573,155,2664,181"/>
<area shape="rect" href="ir__Others_8hpp.html" title=" " alt="" coords="2689,155,2789,181"/>
<area shape="rect" href="ir__Pronto_8hpp.html" title=" " alt="" coords="2813,155,2912,181"/>
<area shape="rect" href="ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2936,155,3131,181"/>
<area shape="rect" title=" " alt="" coords="5,229,83,256"/>
<area shape="rect" href="IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,229,200,256"/>
<area shape="rect" title=" " alt="" coords="658,229,723,256"/>
<area shape="rect" title="Stub for backward compatibility." alt="" coords="1526,5,1633,32"/>
<area shape="rect" href="IRremote_8hpp.html" title="Public API to the library." alt="" coords="1530,80,1629,107"/>
<area shape="rect" href="IRVersion_8h.html" title=" " alt="" coords="5,155,95,181"/>
<area shape="rect" href="IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="170,155,269,181"/>
<area shape="rect" href="digitalWriteFast_8h.html" title=" " alt="" coords="48,229,172,256"/>
<area shape="rect" href="IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="293,155,425,181"/>
<area shape="rect" href="IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="450,155,591,181"/>
<area shape="rect" href="LongUnion_8h.html" title=" " alt="" coords="1621,304,1716,331"/>
<area shape="rect" href="IRProtocol_8hpp.html" title=" " alt="" coords="735,155,842,181"/>
<area shape="rect" href="IRReceive_8hpp.html" title=" " alt="" coords="866,155,970,181"/>
<area shape="rect" href="IRSend_8hpp.html" title=" " alt="" coords="995,155,1084,181"/>
<area shape="rect" href="ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1108,155,1243,181"/>
<area shape="rect" href="ir__BoseWave_8hpp.html" title=" " alt="" coords="1267,155,1390,181"/>
<area shape="rect" href="ir__Denon_8hpp.html" title=" " alt="" coords="1414,155,1513,181"/>
<area shape="rect" href="ir__JVC_8hpp.html" title=" " alt="" coords="1537,155,1622,181"/>
<area shape="rect" href="ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1646,155,1761,181"/>
<area shape="rect" href="ir__Lego_8hpp.html" title=" " alt="" coords="1785,155,1875,181"/>
<area shape="rect" href="ir__LG_8hpp.html" title=" " alt="" coords="1899,155,1977,181"/>
<area shape="rect" href="ir__MagiQuest_8hpp.html" title=" " alt="" coords="2001,155,2125,181"/>
<area shape="rect" href="ir__NEC_8hpp.html" title=" " alt="" coords="2150,155,2238,181"/>
<area shape="rect" href="ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2263,155,2381,181"/>
<area shape="rect" href="ir__Samsung_8hpp.html" title=" " alt="" coords="2405,155,2521,181"/>
<area shape="rect" href="ir__Sony_8hpp.html" title=" " alt="" coords="2546,155,2637,181"/>
<area shape="rect" href="ir__FAST_8hpp.html" title=" " alt="" coords="616,155,711,181"/>
<area shape="rect" href="ir__Others_8hpp.html" title=" " alt="" coords="2712,155,2812,181"/>
<area shape="rect" href="ir__Pronto_8hpp.html" title=" " alt="" coords="2837,155,2935,181"/>
<area shape="rect" href="ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2959,155,3154,181"/>
<area shape="rect" title=" " alt="" coords="289,304,366,331"/>
<area shape="rect" href="IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="197,229,290,256"/>
<area shape="rect" title=" " alt="" coords="1636,379,1701,405"/>
<area shape="rect" href="TinyIR_8h.html" title=" " alt="" coords="629,229,698,256"/>
</map>
</div>
</div>
@ -136,7 +139,7 @@ Include dependency graph for IRremote.h:</div>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRremote_8h.html">IRremote.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,32 +0,0 @@
var IRremote_8h =
[
[ "DECODE_BOSEWAVE", "IRremote_8h.html#a2935e3b14cf449b00b4166f71eecf8af", null ],
[ "DECODE_DENON", "IRremote_8h.html#a589c5f91ad251aff0cbdc179a5faaa60", null ],
[ "DECODE_DISTANCE", "IRremote_8h.html#ac56dd3a6901bd61a6a122e1f683e5105", null ],
[ "DECODE_HASH", "IRremote_8h.html#a4ee00d8b9631462888e74c95712234e1", null ],
[ "DECODE_JVC", "IRremote_8h.html#ac1f2b013768a77943b002953197cb573", null ],
[ "DECODE_KASEIKYO", "IRremote_8h.html#acd46d28198948511f9c8b97328b5fdde", null ],
[ "DECODE_LEGO_PF", "IRremote_8h.html#a95bc1b009436547a892527e2c2f43384", null ],
[ "DECODE_LG", "IRremote_8h.html#a54d5d4710700ef373384f64409df677f", null ],
[ "DECODE_MAGIQUEST", "IRremote_8h.html#a4f3f73855171522cc6a9fa5ba5f51896", null ],
[ "DECODE_NEC", "IRremote_8h.html#ac1592db6a7ef80a046d9f33a5a2ed5d8", null ],
[ "DECODE_PANASONIC", "IRremote_8h.html#a018b3df8bf49d3f6cc094db8491ad2ad", null ],
[ "DECODE_RC5", "IRremote_8h.html#aa1dbf245adf93ffa573dc4863ea29c5b", null ],
[ "DECODE_RC6", "IRremote_8h.html#a4f3761bb8157be080bee1d9e4c1bc8c8", null ],
[ "DECODE_SAMSUNG", "IRremote_8h.html#aa460f8aea781d305b7e0fef9b6748523", null ],
[ "DECODE_SONY", "IRremote_8h.html#a308d000d6a90fac72f4dcf47323bef21", null ],
[ "DECODE_WHYNTER", "IRremote_8h.html#ad1f31ad2d36110ba06286b7fb1d1ddcf", null ],
[ "INPUT_MARK", "IRremote_8h.html#ace39503e8ded5ffb7a1c0d6f651f8d43", null ],
[ "MARK_EXCESS", "IRremote_8h.html#ac21b48ddc487212fbce7d6474423e080", null ],
[ "MARK_EXCESS_MICROS", "IRremote_8h.html#a6cb4ad1bc3f0b5d2c4503615058a1d90", null ],
[ "PULSE_CORRECTION_NANOS", "IRremote_8h.html#ac836377a7a04f6f4044daab71d9660f9", null ],
[ "RAWBUF", "IRremote_8h.html#abb919079668bcc14433d4c857ab8a196", null ],
[ "RECORD_GAP_MICROS", "IRremote_8h.html#a2eb6de0bae8bc6f19f3832c00e91f499", null ],
[ "RECORD_GAP_MICROS_WARNING_THRESHOLD", "IRremote_8h.html#a6afa54ea105253cce361d8c571da5fa9", null ],
[ "RECORD_GAP_TICKS", "IRremote_8h.html#a1ba5a08e87f922d04e6acb5c07867386", null ],
[ "REPEAT", "IRremote_8h.html#a2c9384c67919c632913b8db2088f8341", null ],
[ "USECPERTICK", "IRremote_8h.html#aad2fcaac88c28bf54ecbd42146a56e3f", null ],
[ "VERSION_IRREMOTE", "IRremote_8h.html#ad9f03906065f749788cc9e3f68fb6253", null ],
[ "VERSION_IRREMOTE_MAJOR", "IRremote_8h.html#a5fccc9834ba25cd17b7ca45e14aa7751", null ],
[ "VERSION_IRREMOTE_MINOR", "IRremote_8h.html#a824e2f61336bde09dd9b835e8606683f", null ]
];

View File

@ -1,30 +1,33 @@
<map id="src/IRremote.h" name="src/IRremote.h">
<area shape="rect" id="node1" title="Stub for backward compatibility." alt="" coords="1553,5,1660,32"/>
<area shape="rect" id="node2" href="$IRremote_8hpp.html" title="Public API to the library." alt="" coords="1557,80,1656,107"/>
<area shape="rect" id="node3" href="$IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="49,155,148,181"/>
<area shape="rect" id="node6" href="$digitalWriteFast_8h.html" title=" " alt="" coords="173,155,297,181"/>
<area shape="rect" id="node7" href="$IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="321,155,453,181"/>
<area shape="rect" id="node8" href="$IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="477,155,619,181"/>
<area shape="rect" id="node9" href="$LongUnion_8h.html" title=" " alt="" coords="643,155,738,181"/>
<area shape="rect" id="node11" href="$IRProtocol_8hpp.html" title=" " alt="" coords="763,155,869,181"/>
<area shape="rect" id="node12" href="$IRReceive_8hpp.html" title=" " alt="" coords="893,155,997,181"/>
<area shape="rect" id="node13" href="$IRSend_8hpp.html" title=" " alt="" coords="1022,155,1111,181"/>
<area shape="rect" id="node14" href="$ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1135,155,1270,181"/>
<area shape="rect" id="node15" href="$ir__BoseWave_8hpp.html" title=" " alt="" coords="1295,155,1417,181"/>
<area shape="rect" id="node16" href="$ir__Denon_8hpp.html" title=" " alt="" coords="1441,155,1540,181"/>
<area shape="rect" id="node17" href="$ir__JVC_8hpp.html" title=" " alt="" coords="1564,155,1649,181"/>
<area shape="rect" id="node18" href="$ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1673,155,1788,181"/>
<area shape="rect" id="node19" href="$ir__Lego_8hpp.html" title=" " alt="" coords="1813,155,1902,181"/>
<area shape="rect" id="node20" href="$ir__LG_8hpp.html" title=" " alt="" coords="1926,155,2005,181"/>
<area shape="rect" id="node21" href="$ir__MagiQuest_8hpp.html" title=" " alt="" coords="2029,155,2153,181"/>
<area shape="rect" id="node22" href="$ir__NEC_8hpp.html" title=" " alt="" coords="2177,155,2265,181"/>
<area shape="rect" id="node23" href="$ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2290,155,2409,181"/>
<area shape="rect" id="node24" href="$ir__Samsung_8hpp.html" title=" " alt="" coords="2433,155,2549,181"/>
<area shape="rect" id="node25" href="$ir__Sony_8hpp.html" title=" " alt="" coords="2573,155,2664,181"/>
<area shape="rect" id="node26" href="$ir__Others_8hpp.html" title=" " alt="" coords="2689,155,2789,181"/>
<area shape="rect" id="node27" href="$ir__Pronto_8hpp.html" title=" " alt="" coords="2813,155,2912,181"/>
<area shape="rect" id="node28" href="$ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2936,155,3131,181"/>
<area shape="rect" id="node4" title=" " alt="" coords="5,229,83,256"/>
<area shape="rect" id="node5" href="$IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,229,200,256"/>
<area shape="rect" id="node10" title=" " alt="" coords="658,229,723,256"/>
<area shape="rect" id="node1" title="Stub for backward compatibility." alt="" coords="1526,5,1633,32"/>
<area shape="rect" id="node2" href="$IRremote_8hpp.html" title="Public API to the library." alt="" coords="1530,80,1629,107"/>
<area shape="rect" id="node3" href="$IRVersion_8h.html" title=" " alt="" coords="5,155,95,181"/>
<area shape="rect" id="node4" href="$IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="170,155,269,181"/>
<area shape="rect" id="node7" href="$digitalWriteFast_8h.html" title=" " alt="" coords="48,229,172,256"/>
<area shape="rect" id="node8" href="$IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="293,155,425,181"/>
<area shape="rect" id="node9" href="$IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="450,155,591,181"/>
<area shape="rect" id="node10" href="$LongUnion_8h.html" title=" " alt="" coords="1621,304,1716,331"/>
<area shape="rect" id="node12" href="$IRProtocol_8hpp.html" title=" " alt="" coords="735,155,842,181"/>
<area shape="rect" id="node13" href="$IRReceive_8hpp.html" title=" " alt="" coords="866,155,970,181"/>
<area shape="rect" id="node14" href="$IRSend_8hpp.html" title=" " alt="" coords="995,155,1084,181"/>
<area shape="rect" id="node15" href="$ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1108,155,1243,181"/>
<area shape="rect" id="node16" href="$ir__BoseWave_8hpp.html" title=" " alt="" coords="1267,155,1390,181"/>
<area shape="rect" id="node17" href="$ir__Denon_8hpp.html" title=" " alt="" coords="1414,155,1513,181"/>
<area shape="rect" id="node18" href="$ir__JVC_8hpp.html" title=" " alt="" coords="1537,155,1622,181"/>
<area shape="rect" id="node19" href="$ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1646,155,1761,181"/>
<area shape="rect" id="node20" href="$ir__Lego_8hpp.html" title=" " alt="" coords="1785,155,1875,181"/>
<area shape="rect" id="node21" href="$ir__LG_8hpp.html" title=" " alt="" coords="1899,155,1977,181"/>
<area shape="rect" id="node22" href="$ir__MagiQuest_8hpp.html" title=" " alt="" coords="2001,155,2125,181"/>
<area shape="rect" id="node23" href="$ir__NEC_8hpp.html" title=" " alt="" coords="2150,155,2238,181"/>
<area shape="rect" id="node24" href="$ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2263,155,2381,181"/>
<area shape="rect" id="node25" href="$ir__Samsung_8hpp.html" title=" " alt="" coords="2405,155,2521,181"/>
<area shape="rect" id="node26" href="$ir__Sony_8hpp.html" title=" " alt="" coords="2546,155,2637,181"/>
<area shape="rect" id="node27" href="$ir__FAST_8hpp.html" title=" " alt="" coords="616,155,711,181"/>
<area shape="rect" id="node29" href="$ir__Others_8hpp.html" title=" " alt="" coords="2712,155,2812,181"/>
<area shape="rect" id="node30" href="$ir__Pronto_8hpp.html" title=" " alt="" coords="2837,155,2935,181"/>
<area shape="rect" id="node31" href="$ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2959,155,3154,181"/>
<area shape="rect" id="node5" title=" " alt="" coords="289,304,366,331"/>
<area shape="rect" id="node6" href="$IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="197,229,290,256"/>
<area shape="rect" id="node11" title=" " alt="" coords="1636,379,1701,405"/>
<area shape="rect" id="node28" href="$TinyIR_8h.html" title=" " alt="" coords="629,229,698,256"/>
</map>

View File

@ -1 +1 @@
fbe53b733bd74de33b7753736e7e171d
c7422ede4d3e7ea423c7526b3dfb34f9

Binary file not shown.

Before

Width:  |  Height:  |  Size: 59 KiB

After

Width:  |  Height:  |  Size: 87 KiB

View File

@ -91,17 +91,64 @@ $(document).ready(function(){initNavTree('IRremote_8h_source.html',''); initResi
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160; </div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremote_8hpp.html">IRremote.hpp</a>&quot;</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160; </div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#endif // IRremote_h</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#pragma once</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160; </div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="preprocessor">#warning Thank you for using the IRremote library!</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="preprocessor">#warning It seems, that you are using a old version 2.0 code / example.</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="preprocessor">#warning This version is no longer supported!</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="preprocessor">#warning Please use one of the new code examples from the library available at &quot;File &gt; Examples &gt; Examples from Custom Libraries / IRremote&quot;.</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="preprocessor">#warning Or downgrade your library to version 2.6.0.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="preprocessor">#warning Start with the SimpleReceiver or SimpleSender example.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="preprocessor">#warning The examples are documented here: https://github.com/Arduino-IRremote/Arduino-IRremote#examples-for-this-library</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="preprocessor">#warning A guide how to convert your 2.0 program is here: https://github.com/Arduino-IRremote/Arduino-IRremote#converting-your-2x-program-to-the-4x-version</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160; </div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment">/**********************************************************************************************************************</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * The OLD and DEPRECATED decode function with parameter aResults, kept for backward compatibility to old 2.0 tutorials</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * This function calls the old MSB first decoders and fills only the 3 variables:</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * aResults-&gt;value</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * aResults-&gt;bits</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * aResults-&gt;decode_type</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * It prints a message on the first call.</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> **********************************************************************************************************************/</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"><a class="line" href="classIRrecv.html#a9705c2ae98b44014e6e8bf55191b2eba"> 29</a></span>&#160;<span class="keywordtype">bool</span> <a class="code" href="group__Receiving.html#ga913af602be49b9182fb0b22e9e351b36">IRrecv::decode</a>(<a class="code" href="structdecode__results.html">decode_results</a> *aResults) {</div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; <span class="keyword">static</span> <span class="keywordtype">bool</span> sMessageWasSent = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160; <span class="keywordflow">if</span> (!sMessageWasSent) {</div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160; Serial.println(F(<span class="stringliteral">&quot;**************************************************************************************************&quot;</span>));</div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160; Serial.println(F(<span class="stringliteral">&quot;Thank you for using the IRremote library!&quot;</span>));</div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160; Serial.println(F(<span class="stringliteral">&quot;It seems, that you are using a old version 2.0 code / example.&quot;</span>));</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; Serial.println(F(<span class="stringliteral">&quot;This version is no longer supported!&quot;</span>));</div>
<div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160; Serial.println(F(<span class="stringliteral">&quot;Please use one of the new code examples from the library,&quot;</span>));</div>
<div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160; Serial.println(F(<span class="stringliteral">&quot; available at \&quot;File &gt; Examples &gt; Examples from Custom Libraries / IRremote\&quot;.&quot;</span>));</div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160; Serial.println(F(<span class="stringliteral">&quot;Or downgrade your library to version 2.6.0.&quot;</span>));</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; Serial.println();</div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160; Serial.println(F(<span class="stringliteral">&quot;Start with the SimpleReceiver or SimpleSender example.&quot;</span>));</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; Serial.println();</div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160; Serial.println(F(<span class="stringliteral">&quot;The examples are documented here:&quot;</span>));</div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160; Serial.println(F(<span class="stringliteral">&quot; https://github.com/Arduino-IRremote/Arduino-IRremote#examples-for-this-library&quot;</span>));</div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; Serial.println(F(<span class="stringliteral">&quot;A guide how to convert your 2.0 program is here:&quot;</span>));</div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160; Serial.println(F(<span class="stringliteral">&quot; https://github.com/Arduino-IRremote/Arduino-IRremote#converting-your-2x-program-to-the-4x-version&quot;</span>));</div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160; Serial.println();</div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160; Serial.println(F(<span class="stringliteral">&quot;Thanks&quot;</span>));</div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; Serial.println(F(<span class="stringliteral">&quot;**************************************************************************************************&quot;</span>));</div>
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160; Serial.println();</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; Serial.println();</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; sMessageWasSent = <span class="keyword">true</span>;</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"> 53</span>&#160; <span class="keywordflow">return</span> <a class="code" href="group__Receiving.html#ga00d69eee1eaf3d055334399b567e6f79">decode_old</a>(aResults);</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;}</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;<span class="preprocessor">#endif // IRremote_h</span></div>
<div class="line"><a name="l00057"></a><span class="lineno"> 57</span>&#160;<span class="preprocessor">#pragma once</span></div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; </div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="astructdecode__results_html"><div class="ttname"><a href="structdecode__results.html">decode_results</a></div><div class="ttdoc">Results returned from old decoders !!!deprecated!!!</div><div class="ttdef"><b>Definition:</b> <a href="IRremoteInt_8h_source.html#l00159">IRremoteInt.h:159</a></div></div>
<div class="ttc" id="aIRremote_8hpp_html"><div class="ttname"><a href="IRremote_8hpp.html">IRremote.hpp</a></div><div class="ttdoc">Public API to the library.</div></div>
<div class="ttc" id="agroup__Receiving_html_ga913af602be49b9182fb0b22e9e351b36"><div class="ttname"><a href="group__Receiving.html#ga913af602be49b9182fb0b22e9e351b36">IRrecv::decode</a></div><div class="ttdeci">bool decode()</div><div class="ttdoc">The main decode function, attempts to decode the recently receive IR signal.</div><div class="ttdef"><b>Definition:</b> <a href="IRReceive_8hpp_source.html#l00476">IRReceive.hpp:476</a></div></div>
<div class="ttc" id="agroup__Receiving_html_ga00d69eee1eaf3d055334399b567e6f79"><div class="ttname"><a href="group__Receiving.html#ga00d69eee1eaf3d055334399b567e6f79">IRrecv::decode_old</a></div><div class="ttdeci">bool decode_old(decode_results *aResults)</div><div class="ttdef"><b>Definition:</b> <a href="IRReceive_8hpp_source.html#l01654">IRReceive.hpp:1654</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRremote_8h.html">IRremote.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -90,7 +90,8 @@ $(document).ready(function(){initNavTree('IRremote_8hpp.html',''); initResizable
<p>Public API to the library.
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &quot;<a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>&quot;</code><br />
<div class="textblock"><code>#include &quot;<a class="el" href="IRVersion_8h_source.html">IRVersion.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="IRremoteInt_8h_source.html">IRremoteInt.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="digitalWriteFast_8h_source.html">digitalWriteFast.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="IRTimer_8hpp_source.html">private/IRTimer.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="IRFeedbackLED_8hpp_source.html">IRFeedbackLED.hpp</a>&quot;</code><br />
@ -110,6 +111,7 @@ $(document).ready(function(){initNavTree('IRremote_8hpp.html',''); initResizable
<code>#include &quot;<a class="el" href="ir__RC5__RC6_8hpp_source.html">ir_RC5_RC6.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ir__Samsung_8hpp_source.html">ir_Samsung.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ir__Sony_8hpp_source.html">ir_Sony.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ir__FAST_8hpp_source.html">ir_FAST.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ir__Others_8hpp_source.html">ir_Others.hpp</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="ir__Pronto_8hpp_source.html">ir_Pronto.hpp</a>&quot;</code><br />
<code>#include &lt;<a class="el" href="ir__DistanceWidthProtocol_8hpp_source.html">ir_DistanceWidthProtocol.hpp</a>&gt;</code><br />
@ -118,33 +120,36 @@ Include dependency graph for IRremote.hpp:</div>
<div class="dyncontent">
<div class="center"><img src="IRremote_8hpp__incl.png" border="0" usemap="#src_2IRremote_8hpp" alt=""/></div>
<map name="src_2IRremote_8hpp" id="src_2IRremote_8hpp">
<area shape="rect" title="Public API to the library." alt="" coords="1546,5,1667,32"/>
<area shape="rect" href="IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="49,80,148,107"/>
<area shape="rect" href="digitalWriteFast_8h.html" title=" " alt="" coords="173,80,297,107"/>
<area shape="rect" href="IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="321,80,453,107"/>
<area shape="rect" href="IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="477,80,619,107"/>
<area shape="rect" href="LongUnion_8h.html" title=" " alt="" coords="643,80,738,107"/>
<area shape="rect" href="IRProtocol_8hpp.html" title=" " alt="" coords="763,80,869,107"/>
<area shape="rect" href="IRReceive_8hpp.html" title=" " alt="" coords="893,80,997,107"/>
<area shape="rect" href="IRSend_8hpp.html" title=" " alt="" coords="1022,80,1111,107"/>
<area shape="rect" href="ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1135,80,1270,107"/>
<area shape="rect" href="ir__BoseWave_8hpp.html" title=" " alt="" coords="1295,80,1417,107"/>
<area shape="rect" href="ir__Denon_8hpp.html" title=" " alt="" coords="1441,80,1540,107"/>
<area shape="rect" href="ir__JVC_8hpp.html" title=" " alt="" coords="1564,80,1649,107"/>
<area shape="rect" href="ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1673,80,1788,107"/>
<area shape="rect" href="ir__Lego_8hpp.html" title=" " alt="" coords="1813,80,1902,107"/>
<area shape="rect" href="ir__LG_8hpp.html" title=" " alt="" coords="1926,80,2005,107"/>
<area shape="rect" href="ir__MagiQuest_8hpp.html" title=" " alt="" coords="2029,80,2153,107"/>
<area shape="rect" href="ir__NEC_8hpp.html" title=" " alt="" coords="2177,80,2265,107"/>
<area shape="rect" href="ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2290,80,2409,107"/>
<area shape="rect" href="ir__Samsung_8hpp.html" title=" " alt="" coords="2433,80,2549,107"/>
<area shape="rect" href="ir__Sony_8hpp.html" title=" " alt="" coords="2573,80,2664,107"/>
<area shape="rect" href="ir__Others_8hpp.html" title=" " alt="" coords="2689,80,2789,107"/>
<area shape="rect" href="ir__Pronto_8hpp.html" title=" " alt="" coords="2813,80,2912,107"/>
<area shape="rect" href="ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2936,80,3131,107"/>
<area shape="rect" title=" " alt="" coords="5,155,83,181"/>
<area shape="rect" href="IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,155,200,181"/>
<area shape="rect" title=" " alt="" coords="658,155,723,181"/>
<area shape="rect" title="Public API to the library." alt="" coords="1519,5,1640,32"/>
<area shape="rect" href="IRVersion_8h.html" title=" " alt="" coords="5,80,95,107"/>
<area shape="rect" href="IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="170,80,269,107"/>
<area shape="rect" href="digitalWriteFast_8h.html" title=" " alt="" coords="48,155,172,181"/>
<area shape="rect" href="IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="293,80,425,107"/>
<area shape="rect" href="IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="450,80,591,107"/>
<area shape="rect" href="LongUnion_8h.html" title=" " alt="" coords="1621,229,1716,256"/>
<area shape="rect" href="IRProtocol_8hpp.html" title=" " alt="" coords="735,80,842,107"/>
<area shape="rect" href="IRReceive_8hpp.html" title=" " alt="" coords="866,80,970,107"/>
<area shape="rect" href="IRSend_8hpp.html" title=" " alt="" coords="995,80,1084,107"/>
<area shape="rect" href="ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1108,80,1243,107"/>
<area shape="rect" href="ir__BoseWave_8hpp.html" title=" " alt="" coords="1267,80,1390,107"/>
<area shape="rect" href="ir__Denon_8hpp.html" title=" " alt="" coords="1414,80,1513,107"/>
<area shape="rect" href="ir__JVC_8hpp.html" title=" " alt="" coords="1537,80,1622,107"/>
<area shape="rect" href="ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1646,80,1761,107"/>
<area shape="rect" href="ir__Lego_8hpp.html" title=" " alt="" coords="1785,80,1875,107"/>
<area shape="rect" href="ir__LG_8hpp.html" title=" " alt="" coords="1899,80,1977,107"/>
<area shape="rect" href="ir__MagiQuest_8hpp.html" title=" " alt="" coords="2001,80,2125,107"/>
<area shape="rect" href="ir__NEC_8hpp.html" title=" " alt="" coords="2150,80,2238,107"/>
<area shape="rect" href="ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2263,80,2381,107"/>
<area shape="rect" href="ir__Samsung_8hpp.html" title=" " alt="" coords="2405,80,2521,107"/>
<area shape="rect" href="ir__Sony_8hpp.html" title=" " alt="" coords="2546,80,2637,107"/>
<area shape="rect" href="ir__FAST_8hpp.html" title=" " alt="" coords="616,80,711,107"/>
<area shape="rect" href="ir__Others_8hpp.html" title=" " alt="" coords="2712,80,2812,107"/>
<area shape="rect" href="ir__Pronto_8hpp.html" title=" " alt="" coords="2837,80,2935,107"/>
<area shape="rect" href="ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2959,80,3154,107"/>
<area shape="rect" title=" " alt="" coords="289,229,366,256"/>
<area shape="rect" href="IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="197,155,290,181"/>
<area shape="rect" title=" " alt="" coords="1636,304,1701,331"/>
<area shape="rect" href="TinyIR_8h.html" title=" " alt="" coords="629,155,698,181"/>
</map>
</div>
</div><div class="textblock"><div class="dynheader">
@ -161,18 +166,6 @@ This graph shows which files directly or indirectly include this file:</div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:ad9f03906065f749788cc9e3f68fb6253"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#ad9f03906065f749788cc9e3f68fb6253">VERSION_IRREMOTE</a>&#160;&#160;&#160;&quot;4.0.0&quot;</td></tr>
<tr class="separator:ad9f03906065f749788cc9e3f68fb6253"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5fccc9834ba25cd17b7ca45e14aa7751"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a5fccc9834ba25cd17b7ca45e14aa7751">VERSION_IRREMOTE_MAJOR</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:a5fccc9834ba25cd17b7ca45e14aa7751"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a824e2f61336bde09dd9b835e8606683f"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a824e2f61336bde09dd9b835e8606683f">VERSION_IRREMOTE_MINOR</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a824e2f61336bde09dd9b835e8606683f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a190ee428ccd5ea2362e913f114718779"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a190ee428ccd5ea2362e913f114718779">VERSION_IRREMOTE_PATCH</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:a190ee428ccd5ea2362e913f114718779"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fe70c54038764ee815bb4940c58ad3c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a8fe70c54038764ee815bb4940c58ad3c">VERSION_HEX_VALUE</a>(major, minor, patch)&#160;&#160;&#160;((major &lt;&lt; 16) | (minor &lt;&lt; 8) | (patch))</td></tr>
<tr class="separator:a8fe70c54038764ee815bb4940c58ad3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c">VERSION_IRREMOTE_HEX</a>&#160;&#160;&#160;<a class="el" href="IRremote_8hpp.html#a8fe70c54038764ee815bb4940c58ad3c">VERSION_HEX_VALUE</a>(<a class="el" href="IRremote_8hpp.html#a5fccc9834ba25cd17b7ca45e14aa7751">VERSION_IRREMOTE_MAJOR</a>, <a class="el" href="IRremote_8hpp.html#a824e2f61336bde09dd9b835e8606683f">VERSION_IRREMOTE_MINOR</a>, <a class="el" href="IRremote_8hpp.html#a190ee428ccd5ea2362e913f114718779">VERSION_IRREMOTE_PATCH</a>)</td></tr>
<tr class="separator:ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a589c5f91ad251aff0cbdc179a5faaa60"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a589c5f91ad251aff0cbdc179a5faaa60">DECODE_DENON</a></td></tr>
<tr class="separator:a589c5f91ad251aff0cbdc179a5faaa60"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac1f2b013768a77943b002953197cb573"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#ac1f2b013768a77943b002953197cb573">DECODE_JVC</a></td></tr>
@ -201,6 +194,8 @@ Macros</h2></td></tr>
<tr class="separator:a4f3f73855171522cc6a9fa5ba5f51896"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad1f31ad2d36110ba06286b7fb1d1ddcf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#ad1f31ad2d36110ba06286b7fb1d1ddcf">DECODE_WHYNTER</a></td></tr>
<tr class="separator:ad1f31ad2d36110ba06286b7fb1d1ddcf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab9694ea0f1078f534605b0b7227d6198"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#ab9694ea0f1078f534605b0b7227d6198">DECODE_FAST</a></td></tr>
<tr class="separator:ab9694ea0f1078f534605b0b7227d6198"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adfd8ff3c8859e3d8f53f39b5837520c5"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#adfd8ff3c8859e3d8f53f39b5837520c5">DECODE_DISTANCE_WIDTH</a></td></tr>
<tr class="separator:adfd8ff3c8859e3d8f53f39b5837520c5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4ee00d8b9631462888e74c95712234e1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a4ee00d8b9631462888e74c95712234e1">DECODE_HASH</a></td></tr>
@ -226,7 +221,7 @@ Macros</h2></td></tr>
<tr class="memitem:a6be706039d9083db8cb072478e0a09f8"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a6be706039d9083db8cb072478e0a09f8">IR_SEND_DUTY_CYCLE_PERCENT</a>&#160;&#160;&#160;30</td></tr>
<tr class="memdesc:a6be706039d9083db8cb072478e0a09f8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Duty cycle in percent for sent signals. <a href="IRremote_8hpp.html#a6be706039d9083db8cb072478e0a09f8">More...</a><br /></td></tr>
<tr class="separator:a6be706039d9083db8cb072478e0a09f8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1c7eebb527483c272812530caa313d20"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>&#160;&#160;&#160;50</td></tr>
<tr class="memitem:a1c7eebb527483c272812530caa313d20"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">MICROS_PER_TICK</a>&#160;&#160;&#160;50L</td></tr>
<tr class="memdesc:a1c7eebb527483c272812530caa313d20"><td class="mdescLeft">&#160;</td><td class="mdescRight">microseconds per clock interrupt tick <a href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20">More...</a><br /></td></tr>
<tr class="separator:a1c7eebb527483c272812530caa313d20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a551a361e5f7fbdcf8ec8e9679976b462"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="IRremote_8hpp.html#a551a361e5f7fbdcf8ec8e9679976b462">MILLIS_IN_ONE_SECOND</a>&#160;&#160;&#160;1000L</td></tr>
@ -251,7 +246,7 @@ Macros</h2></td></tr>
<div class="line">!!! the user defines in its source code BEFORE the #include &lt;IRremote.hpp&gt; !!!</div>
</div><!-- fragment --><p>This file is part of Arduino-IRremote <a href="https://github.com/Arduino-IRremote/Arduino-IRremote">https://github.com/Arduino-IRremote/Arduino-IRremote</a>.</p>
<p>MIT License</p>
<p>Copyright (c) 2015-2022 Ken Shirriff <a href="http://www.righto.com">http://www.righto.com</a>, Rafi Khan, Armin Joachimsmeyer</p>
<p>Copyright (c) 2015-2023 Ken Shirriff <a href="http://www.righto.com">http://www.righto.com</a>, Rafi Khan, Armin Joachimsmeyer</p>
<p>Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:</p>
<p>The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.</p>
<p>THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</p>
@ -271,7 +266,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00119">119</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00109">109</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -287,7 +282,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00107">107</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00097">97</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -303,7 +298,23 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00126">126</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00117">117</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="ab9694ea0f1078f534605b0b7227d6198"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9694ea0f1078f534605b0b7227d6198">&#9670;&nbsp;</a></span>DECODE_FAST</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define DECODE_FAST</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00113">113</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -319,7 +330,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00127">127</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00118">118</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -335,7 +346,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00108">108</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00098">98</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -351,7 +362,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00109">109</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00099">99</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -367,7 +378,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00120">120</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00110">110</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -383,7 +394,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00111">111</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00101">101</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -399,7 +410,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00121">121</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00111">111</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -415,7 +426,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00112">112</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00102">102</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -431,7 +442,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00110">110</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00100">100</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -447,7 +458,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00115">115</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00105">105</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -463,7 +474,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00116">116</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00106">106</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -479,7 +490,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00113">113</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00103">103</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -495,7 +506,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00114">114</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00104">104</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -511,7 +522,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00122">122</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00112">112</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -529,7 +540,7 @@ Macros</h2></td></tr>
<p>Sensor output for a mark ("flash") </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00193">193</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00184">184</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -547,7 +558,7 @@ Macros</h2></td></tr>
<p>Duty cycle in percent for sent signals. </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00252">252</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00243">243</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -563,7 +574,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00326">326</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00317">317</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -584,7 +595,7 @@ Macros</h2></td></tr>
<p>The right value is critical for IR codes using short pulses like Denon / Sharp / Lego</p>
<p>Observed values: Delta of each signal type is around 50 up to 100 and at low signals up to 200. TSOP is better, especially at low IR signal level. VS1838 Mark Excess -50 at low intensity to +50 us at high intensity TSOP31238 Mark Excess 0 to +50 </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00160">160</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00151">151</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -600,7 +611,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00264">264</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00255">255</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -616,7 +627,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00263">263</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00254">254</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -627,14 +638,14 @@ Macros</h2></td></tr>
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define MICROS_PER_TICK&#160;&#160;&#160;50</td>
<td class="memname">#define MICROS_PER_TICK&#160;&#160;&#160;50L</td>
</tr>
</table>
</div><div class="memdoc">
<p>microseconds per clock interrupt tick </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00259">259</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00250">250</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -650,7 +661,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00262">262</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00253">253</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -669,7 +680,7 @@ Macros</h2></td></tr>
<p>Define to disable carrier PWM generation in software and use (restricted) hardware PWM. </p>
<p>Define to use no carrier PWM, just simulate an active low receiver signal. Define to use or simulate open drain output mode at send pin. Attention, active state of open drain is LOW, so connect the send LED between positive supply and send pin! This amount is subtracted from the on-time of the pulses generated for software PWM generation. It should be the time used for digitalWrite(sendPin, LOW) and the call to delayMicros() Measured value for Nano @16MHz is around 3000, for Bluepill @72MHz is around 700, for Zero 3600 </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00244">244</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00235">235</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -687,7 +698,7 @@ Macros</h2></td></tr>
<p>Macros for legacy compatibility. </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00323">323</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00314">314</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -706,7 +717,7 @@ Macros</h2></td></tr>
<p>Minimum gap between IR transmissions, to detect the end of a protocol. </p>
<p>Must be greater than any space of a protocol e.g. the NEC header space of 4500 us. Must be smaller than any gap between a command and a repeat; e.g. the retransmission gap for Sony is around 15 ms for Sony20 protocol. Keep in mind, that this is the delay between the end of the received command and the start of decoding. </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00171">171</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00162">162</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -724,7 +735,7 @@ Macros</h2></td></tr>
<p>Threshold for warnings at printIRResult*() to report about changing the RECORD_GAP_MICROS value to a higher value. </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00178">178</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00169">169</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -742,7 +753,7 @@ Macros</h2></td></tr>
<p>Minimum gap between IR transmissions, in MICROS_PER_TICK. </p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00182">182</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00173">173</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -758,7 +769,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00324">324</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00315">315</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -774,123 +785,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00325">325</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="a8fe70c54038764ee815bb4940c58ad3c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fe70c54038764ee815bb4940c58ad3c">&#9670;&nbsp;</a></span>VERSION_HEX_VALUE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_HEX_VALUE</td>
<td>(</td>
<td class="paramtype">&#160;</td>
<td class="paramname">major, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">minor, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">&#160;</td>
<td class="paramname">patch&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td>&#160;&#160;&#160;((major &lt;&lt; 16) | (minor &lt;&lt; 8) | (patch))</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00078">78</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="ad9f03906065f749788cc9e3f68fb6253"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad9f03906065f749788cc9e3f68fb6253">&#9670;&nbsp;</a></span>VERSION_IRREMOTE</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE&#160;&#160;&#160;&quot;4.0.0&quot;</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00069">69</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_HEX</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_HEX&#160;&#160;&#160;<a class="el" href="IRremote_8hpp.html#a8fe70c54038764ee815bb4940c58ad3c">VERSION_HEX_VALUE</a>(<a class="el" href="IRremote_8hpp.html#a5fccc9834ba25cd17b7ca45e14aa7751">VERSION_IRREMOTE_MAJOR</a>, <a class="el" href="IRremote_8hpp.html#a824e2f61336bde09dd9b835e8606683f">VERSION_IRREMOTE_MINOR</a>, <a class="el" href="IRremote_8hpp.html#a190ee428ccd5ea2362e913f114718779">VERSION_IRREMOTE_PATCH</a>)</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00079">79</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="a5fccc9834ba25cd17b7ca45e14aa7751"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5fccc9834ba25cd17b7ca45e14aa7751">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_MAJOR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_MAJOR&#160;&#160;&#160;4</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00070">70</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="a824e2f61336bde09dd9b835e8606683f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a824e2f61336bde09dd9b835e8606683f">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_MINOR</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_MINOR&#160;&#160;&#160;0</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00071">71</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
<a id="a190ee428ccd5ea2362e913f114718779"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a190ee428ccd5ea2362e913f114718779">&#9670;&nbsp;</a></span>VERSION_IRREMOTE_PATCH</h2>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">#define VERSION_IRREMOTE_PATCH&#160;&#160;&#160;0</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00072">72</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
<p class="definition">Definition at line <a class="el" href="IRremote_8hpp_source.html#l00316">316</a> of file <a class="el" href="IRremote_8hpp_source.html">IRremote.hpp</a>.</p>
</div>
</div>
@ -900,7 +795,7 @@ Macros</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRremote_8hpp.html">IRremote.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -3,6 +3,7 @@ var IRremote_8hpp =
[ "DECODE_BOSEWAVE", "IRremote_8hpp.html#a2935e3b14cf449b00b4166f71eecf8af", null ],
[ "DECODE_DENON", "IRremote_8hpp.html#a589c5f91ad251aff0cbdc179a5faaa60", null ],
[ "DECODE_DISTANCE_WIDTH", "IRremote_8hpp.html#adfd8ff3c8859e3d8f53f39b5837520c5", null ],
[ "DECODE_FAST", "IRremote_8hpp.html#ab9694ea0f1078f534605b0b7227d6198", null ],
[ "DECODE_HASH", "IRremote_8hpp.html#a4ee00d8b9631462888e74c95712234e1", null ],
[ "DECODE_JVC", "IRremote_8hpp.html#ac1f2b013768a77943b002953197cb573", null ],
[ "DECODE_KASEIKYO", "IRremote_8hpp.html#acd46d28198948511f9c8b97328b5fdde", null ],
@ -30,11 +31,5 @@ var IRremote_8hpp =
[ "RECORD_GAP_MICROS_WARNING_THRESHOLD", "IRremote_8hpp.html#a6afa54ea105253cce361d8c571da5fa9", null ],
[ "RECORD_GAP_TICKS", "IRremote_8hpp.html#a1ba5a08e87f922d04e6acb5c07867386", null ],
[ "REPEAT", "IRremote_8hpp.html#a2c9384c67919c632913b8db2088f8341", null ],
[ "USECPERTICK", "IRremote_8hpp.html#aad2fcaac88c28bf54ecbd42146a56e3f", null ],
[ "VERSION_HEX_VALUE", "IRremote_8hpp.html#a8fe70c54038764ee815bb4940c58ad3c", null ],
[ "VERSION_IRREMOTE", "IRremote_8hpp.html#ad9f03906065f749788cc9e3f68fb6253", null ],
[ "VERSION_IRREMOTE_HEX", "IRremote_8hpp.html#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c", null ],
[ "VERSION_IRREMOTE_MAJOR", "IRremote_8hpp.html#a5fccc9834ba25cd17b7ca45e14aa7751", null ],
[ "VERSION_IRREMOTE_MINOR", "IRremote_8hpp.html#a824e2f61336bde09dd9b835e8606683f", null ],
[ "VERSION_IRREMOTE_PATCH", "IRremote_8hpp.html#a190ee428ccd5ea2362e913f114718779", null ]
[ "USECPERTICK", "IRremote_8hpp.html#aad2fcaac88c28bf54ecbd42146a56e3f", null ]
];

View File

@ -1,29 +1,32 @@
<map id="src/IRremote.hpp" name="src/IRremote.hpp">
<area shape="rect" id="node1" title="Public API to the library." alt="" coords="1546,5,1667,32"/>
<area shape="rect" id="node2" href="$IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="49,80,148,107"/>
<area shape="rect" id="node5" href="$digitalWriteFast_8h.html" title=" " alt="" coords="173,80,297,107"/>
<area shape="rect" id="node6" href="$IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="321,80,453,107"/>
<area shape="rect" id="node7" href="$IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="477,80,619,107"/>
<area shape="rect" id="node8" href="$LongUnion_8h.html" title=" " alt="" coords="643,80,738,107"/>
<area shape="rect" id="node10" href="$IRProtocol_8hpp.html" title=" " alt="" coords="763,80,869,107"/>
<area shape="rect" id="node11" href="$IRReceive_8hpp.html" title=" " alt="" coords="893,80,997,107"/>
<area shape="rect" id="node12" href="$IRSend_8hpp.html" title=" " alt="" coords="1022,80,1111,107"/>
<area shape="rect" id="node13" href="$ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1135,80,1270,107"/>
<area shape="rect" id="node14" href="$ir__BoseWave_8hpp.html" title=" " alt="" coords="1295,80,1417,107"/>
<area shape="rect" id="node15" href="$ir__Denon_8hpp.html" title=" " alt="" coords="1441,80,1540,107"/>
<area shape="rect" id="node16" href="$ir__JVC_8hpp.html" title=" " alt="" coords="1564,80,1649,107"/>
<area shape="rect" id="node17" href="$ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1673,80,1788,107"/>
<area shape="rect" id="node18" href="$ir__Lego_8hpp.html" title=" " alt="" coords="1813,80,1902,107"/>
<area shape="rect" id="node19" href="$ir__LG_8hpp.html" title=" " alt="" coords="1926,80,2005,107"/>
<area shape="rect" id="node20" href="$ir__MagiQuest_8hpp.html" title=" " alt="" coords="2029,80,2153,107"/>
<area shape="rect" id="node21" href="$ir__NEC_8hpp.html" title=" " alt="" coords="2177,80,2265,107"/>
<area shape="rect" id="node22" href="$ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2290,80,2409,107"/>
<area shape="rect" id="node23" href="$ir__Samsung_8hpp.html" title=" " alt="" coords="2433,80,2549,107"/>
<area shape="rect" id="node24" href="$ir__Sony_8hpp.html" title=" " alt="" coords="2573,80,2664,107"/>
<area shape="rect" id="node25" href="$ir__Others_8hpp.html" title=" " alt="" coords="2689,80,2789,107"/>
<area shape="rect" id="node26" href="$ir__Pronto_8hpp.html" title=" " alt="" coords="2813,80,2912,107"/>
<area shape="rect" id="node27" href="$ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2936,80,3131,107"/>
<area shape="rect" id="node3" title=" " alt="" coords="5,155,83,181"/>
<area shape="rect" id="node4" href="$IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="107,155,200,181"/>
<area shape="rect" id="node9" title=" " alt="" coords="658,155,723,181"/>
<area shape="rect" id="node1" title="Public API to the library." alt="" coords="1519,5,1640,32"/>
<area shape="rect" id="node2" href="$IRVersion_8h.html" title=" " alt="" coords="5,80,95,107"/>
<area shape="rect" id="node3" href="$IRremoteInt_8h.html" title="Contains all declarations required for the interface to IRremote. Could not be named IRremote...." alt="" coords="170,80,269,107"/>
<area shape="rect" id="node6" href="$digitalWriteFast_8h.html" title=" " alt="" coords="48,155,172,181"/>
<area shape="rect" id="node7" href="$IRTimer_8hpp.html" title="All timer specific definitions are contained in this file. Sets IR_SEND_PIN if required,..." alt="" coords="293,80,425,107"/>
<area shape="rect" id="node8" href="$IRFeedbackLED_8hpp.html" title="All Feedback LED specific functions are contained in this file." alt="" coords="450,80,591,107"/>
<area shape="rect" id="node9" href="$LongUnion_8h.html" title=" " alt="" coords="1621,229,1716,256"/>
<area shape="rect" id="node11" href="$IRProtocol_8hpp.html" title=" " alt="" coords="735,80,842,107"/>
<area shape="rect" id="node12" href="$IRReceive_8hpp.html" title=" " alt="" coords="866,80,970,107"/>
<area shape="rect" id="node13" href="$IRSend_8hpp.html" title=" " alt="" coords="995,80,1084,107"/>
<area shape="rect" id="node14" href="$ir__BangOlufsen_8hpp.html" title=" " alt="" coords="1108,80,1243,107"/>
<area shape="rect" id="node15" href="$ir__BoseWave_8hpp.html" title=" " alt="" coords="1267,80,1390,107"/>
<area shape="rect" id="node16" href="$ir__Denon_8hpp.html" title=" " alt="" coords="1414,80,1513,107"/>
<area shape="rect" id="node17" href="$ir__JVC_8hpp.html" title=" " alt="" coords="1537,80,1622,107"/>
<area shape="rect" id="node18" href="$ir__Kaseikyo_8hpp.html" title=" " alt="" coords="1646,80,1761,107"/>
<area shape="rect" id="node19" href="$ir__Lego_8hpp.html" title=" " alt="" coords="1785,80,1875,107"/>
<area shape="rect" id="node20" href="$ir__LG_8hpp.html" title=" " alt="" coords="1899,80,1977,107"/>
<area shape="rect" id="node21" href="$ir__MagiQuest_8hpp.html" title=" " alt="" coords="2001,80,2125,107"/>
<area shape="rect" id="node22" href="$ir__NEC_8hpp.html" title=" " alt="" coords="2150,80,2238,107"/>
<area shape="rect" id="node23" href="$ir__RC5__RC6_8hpp.html" title=" " alt="" coords="2263,80,2381,107"/>
<area shape="rect" id="node24" href="$ir__Samsung_8hpp.html" title=" " alt="" coords="2405,80,2521,107"/>
<area shape="rect" id="node25" href="$ir__Sony_8hpp.html" title=" " alt="" coords="2546,80,2637,107"/>
<area shape="rect" id="node26" href="$ir__FAST_8hpp.html" title=" " alt="" coords="616,80,711,107"/>
<area shape="rect" id="node28" href="$ir__Others_8hpp.html" title=" " alt="" coords="2712,80,2812,107"/>
<area shape="rect" id="node29" href="$ir__Pronto_8hpp.html" title=" " alt="" coords="2837,80,2935,107"/>
<area shape="rect" id="node30" href="$ir__DistanceWidthProtocol_8hpp.html" title=" " alt="" coords="2959,80,3154,107"/>
<area shape="rect" id="node4" title=" " alt="" coords="289,229,366,256"/>
<area shape="rect" id="node5" href="$IRProtocol_8h.html" title="Common declarations for receiving and sending." alt="" coords="197,155,290,181"/>
<area shape="rect" id="node10" title=" " alt="" coords="1636,304,1701,331"/>
<area shape="rect" id="node27" href="$TinyIR_8h.html" title=" " alt="" coords="629,155,698,181"/>
</map>

View File

@ -1 +1 @@
3b70d6c9c006306d559ced891f1d2883
ceb87e0817f1d7e363beba76ee2b73d0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 61 KiB

After

Width:  |  Height:  |  Size: 75 KiB

View File

@ -95,7 +95,7 @@ $(document).ready(function(){initNavTree('IRremote_8hpp_source.html',''); initRe
<div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="comment"> * - SEND_PWM_BY_TIMER Disable carrier PWM generation in software and use (restricted) hardware PWM.</span></div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;<span class="comment"> * - USE_NO_SEND_PWM Use no carrier PWM, just simulate an **active low** receiver signal. Overrides SEND_PWM_BY_TIMER definition.</span></div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160;<span class="comment"> * - USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN Use or simulate open drain output mode at send pin. Attention, active state of open drain is LOW, so connect the send LED between positive supply and send pin!</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> * - EXCLUDE_EXOTIC_PROTOCOLS If activated, BANG_OLUFSEN, BOSEWAVE, WHYNTER and LEGO_PF are excluded in decode() and in sending with IrSender.write().</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment"> * - EXCLUDE_EXOTIC_PROTOCOLS If activated, BANG_OLUFSEN, BOSEWAVE, WHYNTER, FAST and LEGO_PF are excluded in decode() and in sending with IrSender.write().</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"> 53</span>&#160;<span class="comment"> * - EXCLUDE_UNIVERSAL_PROTOCOLS If activated, the universal decoder for pulse distance protocols and decodeHash (special decoder for all protocols) are excluded in decode().</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="comment"> * - DECODE_* Selection of individual protocols to be decoded. See below.</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"> 55</span>&#160;<span class="comment"> * - MARK_EXCESS_MICROS Value is subtracted from all marks and added to all spaces before decoding, to compensate for the signal forming of different IR receiver modules.</span></div>
@ -111,219 +111,210 @@ $(document).ready(function(){initNavTree('IRremote_8hpp_source.html',''); initRe
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160;<span class="preprocessor">#ifndef _IR_REMOTE_HPP</span></div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160;<span class="preprocessor">#define _IR_REMOTE_HPP</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;<span class="preprocessor">#define VERSION_IRREMOTE &quot;4.0.0&quot;</span></div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ad9f03906065f749788cc9e3f68fb6253"> 69</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_MAJOR 4</span></div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a5fccc9834ba25cd17b7ca45e14aa7751"> 70</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_MINOR 0</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a824e2f61336bde09dd9b835e8606683f"> 71</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_PATCH 0</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a190ee428ccd5ea2362e913f114718779"> 72</a></span>&#160; </div>
<div class="line"><a name="l00068"></a><span class="lineno"> 68</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRVersion_8h.html">IRVersion.h</a>&quot;</span></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">// activate it for all cores that does not use the -flto flag, if you get false error messages regarding begin() during compilation.</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment">//#define SUPPRESS_ERROR_MESSAGE_FOR_BEGIN</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;<span class="comment">/*</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * Macro to convert 3 version parts into an integer</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> * To be used in preprocessor comparisons, such as #if VERSION_IRREMOTE_HEX &gt;= VERSION_HEX_VALUE(3, 7, 0)</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#define VERSION_HEX_VALUE(major, minor, patch) ((major &lt;&lt; 16) | (minor &lt;&lt; 8) | (patch))</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a8fe70c54038764ee815bb4940c58ad3c"> 78</a></span>&#160;<span class="preprocessor">#define VERSION_IRREMOTE_HEX VERSION_HEX_VALUE(VERSION_IRREMOTE_MAJOR, VERSION_IRREMOTE_MINOR, VERSION_IRREMOTE_PATCH)</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac2a16f9b7dd2cf6fc0ca9c5f78e7824c"> 79</a></span>&#160; </div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">// activate it for all cores that does not use the -flto flag, if you get false error messages regarding begin() during compilation.</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment">//#define SUPPRESS_ERROR_MESSAGE_FOR_BEGIN</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;<span class="comment">/*</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> * If activated, BANG_OLUFSEN, BOSEWAVE, MAGIQUEST,WHYNTER and LEGO_PF are excluded in decoding and in sending with IrSender.write</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> * If activated, BANG_OLUFSEN, BOSEWAVE, MAGIQUEST, WHYNTER, FAST and LEGO_PF are excluded in decoding and in sending with IrSender.write</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment">//#define EXCLUDE_EXOTIC_PROTOCOLS</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment">/****************************************************</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> * PROTOCOLS</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="comment"> ****************************************************/</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> * Supported IR protocols</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * Each protocol you include costs memory and, during decode, costs time</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> * Copy the lines with the protocols you need in your program before the #include &lt;IRremote.hpp&gt; line</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160;<span class="comment"> * See also SimpleReceiver example</span></div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="comment">//#define EXCLUDE_EXOTIC_PROTOCOLS</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160;<span class="comment">/****************************************************</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="comment"> * PROTOCOLS</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="comment"> ****************************************************/</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> * Supported IR protocols</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> * Each protocol you include costs memory and, during decode, costs time</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment"> * Copy the lines with the protocols you need in your program before the #include &lt;IRremote.hpp&gt; line</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> * See also SimpleReceiver example</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;<span class="preprocessor">#if !defined(NO_DECODER) // for sending raw only</span></div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<span class="preprocessor"># if (!(defined(DECODE_DENON) || defined(DECODE_JVC) || defined(DECODE_KASEIKYO) \</span></div>
<div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;<span class="preprocessor">|| defined(DECODE_PANASONIC) || defined(DECODE_LG) || defined(DECODE_NEC) || defined(DECODE_ONKYO) || defined(DECODE_SAMSUNG) \</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160;<span class="preprocessor">|| defined(DECODE_SONY) || defined(DECODE_RC5) || defined(DECODE_RC6) \</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="preprocessor">|| defined(DECODE_DISTANCE_WIDTH) || defined(DECODE_HASH) || defined(DECODE_BOSEWAVE) \</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="preprocessor">|| defined(DECODE_LEGO_PF) || defined(DECODE_MAGIQUEST) || defined(DECODE_FAST) || defined(DECODE_WHYNTER)))</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<span class="comment"> * If no protocol is explicitly enabled, we enable all protocols</span></div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;<span class="comment"> */</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="preprocessor">#if !defined(NO_DECODER) // for sending raw only</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor"># if (!(defined(DECODE_DENON) || defined(DECODE_JVC) || defined(DECODE_KASEIKYO) \</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">|| defined(DECODE_PANASONIC) || defined(DECODE_LG) || defined(DECODE_NEC) || defined(DECODE_SAMSUNG) \</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160;<span class="preprocessor">|| defined(DECODE_SONY) || defined(DECODE_RC5) || defined(DECODE_RC6) \</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160;<span class="preprocessor">|| defined(DECODE_DISTANCE_WIDTH) || defined(DECODE_HASH) || defined(DECODE_BOSEWAVE) \</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">|| defined(DECODE_LEGO_PF) || defined(DECODE_MAGIQUEST) || defined(DECODE_WHYNTER)))</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment"> * If no protocol is explicitly enabled, we enable all protocols</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="preprocessor">#define DECODE_DENON // Includes Sharp</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a589c5f91ad251aff0cbdc179a5faaa60"> 107</a></span>&#160;<span class="preprocessor">#define DECODE_JVC</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac1f2b013768a77943b002953197cb573"> 108</a></span>&#160;<span class="preprocessor">#define DECODE_KASEIKYO</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#acd46d28198948511f9c8b97328b5fdde"> 109</a></span>&#160;<span class="preprocessor">#define DECODE_PANASONIC // alias for DECODE_KASEIKYO</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a018b3df8bf49d3f6cc094db8491ad2ad"> 110</a></span>&#160;<span class="preprocessor">#define DECODE_LG</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a54d5d4710700ef373384f64409df677f"> 111</a></span>&#160;<span class="preprocessor">#define DECODE_NEC // Includes Apple and Onkyo</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac1592db6a7ef80a046d9f33a5a2ed5d8"> 112</a></span>&#160;<span class="preprocessor">#define DECODE_SAMSUNG</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#aa460f8aea781d305b7e0fef9b6748523"> 113</a></span>&#160;<span class="preprocessor">#define DECODE_SONY</span></div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a308d000d6a90fac72f4dcf47323bef21"> 114</a></span>&#160;<span class="preprocessor">#define DECODE_RC5</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#aa1dbf245adf93ffa573dc4863ea29c5b"> 115</a></span>&#160;<span class="preprocessor">#define DECODE_RC6</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a4f3761bb8157be080bee1d9e4c1bc8c8"> 116</a></span>&#160; </div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160;<span class="preprocessor"># if !defined(EXCLUDE_EXOTIC_PROTOCOLS) // saves around 2000 bytes program memory</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160;<span class="preprocessor">#define DECODE_BOSEWAVE</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a2935e3b14cf449b00b4166f71eecf8af"> 119</a></span>&#160;<span class="preprocessor">#define DECODE_LEGO_PF</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a95bc1b009436547a892527e2c2f43384"> 120</a></span>&#160;<span class="preprocessor">#define DECODE_MAGIQUEST // It modifies the RAW_BUFFER_LENGTH from 100 to 112</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a4f3f73855171522cc6a9fa5ba5f51896"> 121</a></span>&#160;<span class="preprocessor">#define DECODE_WHYNTER</span></div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ad1f31ad2d36110ba06286b7fb1d1ddcf"> 122</a></span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor">#define DECODE_DENON // Includes Sharp</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a589c5f91ad251aff0cbdc179a5faaa60"> 97</a></span>&#160;<span class="preprocessor">#define DECODE_JVC</span></div>
<div class="line"><a name="l00098"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac1f2b013768a77943b002953197cb573"> 98</a></span>&#160;<span class="preprocessor">#define DECODE_KASEIKYO</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#acd46d28198948511f9c8b97328b5fdde"> 99</a></span>&#160;<span class="preprocessor">#define DECODE_PANASONIC // alias for DECODE_KASEIKYO</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a018b3df8bf49d3f6cc094db8491ad2ad"> 100</a></span>&#160;<span class="preprocessor">#define DECODE_LG</span></div>
<div class="line"><a name="l00101"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a54d5d4710700ef373384f64409df677f"> 101</a></span>&#160;<span class="preprocessor">#define DECODE_NEC // Includes Apple and Onkyo</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac1592db6a7ef80a046d9f33a5a2ed5d8"> 102</a></span>&#160;<span class="preprocessor">#define DECODE_SAMSUNG</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#aa460f8aea781d305b7e0fef9b6748523"> 103</a></span>&#160;<span class="preprocessor">#define DECODE_SONY</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a308d000d6a90fac72f4dcf47323bef21"> 104</a></span>&#160;<span class="preprocessor">#define DECODE_RC5</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#aa1dbf245adf93ffa573dc4863ea29c5b"> 105</a></span>&#160;<span class="preprocessor">#define DECODE_RC6</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a4f3761bb8157be080bee1d9e4c1bc8c8"> 106</a></span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor"># if !defined(EXCLUDE_EXOTIC_PROTOCOLS) // saves around 2000 bytes program memory</span></div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160;<span class="preprocessor">#define DECODE_BOSEWAVE</span></div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a2935e3b14cf449b00b4166f71eecf8af"> 109</a></span>&#160;<span class="preprocessor">#define DECODE_LEGO_PF</span></div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a95bc1b009436547a892527e2c2f43384"> 110</a></span>&#160;<span class="preprocessor">#define DECODE_MAGIQUEST // It modifies the RAW_BUFFER_LENGTH from 100 to 112</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a4f3f73855171522cc6a9fa5ba5f51896"> 111</a></span>&#160;<span class="preprocessor">#define DECODE_WHYNTER</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ad1f31ad2d36110ba06286b7fb1d1ddcf"> 112</a></span>&#160;<span class="preprocessor">#define DECODE_FAST</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ab9694ea0f1078f534605b0b7227d6198"> 113</a></span>&#160;<span class="preprocessor"># endif</span></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;<span class="preprocessor"># if !defined(EXCLUDE_UNIVERSAL_PROTOCOLS)</span></div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160;<span class="preprocessor">#define DECODE_DISTANCE_WIDTH // universal decoder for pulse distance width protocols - requires up to 750 bytes additional program memory</span></div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#adfd8ff3c8859e3d8f53f39b5837520c5"> 117</a></span>&#160;<span class="preprocessor">#define DECODE_HASH // special decoder for all protocols - requires up to 250 bytes additional program memory</span></div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a4ee00d8b9631462888e74c95712234e1"> 118</a></span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160;<span class="preprocessor">#endif // !defined(NO_DECODER)</span></div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;<span class="comment">//#define DECODE_BEO // Bang &amp; Olufsen protocol always must be enabled explicitly. It prevents decoding of SONY!</span></div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; </div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor"># if !defined(EXCLUDE_UNIVERSAL_PROTOCOLS)</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="preprocessor">#define DECODE_DISTANCE_WIDTH // universal decoder for pulse distance width protocols - requires up to 750 bytes additional program memory</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#adfd8ff3c8859e3d8f53f39b5837520c5"> 126</a></span>&#160;<span class="preprocessor">#define DECODE_HASH // special decoder for all protocols - requires up to 250 bytes additional program memory</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a4ee00d8b9631462888e74c95712234e1"> 127</a></span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160;<span class="preprocessor">#endif // !defined(NO_DECODER)</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">//#define DECODE_BEO // Bang &amp; Olufsen protocol always must be enabled explicitly. It prevents decoding of SONY!</span></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"> 133</span>&#160;<span class="preprocessor">#if defined(DECODE_NEC) &amp;&amp; !(~(~DECODE_NEC + 0) == 0 &amp;&amp; ~(~DECODE_NEC + 1) == 1)</span></div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<span class="preprocessor">#warning &quot;The macros DECODE_XXX no longer require a value. Decoding is now switched by defining / non defining the macro.&quot;</span></div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; </div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment">//#define DEBUG // Activate this for lots of lovely debug output from the IRremote core.</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">/****************************************************</span></div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160;<span class="comment"> * RECEIVING</span></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160;<span class="comment"> ****************************************************/</span></div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<span class="preprocessor">#if !defined(MARK_EXCESS_MICROS)</span></div>
<div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;MARK_EXCESS_MICROS &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#define MARK_EXCESS_MICROS 20</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a6cb4ad1bc3f0b5d2c4503615058a1d90"> 160</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; </div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor">#if !defined(RECORD_GAP_MICROS)</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"> 169</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;RECORD_GAP_MICROS &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160;<span class="preprocessor">#define RECORD_GAP_MICROS 5000 // FREDRICH28AC / LG2 header space is 9700, NEC header space is 4500</span></div>
<div class="line"><a name="l00171"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a2eb6de0bae8bc6f19f3832c00e91f499"> 171</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; </div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="preprocessor">#if !defined(RECORD_GAP_MICROS_WARNING_THRESHOLD)</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;RECORD_GAP_MICROS_WARNING_THRESHOLD &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="preprocessor">#define RECORD_GAP_MICROS_WARNING_THRESHOLD 15000</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a6afa54ea105253cce361d8c571da5fa9"> 178</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160; </div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="preprocessor">#define RECORD_GAP_TICKS (RECORD_GAP_MICROS / MICROS_PER_TICK) // 100</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a1ba5a08e87f922d04e6acb5c07867386"> 182</a></span>&#160; </div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;<span class="comment"> * Activate this line if your receiver has an external output driver transistor / &quot;inverted&quot; output</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment">//#define IR_INPUT_IS_ACTIVE_HIGH</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="preprocessor">#if defined(IR_INPUT_IS_ACTIVE_HIGH)</span></div>
<div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160;<span class="comment">// IR detector output is active high</span></div>
<div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;<span class="preprocessor">#define INPUT_MARK 1 </span></div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment">// IR detector output is active low</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="preprocessor">#define INPUT_MARK 0 </span></div>
<div class="line"><a name="l00193"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ace39503e8ded5ffb7a1c0d6f651f8d43"> 193</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment">/****************************************************</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="comment"> * SENDING</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="comment"> ****************************************************/</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="comment">//#define SEND_PWM_BY_TIMER // restricts send pin on many platforms to fixed pin numbers</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="preprocessor">#if (defined(ESP32) || defined(ARDUINO_ARCH_RP2040) || defined(PARTICLE)) || defined(ARDUINO_ARCH_MBED)</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="preprocessor"># if !defined(SEND_PWM_BY_TIMER)</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="preprocessor">#define SEND_PWM_BY_TIMER // the best and default method for ESP32 etc.</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="preprocessor">#warning INFO: For ESP32, RP2040, mbed and particle boards SEND_PWM_BY_TIMER is enabled by default. If this is not intended, deactivate the line in IRremote.hpp over this warning message in file IRremote.hpp.</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<span class="preprocessor"># if defined(SEND_PWM_BY_TIMER)</span></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;<span class="preprocessor"># if defined(IR_SEND_PIN)</span></div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160;<span class="preprocessor">#undef IR_SEND_PIN // to avoid warning 3 lines later</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="preprocessor">#warning Since SEND_PWM_BY_TIMER is defined, the existing value of IR_SEND_PIN is discarded and replaced by the value determined by timer used for PWM generation</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="preprocessor">#define IR_SEND_PIN DeterminedByTimer // must be set here, since it is evaluated at IRremoteInt.h, before the include of private/IRTimer.hpp</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160;<span class="preprocessor">#if defined(DECODE_NEC) &amp;&amp; !(~(~DECODE_NEC + 0) == 0 &amp;&amp; ~(~DECODE_NEC + 1) == 1)</span></div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160;<span class="preprocessor">#warning &quot;The macros DECODE_XXX no longer require a value. Decoding is now switched by defining / non defining the macro.&quot;</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="preprocessor">#endif</span></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="comment">//#define DEBUG // Activate this for lots of lovely debug output from the IRremote core.</span></div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; </div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160;<span class="comment">/****************************************************</span></div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160;<span class="comment"> * RECEIVING</span></div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160;<span class="comment"> ****************************************************/</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;<span class="preprocessor">#if !defined(MARK_EXCESS_MICROS)</span></div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;MARK_EXCESS_MICROS &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160;<span class="preprocessor">#define MARK_EXCESS_MICROS 20</span></div>
<div class="line"><a name="l00151"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a6cb4ad1bc3f0b5d2c4503615058a1d90"> 151</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;<span class="preprocessor">#if !defined(RECORD_GAP_MICROS)</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;RECORD_GAP_MICROS &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160;<span class="preprocessor">#define RECORD_GAP_MICROS 5000 // FREDRICH28AC / LG2 header space is 9700, NEC header space is 4500</span></div>
<div class="line"><a name="l00162"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a2eb6de0bae8bc6f19f3832c00e91f499"> 162</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; </div>
<div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160;<span class="preprocessor">#if !defined(RECORD_GAP_MICROS_WARNING_THRESHOLD)</span></div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;RECORD_GAP_MICROS_WARNING_THRESHOLD &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;<span class="preprocessor">#define RECORD_GAP_MICROS_WARNING_THRESHOLD 15000</span></div>
<div class="line"><a name="l00169"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a6afa54ea105253cce361d8c571da5fa9"> 169</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00170"></a><span class="lineno"> 170</span>&#160; </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160;<span class="preprocessor">#define RECORD_GAP_TICKS (RECORD_GAP_MICROS / MICROS_PER_TICK) // 100</span></div>
<div class="line"><a name="l00173"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a1ba5a08e87f922d04e6acb5c07867386"> 173</a></span>&#160; </div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> * Activate this line if your receiver has an external output driver transistor / &quot;inverted&quot; output</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160;<span class="comment">//#define IR_INPUT_IS_ACTIVE_HIGH</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="preprocessor">#if defined(IR_INPUT_IS_ACTIVE_HIGH)</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment">// IR detector output is active high</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160;<span class="preprocessor">#define INPUT_MARK 1 </span></div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<span class="comment">// IR detector output is active low</span></div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160;<span class="preprocessor">#define INPUT_MARK 0 </span></div>
<div class="line"><a name="l00184"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ace39503e8ded5ffb7a1c0d6f651f8d43"> 184</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160;<span class="comment">/****************************************************</span></div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<span class="comment"> * SENDING</span></div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160;<span class="comment"> ****************************************************/</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<span class="comment">//#define SEND_PWM_BY_TIMER // restricts send pin on many platforms to fixed pin numbers</span></div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160;<span class="preprocessor">#if (defined(ESP32) || defined(ARDUINO_ARCH_RP2040) || defined(PARTICLE)) || defined(ARDUINO_ARCH_MBED)</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="preprocessor"># if !defined(SEND_PWM_BY_TIMER)</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="preprocessor">#define SEND_PWM_BY_TIMER // the best and default method for ESP32 etc.</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;<span class="preprocessor">#warning INFO: For ESP32, RP2040, mbed and particle boards SEND_PWM_BY_TIMER is enabled by default, since we have the resources and timing is more exact than the software generated one. If this is not intended, deactivate the line in IRremote.hpp over this warning message in file IRremote.hpp.</span></div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="preprocessor"># if defined(SEND_PWM_BY_TIMER)</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160;<span class="preprocessor"># if defined(IR_SEND_PIN)</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160;<span class="preprocessor">#undef IR_SEND_PIN // to avoid warning 3 lines later</span></div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="preprocessor">#warning Since SEND_PWM_BY_TIMER is defined, the existing value of IR_SEND_PIN is discarded and replaced by the value determined by timer used for PWM generation</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="preprocessor">#define IR_SEND_PIN DeterminedByTimer // must be set here, since it is evaluated at IRremoteInt.h, before the include of private/IRTimer.hpp</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;<span class="comment">//#define USE_NO_SEND_PWM</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160;<span class="preprocessor">#if defined(SEND_PWM_BY_TIMER) &amp;&amp; defined(USE_NO_SEND_PWM)</span></div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160;<span class="preprocessor">#warning &quot;SEND_PWM_BY_TIMER and USE_NO_SEND_PWM are both defined -&gt; undefine SEND_PWM_BY_TIMER now!&quot;</span></div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160;<span class="preprocessor">#undef SEND_PWM_BY_TIMER // USE_NO_SEND_PWM overrides SEND_PWM_BY_TIMER</span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; </div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<span class="comment">//#define USE_NO_SEND_PWM</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="preprocessor">#if defined(SEND_PWM_BY_TIMER) &amp;&amp; defined(USE_NO_SEND_PWM)</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="preprocessor">#warning &quot;SEND_PWM_BY_TIMER and USE_NO_SEND_PWM are both defined -&gt; undefine SEND_PWM_BY_TIMER now!&quot;</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="preprocessor">#undef SEND_PWM_BY_TIMER // USE_NO_SEND_PWM overrides SEND_PWM_BY_TIMER</span></div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;<span class="comment">//#define USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="preprocessor">#if defined(USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN) &amp;&amp; !defined(OUTPUT_OPEN_DRAIN)</span></div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;<span class="preprocessor">#warning Pin mode OUTPUT_OPEN_DRAIN is not supported on this platform -&gt; mimick open drain mode by switching between INPUT and OUTPUT mode.</span></div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; </div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="comment">//#define USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="preprocessor">#if defined(USE_OPEN_DRAIN_OUTPUT_FOR_SEND_PIN) &amp;&amp; !defined(OUTPUT_OPEN_DRAIN)</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="preprocessor">#warning Pin mode OUTPUT_OPEN_DRAIN is not supported on this platform -&gt; mimick open drain mode by switching between INPUT and OUTPUT mode.</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; </div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160;<span class="preprocessor">#if !defined(PULSE_CORRECTION_NANOS)</span></div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160;<span class="preprocessor"># if defined(F_CPU)</span></div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;PULSE_CORRECTION_NANOS &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="preprocessor">#define PULSE_CORRECTION_NANOS (48000L / (F_CPU/MICROS_IN_ONE_SECOND)) // 3000 @16MHz, 666 @72MHz</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="preprocessor">#define PULSE_CORRECTION_NANOS 600</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac836377a7a04f6f4044daab71d9660f9"> 244</a></span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; </div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="preprocessor">#if ! defined(IR_SEND_DUTY_CYCLE_PERCENT)</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="preprocessor">#define IR_SEND_DUTY_CYCLE_PERCENT 30 // 30 saves power and is compatible to the old existing code</span></div>
<div class="line"><a name="l00252"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a6be706039d9083db8cb072478e0a09f8"> 252</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; </div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="preprocessor">#if ! defined(MICROS_PER_TICK)</span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="preprocessor">#define MICROS_PER_TICK 50</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20"> 259</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; </div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="preprocessor">#define MILLIS_IN_ONE_SECOND 1000L</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a551a361e5f7fbdcf8ec8e9679976b462"> 262</a></span>&#160;<span class="preprocessor">#define MICROS_IN_ONE_SECOND 1000000L</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#af33c8a218dd35ede965cf20a68a0068d"> 263</a></span>&#160;<span class="preprocessor">#define MICROS_IN_ONE_MILLI 1000L</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ae9ba0b7dd556e22688f7da01019bba68"> 264</a></span>&#160; </div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteInt_8h.html">IRremoteInt.h</a>&quot;</span></div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="comment"> * We always use digitalWriteFast() and digitalReadFast() functions to have a consistent mapping for pins.</span></div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="comment"> * For most non AVR cpu&#39;s, it is just a mapping to digitalWrite() and digitalRead() functions.</span></div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="digitalWriteFast_8h.html">digitalWriteFast.h</a>&quot;</span></div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; </div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="preprocessor">#if !defined(USE_IRREMOTE_HPP_AS_PLAIN_INCLUDE)</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRTimer_8hpp.html">private/IRTimer.hpp</a>&quot;</span> <span class="comment">// defines IR_SEND_PIN for AVR and SEND_PWM_BY_TIMER</span></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;<span class="preprocessor"># if !defined(NO_LED_FEEDBACK_CODE)</span></div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="preprocessor"># if !defined(LED_BUILTIN)</span></div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment"> * print a warning</span></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="preprocessor">#warning INFO: No definition for LED_BUILTIN found -&gt; default LED feedback is disabled.</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRFeedbackLED_8hpp.html">IRFeedbackLED.hpp</a>&quot;</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160; </div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="LongUnion_8h.html">LongUnion.h</a>&quot;</span> <span class="comment">// used in most decoders</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<span class="preprocessor">#if !defined(PULSE_CORRECTION_NANOS)</span></div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;<span class="preprocessor"># if defined(F_CPU)</span></div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160;<span class="comment">// To change this value, you simply can add a line #define &quot;PULSE_CORRECTION_NANOS &lt;My_new_value&gt;&quot; in your ino file before the line &quot;#include &lt;IRremote.hpp&gt;&quot;</span></div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;<span class="preprocessor">#define PULSE_CORRECTION_NANOS (48000L / (F_CPU/MICROS_IN_ONE_SECOND)) // 3000 @16MHz, 666 @72MHz</span></div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="preprocessor">#define PULSE_CORRECTION_NANOS 600</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac836377a7a04f6f4044daab71d9660f9"> 235</a></span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; </div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160;<span class="preprocessor">#if ! defined(IR_SEND_DUTY_CYCLE_PERCENT)</span></div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;<span class="preprocessor">#define IR_SEND_DUTY_CYCLE_PERCENT 30 // 30 saves power and is compatible to the old existing code</span></div>
<div class="line"><a name="l00243"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a6be706039d9083db8cb072478e0a09f8"> 243</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; </div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<span class="preprocessor">#if ! defined(MICROS_PER_TICK)</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;<span class="preprocessor">#define MICROS_PER_TICK 50L // must be with L to get 32 bit results if multiplied with rawbuf[] content.</span></div>
<div class="line"><a name="l00250"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a1c7eebb527483c272812530caa313d20"> 250</a></span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; </div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="preprocessor">#define MILLIS_IN_ONE_SECOND 1000L</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a551a361e5f7fbdcf8ec8e9679976b462"> 253</a></span>&#160;<span class="preprocessor">#define MICROS_IN_ONE_SECOND 1000000L</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#af33c8a218dd35ede965cf20a68a0068d"> 254</a></span>&#160;<span class="preprocessor">#define MICROS_IN_ONE_MILLI 1000L</span></div>
<div class="line"><a name="l00255"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ae9ba0b7dd556e22688f7da01019bba68"> 255</a></span>&#160; </div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRremoteInt_8h.html">IRremoteInt.h</a>&quot;</span></div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="comment"> * We always use digitalWriteFast() and digitalReadFast() functions to have a consistent mapping for pins.</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="comment"> * For most non AVR cpu&#39;s, it is just a mapping to digitalWrite() and digitalRead() functions.</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="digitalWriteFast_8h.html">digitalWriteFast.h</a>&quot;</span></div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; </div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160;<span class="preprocessor">#if !defined(USE_IRREMOTE_HPP_AS_PLAIN_INCLUDE)</span></div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRTimer_8hpp.html">private/IRTimer.hpp</a>&quot;</span> <span class="comment">// defines IR_SEND_PIN for AVR and SEND_PWM_BY_TIMER</span></div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; </div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160;<span class="preprocessor"># if !defined(NO_LED_FEEDBACK_CODE)</span></div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="preprocessor"># if !defined(LED_BUILTIN)</span></div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="comment"> * print a warning</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160;<span class="preprocessor">#warning INFO: No definition for LED_BUILTIN found -&gt; default LED feedback is disabled.</span></div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRFeedbackLED_8hpp.html">IRFeedbackLED.hpp</a>&quot;</span></div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; </div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="LongUnion_8h.html">LongUnion.h</a>&quot;</span> <span class="comment">// used in most decoders</span></div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; </div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160;<span class="comment"> * Include the sources here to enable compilation with macro values set by user program.</span></div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRProtocol_8hpp.html">IRProtocol.hpp</a>&quot;</span> <span class="comment">// must be first, it includes definition for PrintULL (unsigned long long)</span></div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="preprocessor">#if !defined(DISABLE_CODE_FOR_RECEIVER)</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRReceive_8hpp.html">IRReceive.hpp</a>&quot;</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRSend_8hpp.html">IRSend.hpp</a>&quot;</span></div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160; </div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="comment"> * Include the sources here to enable compilation with macro values set by user program.</span></div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160;<span class="comment"> * Include the sources of all decoders here to enable compilation with macro values set by user program.</span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRProtocol_8hpp.html">IRProtocol.hpp</a>&quot;</span> <span class="comment">// must be first, it includes definition for PrintULL (unsigned long long)</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="preprocessor">#if !defined(DISABLE_CODE_FOR_RECEIVER)</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRReceive_8hpp.html">IRReceive.hpp</a>&quot;</span></div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="IRSend_8hpp.html">IRSend.hpp</a>&quot;</span></div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; </div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="comment"> * Include the sources of all decoders here to enable compilation with macro values set by user program.</span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__BangOlufsen_8hpp.html">ir_BangOlufsen.hpp</a>&quot;</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__BoseWave_8hpp.html">ir_BoseWave.hpp</a>&quot;</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Denon_8hpp.html">ir_Denon.hpp</a>&quot;</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__JVC_8hpp.html">ir_JVC.hpp</a>&quot;</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Kaseikyo_8hpp.html">ir_Kaseikyo.hpp</a>&quot;</span></div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Lego_8hpp.html">ir_Lego.hpp</a>&quot;</span></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__LG_8hpp.html">ir_LG.hpp</a>&quot;</span></div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__MagiQuest_8hpp.html">ir_MagiQuest.hpp</a>&quot;</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__NEC_8hpp.html">ir_NEC.hpp</a>&quot;</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__RC5__RC6_8hpp.html">ir_RC5_RC6.hpp</a>&quot;</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Samsung_8hpp.html">ir_Samsung.hpp</a>&quot;</span></div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Sony_8hpp.html">ir_Sony.hpp</a>&quot;</span></div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Others_8hpp.html">ir_Others.hpp</a>&quot;</span></div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Pronto_8hpp.html">ir_Pronto.hpp</a>&quot;</span> <span class="comment">// pronto is an universal decoder and encoder</span></div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="preprocessor"># if defined(DECODE_DISTANCE_WIDTH) // universal decoder for pulse distance width protocols - requires up to 750 bytes additional program memory</span></div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="ir__DistanceWidthProtocol_8hpp.html">ir_DistanceWidthProtocol.hpp</a>&gt;</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; </div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160;<span class="preprocessor">#endif // #if !defined(USE_IRREMOTE_HPP_AS_PLAIN_INCLUDE)</span></div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; </div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="preprocessor">#define RAWBUF 101 // Maximum length of raw duration buffer</span></div>
<div class="line"><a name="l00323"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#abb919079668bcc14433d4c857ab8a196"> 323</a></span>&#160;<span class="preprocessor">#define REPEAT 0xFFFFFFFF</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a2c9384c67919c632913b8db2088f8341"> 324</a></span>&#160;<span class="preprocessor">#define USECPERTICK MICROS_PER_TICK</span></div>
<div class="line"><a name="l00325"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#aad2fcaac88c28bf54ecbd42146a56e3f"> 325</a></span>&#160;<span class="preprocessor">#define MARK_EXCESS MARK_EXCESS_MICROS</span></div>
<div class="line"><a name="l00326"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac21b48ddc487212fbce7d6474423e080"> 326</a></span>&#160; </div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160;<span class="preprocessor">#endif // _IR_REMOTE_HPP</span></div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__BangOlufsen_8hpp.html">ir_BangOlufsen.hpp</a>&quot;</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__BoseWave_8hpp.html">ir_BoseWave.hpp</a>&quot;</span></div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Denon_8hpp.html">ir_Denon.hpp</a>&quot;</span></div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__JVC_8hpp.html">ir_JVC.hpp</a>&quot;</span></div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Kaseikyo_8hpp.html">ir_Kaseikyo.hpp</a>&quot;</span></div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Lego_8hpp.html">ir_Lego.hpp</a>&quot;</span></div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__LG_8hpp.html">ir_LG.hpp</a>&quot;</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__MagiQuest_8hpp.html">ir_MagiQuest.hpp</a>&quot;</span></div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__NEC_8hpp.html">ir_NEC.hpp</a>&quot;</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__RC5__RC6_8hpp.html">ir_RC5_RC6.hpp</a>&quot;</span></div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Samsung_8hpp.html">ir_Samsung.hpp</a>&quot;</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Sony_8hpp.html">ir_Sony.hpp</a>&quot;</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__FAST_8hpp.html">ir_FAST.hpp</a>&quot;</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Others_8hpp.html">ir_Others.hpp</a>&quot;</span></div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="ir__Pronto_8hpp.html">ir_Pronto.hpp</a>&quot;</span> <span class="comment">// pronto is an universal decoder and encoder</span></div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="preprocessor"># if defined(DECODE_DISTANCE_WIDTH) // universal decoder for pulse distance width protocols - requires up to 750 bytes additional program memory</span></div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="ir__DistanceWidthProtocol_8hpp.html">ir_DistanceWidthProtocol.hpp</a>&gt;</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="preprocessor">#endif // #if !defined(USE_IRREMOTE_HPP_AS_PLAIN_INCLUDE)</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; </div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160;<span class="preprocessor">#define RAWBUF 101 // Maximum length of raw duration buffer</span></div>
<div class="line"><a name="l00314"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#abb919079668bcc14433d4c857ab8a196"> 314</a></span>&#160;<span class="preprocessor">#define REPEAT 0xFFFFFFFF</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#a2c9384c67919c632913b8db2088f8341"> 315</a></span>&#160;<span class="preprocessor">#define USECPERTICK MICROS_PER_TICK</span></div>
<div class="line"><a name="l00316"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#aad2fcaac88c28bf54ecbd42146a56e3f"> 316</a></span>&#160;<span class="preprocessor">#define MARK_EXCESS MARK_EXCESS_MICROS</span></div>
<div class="line"><a name="l00317"></a><span class="lineno"><a class="line" href="IRremote_8hpp.html#ac21b48ddc487212fbce7d6474423e080"> 317</a></span>&#160; </div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="preprocessor">#endif // _IR_REMOTE_HPP</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aIRSend_8hpp_html"><div class="ttname"><a href="IRSend_8hpp.html">IRSend.hpp</a></div></div>
@ -331,6 +322,7 @@ $(document).ready(function(){initNavTree('IRremote_8hpp_source.html',''); initRe
<div class="ttc" id="air__Samsung_8hpp_html"><div class="ttname"><a href="ir__Samsung_8hpp.html">ir_Samsung.hpp</a></div></div>
<div class="ttc" id="air__Sony_8hpp_html"><div class="ttname"><a href="ir__Sony_8hpp.html">ir_Sony.hpp</a></div></div>
<div class="ttc" id="air__MagiQuest_8hpp_html"><div class="ttname"><a href="ir__MagiQuest_8hpp.html">ir_MagiQuest.hpp</a></div></div>
<div class="ttc" id="air__FAST_8hpp_html"><div class="ttname"><a href="ir__FAST_8hpp.html">ir_FAST.hpp</a></div></div>
<div class="ttc" id="air__RC5__RC6_8hpp_html"><div class="ttname"><a href="ir__RC5__RC6_8hpp.html">ir_RC5_RC6.hpp</a></div></div>
<div class="ttc" id="air__NEC_8hpp_html"><div class="ttname"><a href="ir__NEC_8hpp.html">ir_NEC.hpp</a></div></div>
<div class="ttc" id="air__BangOlufsen_8hpp_html"><div class="ttname"><a href="ir__BangOlufsen_8hpp.html">ir_BangOlufsen.hpp</a></div></div>
@ -346,6 +338,7 @@ $(document).ready(function(){initNavTree('IRremote_8hpp_source.html',''); initRe
<div class="ttc" id="air__Kaseikyo_8hpp_html"><div class="ttname"><a href="ir__Kaseikyo_8hpp.html">ir_Kaseikyo.hpp</a></div></div>
<div class="ttc" id="air__JVC_8hpp_html"><div class="ttname"><a href="ir__JVC_8hpp.html">ir_JVC.hpp</a></div></div>
<div class="ttc" id="aIRReceive_8hpp_html"><div class="ttname"><a href="IRReceive_8hpp.html">IRReceive.hpp</a></div></div>
<div class="ttc" id="aIRVersion_8h_html"><div class="ttname"><a href="IRVersion_8h.html">IRVersion.h</a></div></div>
<div class="ttc" id="air__BoseWave_8hpp_html"><div class="ttname"><a href="ir__BoseWave_8hpp.html">ir_BoseWave.hpp</a></div></div>
<div class="ttc" id="air__Pronto_8hpp_html"><div class="ttname"><a href="ir__Pronto_8hpp.html">ir_Pronto.hpp</a></div></div>
<div class="ttc" id="aIRremoteInt_8h_html"><div class="ttname"><a href="IRremoteInt_8h.html">IRremoteInt.h</a></div><div class="ttdoc">Contains all declarations required for the interface to IRremote. Could not be named IRremote....</div></div>
@ -353,7 +346,7 @@ $(document).ready(function(){initNavTree('IRremote_8hpp_source.html',''); initRe
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="IRremote_8hpp.html">IRremote.hpp</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -103,13 +103,14 @@ This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="LongUnion_8h__dep__incl.png" border="0" usemap="#src_2LongUnion_8hdep" alt=""/></div>
<map name="src_2LongUnion_8hdep" id="src_2LongUnion_8hdep">
<area shape="rect" title=" " alt="" coords="139,5,255,32"/>
<area shape="rect" href="ac__LG_8hpp.html" title=" " alt="" coords="5,80,112,107"/>
<area shape="rect" href="IRremote_8hpp.html" title="Public API to the library." alt="" coords="137,80,258,107"/>
<area shape="rect" href="TinyIR_8h.html" title=" " alt="" coords="295,80,385,107"/>
<area shape="rect" href="IRremote_8h.html" title="Stub for backward compatibility." alt="" coords="132,155,239,181"/>
<area shape="rect" href="TinyIRReceiver_8hpp.html" title=" " alt="" coords="263,155,417,181"/>
<area shape="rect" href="TinyIRSender_8hpp.html" title=" " alt="" coords="441,155,588,181"/>
<area shape="rect" title=" " alt="" coords="252,5,368,32"/>
<area shape="rect" href="ac__LG_8hpp.html" title=" " alt="" coords="134,80,241,107"/>
<area shape="rect" href="TinyIR_8h.html" title=" " alt="" coords="265,80,355,107"/>
<area shape="rect" href="IRremote_8hpp.html" title="Public API to the library." alt="" coords="225,229,347,256"/>
<area shape="rect" href="ir__FAST_8hpp.html" title=" " alt="" coords="5,155,121,181"/>
<area shape="rect" href="TinyIRReceiver_8hpp.html" title=" " alt="" coords="146,155,301,181"/>
<area shape="rect" href="TinyIRSender_8hpp.html" title=" " alt="" coords="325,155,471,181"/>
<area shape="rect" href="IRremote_8h.html" title="Stub for backward compatibility." alt="" coords="233,304,339,331"/>
</map>
</div>
</div>
@ -147,7 +148,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="LongUnion_8h_source.html#l00100">100</a> of file <a class="el" href="LongUnion_8h_source.html">LongUnion.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="LongUnion_8h_source.html#l00103">103</a> of file <a class="el" href="LongUnion_8h_source.html">LongUnion.h</a>.</p>
</div>
</div>
@ -163,7 +164,7 @@ Macros</h2></td></tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="LongUnion_8h_source.html#l00053">53</a> of file <a class="el" href="LongUnion_8h_source.html">LongUnion.h</a>.</p>
<p class="definition">Definition at line <a class="el" href="LongUnion_8h_source.html#l00055">55</a> of file <a class="el" href="LongUnion_8h_source.html">LongUnion.h</a>.</p>
</div>
</div>
@ -173,7 +174,7 @@ Macros</h2></td></tr>
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="LongUnion_8h.html">LongUnion.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:40 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,9 +1,10 @@
<map id="src/LongUnion.h" name="src/LongUnion.h">
<area shape="rect" id="node1" title=" " alt="" coords="139,5,255,32"/>
<area shape="rect" id="node2" href="$ac__LG_8hpp.html" title=" " alt="" coords="5,80,112,107"/>
<area shape="rect" id="node3" href="$IRremote_8hpp.html" title="Public API to the library." alt="" coords="137,80,258,107"/>
<area shape="rect" id="node5" href="$TinyIR_8h.html" title=" " alt="" coords="295,80,385,107"/>
<area shape="rect" id="node4" href="$IRremote_8h.html" title="Stub for backward compatibility." alt="" coords="132,155,239,181"/>
<area shape="rect" id="node6" href="$TinyIRReceiver_8hpp.html" title=" " alt="" coords="263,155,417,181"/>
<area shape="rect" id="node7" href="$TinyIRSender_8hpp.html" title=" " alt="" coords="441,155,588,181"/>
<area shape="rect" id="node1" title=" " alt="" coords="252,5,368,32"/>
<area shape="rect" id="node2" href="$ac__LG_8hpp.html" title=" " alt="" coords="134,80,241,107"/>
<area shape="rect" id="node3" href="$TinyIR_8h.html" title=" " alt="" coords="265,80,355,107"/>
<area shape="rect" id="node5" href="$IRremote_8hpp.html" title="Public API to the library." alt="" coords="225,229,347,256"/>
<area shape="rect" id="node4" href="$ir__FAST_8hpp.html" title=" " alt="" coords="5,155,121,181"/>
<area shape="rect" id="node7" href="$TinyIRReceiver_8hpp.html" title=" " alt="" coords="146,155,301,181"/>
<area shape="rect" id="node8" href="$TinyIRSender_8hpp.html" title=" " alt="" coords="325,155,471,181"/>
<area shape="rect" id="node6" href="$IRremote_8h.html" title="Stub for backward compatibility." alt="" coords="233,304,339,331"/>
</map>

View File

@ -1 +1 @@
554a86c11705ca18d154f36aa13b7347
694ec4e94daf4bb8847e60acbf6da4da

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View File

@ -100,8 +100,8 @@ $(document).ready(function(){initNavTree('LongUnion_8h_source.html',''); initRes
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * See the GNU General Public License for more details.</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * along with this program. If not, see &lt;http://www.gnu.org/licenses/gpl.html&gt;.</span></div>
@ -115,187 +115,196 @@ $(document).ready(function(){initNavTree('LongUnion_8h_source.html',''); initRes
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="preprocessor">#ifndef _WORD_UNION_H</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="preprocessor">#define _WORD_UNION_H</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160; </div>
<div class="line"><a name="l00034"></a><span class="lineno"><a class="line" href="unionWordUnion.html"> 34</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionWordUnion.html">WordUnion</a> {</div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ade13e75ba3678d0b5b0590906156d9ec"> 36</a></span>&#160; uint8_t <a class="code" href="unionWordUnion.html#ade13e75ba3678d0b5b0590906156d9ec">LowByte</a>;</div>
<div class="line"><a name="l00037"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ae019b50052979f252f4a9f209ed4e618"> 37</a></span>&#160; uint8_t <a class="code" href="unionWordUnion.html#ae019b50052979f252f4a9f209ed4e618">HighByte</a>;</div>
<div class="line"><a name="l00038"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ae976a1f9248ad808289d0af67d690c7a"> 38</a></span>&#160; } <a class="code" href="unionWordUnion.html#ae976a1f9248ad808289d0af67d690c7a">UByte</a>;</div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a7d81b9160cc06e310f7786666b5f680e"> 40</a></span>&#160; int8_t <a class="code" href="unionWordUnion.html#a7d81b9160cc06e310f7786666b5f680e">LowByte</a>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a6e8c56fa718517ef9844b272e86e7f4e"> 41</a></span>&#160; int8_t <a class="code" href="unionWordUnion.html#a6e8c56fa718517ef9844b272e86e7f4e">HighByte</a>;</div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="unionWordUnion.html#adbe91ea859ad24be95c03d2669065456"> 42</a></span>&#160; } <a class="code" href="unionWordUnion.html#adbe91ea859ad24be95c03d2669065456">Byte</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a6405b8a8817b44cde3d0f6101d9a74cc"> 43</a></span>&#160; uint8_t <a class="code" href="unionWordUnion.html#a6405b8a8817b44cde3d0f6101d9a74cc">UBytes</a>[2]; <span class="comment">// UBytes[0] is LowByte</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a0e1088e17c9fefa37f9ac54d2151bed3"> 44</a></span>&#160; int8_t <a class="code" href="unionWordUnion.html#a0e1088e17c9fefa37f9ac54d2151bed3">Bytes</a>[2];</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ac72da7d551c05ed98fe75c8d239d9e23"> 45</a></span>&#160; uint16_t <a class="code" href="unionWordUnion.html#ac72da7d551c05ed98fe75c8d239d9e23">UWord</a>;</div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a6a1554f58dff1ec24abca7c3b50f287f"> 46</a></span>&#160; int16_t <a class="code" href="unionWordUnion.html#a6a1554f58dff1ec24abca7c3b50f287f">Word</a>;</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a5f3ef81cca525033eda0c46217a09252"> 47</a></span>&#160; uint8_t *<a class="code" href="unionWordUnion.html#a5f3ef81cca525033eda0c46217a09252">BytePointer</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;<span class="preprocessor">#endif // _WORD_UNION_H</span></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;<span class="preprocessor">#ifndef _LONG_UNION_H</span></div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="preprocessor">#define _LONG_UNION_H</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="LongUnion_8h.html#a9c6250bb15ace5909f53d7e48c29e328"> 53</a></span>&#160; </div>
<div class="line"><a name="l00057"></a><span class="lineno"><a class="line" href="unionLongUnion.html"> 57</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionLongUnion.html">LongUnion</a> {</div>
<div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9"> 59</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LowByte</a>;</div>
<div class="line"><a name="l00060"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1"> 60</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">MidLowByte</a>;</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aba027b17010803cf910996cae9201f32"> 61</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">MidHighByte</a>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c"> 62</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c">HighByte</a>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a2a351107fefa4b5173dbc8198607515e"> 63</a></span>&#160; } <a class="code" href="unionLongUnion.html#a2a351107fefa4b5173dbc8198607515e">UByte</a>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"> 64</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a953d8a796924426954a56a4a324e35b6"> 65</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a953d8a796924426954a56a4a324e35b6">LowByte</a>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"><a class="line" href="unionLongUnion.html#abbb97b234b56a9fc85e675baef650eb2"> 66</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#abbb97b234b56a9fc85e675baef650eb2">MidLowByte</a>;</div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a5404235118006061ae33de167803c70a"> 67</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a5404235118006061ae33de167803c70a">MidHighByte</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a9c076778ee637e06ea2ccec3ee6703ec"> 68</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a9c076778ee637e06ea2ccec3ee6703ec">HighByte</a>;</div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a718f6c5df5ea017a086a02470aefb718"> 69</a></span>&#160; } <a class="code" href="unionLongUnion.html#a718f6c5df5ea017a086a02470aefb718">Byte</a>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <span class="comment">/* Does not work for STM32</span></div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="comment"> struct {</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<span class="comment"> uint8_t LowByte;</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> uint16_t MidWord;</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> uint8_t HighByte;</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> } UByteWord;</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> */</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="unionLongUnion.html#a05f946f8845eb4dda0407470d34854e2"> 78</a></span>&#160; uint16_t <a class="code" href="unionLongUnion.html#a05f946f8845eb4dda0407470d34854e2">LowWord</a>;</div>
<div class="line"><a name="l00079"></a><span class="lineno"><a class="line" href="unionLongUnion.html#afd26d7d3a11130649129850162a7eb39"> 79</a></span>&#160; uint16_t <a class="code" href="unionLongUnion.html#afd26d7d3a11130649129850162a7eb39">HighWord</a>;</div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="unionLongUnion.html#ab5c029c115e4e0d03294e27cbef24972"> 80</a></span>&#160; } <a class="code" href="unionLongUnion.html#ab5c029c115e4e0d03294e27cbef24972">UWord</a>;</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="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2"> 82</a></span>&#160; int16_t <a class="code" href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2">LowWord</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a2b12288fe56e397d39ba9085fca70616"> 83</a></span>&#160; int16_t <a class="code" href="unionLongUnion.html#a2b12288fe56e397d39ba9085fca70616">HighWord</a>;</div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a44ff9a4d34c7293871f5a399a36987b4"> 84</a></span>&#160; } <a class="code" href="unionLongUnion.html#a44ff9a4d34c7293871f5a399a36987b4">Word</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a45adb668aa3c266c1caa869b64f5110f"> 86</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongUnion.html#a45adb668aa3c266c1caa869b64f5110f">LowWord</a>;</div>
<div class="line"><a name="l00087"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a5595650293a30be4a2aa52013b953d88"> 87</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongUnion.html#a5595650293a30be4a2aa52013b953d88">HighWord</a>;</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a2f4652f7d96f5fd19eb780109df1e38a"> 88</a></span>&#160; } <a class="code" href="unionLongUnion.html#a2f4652f7d96f5fd19eb780109df1e38a">WordUnion</a>;</div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a683822101c9e06c7cec0dde475d23ad3"> 89</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#a683822101c9e06c7cec0dde475d23ad3">UBytes</a>[4]; <span class="comment">// seems to have the same code size as using struct UByte</span></div>
<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a8c5178886b7c046da66506d996ee6587"> 90</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a8c5178886b7c046da66506d996ee6587">Bytes</a>[4]; <span class="comment">// Bytes[0] is LowByte</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a96deff8963ef4155f33a26390f8f0a4b"> 91</a></span>&#160; uint16_t <a class="code" href="unionLongUnion.html#a96deff8963ef4155f33a26390f8f0a4b">UWords</a>[2];</div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a67e933c7563c43956226e5db844984d5"> 92</a></span>&#160; int16_t <a class="code" href="unionLongUnion.html#a67e933c7563c43956226e5db844984d5">Words</a>[2];</div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7"> 93</a></span>&#160; uint32_t <a class="code" href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">ULong</a>;</div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a987b9b0499e30d1ba84f33e38d4cb034"> 94</a></span>&#160; int32_t <a class="code" href="unionLongUnion.html#a987b9b0499e30d1ba84f33e38d4cb034">Long</a>;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;};</div>
<div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;<span class="preprocessor">#endif // _LONG_UNION_H</span></div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;<span class="preprocessor">#ifndef _LONG_LONG_UNION_H</span></div>
<div class="line"><a name="l00099"></a><span class="lineno"> 99</span>&#160;<span class="preprocessor">#define _LONG_LONG_UNION_H</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"><a class="line" href="LongUnion_8h.html#ad0a6033520859f752a607a973e7a89b6"> 100</a></span>&#160; </div>
<div class="line"><a name="l00104"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html"> 104</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionLongLongUnion.html">LongLongUnion</a> {</div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00106"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a06b7aa96ffe50697e4f42f6f5cae8469"> 106</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a06b7aa96ffe50697e4f42f6f5cae8469">LowWord</a>;</div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a6365cd32d3caeaf32dd3f706c1ae9ef1"> 107</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a6365cd32d3caeaf32dd3f706c1ae9ef1">MidLowWord</a>;</div>
<div class="line"><a name="l00108"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a009eb397d186ec98882e77b66424c897"> 108</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a009eb397d186ec98882e77b66424c897">MidHighWord</a>;</div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aa08a62d373f13f14e5573c2905ddea23"> 109</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#aa08a62d373f13f14e5573c2905ddea23">HighWord</a>;</div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ad131e93d0be6fc5d02cef733c0cfe39a"> 110</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#ad131e93d0be6fc5d02cef733c0cfe39a">UWord</a>;</div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#abe041795b3367cfc357e06bc0af12a9e"> 112</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#abe041795b3367cfc357e06bc0af12a9e">LowWord</a>;</div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ab994fd1235c547aec88c2c8dc654ad5e"> 113</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#ab994fd1235c547aec88c2c8dc654ad5e">MidLowWord</a>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a59ef9c7ba28656f2fab7b3ba485a5576"> 114</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#a59ef9c7ba28656f2fab7b3ba485a5576">MidHighWord</a>;</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a4b227e1393e83d3d8be0797b3b3a8609"> 115</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#a4b227e1393e83d3d8be0797b3b3a8609">HighWord</a>;</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aaa075b3b2f7a00eff4da66391c527e2e"> 116</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#aaa075b3b2f7a00eff4da66391c527e2e">Word</a>;</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a5c6322aadb7461165ceea14ae7a12adc"> 118</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#a5c6322aadb7461165ceea14ae7a12adc">LowWord</a>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a37801aab897114c65fc74d896a827dea"> 119</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#a37801aab897114c65fc74d896a827dea">MidLowWord</a>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac5d1bc864c43d71f2ec922384c136531"> 120</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#ac5d1bc864c43d71f2ec922384c136531">MidHighWord</a>;</div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a19a6f248da7055eaf34292685356ffcc"> 121</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#a19a6f248da7055eaf34292685356ffcc">HighWord</a>;</div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ad1708f3e53f70e803dad544c60ebff79"> 122</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#ad1708f3e53f70e803dad544c60ebff79">WordUnion</a>;</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aacae5363fc2807618767c8b6be083fb9"> 124</a></span>&#160; uint32_t <a class="code" href="unionLongLongUnion.html#aacae5363fc2807618767c8b6be083fb9">LowLong</a>;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a1868073f657ae9df0b3aaceb3fa131f2"> 125</a></span>&#160; uint32_t <a class="code" href="unionLongLongUnion.html#a1868073f657ae9df0b3aaceb3fa131f2">HighLong</a>;</div>
<div class="line"><a name="l00126"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac349a2b9febb6c2d4e4c4d443881363a"> 126</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#ac349a2b9febb6c2d4e4c4d443881363a">ULong</a>;</div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a7bd3d17b304e1cb548222583110ec84f"> 128</a></span>&#160; int32_t <a class="code" href="unionLongLongUnion.html#a7bd3d17b304e1cb548222583110ec84f">LowLong</a>;</div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a34cc7306550b99e4821a7cf6aee59a05"> 129</a></span>&#160; int32_t <a class="code" href="unionLongLongUnion.html#a34cc7306550b99e4821a7cf6aee59a05">HighLong</a>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a91ef5c0ed418942605e8b7ef45e20c3c"> 130</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#a91ef5c0ed418942605e8b7ef45e20c3c">Long</a>;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac4311eaea1f3d194ea475534b33fe9cc"> 132</a></span>&#160; <a class="code" href="unionLongUnion.html">LongUnion</a> <a class="code" href="unionLongLongUnion.html#ac4311eaea1f3d194ea475534b33fe9cc">LowLong</a>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a50f0984be8b74a82c9c3e6e02ccc911e"> 133</a></span>&#160; <a class="code" href="unionLongUnion.html">LongUnion</a> <a class="code" href="unionLongLongUnion.html#a50f0984be8b74a82c9c3e6e02ccc911e">HighLong</a>;</div>
<div class="line"><a name="l00134"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aea1572779c77027c37a21bed990e0f1d"> 134</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#aea1572779c77027c37a21bed990e0f1d">LongUnion</a>;</div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac094fff8006956c7d082da865f0561bf"> 135</a></span>&#160; uint8_t <a class="code" href="unionLongLongUnion.html#ac094fff8006956c7d082da865f0561bf">UBytes</a>[8]; <span class="comment">// seems to have the same code size as using struct UByte</span></div>
<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac730aa4aea6374b426aa741b2135adee"> 136</a></span>&#160; int8_t <a class="code" href="unionLongLongUnion.html#ac730aa4aea6374b426aa741b2135adee">Bytes</a>[8];</div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a7d2c6c4f8350e564213c8803bf465cff"> 137</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a7d2c6c4f8350e564213c8803bf465cff">UWords</a>[4];</div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a328f6a451e42ba9283f7272fd2883f29"> 138</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#a328f6a451e42ba9283f7272fd2883f29">Words</a>[4];</div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aeddcb7029b1c47d1409857c203a988db"> 139</a></span>&#160; uint64_t <a class="code" href="unionLongLongUnion.html#aeddcb7029b1c47d1409857c203a988db">ULongLong</a>;</div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a46852ab787ebd619311851c2c0a12fb5"> 140</a></span>&#160; int64_t <a class="code" href="unionLongLongUnion.html#a46852ab787ebd619311851c2c0a12fb5">LongLong</a>;</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="preprocessor">#endif // _LONG_LONG_UNION_H</span></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;<span class="preprocessor">#endif // !defined(_WORD_UNION_H) || !defined(_LONG_UNION_H) || !defined(_LONG_LONG_UNION_H)</span></div>
<div class="line"><a name="l00036"></a><span class="lineno"><a class="line" href="unionWordUnion.html"> 36</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionWordUnion.html">WordUnion</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="unionWordUnion.html#ade13e75ba3678d0b5b0590906156d9ec"> 38</a></span>&#160; uint8_t <a class="code" href="unionWordUnion.html#ade13e75ba3678d0b5b0590906156d9ec">LowByte</a>;</div>
<div class="line"><a name="l00039"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ae019b50052979f252f4a9f209ed4e618"> 39</a></span>&#160; uint8_t <a class="code" href="unionWordUnion.html#ae019b50052979f252f4a9f209ed4e618">HighByte</a>;</div>
<div class="line"><a name="l00040"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ae976a1f9248ad808289d0af67d690c7a"> 40</a></span>&#160; } <a class="code" href="unionWordUnion.html#ae976a1f9248ad808289d0af67d690c7a">UByte</a>;</div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00042"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a7d81b9160cc06e310f7786666b5f680e"> 42</a></span>&#160; int8_t <a class="code" href="unionWordUnion.html#a7d81b9160cc06e310f7786666b5f680e">LowByte</a>;</div>
<div class="line"><a name="l00043"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a6e8c56fa718517ef9844b272e86e7f4e"> 43</a></span>&#160; int8_t <a class="code" href="unionWordUnion.html#a6e8c56fa718517ef9844b272e86e7f4e">HighByte</a>;</div>
<div class="line"><a name="l00044"></a><span class="lineno"><a class="line" href="unionWordUnion.html#adbe91ea859ad24be95c03d2669065456"> 44</a></span>&#160; } <a class="code" href="unionWordUnion.html#adbe91ea859ad24be95c03d2669065456">Byte</a>;</div>
<div class="line"><a name="l00045"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a6405b8a8817b44cde3d0f6101d9a74cc"> 45</a></span>&#160; uint8_t <a class="code" href="unionWordUnion.html#a6405b8a8817b44cde3d0f6101d9a74cc">UBytes</a>[2]; <span class="comment">// UBytes[0] is LowByte</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a0e1088e17c9fefa37f9ac54d2151bed3"> 46</a></span>&#160; int8_t <a class="code" href="unionWordUnion.html#a0e1088e17c9fefa37f9ac54d2151bed3">Bytes</a>[2];</div>
<div class="line"><a name="l00047"></a><span class="lineno"><a class="line" href="unionWordUnion.html#ac72da7d551c05ed98fe75c8d239d9e23"> 47</a></span>&#160; uint16_t <a class="code" href="unionWordUnion.html#ac72da7d551c05ed98fe75c8d239d9e23">UWord</a>;</div>
<div class="line"><a name="l00048"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a6a1554f58dff1ec24abca7c3b50f287f"> 48</a></span>&#160; int16_t <a class="code" href="unionWordUnion.html#a6a1554f58dff1ec24abca7c3b50f287f">Word</a>;</div>
<div class="line"><a name="l00049"></a><span class="lineno"><a class="line" href="unionWordUnion.html#a5f3ef81cca525033eda0c46217a09252"> 49</a></span>&#160; uint8_t *<a class="code" href="unionWordUnion.html#a5f3ef81cca525033eda0c46217a09252">BytePointer</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;<span class="preprocessor">#endif // _WORD_UNION_H</span></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"> 53</span>&#160;<span class="preprocessor">#ifndef _LONG_UNION_H</span></div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160;<span class="preprocessor">#define _LONG_UNION_H</span></div>
<div class="line"><a name="l00055"></a><span class="lineno"><a class="line" href="LongUnion_8h.html#a9c6250bb15ace5909f53d7e48c29e328"> 55</a></span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"><a class="line" href="unionLongUnion.html"> 59</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionLongUnion.html">LongUnion</a> {</div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00061"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9"> 61</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LowByte</a>;</div>
<div class="line"><a name="l00062"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1"> 62</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">MidLowByte</a>;</div>
<div class="line"><a name="l00063"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aba027b17010803cf910996cae9201f32"> 63</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">MidHighByte</a>;</div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c"> 64</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c">HighByte</a>;</div>
<div class="line"><a name="l00065"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a2a351107fefa4b5173dbc8198607515e"> 65</a></span>&#160; } <a class="code" href="unionLongUnion.html#a2a351107fefa4b5173dbc8198607515e">UByte</a>;</div>
<div class="line"><a name="l00066"></a><span class="lineno"> 66</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00067"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a953d8a796924426954a56a4a324e35b6"> 67</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a953d8a796924426954a56a4a324e35b6">LowByte</a>;</div>
<div class="line"><a name="l00068"></a><span class="lineno"><a class="line" href="unionLongUnion.html#abbb97b234b56a9fc85e675baef650eb2"> 68</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#abbb97b234b56a9fc85e675baef650eb2">MidLowByte</a>;</div>
<div class="line"><a name="l00069"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a5404235118006061ae33de167803c70a"> 69</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a5404235118006061ae33de167803c70a">MidHighByte</a>;</div>
<div class="line"><a name="l00070"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a9c076778ee637e06ea2ccec3ee6703ec"> 70</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a9c076778ee637e06ea2ccec3ee6703ec">HighByte</a>;</div>
<div class="line"><a name="l00071"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a718f6c5df5ea017a086a02470aefb718"> 71</a></span>&#160; } <a class="code" href="unionLongUnion.html#a718f6c5df5ea017a086a02470aefb718">Byte</a>;</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; <span class="comment">/* Does not work for STM32</span></div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="comment"> struct {</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;<span class="comment"> uint8_t LowByte;</span></div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="comment"> uint16_t MidWord;</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;<span class="comment"> uint8_t HighByte;</span></div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="comment"> } UByteWord;</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00080"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a05f946f8845eb4dda0407470d34854e2"> 80</a></span>&#160; uint16_t <a class="code" href="unionLongUnion.html#a05f946f8845eb4dda0407470d34854e2">LowWord</a>;</div>
<div class="line"><a name="l00081"></a><span class="lineno"><a class="line" href="unionLongUnion.html#afd26d7d3a11130649129850162a7eb39"> 81</a></span>&#160; uint16_t <a class="code" href="unionLongUnion.html#afd26d7d3a11130649129850162a7eb39">HighWord</a>;</div>
<div class="line"><a name="l00082"></a><span class="lineno"><a class="line" href="unionLongUnion.html#ab5c029c115e4e0d03294e27cbef24972"> 82</a></span>&#160; } <a class="code" href="unionLongUnion.html#ab5c029c115e4e0d03294e27cbef24972">UWord</a>;</div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00084"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2"> 84</a></span>&#160; int16_t <a class="code" href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2">LowWord</a>;</div>
<div class="line"><a name="l00085"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a2b12288fe56e397d39ba9085fca70616"> 85</a></span>&#160; int16_t <a class="code" href="unionLongUnion.html#a2b12288fe56e397d39ba9085fca70616">HighWord</a>;</div>
<div class="line"><a name="l00086"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a44ff9a4d34c7293871f5a399a36987b4"> 86</a></span>&#160; } <a class="code" href="unionLongUnion.html#a44ff9a4d34c7293871f5a399a36987b4">Word</a>;</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00088"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a45adb668aa3c266c1caa869b64f5110f"> 88</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongUnion.html#a45adb668aa3c266c1caa869b64f5110f">LowWord</a>;</div>
<div class="line"><a name="l00089"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a5595650293a30be4a2aa52013b953d88"> 89</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongUnion.html#a5595650293a30be4a2aa52013b953d88">HighWord</a>;</div>
<div class="line"><a name="l00090"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a2f4652f7d96f5fd19eb780109df1e38a"> 90</a></span>&#160; } <a class="code" href="unionLongUnion.html#a2f4652f7d96f5fd19eb780109df1e38a">WordUnion</a>;</div>
<div class="line"><a name="l00091"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a683822101c9e06c7cec0dde475d23ad3"> 91</a></span>&#160; uint8_t <a class="code" href="unionLongUnion.html#a683822101c9e06c7cec0dde475d23ad3">UBytes</a>[4]; <span class="comment">// seems to have the same code size as using struct UByte</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a8c5178886b7c046da66506d996ee6587"> 92</a></span>&#160; int8_t <a class="code" href="unionLongUnion.html#a8c5178886b7c046da66506d996ee6587">Bytes</a>[4]; <span class="comment">// Bytes[0] is LowByte</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a96deff8963ef4155f33a26390f8f0a4b"> 93</a></span>&#160; uint16_t <a class="code" href="unionLongUnion.html#a96deff8963ef4155f33a26390f8f0a4b">UWords</a>[2];</div>
<div class="line"><a name="l00094"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a67e933c7563c43956226e5db844984d5"> 94</a></span>&#160; int16_t <a class="code" href="unionLongUnion.html#a67e933c7563c43956226e5db844984d5">Words</a>[2];</div>
<div class="line"><a name="l00095"></a><span class="lineno"><a class="line" href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7"> 95</a></span>&#160; uint32_t <a class="code" href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">ULong</a>;</div>
<div class="line"><a name="l00096"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a987b9b0499e30d1ba84f33e38d4cb034"> 96</a></span>&#160; int32_t <a class="code" href="unionLongUnion.html#a987b9b0499e30d1ba84f33e38d4cb034">Long</a>;</div>
<div class="line"><a name="l00097"></a><span class="lineno"><a class="line" href="unionLongUnion.html#a827328f51189919e4de584da161e3279"> 97</a></span>&#160; <span class="keywordtype">float</span> <a class="code" href="unionLongUnion.html#a827328f51189919e4de584da161e3279">Float</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;<span class="preprocessor">#endif // _LONG_UNION_H</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;<span class="preprocessor">#ifndef _LONG_LONG_UNION_H</span></div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="preprocessor">#define _LONG_LONG_UNION_H</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"><a class="line" href="LongUnion_8h.html#ad0a6033520859f752a607a973e7a89b6"> 103</a></span>&#160; </div>
<div class="line"><a name="l00107"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html"> 107</a></span>&#160;<span class="keyword">union </span><a class="code" href="unionLongLongUnion.html">LongLongUnion</a> {</div>
<div class="line"><a name="l00108"></a><span class="lineno"> 108</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00109"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a06b7aa96ffe50697e4f42f6f5cae8469"> 109</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a06b7aa96ffe50697e4f42f6f5cae8469">LowWord</a>;</div>
<div class="line"><a name="l00110"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a6365cd32d3caeaf32dd3f706c1ae9ef1"> 110</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a6365cd32d3caeaf32dd3f706c1ae9ef1">MidLowWord</a>;</div>
<div class="line"><a name="l00111"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a009eb397d186ec98882e77b66424c897"> 111</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a009eb397d186ec98882e77b66424c897">MidHighWord</a>;</div>
<div class="line"><a name="l00112"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aa08a62d373f13f14e5573c2905ddea23"> 112</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#aa08a62d373f13f14e5573c2905ddea23">HighWord</a>;</div>
<div class="line"><a name="l00113"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ad131e93d0be6fc5d02cef733c0cfe39a"> 113</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#ad131e93d0be6fc5d02cef733c0cfe39a">UWord</a>;</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00115"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#abe041795b3367cfc357e06bc0af12a9e"> 115</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#abe041795b3367cfc357e06bc0af12a9e">LowWord</a>;</div>
<div class="line"><a name="l00116"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ab994fd1235c547aec88c2c8dc654ad5e"> 116</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#ab994fd1235c547aec88c2c8dc654ad5e">MidLowWord</a>;</div>
<div class="line"><a name="l00117"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a59ef9c7ba28656f2fab7b3ba485a5576"> 117</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#a59ef9c7ba28656f2fab7b3ba485a5576">MidHighWord</a>;</div>
<div class="line"><a name="l00118"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a4b227e1393e83d3d8be0797b3b3a8609"> 118</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#a4b227e1393e83d3d8be0797b3b3a8609">HighWord</a>;</div>
<div class="line"><a name="l00119"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aaa075b3b2f7a00eff4da66391c527e2e"> 119</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#aaa075b3b2f7a00eff4da66391c527e2e">Word</a>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00121"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a5c6322aadb7461165ceea14ae7a12adc"> 121</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#a5c6322aadb7461165ceea14ae7a12adc">LowWord</a>;</div>
<div class="line"><a name="l00122"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a37801aab897114c65fc74d896a827dea"> 122</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#a37801aab897114c65fc74d896a827dea">MidLowWord</a>;</div>
<div class="line"><a name="l00123"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac5d1bc864c43d71f2ec922384c136531"> 123</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#ac5d1bc864c43d71f2ec922384c136531">MidHighWord</a>;</div>
<div class="line"><a name="l00124"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a19a6f248da7055eaf34292685356ffcc"> 124</a></span>&#160; <a class="code" href="unionWordUnion.html">WordUnion</a> <a class="code" href="unionLongLongUnion.html#a19a6f248da7055eaf34292685356ffcc">HighWord</a>;</div>
<div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ad1708f3e53f70e803dad544c60ebff79"> 125</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#ad1708f3e53f70e803dad544c60ebff79">WordUnion</a>;</div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00127"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aacae5363fc2807618767c8b6be083fb9"> 127</a></span>&#160; uint32_t <a class="code" href="unionLongLongUnion.html#aacae5363fc2807618767c8b6be083fb9">LowLong</a>;</div>
<div class="line"><a name="l00128"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a1868073f657ae9df0b3aaceb3fa131f2"> 128</a></span>&#160; uint32_t <a class="code" href="unionLongLongUnion.html#a1868073f657ae9df0b3aaceb3fa131f2">HighLong</a>;</div>
<div class="line"><a name="l00129"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac349a2b9febb6c2d4e4c4d443881363a"> 129</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#ac349a2b9febb6c2d4e4c4d443881363a">ULong</a>;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00131"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a7bd3d17b304e1cb548222583110ec84f"> 131</a></span>&#160; int32_t <a class="code" href="unionLongLongUnion.html#a7bd3d17b304e1cb548222583110ec84f">LowLong</a>;</div>
<div class="line"><a name="l00132"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a34cc7306550b99e4821a7cf6aee59a05"> 132</a></span>&#160; int32_t <a class="code" href="unionLongLongUnion.html#a34cc7306550b99e4821a7cf6aee59a05">HighLong</a>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a91ef5c0ed418942605e8b7ef45e20c3c"> 133</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#a91ef5c0ed418942605e8b7ef45e20c3c">Long</a>;</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; <span class="keyword">struct </span>{</div>
<div class="line"><a name="l00135"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac4311eaea1f3d194ea475534b33fe9cc"> 135</a></span>&#160; <a class="code" href="unionLongUnion.html">LongUnion</a> <a class="code" href="unionLongLongUnion.html#ac4311eaea1f3d194ea475534b33fe9cc">LowLong</a>;</div>
<div class="line"><a name="l00136"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a50f0984be8b74a82c9c3e6e02ccc911e"> 136</a></span>&#160; <a class="code" href="unionLongUnion.html">LongUnion</a> <a class="code" href="unionLongLongUnion.html#a50f0984be8b74a82c9c3e6e02ccc911e">HighLong</a>;</div>
<div class="line"><a name="l00137"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aea1572779c77027c37a21bed990e0f1d"> 137</a></span>&#160; } <a class="code" href="unionLongLongUnion.html#aea1572779c77027c37a21bed990e0f1d">LongUnion</a>;</div>
<div class="line"><a name="l00138"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac094fff8006956c7d082da865f0561bf"> 138</a></span>&#160; uint8_t <a class="code" href="unionLongLongUnion.html#ac094fff8006956c7d082da865f0561bf">UBytes</a>[8]; <span class="comment">// seems to have the same code size as using struct UByte</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ac730aa4aea6374b426aa741b2135adee"> 139</a></span>&#160; int8_t <a class="code" href="unionLongLongUnion.html#ac730aa4aea6374b426aa741b2135adee">Bytes</a>[8];</div>
<div class="line"><a name="l00140"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a7d2c6c4f8350e564213c8803bf465cff"> 140</a></span>&#160; uint16_t <a class="code" href="unionLongLongUnion.html#a7d2c6c4f8350e564213c8803bf465cff">UWords</a>[4];</div>
<div class="line"><a name="l00141"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a328f6a451e42ba9283f7272fd2883f29"> 141</a></span>&#160; int16_t <a class="code" href="unionLongLongUnion.html#a328f6a451e42ba9283f7272fd2883f29">Words</a>[4];</div>
<div class="line"><a name="l00142"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#aeddcb7029b1c47d1409857c203a988db"> 142</a></span>&#160; uint64_t <a class="code" href="unionLongLongUnion.html#aeddcb7029b1c47d1409857c203a988db">ULongLong</a>;</div>
<div class="line"><a name="l00143"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#a46852ab787ebd619311851c2c0a12fb5"> 143</a></span>&#160; int64_t <a class="code" href="unionLongLongUnion.html#a46852ab787ebd619311851c2c0a12fb5">LongLong</a>;</div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160;<span class="preprocessor">#if __DBL_MANT_DIG__== 24</span></div>
<div class="line"><a name="l00145"></a><span class="lineno"> 145</span>&#160; <span class="keywordtype">float</span> Floats[2]; <span class="comment">// 32 bit double, as for AVR</span></div>
<div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <span class="comment">// 64 bit double</span></div>
<div class="line"><a name="l00148"></a><span class="lineno"><a class="line" href="unionLongLongUnion.html#ad639ee45132e99aee9b824cc85045c00"> 148</a></span>&#160; <span class="keywordtype">double</span> <a class="code" href="unionLongLongUnion.html#ad639ee45132e99aee9b824cc85045c00">Double</a>;</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160;<span class="preprocessor">#endif</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="preprocessor">#endif // _LONG_LONG_UNION_H</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; </div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;<span class="preprocessor">#endif // !defined(_WORD_UNION_H) || !defined(_LONG_UNION_H) || !defined(_LONG_LONG_UNION_H)</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aunionLongLongUnion_html_ac094fff8006956c7d082da865f0561bf"><div class="ttname"><a href="unionLongLongUnion.html#ac094fff8006956c7d082da865f0561bf">LongLongUnion::UBytes</a></div><div class="ttdeci">uint8_t UBytes[8]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00135">LongUnion.h:135</a></div></div>
<div class="ttc" id="aunionLongUnion_html"><div class="ttname"><a href="unionLongUnion.html">LongUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 32 bit Long without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00057">LongUnion.h:57</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a6365cd32d3caeaf32dd3f706c1ae9ef1"><div class="ttname"><a href="unionLongLongUnion.html#a6365cd32d3caeaf32dd3f706c1ae9ef1">LongLongUnion::MidLowWord</a></div><div class="ttdeci">uint16_t MidLowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00107">LongUnion.h:107</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac094fff8006956c7d082da865f0561bf"><div class="ttname"><a href="unionLongLongUnion.html#ac094fff8006956c7d082da865f0561bf">LongLongUnion::UBytes</a></div><div class="ttdeci">uint8_t UBytes[8]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00138">LongUnion.h:138</a></div></div>
<div class="ttc" id="aunionLongUnion_html"><div class="ttname"><a href="unionLongUnion.html">LongUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 32 bit Long without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00059">LongUnion.h:59</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a6365cd32d3caeaf32dd3f706c1ae9ef1"><div class="ttname"><a href="unionLongLongUnion.html#a6365cd32d3caeaf32dd3f706c1ae9ef1">LongLongUnion::MidLowWord</a></div><div class="ttdeci">uint16_t MidLowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00110">LongUnion.h:110</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_aaa075b3b2f7a00eff4da66391c527e2e"><div class="ttname"><a href="unionLongLongUnion.html#aaa075b3b2f7a00eff4da66391c527e2e">LongLongUnion::Word</a></div><div class="ttdeci">struct LongLongUnion::@10 Word</div></div>
<div class="ttc" id="aunionWordUnion_html"><div class="ttname"><a href="unionWordUnion.html">WordUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 16 bit Word without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00034">LongUnion.h:34</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_abe041795b3367cfc357e06bc0af12a9e"><div class="ttname"><a href="unionLongLongUnion.html#abe041795b3367cfc357e06bc0af12a9e">LongLongUnion::LowWord</a></div><div class="ttdeci">int16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00112">LongUnion.h:112</a></div></div>
<div class="ttc" id="aunionWordUnion_html"><div class="ttname"><a href="unionWordUnion.html">WordUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 16 bit Word without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00036">LongUnion.h:36</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_abe041795b3367cfc357e06bc0af12a9e"><div class="ttname"><a href="unionLongLongUnion.html#abe041795b3367cfc357e06bc0af12a9e">LongLongUnion::LowWord</a></div><div class="ttdeci">int16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00115">LongUnion.h:115</a></div></div>
<div class="ttc" id="aunionWordUnion_html_ae976a1f9248ad808289d0af67d690c7a"><div class="ttname"><a href="unionWordUnion.html#ae976a1f9248ad808289d0af67d690c7a">WordUnion::UByte</a></div><div class="ttdeci">struct WordUnion::@2 UByte</div></div>
<div class="ttc" id="aunionLongLongUnion_html_aea1572779c77027c37a21bed990e0f1d"><div class="ttname"><a href="unionLongLongUnion.html#aea1572779c77027c37a21bed990e0f1d">LongLongUnion::LongUnion</a></div><div class="ttdeci">struct LongLongUnion::@14 LongUnion</div></div>
<div class="ttc" id="aunionWordUnion_html_ae019b50052979f252f4a9f209ed4e618"><div class="ttname"><a href="unionWordUnion.html#ae019b50052979f252f4a9f209ed4e618">WordUnion::HighByte</a></div><div class="ttdeci">uint8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00037">LongUnion.h:37</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a59ef9c7ba28656f2fab7b3ba485a5576"><div class="ttname"><a href="unionLongLongUnion.html#a59ef9c7ba28656f2fab7b3ba485a5576">LongLongUnion::MidHighWord</a></div><div class="ttdeci">int16_t MidHighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00114">LongUnion.h:114</a></div></div>
<div class="ttc" id="aunionWordUnion_html_ae019b50052979f252f4a9f209ed4e618"><div class="ttname"><a href="unionWordUnion.html#ae019b50052979f252f4a9f209ed4e618">WordUnion::HighByte</a></div><div class="ttdeci">uint8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00039">LongUnion.h:39</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a59ef9c7ba28656f2fab7b3ba485a5576"><div class="ttname"><a href="unionLongLongUnion.html#a59ef9c7ba28656f2fab7b3ba485a5576">LongLongUnion::MidHighWord</a></div><div class="ttdeci">int16_t MidHighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00117">LongUnion.h:117</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a2a351107fefa4b5173dbc8198607515e"><div class="ttname"><a href="unionLongUnion.html#a2a351107fefa4b5173dbc8198607515e">LongUnion::UByte</a></div><div class="ttdeci">struct LongUnion::@4 UByte</div></div>
<div class="ttc" id="aunionLongLongUnion_html_aa08a62d373f13f14e5573c2905ddea23"><div class="ttname"><a href="unionLongLongUnion.html#aa08a62d373f13f14e5573c2905ddea23">LongLongUnion::HighWord</a></div><div class="ttdeci">uint16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00109">LongUnion.h:109</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_aa08a62d373f13f14e5573c2905ddea23"><div class="ttname"><a href="unionLongLongUnion.html#aa08a62d373f13f14e5573c2905ddea23">LongLongUnion::HighWord</a></div><div class="ttdeci">uint16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00112">LongUnion.h:112</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a718f6c5df5ea017a086a02470aefb718"><div class="ttname"><a href="unionLongUnion.html#a718f6c5df5ea017a086a02470aefb718">LongUnion::Byte</a></div><div class="ttdeci">struct LongUnion::@5 Byte</div></div>
<div class="ttc" id="aunionWordUnion_html_a7d81b9160cc06e310f7786666b5f680e"><div class="ttname"><a href="unionWordUnion.html#a7d81b9160cc06e310f7786666b5f680e">WordUnion::LowByte</a></div><div class="ttdeci">int8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00040">LongUnion.h:40</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a328f6a451e42ba9283f7272fd2883f29"><div class="ttname"><a href="unionLongLongUnion.html#a328f6a451e42ba9283f7272fd2883f29">LongLongUnion::Words</a></div><div class="ttdeci">int16_t Words[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00138">LongUnion.h:138</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a683822101c9e06c7cec0dde475d23ad3"><div class="ttname"><a href="unionLongUnion.html#a683822101c9e06c7cec0dde475d23ad3">LongUnion::UBytes</a></div><div class="ttdeci">uint8_t UBytes[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00089">LongUnion.h:89</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a6405b8a8817b44cde3d0f6101d9a74cc"><div class="ttname"><a href="unionWordUnion.html#a6405b8a8817b44cde3d0f6101d9a74cc">WordUnion::UBytes</a></div><div class="ttdeci">uint8_t UBytes[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00043">LongUnion.h:43</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a67e933c7563c43956226e5db844984d5"><div class="ttname"><a href="unionLongUnion.html#a67e933c7563c43956226e5db844984d5">LongUnion::Words</a></div><div class="ttdeci">int16_t Words[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00092">LongUnion.h:92</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aa41368107679917a1c39f30999f4e9d9"><div class="ttname"><a href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LongUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00059">LongUnion.h:59</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a67e1514b7a6ccc4d017eb6928c327e5c"><div class="ttname"><a href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c">LongUnion::HighByte</a></div><div class="ttdeci">uint8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00062">LongUnion.h:62</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a19a6f248da7055eaf34292685356ffcc"><div class="ttname"><a href="unionLongLongUnion.html#a19a6f248da7055eaf34292685356ffcc">LongLongUnion::HighWord</a></div><div class="ttdeci">WordUnion HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00121">LongUnion.h:121</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a05f946f8845eb4dda0407470d34854e2"><div class="ttname"><a href="unionLongUnion.html#a05f946f8845eb4dda0407470d34854e2">LongUnion::LowWord</a></div><div class="ttdeci">uint16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00078">LongUnion.h:78</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html"><div class="ttname"><a href="unionLongLongUnion.html">LongLongUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 64 bit LongLong without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00104">LongUnion.h:104</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aeed69e051ef3c5c3d03e0efa260226b1"><div class="ttname"><a href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">LongUnion::MidLowByte</a></div><div class="ttdeci">uint8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00060">LongUnion.h:60</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac730aa4aea6374b426aa741b2135adee"><div class="ttname"><a href="unionLongLongUnion.html#ac730aa4aea6374b426aa741b2135adee">LongLongUnion::Bytes</a></div><div class="ttdeci">int8_t Bytes[8]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00136">LongUnion.h:136</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a7d81b9160cc06e310f7786666b5f680e"><div class="ttname"><a href="unionWordUnion.html#a7d81b9160cc06e310f7786666b5f680e">WordUnion::LowByte</a></div><div class="ttdeci">int8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00042">LongUnion.h:42</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a827328f51189919e4de584da161e3279"><div class="ttname"><a href="unionLongUnion.html#a827328f51189919e4de584da161e3279">LongUnion::Float</a></div><div class="ttdeci">float Float</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00097">LongUnion.h:97</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a328f6a451e42ba9283f7272fd2883f29"><div class="ttname"><a href="unionLongLongUnion.html#a328f6a451e42ba9283f7272fd2883f29">LongLongUnion::Words</a></div><div class="ttdeci">int16_t Words[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00141">LongUnion.h:141</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a683822101c9e06c7cec0dde475d23ad3"><div class="ttname"><a href="unionLongUnion.html#a683822101c9e06c7cec0dde475d23ad3">LongUnion::UBytes</a></div><div class="ttdeci">uint8_t UBytes[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00091">LongUnion.h:91</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a6405b8a8817b44cde3d0f6101d9a74cc"><div class="ttname"><a href="unionWordUnion.html#a6405b8a8817b44cde3d0f6101d9a74cc">WordUnion::UBytes</a></div><div class="ttdeci">uint8_t UBytes[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00045">LongUnion.h:45</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a67e933c7563c43956226e5db844984d5"><div class="ttname"><a href="unionLongUnion.html#a67e933c7563c43956226e5db844984d5">LongUnion::Words</a></div><div class="ttdeci">int16_t Words[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00094">LongUnion.h:94</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aa41368107679917a1c39f30999f4e9d9"><div class="ttname"><a href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LongUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00061">LongUnion.h:61</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a67e1514b7a6ccc4d017eb6928c327e5c"><div class="ttname"><a href="unionLongUnion.html#a67e1514b7a6ccc4d017eb6928c327e5c">LongUnion::HighByte</a></div><div class="ttdeci">uint8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00064">LongUnion.h:64</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a19a6f248da7055eaf34292685356ffcc"><div class="ttname"><a href="unionLongLongUnion.html#a19a6f248da7055eaf34292685356ffcc">LongLongUnion::HighWord</a></div><div class="ttdeci">WordUnion HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00124">LongUnion.h:124</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a05f946f8845eb4dda0407470d34854e2"><div class="ttname"><a href="unionLongUnion.html#a05f946f8845eb4dda0407470d34854e2">LongUnion::LowWord</a></div><div class="ttdeci">uint16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00080">LongUnion.h:80</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html"><div class="ttname"><a href="unionLongLongUnion.html">LongLongUnion</a></div><div class="ttdoc">Union to specify parts / manifestations of a 64 bit LongLong without casts and shifts.</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00107">LongUnion.h:107</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aeed69e051ef3c5c3d03e0efa260226b1"><div class="ttname"><a href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">LongUnion::MidLowByte</a></div><div class="ttdeci">uint8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00062">LongUnion.h:62</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac730aa4aea6374b426aa741b2135adee"><div class="ttname"><a href="unionLongLongUnion.html#ac730aa4aea6374b426aa741b2135adee">LongLongUnion::Bytes</a></div><div class="ttdeci">int8_t Bytes[8]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00139">LongUnion.h:139</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ad1708f3e53f70e803dad544c60ebff79"><div class="ttname"><a href="unionLongLongUnion.html#ad1708f3e53f70e803dad544c60ebff79">LongLongUnion::WordUnion</a></div><div class="ttdeci">struct LongLongUnion::@11 WordUnion</div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac4311eaea1f3d194ea475534b33fe9cc"><div class="ttname"><a href="unionLongLongUnion.html#ac4311eaea1f3d194ea475534b33fe9cc">LongLongUnion::LowLong</a></div><div class="ttdeci">LongUnion LowLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00132">LongUnion.h:132</a></div></div>
<div class="ttc" id="aunionLongUnion_html_afd26d7d3a11130649129850162a7eb39"><div class="ttname"><a href="unionLongUnion.html#afd26d7d3a11130649129850162a7eb39">LongUnion::HighWord</a></div><div class="ttdeci">uint16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00079">LongUnion.h:79</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac4311eaea1f3d194ea475534b33fe9cc"><div class="ttname"><a href="unionLongLongUnion.html#ac4311eaea1f3d194ea475534b33fe9cc">LongLongUnion::LowLong</a></div><div class="ttdeci">LongUnion LowLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00135">LongUnion.h:135</a></div></div>
<div class="ttc" id="aunionLongUnion_html_afd26d7d3a11130649129850162a7eb39"><div class="ttname"><a href="unionLongUnion.html#afd26d7d3a11130649129850162a7eb39">LongUnion::HighWord</a></div><div class="ttdeci">uint16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00081">LongUnion.h:81</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a44ff9a4d34c7293871f5a399a36987b4"><div class="ttname"><a href="unionLongUnion.html#a44ff9a4d34c7293871f5a399a36987b4">LongUnion::Word</a></div><div class="ttdeci">struct LongUnion::@7 Word</div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac349a2b9febb6c2d4e4c4d443881363a"><div class="ttname"><a href="unionLongLongUnion.html#ac349a2b9febb6c2d4e4c4d443881363a">LongLongUnion::ULong</a></div><div class="ttdeci">struct LongLongUnion::@12 ULong</div></div>
<div class="ttc" id="aunionLongLongUnion_html_a1868073f657ae9df0b3aaceb3fa131f2"><div class="ttname"><a href="unionLongLongUnion.html#a1868073f657ae9df0b3aaceb3fa131f2">LongLongUnion::HighLong</a></div><div class="ttdeci">uint32_t HighLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00125">LongUnion.h:125</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a6e8c56fa718517ef9844b272e86e7f4e"><div class="ttname"><a href="unionWordUnion.html#a6e8c56fa718517ef9844b272e86e7f4e">WordUnion::HighByte</a></div><div class="ttdeci">int8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00041">LongUnion.h:41</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a1868073f657ae9df0b3aaceb3fa131f2"><div class="ttname"><a href="unionLongLongUnion.html#a1868073f657ae9df0b3aaceb3fa131f2">LongLongUnion::HighLong</a></div><div class="ttdeci">uint32_t HighLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00128">LongUnion.h:128</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a6e8c56fa718517ef9844b272e86e7f4e"><div class="ttname"><a href="unionWordUnion.html#a6e8c56fa718517ef9844b272e86e7f4e">WordUnion::HighByte</a></div><div class="ttdeci">int8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00043">LongUnion.h:43</a></div></div>
<div class="ttc" id="aunionWordUnion_html_adbe91ea859ad24be95c03d2669065456"><div class="ttname"><a href="unionWordUnion.html#adbe91ea859ad24be95c03d2669065456">WordUnion::Byte</a></div><div class="ttdeci">struct WordUnion::@3 Byte</div></div>
<div class="ttc" id="aunionLongLongUnion_html_a37801aab897114c65fc74d896a827dea"><div class="ttname"><a href="unionLongLongUnion.html#a37801aab897114c65fc74d896a827dea">LongLongUnion::MidLowWord</a></div><div class="ttdeci">WordUnion MidLowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00119">LongUnion.h:119</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a0e1088e17c9fefa37f9ac54d2151bed3"><div class="ttname"><a href="unionWordUnion.html#a0e1088e17c9fefa37f9ac54d2151bed3">WordUnion::Bytes</a></div><div class="ttdeci">int8_t Bytes[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00044">LongUnion.h:44</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a50f0984be8b74a82c9c3e6e02ccc911e"><div class="ttname"><a href="unionLongLongUnion.html#a50f0984be8b74a82c9c3e6e02ccc911e">LongLongUnion::HighLong</a></div><div class="ttdeci">LongUnion HighLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00133">LongUnion.h:133</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a06b7aa96ffe50697e4f42f6f5cae8469"><div class="ttname"><a href="unionLongLongUnion.html#a06b7aa96ffe50697e4f42f6f5cae8469">LongLongUnion::LowWord</a></div><div class="ttdeci">uint16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00106">LongUnion.h:106</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a987b9b0499e30d1ba84f33e38d4cb034"><div class="ttname"><a href="unionLongUnion.html#a987b9b0499e30d1ba84f33e38d4cb034">LongUnion::Long</a></div><div class="ttdeci">int32_t Long</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00094">LongUnion.h:94</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aaf8815ca810b2d8386b5912f127586a7"><div class="ttname"><a href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">LongUnion::ULong</a></div><div class="ttdeci">uint32_t ULong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00093">LongUnion.h:93</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a46852ab787ebd619311851c2c0a12fb5"><div class="ttname"><a href="unionLongLongUnion.html#a46852ab787ebd619311851c2c0a12fb5">LongLongUnion::LongLong</a></div><div class="ttdeci">int64_t LongLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00140">LongUnion.h:140</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a5595650293a30be4a2aa52013b953d88"><div class="ttname"><a href="unionLongUnion.html#a5595650293a30be4a2aa52013b953d88">LongUnion::HighWord</a></div><div class="ttdeci">WordUnion HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00087">LongUnion.h:87</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a45adb668aa3c266c1caa869b64f5110f"><div class="ttname"><a href="unionLongUnion.html#a45adb668aa3c266c1caa869b64f5110f">LongUnion::LowWord</a></div><div class="ttdeci">WordUnion LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00086">LongUnion.h:86</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a4b227e1393e83d3d8be0797b3b3a8609"><div class="ttname"><a href="unionLongLongUnion.html#a4b227e1393e83d3d8be0797b3b3a8609">LongLongUnion::HighWord</a></div><div class="ttdeci">int16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00115">LongUnion.h:115</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a7d2c6c4f8350e564213c8803bf465cff"><div class="ttname"><a href="unionLongLongUnion.html#a7d2c6c4f8350e564213c8803bf465cff">LongLongUnion::UWords</a></div><div class="ttdeci">uint16_t UWords[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00137">LongUnion.h:137</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_aeddcb7029b1c47d1409857c203a988db"><div class="ttname"><a href="unionLongLongUnion.html#aeddcb7029b1c47d1409857c203a988db">LongLongUnion::ULongLong</a></div><div class="ttdeci">uint64_t ULongLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00139">LongUnion.h:139</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a6a1554f58dff1ec24abca7c3b50f287f"><div class="ttname"><a href="unionWordUnion.html#a6a1554f58dff1ec24abca7c3b50f287f">WordUnion::Word</a></div><div class="ttdeci">int16_t Word</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00046">LongUnion.h:46</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a5f3ef81cca525033eda0c46217a09252"><div class="ttname"><a href="unionWordUnion.html#a5f3ef81cca525033eda0c46217a09252">WordUnion::BytePointer</a></div><div class="ttdeci">uint8_t * BytePointer</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00047">LongUnion.h:47</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a37801aab897114c65fc74d896a827dea"><div class="ttname"><a href="unionLongLongUnion.html#a37801aab897114c65fc74d896a827dea">LongLongUnion::MidLowWord</a></div><div class="ttdeci">WordUnion MidLowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00122">LongUnion.h:122</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a0e1088e17c9fefa37f9ac54d2151bed3"><div class="ttname"><a href="unionWordUnion.html#a0e1088e17c9fefa37f9ac54d2151bed3">WordUnion::Bytes</a></div><div class="ttdeci">int8_t Bytes[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00046">LongUnion.h:46</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a50f0984be8b74a82c9c3e6e02ccc911e"><div class="ttname"><a href="unionLongLongUnion.html#a50f0984be8b74a82c9c3e6e02ccc911e">LongLongUnion::HighLong</a></div><div class="ttdeci">LongUnion HighLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00136">LongUnion.h:136</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a06b7aa96ffe50697e4f42f6f5cae8469"><div class="ttname"><a href="unionLongLongUnion.html#a06b7aa96ffe50697e4f42f6f5cae8469">LongLongUnion::LowWord</a></div><div class="ttdeci">uint16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00109">LongUnion.h:109</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a987b9b0499e30d1ba84f33e38d4cb034"><div class="ttname"><a href="unionLongUnion.html#a987b9b0499e30d1ba84f33e38d4cb034">LongUnion::Long</a></div><div class="ttdeci">int32_t Long</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00096">LongUnion.h:96</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aaf8815ca810b2d8386b5912f127586a7"><div class="ttname"><a href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">LongUnion::ULong</a></div><div class="ttdeci">uint32_t ULong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00095">LongUnion.h:95</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a46852ab787ebd619311851c2c0a12fb5"><div class="ttname"><a href="unionLongLongUnion.html#a46852ab787ebd619311851c2c0a12fb5">LongLongUnion::LongLong</a></div><div class="ttdeci">int64_t LongLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00143">LongUnion.h:143</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a5595650293a30be4a2aa52013b953d88"><div class="ttname"><a href="unionLongUnion.html#a5595650293a30be4a2aa52013b953d88">LongUnion::HighWord</a></div><div class="ttdeci">WordUnion HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00089">LongUnion.h:89</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a45adb668aa3c266c1caa869b64f5110f"><div class="ttname"><a href="unionLongUnion.html#a45adb668aa3c266c1caa869b64f5110f">LongUnion::LowWord</a></div><div class="ttdeci">WordUnion LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00088">LongUnion.h:88</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ad639ee45132e99aee9b824cc85045c00"><div class="ttname"><a href="unionLongLongUnion.html#ad639ee45132e99aee9b824cc85045c00">LongLongUnion::Double</a></div><div class="ttdeci">double Double</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00148">LongUnion.h:148</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a4b227e1393e83d3d8be0797b3b3a8609"><div class="ttname"><a href="unionLongLongUnion.html#a4b227e1393e83d3d8be0797b3b3a8609">LongLongUnion::HighWord</a></div><div class="ttdeci">int16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00118">LongUnion.h:118</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a7d2c6c4f8350e564213c8803bf465cff"><div class="ttname"><a href="unionLongLongUnion.html#a7d2c6c4f8350e564213c8803bf465cff">LongLongUnion::UWords</a></div><div class="ttdeci">uint16_t UWords[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00140">LongUnion.h:140</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_aeddcb7029b1c47d1409857c203a988db"><div class="ttname"><a href="unionLongLongUnion.html#aeddcb7029b1c47d1409857c203a988db">LongLongUnion::ULongLong</a></div><div class="ttdeci">uint64_t ULongLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00142">LongUnion.h:142</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a6a1554f58dff1ec24abca7c3b50f287f"><div class="ttname"><a href="unionWordUnion.html#a6a1554f58dff1ec24abca7c3b50f287f">WordUnion::Word</a></div><div class="ttdeci">int16_t Word</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00048">LongUnion.h:48</a></div></div>
<div class="ttc" id="aunionWordUnion_html_a5f3ef81cca525033eda0c46217a09252"><div class="ttname"><a href="unionWordUnion.html#a5f3ef81cca525033eda0c46217a09252">WordUnion::BytePointer</a></div><div class="ttdeci">uint8_t * BytePointer</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00049">LongUnion.h:49</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ad131e93d0be6fc5d02cef733c0cfe39a"><div class="ttname"><a href="unionLongLongUnion.html#ad131e93d0be6fc5d02cef733c0cfe39a">LongLongUnion::UWord</a></div><div class="ttdeci">struct LongLongUnion::@9 UWord</div></div>
<div class="ttc" id="aunionLongUnion_html_a8c5178886b7c046da66506d996ee6587"><div class="ttname"><a href="unionLongUnion.html#a8c5178886b7c046da66506d996ee6587">LongUnion::Bytes</a></div><div class="ttdeci">int8_t Bytes[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00090">LongUnion.h:90</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ab994fd1235c547aec88c2c8dc654ad5e"><div class="ttname"><a href="unionLongLongUnion.html#ab994fd1235c547aec88c2c8dc654ad5e">LongLongUnion::MidLowWord</a></div><div class="ttdeci">int16_t MidLowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00113">LongUnion.h:113</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aba027b17010803cf910996cae9201f32"><div class="ttname"><a href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">LongUnion::MidHighByte</a></div><div class="ttdeci">uint8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00061">LongUnion.h:61</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a96deff8963ef4155f33a26390f8f0a4b"><div class="ttname"><a href="unionLongUnion.html#a96deff8963ef4155f33a26390f8f0a4b">LongUnion::UWords</a></div><div class="ttdeci">uint16_t UWords[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00091">LongUnion.h:91</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a9c0af1e73f44cf26341485cdac332bd2"><div class="ttname"><a href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2">LongUnion::LowWord</a></div><div class="ttdeci">int16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00082">LongUnion.h:82</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a8c5178886b7c046da66506d996ee6587"><div class="ttname"><a href="unionLongUnion.html#a8c5178886b7c046da66506d996ee6587">LongUnion::Bytes</a></div><div class="ttdeci">int8_t Bytes[4]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00092">LongUnion.h:92</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ab994fd1235c547aec88c2c8dc654ad5e"><div class="ttname"><a href="unionLongLongUnion.html#ab994fd1235c547aec88c2c8dc654ad5e">LongLongUnion::MidLowWord</a></div><div class="ttdeci">int16_t MidLowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00116">LongUnion.h:116</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aba027b17010803cf910996cae9201f32"><div class="ttname"><a href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">LongUnion::MidHighByte</a></div><div class="ttdeci">uint8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00063">LongUnion.h:63</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a96deff8963ef4155f33a26390f8f0a4b"><div class="ttname"><a href="unionLongUnion.html#a96deff8963ef4155f33a26390f8f0a4b">LongUnion::UWords</a></div><div class="ttdeci">uint16_t UWords[2]</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00093">LongUnion.h:93</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a9c0af1e73f44cf26341485cdac332bd2"><div class="ttname"><a href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2">LongUnion::LowWord</a></div><div class="ttdeci">int16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00084">LongUnion.h:84</a></div></div>
<div class="ttc" id="aunionLongUnion_html_ab5c029c115e4e0d03294e27cbef24972"><div class="ttname"><a href="unionLongUnion.html#ab5c029c115e4e0d03294e27cbef24972">LongUnion::UWord</a></div><div class="ttdeci">struct LongUnion::@6 UWord</div></div>
<div class="ttc" id="aunionLongLongUnion_html_a91ef5c0ed418942605e8b7ef45e20c3c"><div class="ttname"><a href="unionLongLongUnion.html#a91ef5c0ed418942605e8b7ef45e20c3c">LongLongUnion::Long</a></div><div class="ttdeci">struct LongLongUnion::@13 Long</div></div>
<div class="ttc" id="aunionLongUnion_html_a9c076778ee637e06ea2ccec3ee6703ec"><div class="ttname"><a href="unionLongUnion.html#a9c076778ee637e06ea2ccec3ee6703ec">LongUnion::HighByte</a></div><div class="ttdeci">int8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00068">LongUnion.h:68</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a9c076778ee637e06ea2ccec3ee6703ec"><div class="ttname"><a href="unionLongUnion.html#a9c076778ee637e06ea2ccec3ee6703ec">LongUnion::HighByte</a></div><div class="ttdeci">int8_t HighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00070">LongUnion.h:70</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a2f4652f7d96f5fd19eb780109df1e38a"><div class="ttname"><a href="unionLongUnion.html#a2f4652f7d96f5fd19eb780109df1e38a">LongUnion::WordUnion</a></div><div class="ttdeci">struct LongUnion::@8 WordUnion</div></div>
<div class="ttc" id="aunionWordUnion_html_ade13e75ba3678d0b5b0590906156d9ec"><div class="ttname"><a href="unionWordUnion.html#ade13e75ba3678d0b5b0590906156d9ec">WordUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00036">LongUnion.h:36</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac5d1bc864c43d71f2ec922384c136531"><div class="ttname"><a href="unionLongLongUnion.html#ac5d1bc864c43d71f2ec922384c136531">LongLongUnion::MidHighWord</a></div><div class="ttdeci">WordUnion MidHighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00120">LongUnion.h:120</a></div></div>
<div class="ttc" id="aunionWordUnion_html_ac72da7d551c05ed98fe75c8d239d9e23"><div class="ttname"><a href="unionWordUnion.html#ac72da7d551c05ed98fe75c8d239d9e23">WordUnion::UWord</a></div><div class="ttdeci">uint16_t UWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00045">LongUnion.h:45</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a009eb397d186ec98882e77b66424c897"><div class="ttname"><a href="unionLongLongUnion.html#a009eb397d186ec98882e77b66424c897">LongLongUnion::MidHighWord</a></div><div class="ttdeci">uint16_t MidHighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00108">LongUnion.h:108</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a7bd3d17b304e1cb548222583110ec84f"><div class="ttname"><a href="unionLongLongUnion.html#a7bd3d17b304e1cb548222583110ec84f">LongLongUnion::LowLong</a></div><div class="ttdeci">int32_t LowLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00128">LongUnion.h:128</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_aacae5363fc2807618767c8b6be083fb9"><div class="ttname"><a href="unionLongLongUnion.html#aacae5363fc2807618767c8b6be083fb9">LongLongUnion::LowLong</a></div><div class="ttdeci">uint32_t LowLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00124">LongUnion.h:124</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a5404235118006061ae33de167803c70a"><div class="ttname"><a href="unionLongUnion.html#a5404235118006061ae33de167803c70a">LongUnion::MidHighByte</a></div><div class="ttdeci">int8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00067">LongUnion.h:67</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a953d8a796924426954a56a4a324e35b6"><div class="ttname"><a href="unionLongUnion.html#a953d8a796924426954a56a4a324e35b6">LongUnion::LowByte</a></div><div class="ttdeci">int8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00065">LongUnion.h:65</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a5c6322aadb7461165ceea14ae7a12adc"><div class="ttname"><a href="unionLongLongUnion.html#a5c6322aadb7461165ceea14ae7a12adc">LongLongUnion::LowWord</a></div><div class="ttdeci">WordUnion LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00118">LongUnion.h:118</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a2b12288fe56e397d39ba9085fca70616"><div class="ttname"><a href="unionLongUnion.html#a2b12288fe56e397d39ba9085fca70616">LongUnion::HighWord</a></div><div class="ttdeci">int16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00083">LongUnion.h:83</a></div></div>
<div class="ttc" id="aunionLongUnion_html_abbb97b234b56a9fc85e675baef650eb2"><div class="ttname"><a href="unionLongUnion.html#abbb97b234b56a9fc85e675baef650eb2">LongUnion::MidLowByte</a></div><div class="ttdeci">int8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00066">LongUnion.h:66</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a34cc7306550b99e4821a7cf6aee59a05"><div class="ttname"><a href="unionLongLongUnion.html#a34cc7306550b99e4821a7cf6aee59a05">LongLongUnion::HighLong</a></div><div class="ttdeci">int32_t HighLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00129">LongUnion.h:129</a></div></div>
<div class="ttc" id="aunionWordUnion_html_ade13e75ba3678d0b5b0590906156d9ec"><div class="ttname"><a href="unionWordUnion.html#ade13e75ba3678d0b5b0590906156d9ec">WordUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00038">LongUnion.h:38</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_ac5d1bc864c43d71f2ec922384c136531"><div class="ttname"><a href="unionLongLongUnion.html#ac5d1bc864c43d71f2ec922384c136531">LongLongUnion::MidHighWord</a></div><div class="ttdeci">WordUnion MidHighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00123">LongUnion.h:123</a></div></div>
<div class="ttc" id="aunionWordUnion_html_ac72da7d551c05ed98fe75c8d239d9e23"><div class="ttname"><a href="unionWordUnion.html#ac72da7d551c05ed98fe75c8d239d9e23">WordUnion::UWord</a></div><div class="ttdeci">uint16_t UWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00047">LongUnion.h:47</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a009eb397d186ec98882e77b66424c897"><div class="ttname"><a href="unionLongLongUnion.html#a009eb397d186ec98882e77b66424c897">LongLongUnion::MidHighWord</a></div><div class="ttdeci">uint16_t MidHighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00111">LongUnion.h:111</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a7bd3d17b304e1cb548222583110ec84f"><div class="ttname"><a href="unionLongLongUnion.html#a7bd3d17b304e1cb548222583110ec84f">LongLongUnion::LowLong</a></div><div class="ttdeci">int32_t LowLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00131">LongUnion.h:131</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_aacae5363fc2807618767c8b6be083fb9"><div class="ttname"><a href="unionLongLongUnion.html#aacae5363fc2807618767c8b6be083fb9">LongLongUnion::LowLong</a></div><div class="ttdeci">uint32_t LowLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00127">LongUnion.h:127</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a5404235118006061ae33de167803c70a"><div class="ttname"><a href="unionLongUnion.html#a5404235118006061ae33de167803c70a">LongUnion::MidHighByte</a></div><div class="ttdeci">int8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00069">LongUnion.h:69</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a953d8a796924426954a56a4a324e35b6"><div class="ttname"><a href="unionLongUnion.html#a953d8a796924426954a56a4a324e35b6">LongUnion::LowByte</a></div><div class="ttdeci">int8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00067">LongUnion.h:67</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a5c6322aadb7461165ceea14ae7a12adc"><div class="ttname"><a href="unionLongLongUnion.html#a5c6322aadb7461165ceea14ae7a12adc">LongLongUnion::LowWord</a></div><div class="ttdeci">WordUnion LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00121">LongUnion.h:121</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a2b12288fe56e397d39ba9085fca70616"><div class="ttname"><a href="unionLongUnion.html#a2b12288fe56e397d39ba9085fca70616">LongUnion::HighWord</a></div><div class="ttdeci">int16_t HighWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00085">LongUnion.h:85</a></div></div>
<div class="ttc" id="aunionLongUnion_html_abbb97b234b56a9fc85e675baef650eb2"><div class="ttname"><a href="unionLongUnion.html#abbb97b234b56a9fc85e675baef650eb2">LongUnion::MidLowByte</a></div><div class="ttdeci">int8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00068">LongUnion.h:68</a></div></div>
<div class="ttc" id="aunionLongLongUnion_html_a34cc7306550b99e4821a7cf6aee59a05"><div class="ttname"><a href="unionLongLongUnion.html#a34cc7306550b99e4821a7cf6aee59a05">LongLongUnion::HighLong</a></div><div class="ttdeci">int32_t HighLong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00132">LongUnion.h:132</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="LongUnion_8h.html">LongUnion.h</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -91,7 +91,7 @@ $(document).ready(function(){initNavTree('README_8md.html',''); initResizable();
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="README_8md.html">README.md</a></li>
<li class="footer">Generated on Thu Dec 29 2022 19:37:46 for IRremote by
<li class="footer">Generated on Sat Jan 27 2024 22:47:39 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>

View File

@ -1,139 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/TinyIRReceiver.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('TinyIRReceiver_8cpp_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a> </div>
<div class="headertitle">
<div class="title">TinyIRReceiver.cpp.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;Arduino.h&gt;</code><br />
<code>#include &quot;<a class="el" href="TinyIRReceiver_8h_source.html">TinyIRReceiver.h</a>&quot;</code><br />
<code>#include &quot;<a class="el" href="digitalWriteFast_8h_source.html">digitalWriteFast.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for TinyIRReceiver.cpp.h:</div>
<div class="dyncontent">
<div class="center"><img src="TinyIRReceiver_8cpp_8h__incl.png" border="0" usemap="#src_2TinyIRReceiver_8cpp_8h" alt=""/></div>
<map name="src_2TinyIRReceiver_8cpp_8h" id="src_2TinyIRReceiver_8cpp_8h">
<area shape="rect" title=" " alt="" coords="13,5,179,32"/>
<area shape="rect" title=" " alt="" coords="5,229,83,256"/>
<area shape="rect" href="TinyIRReceiver_8h.html" title=" " alt="" coords="37,80,155,107"/>
<area shape="rect" href="digitalWriteFast_8h.html" title=" " alt="" coords="179,80,303,107"/>
<area shape="rect" href="LongUnion_8h.html" title=" " alt="" coords="87,155,182,181"/>
<area shape="rect" title=" " alt="" coords="107,229,173,256"/>
</map>
</div>
</div>
<p><a href="TinyIRReceiver_8cpp_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="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gaf44d26445244a24863cda1636eb8bf97"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gaf44d26445244a24863cda1636eb8bf97">handleReceivedIRData</a> (uint16_t aAddress, uint8_t aCommand, bool isRepetition)</td></tr>
<tr class="memdesc:gaf44d26445244a24863cda1636eb8bf97"><td class="mdescLeft">&#160;</td><td class="mdescRight">Declaration of the callback function provided by the user application. <a href="group__TinyReceiver.html#gaf44d26445244a24863cda1636eb8bf97">More...</a><br /></td></tr>
<tr class="separator:gaf44d26445244a24863cda1636eb8bf97"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3c3d6703d25dbcc0555823e23eec0e69"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">IRPinChangeInterruptHandler</a> (void)</td></tr>
<tr class="memdesc:ga3c3d6703d25dbcc0555823e23eec0e69"><td class="mdescLeft">&#160;</td><td class="mdescRight">The ISR of TinyIRRreceiver. <a href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">More...</a><br /></td></tr>
<tr class="separator:ga3c3d6703d25dbcc0555823e23eec0e69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga1f3913249343258d738ea0a48f7e1aed"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga1f3913249343258d738ea0a48f7e1aed">initPCIInterruptForTinyReceiver</a> ()</td></tr>
<tr class="memdesc:ga1f3913249343258d738ea0a48f7e1aed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes hardware interrupt generation according to IR_INPUT_PIN or use attachInterrupt() function. <a href="group__TinyReceiver.html#ga1f3913249343258d738ea0a48f7e1aed">More...</a><br /></td></tr>
<tr class="separator:ga1f3913249343258d738ea0a48f7e1aed"><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:ga30567324f26c2fae24bb11592262b6d3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structTinyIRReceiverStruct.html">TinyIRReceiverStruct</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a></td></tr>
<tr class="separator:ga30567324f26c2fae24bb11592262b6d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="TinyIRReceiver_8cpp_8h.html">TinyIRReceiver.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:01 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,7 +0,0 @@
var TinyIRReceiver_8cpp_8h =
[
[ "handleReceivedIRData", "group__TinyReceiver.html#gaf44d26445244a24863cda1636eb8bf97", null ],
[ "initPCIInterruptForTinyReceiver", "group__TinyReceiver.html#ga1f3913249343258d738ea0a48f7e1aed", null ],
[ "IRPinChangeInterruptHandler", "group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69", null ],
[ "TinyIRReceiverControl", "group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3", null ]
];

View File

@ -1,8 +0,0 @@
<map id="src/TinyIRReceiver.cpp.h" name="src/TinyIRReceiver.cpp.h">
<area shape="rect" id="node1" title=" " alt="" coords="13,5,179,32"/>
<area shape="rect" id="node2" title=" " alt="" coords="5,229,83,256"/>
<area shape="rect" id="node3" href="$TinyIRReceiver_8h.html" title=" " alt="" coords="37,80,155,107"/>
<area shape="rect" id="node6" href="$digitalWriteFast_8h.html" title=" " alt="" coords="179,80,303,107"/>
<area shape="rect" id="node4" href="$LongUnion_8h.html" title=" " alt="" coords="87,155,182,181"/>
<area shape="rect" id="node5" title=" " alt="" coords="107,229,173,256"/>
</map>

View File

@ -1 +0,0 @@
cb6084176841a83961af4c4500269a2e

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

View File

@ -1,512 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/TinyIRReceiver.cpp.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('TinyIRReceiver_8cpp_8h_source.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="headertitle">
<div class="title">TinyIRReceiver.cpp.h</div> </div>
</div><!--header-->
<div class="contents">
<a href="TinyIRReceiver_8cpp_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">/*</span></div>
<div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> * TinyIRReceiver.cpp.h</span></div>
<div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * Receives IR protocol data of NEC protocol using pin change interrupts.</span></div>
<div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> * NEC is the protocol of most cheap remote controls for Arduino.</span></div>
<div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * No parity check is done!</span></div>
<div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * On a completely received IR command, the user function handleReceivedIRData(uint16_t aAddress, uint8_t aCommand, bool isRepetition)</span></div>
<div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> * is called in Interrupt context but with interrupts being enabled to enable use of delay() etc.</span></div>
<div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * !!!!!!!!!!!!!!!!!!!!!!</span></div>
<div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * Functions called in interrupt context should be running as short as possible,</span></div>
<div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * so if you require longer action, save the data (address + command) and handle them in the main loop.</span></div>
<div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * !!!!!!!!!!!!!!!!!!!!!</span></div>
<div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * Copyright (C) 2021 Armin Joachimsmeyer</span></div>
<div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * armin.joachimsmeyer@gmail.com</span></div>
<div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> * This file is part of IRMP https://github.com/ukw100/IRMP.</span></div>
<div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * This file is part of Arduino-IRremote https://github.com/Arduino-IRremote/Arduino-IRremote.</span></div>
<div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * TinyIRReceiver is free software: you can redistribute it and/or modify</span></div>
<div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * it under the terms of the GNU General Public License as published by</span></div>
<div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * the Free Software Foundation, either version 3 of the License, or</span></div>
<div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * (at your option) any later version.</span></div>
<div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * This program is distributed in the hope that it will be useful,</span></div>
<div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * but WITHOUT ANY WARRANTY; without even the implied warranty of</span></div>
<div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the</span></div>
<div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * GNU General Public License for more details.</span></div>
<div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> * You should have received a copy of the GNU General Public License</span></div>
<div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;<span class="comment"> * along with this program. If not, see &lt;http://www.gnu.org/licenses/gpl.html&gt;.</span></div>
<div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="comment"> *</span></div>
<div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="comment"> */</span></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;<span class="preprocessor">#ifndef TINY_IR_RECEIVER_CPP_H</span></div>
<div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;<span class="preprocessor">#define TINY_IR_RECEIVER_CPP_H</span></div>
<div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160; </div>
<div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;Arduino.h&gt;</span></div>
<div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160; </div>
<div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="TinyIRReceiver_8h.html">TinyIRReceiver.h</a>&quot;</span></div>
<div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &quot;<a class="code" href="digitalWriteFast_8h.html">digitalWriteFast.h</a>&quot;</span></div>
<div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160; </div>
<div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="comment">//#define IR_MEASURE_TIMING</span></div>
<div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;<span class="comment">//#define IR_TIMING_TEST_PIN 7</span></div>
<div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="comment">//#define DO_NOT_USE_FEEDBACK_LED</span></div>
<div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160; </div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;<span class="comment">//#define TRACE</span></div>
<div class="line"><a name="l00053"></a><span class="lineno"><a class="line" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3"> 53</a></span>&#160;<a class="code" href="structTinyIRReceiverStruct.html">TinyIRReceiverStruct</a> <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>;</div>
<div class="line"><a name="l00054"></a><span class="lineno"> 54</span>&#160; </div>
<div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<span class="preprocessor">#if defined(ESP8266)</span></div>
<div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;ICACHE_RAM_ATTR</div>
<div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<span class="preprocessor">#elif defined(ESP32)</span></div>
<div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;IRAM_ATTR</div>
<div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00064"></a><span class="lineno"><a class="line" href="group__TinyReceiver.html#gaf44d26445244a24863cda1636eb8bf97"> 64</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__TinyReceiver.html#gaf44d26445244a24863cda1636eb8bf97">handleReceivedIRData</a>(uint16_t aAddress, uint8_t aCommand, <span class="keywordtype">bool</span> isRepetition);</div>
<div class="line"><a name="l00065"></a><span class="lineno"> 65</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160;<span class="preprocessor">#if defined(ESP8266)</span></div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;ICACHE_RAM_ATTR</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;<span class="preprocessor">#elif defined(ESP32)</span></div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160;IRAM_ATTR</div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00076"></a><span class="lineno"><a class="line" href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69"> 76</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">IRPinChangeInterruptHandler</a>(<span class="keywordtype">void</span>) {</div>
<div class="line"><a name="l00077"></a><span class="lineno"> 77</span>&#160;<span class="preprocessor">#if defined(IR_MEASURE_TIMING) &amp;&amp; defined(IR_TIMING_TEST_PIN)</span></div>
<div class="line"><a name="l00078"></a><span class="lineno"> 78</span>&#160; <a class="code" href="digitalWriteFast_8h.html#a9bef074dfc5a83ffbb27929185ef9597">digitalWriteFast</a>(IR_TIMING_TEST_PIN, HIGH); <span class="comment">// 2 clock cycles</span></div>
<div class="line"><a name="l00079"></a><span class="lineno"> 79</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;<span class="comment"> * Save IR input level</span></div>
<div class="line"><a name="l00082"></a><span class="lineno"> 82</span>&#160;<span class="comment"> * Negative logic, true / HIGH means inactive / IR space, LOW / false means IR mark.</span></div>
<div class="line"><a name="l00083"></a><span class="lineno"> 83</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00084"></a><span class="lineno"> 84</span>&#160; uint_fast8_t tIRLevel = <a class="code" href="digitalWriteFast_8h.html#a3d35ce09bbea79b9f4e9fb0c291da92c">digitalReadFast</a>(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>);</div>
<div class="line"><a name="l00085"></a><span class="lineno"> 85</span>&#160; </div>
<div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160;<span class="preprocessor">#if !defined(DO_NOT_USE_FEEDBACK_LED) &amp;&amp; defined(IR_FEEDBACK_LED_PIN)</span></div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <a class="code" href="digitalWriteFast_8h.html#a9bef074dfc5a83ffbb27929185ef9597">digitalWriteFast</a>(IR_FEEDBACK_LED_PIN, !tIRLevel);</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; </div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<span class="comment"> * 1. compute microseconds after last change</span></div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00093"></a><span class="lineno"> 93</span>&#160; uint32_t tCurrentMicros = micros();</div>
<div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160; uint16_t tMicrosOfMarkOrSpace = tCurrentMicros - <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a978f2ac480cb3ab428ff3016239413f1">LastChangeMicros</a>;</div>
<div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a978f2ac480cb3ab428ff3016239413f1">LastChangeMicros</a> = tCurrentMicros;</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; uint8_t tState = <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#aca59e5c5331a581e0603a59c552fa8c9">IRReceiverState</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;<span class="preprocessor">#ifdef TRACE</span></div>
<div class="line"><a name="l00100"></a><span class="lineno"> 100</span>&#160; Serial.print(tState);</div>
<div class="line"><a name="l00101"></a><span class="lineno"> 101</span>&#160; Serial.print(<span class="charliteral">&#39; &#39;</span>);</div>
<div class="line"><a name="l00102"></a><span class="lineno"> 102</span>&#160;<span class="comment">// Serial.print(F(&quot; I=&quot;));</span></div>
<div class="line"><a name="l00103"></a><span class="lineno"> 103</span>&#160;<span class="comment">// Serial.print(tIRLevel);</span></div>
<div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<span class="comment">// Serial.print(F(&quot; D=&quot;));</span></div>
<div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160;<span class="comment">// Serial.print(tDeltaMicros);</span></div>
<div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160;<span class="comment">// Serial.println();</span></div>
<div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;<span class="preprocessor">#endif</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="keywordflow">if</span> (tIRLevel == LOW) {</div>
<div class="line"><a name="l00110"></a><span class="lineno"> 110</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00111"></a><span class="lineno"> 111</span>&#160;<span class="comment"> * We have a mark here</span></div>
<div class="line"><a name="l00112"></a><span class="lineno"> 112</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00113"></a><span class="lineno"> 113</span>&#160; <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt; 2 * <a class="code" href="group__Decoder.html#ga8d393b95d8df4dfa15873aec6a37965e">NEC_HEADER_MARK</a>) {</div>
<div class="line"><a name="l00114"></a><span class="lineno"> 114</span>&#160; <span class="comment">// timeout -&gt; must reset state machine</span></div>
<div class="line"><a name="l00115"></a><span class="lineno"> 115</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</div>
<div class="line"><a name="l00116"></a><span class="lineno"> 116</span>&#160; }</div>
<div class="line"><a name="l00117"></a><span class="lineno"> 117</span>&#160; <span class="keywordflow">if</span> (tState == <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>) {</div>
<div class="line"><a name="l00118"></a><span class="lineno"> 118</span>&#160; <span class="comment">// We are at the beginning of the header mark, check timing at the next transition</span></div>
<div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga43017cba7c72b3f0d45265f417e5195d">IR_RECEIVER_STATE_WAITING_FOR_START_SPACE</a>;</div>
<div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; }</div>
<div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; </div>
<div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160; <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tState == <a class="code" href="group__TinyReceiver.html#gaecf505182d1fa2aa885fcde6cd4160bf">IR_RECEIVER_STATE_WAITING_FOR_FIRST_DATA_MARK</a>) {</div>
<div class="line"><a name="l00123"></a><span class="lineno"> 123</span>&#160; <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt;= <a class="code" href="group__TinyReceiver.html#ga02b97ed6af9381a224ea3be0cab054a0">lowerValue25Percent</a>(<a class="code" href="group__Decoder.html#ga5c728ed320ffee624e26767be0a80404">NEC_HEADER_SPACE</a>)</div>
<div class="line"><a name="l00124"></a><span class="lineno"> 124</span>&#160; &amp;&amp; tMicrosOfMarkOrSpace &lt;= <a class="code" href="group__TinyReceiver.html#ga22a6cd77d395a6c06686eafdf9aa2b52">upperValue25Percent</a>(<a class="code" href="group__Decoder.html#ga5c728ed320ffee624e26767be0a80404">NEC_HEADER_SPACE</a>)) {</div>
<div class="line"><a name="l00125"></a><span class="lineno"> 125</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;<span class="comment"> * We have a valid data header space here -&gt; initialize data</span></div>
<div class="line"><a name="l00127"></a><span class="lineno"> 127</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00128"></a><span class="lineno"> 128</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#accdf38f518f17dfaf1a8aa870d77ce91">IRRawDataBitCounter</a> = 0;</div>
<div class="line"><a name="l00129"></a><span class="lineno"> 129</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">ULong</a> = 0;</div>
<div class="line"><a name="l00130"></a><span class="lineno"> 130</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#aa6f580c1bf0c11c37edefd255283361a">IRRawDataMask</a> = 1;</div>
<div class="line"><a name="l00131"></a><span class="lineno"> 131</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a003e482629350aaee549b482dd653922">IRRepeatDetected</a> = <span class="keyword">false</span>;</div>
<div class="line"><a name="l00132"></a><span class="lineno"> 132</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e">IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</a>;</div>
<div class="line"><a name="l00133"></a><span class="lineno"> 133</span>&#160; } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt;= <a class="code" href="group__TinyReceiver.html#ga02b97ed6af9381a224ea3be0cab054a0">lowerValue25Percent</a>(<a class="code" href="group__Decoder.html#ga91880ffa0b09391f2c827d3a1c565abf">NEC_REPEAT_HEADER_SPACE</a>)</div>
<div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160; &amp;&amp; tMicrosOfMarkOrSpace &lt;= <a class="code" href="group__TinyReceiver.html#ga22a6cd77d395a6c06686eafdf9aa2b52">upperValue25Percent</a>(<a class="code" href="group__Decoder.html#ga91880ffa0b09391f2c827d3a1c565abf">NEC_REPEAT_HEADER_SPACE</a>)</div>
<div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160; &amp;&amp; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#accdf38f518f17dfaf1a8aa870d77ce91">IRRawDataBitCounter</a> &gt;= <a class="code" href="group__Decoder.html#gaa82c77bc0131ac28bc3534b8cf3422bc">NEC_BITS</a>) {</div>
<div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160;<span class="comment"> * We have a repeat header here and no broken receive before -&gt; set repeat flag</span></div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a003e482629350aaee549b482dd653922">IRRepeatDetected</a> = <span class="keyword">true</span>;</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e">IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</a>;</div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160; <span class="comment">// This parts are optimized by the compiler into jumps to one code :-)</span></div>
<div class="line"><a name="l00143"></a><span class="lineno"> 143</span>&#160; <span class="comment">// Wrong length -&gt; reset state</span></div>
<div class="line"><a name="l00144"></a><span class="lineno"> 144</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</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; }</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> (tState == <a class="code" href="group__TinyReceiver.html#gae237abb240b59b9c8dd7d853fc3c76b1">IR_RECEIVER_STATE_WAITING_FOR_DATA_MARK</a>) {</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <span class="comment">// Check data space length</span></div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt;= <a class="code" href="group__TinyReceiver.html#gadc6908665014a0bef4442c7769ed5054">lowerValue</a>(<a class="code" href="group__Decoder.html#ga5ee46914e98bf7f87f32a7104843b243">NEC_ZERO_SPACE</a>) &amp;&amp; tMicrosOfMarkOrSpace &lt;= <a class="code" href="group__TinyReceiver.html#gaf6134d81e390f1e3dcd60e2aca9c9143">upperValue</a>(<a class="code" href="group__Decoder.html#ga5ac04ec8b2185c9fb257d39c472733b1">NEC_ONE_SPACE</a>)) {</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; <span class="comment">// We have a valid bit here</span></div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e">IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</a>;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160; <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt;= 2 * <a class="code" href="group__Decoder.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a>) {</div>
<div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160; <span class="comment">// we received a 1</span></div>
<div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">ULong</a> |= <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#aa6f580c1bf0c11c37edefd255283361a">IRRawDataMask</a>;</div>
<div class="line"><a name="l00156"></a><span class="lineno"> 156</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160; <span class="comment">// we received a 0 - empty code for documentation</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">// prepare for next bit</span></div>
<div class="line"><a name="l00160"></a><span class="lineno"> 160</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#aa6f580c1bf0c11c37edefd255283361a">IRRawDataMask</a> = <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#aa6f580c1bf0c11c37edefd255283361a">IRRawDataMask</a> &lt;&lt; 1;</div>
<div class="line"><a name="l00161"></a><span class="lineno"> 161</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#accdf38f518f17dfaf1a8aa870d77ce91">IRRawDataBitCounter</a>++;</div>
<div class="line"><a name="l00162"></a><span class="lineno"> 162</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00163"></a><span class="lineno"> 163</span>&#160; <span class="comment">// Wrong length -&gt; reset state</span></div>
<div class="line"><a name="l00164"></a><span class="lineno"> 164</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</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="keywordflow">else</span> {</div>
<div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <span class="comment">// error wrong state for the received level, e.g. if we missed one change interrupt -&gt; reset state</span></div>
<div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</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; }</div>
<div class="line"><a name="l00171"></a><span class="lineno"> 171</span>&#160; </div>
<div class="line"><a name="l00172"></a><span class="lineno"> 172</span>&#160; <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00173"></a><span class="lineno"> 173</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00174"></a><span class="lineno"> 174</span>&#160;<span class="comment"> * We have a space here</span></div>
<div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <span class="keywordflow">if</span> (tState == <a class="code" href="group__TinyReceiver.html#ga43017cba7c72b3f0d45265f417e5195d">IR_RECEIVER_STATE_WAITING_FOR_START_SPACE</a>) {</div>
<div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160;<span class="comment"> * Check length of header mark here</span></div>
<div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00180"></a><span class="lineno"> 180</span>&#160; <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt;= <a class="code" href="group__TinyReceiver.html#ga02b97ed6af9381a224ea3be0cab054a0">lowerValue25Percent</a>(<a class="code" href="group__Decoder.html#ga8d393b95d8df4dfa15873aec6a37965e">NEC_HEADER_MARK</a>)</div>
<div class="line"><a name="l00181"></a><span class="lineno"> 181</span>&#160; &amp;&amp; tMicrosOfMarkOrSpace &lt;= <a class="code" href="group__TinyReceiver.html#ga22a6cd77d395a6c06686eafdf9aa2b52">upperValue25Percent</a>(<a class="code" href="group__Decoder.html#ga8d393b95d8df4dfa15873aec6a37965e">NEC_HEADER_MARK</a>)) {</div>
<div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#gaecf505182d1fa2aa885fcde6cd4160bf">IR_RECEIVER_STATE_WAITING_FOR_FIRST_DATA_MARK</a>;</div>
<div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160; <span class="comment">// Wrong length of header mark -&gt; reset state</span></div>
<div class="line"><a name="l00185"></a><span class="lineno"> 185</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</div>
<div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160; }</div>
<div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; }</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="keywordflow">else</span> <span class="keywordflow">if</span> (tState == <a class="code" href="group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e">IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</a>) {</div>
<div class="line"><a name="l00190"></a><span class="lineno"> 190</span>&#160; <span class="comment">// Check data mark length</span></div>
<div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160; <span class="keywordflow">if</span> (tMicrosOfMarkOrSpace &gt;= <a class="code" href="group__TinyReceiver.html#gadc6908665014a0bef4442c7769ed5054">lowerValue</a>(<a class="code" href="group__Decoder.html#ga3abbe30ef3781c1cf2490003e1c1443a">NEC_BIT_MARK</a>) &amp;&amp; tMicrosOfMarkOrSpace &lt;= <a class="code" href="group__TinyReceiver.html#gaf6134d81e390f1e3dcd60e2aca9c9143">upperValue</a>(<a class="code" href="group__Decoder.html#ga3abbe30ef3781c1cf2490003e1c1443a">NEC_BIT_MARK</a>)) {</div>
<div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160;<span class="comment"> * We have a valid mark here, check for transmission complete</span></div>
<div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#accdf38f518f17dfaf1a8aa870d77ce91">IRRawDataBitCounter</a> &gt;= <a class="code" href="group__Decoder.html#gaa82c77bc0131ac28bc3534b8cf3422bc">NEC_BITS</a> || <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a003e482629350aaee549b482dd653922">IRRepeatDetected</a>) {</div>
<div class="line"><a name="l00196"></a><span class="lineno"> 196</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00197"></a><span class="lineno"> 197</span>&#160;<span class="comment"> * Code complete -&gt; call callback, no parity check!</span></div>
<div class="line"><a name="l00198"></a><span class="lineno"> 198</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00199"></a><span class="lineno"> 199</span>&#160; <span class="comment">// Reset state for new start</span></div>
<div class="line"><a name="l00200"></a><span class="lineno"> 200</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</div>
<div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;<span class="preprocessor">#if !defined(ARDUINO_ARCH_MBED)</span></div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; interrupts();</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160;<span class="comment"> * Address reduction to 8 bit</span></div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">if</span> (<a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#a39959ea2f32e1a035182d01376ae2dce">UByte</a>.<a class="code" href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LowByte</a></div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; == (uint8_t) (~<a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#a39959ea2f32e1a035182d01376ae2dce">UByte</a>.<a class="code" href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">MidLowByte</a>)) {</div>
<div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="comment">// standard 8 bit address NEC protocol</span></div>
<div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#a39959ea2f32e1a035182d01376ae2dce">UByte</a>.<a class="code" href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">MidLowByte</a> = 0; <span class="comment">// Address is the first 8 bit</span></div>
<div class="line"><a name="l00211"></a><span class="lineno"> 211</span>&#160; }</div>
<div class="line"><a name="l00212"></a><span class="lineno"> 212</span>&#160; </div>
<div class="line"><a name="l00213"></a><span class="lineno"> 213</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;<span class="comment"> * Call user provided callback here</span></div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; <a class="code" href="group__TinyReceiver.html#ga5c751ad19033cb8c209d7253dccf34e7">handleReceivedTinyIRData</a>(<a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#a5a22363e05a97df308b26f3d70636fd4">UWord</a>.<a class="code" href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2">LowWord</a>,</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">IRRawData</a>.<a class="code" href="unionLongUnion.html#a39959ea2f32e1a035182d01376ae2dce">UByte</a>.<a class="code" href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">MidHighByte</a>, <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#a003e482629350aaee549b482dd653922">IRRepeatDetected</a>);</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; </div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160; <span class="comment">// not finished yet</span></div>
<div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#gae237abb240b59b9c8dd7d853fc3c76b1">IR_RECEIVER_STATE_WAITING_FOR_DATA_MARK</a>;</div>
<div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160; }</div>
<div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160; <span class="comment">// Wrong length -&gt; reset state</span></div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; }</div>
<div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160; } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160; <span class="comment">// error wrong state for the received level, e.g. if we missed one change interrupt -&gt; reset state</span></div>
<div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160; tState = <a class="code" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>;</div>
<div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160; }</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; }</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160; </div>
<div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160; <a class="code" href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a>.<a class="code" href="structTinyIRReceiverStruct.html#aca59e5c5331a581e0603a59c552fa8c9">IRReceiverState</a> = tState;</div>
<div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;<span class="preprocessor">#ifdef IR_MEASURE_TIMING</span></div>
<div class="line"><a name="l00235"></a><span class="lineno"> 235</span>&#160; <a class="code" href="digitalWriteFast_8h.html#a9bef074dfc5a83ffbb27929185ef9597">digitalWriteFast</a>(IR_TIMING_TEST_PIN, LOW); <span class="comment">// 2 clock cycles</span></div>
<div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160;}</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; </div>
<div class="line"><a name="l00242"></a><span class="lineno"><a class="line" href="group__TinyReceiver.html#ga1f3913249343258d738ea0a48f7e1aed"> 242</a></span>&#160;<span class="keywordtype">void</span> <a class="code" href="group__TinyReceiver.html#ga1f3913249343258d738ea0a48f7e1aed">initPCIInterruptForTinyReceiver</a>() {</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160;<span class="preprocessor">#if defined(IR_MEASURE_TIMING) &amp;&amp; defined(IR_TIMING_TEST_PIN)</span></div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <a class="code" href="digitalWriteFast_8h.html#a99fa3e1d72f2f1a9ffba996b06767a39">pinModeFast</a>(IR_TIMING_TEST_PIN, OUTPUT);</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <a class="code" href="digitalWriteFast_8h.html#a99fa3e1d72f2f1a9ffba996b06767a39">pinModeFast</a>(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>, INPUT_PULLUP);</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;<span class="preprocessor">#if !defined(DO_NOT_USE_FEEDBACK_LED) &amp;&amp; defined(IR_FEEDBACK_LED_PIN)</span></div>
<div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160; <a class="code" href="digitalWriteFast_8h.html#a99fa3e1d72f2f1a9ffba996b06767a39">pinModeFast</a>(IR_FEEDBACK_LED_PIN, OUTPUT);</div>
<div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160; </div>
<div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="preprocessor">#if defined(__AVR_ATtiny1616__) || defined(__AVR_ATtiny3216__) || defined(__AVR_ATtiny3217__)</span></div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; attachInterrupt(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>, <a class="code" href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">IRPinChangeInterruptHandler</a>, CHANGE); <span class="comment">// 2.2 us more than version configured with macros and not compatible</span></div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; </div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;<span class="preprocessor">#elif !defined(__AVR__) || defined(TINY_RECEIVER_USE_ARDUINO_ATTACH_INTERRUPT)</span></div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="comment">// costs 112 bytes FLASH + 4bytes RAM</span></div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; attachInterrupt(digitalPinToInterrupt(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>), <a class="code" href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">IRPinChangeInterruptHandler</a>, CHANGE);</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160;<span class="preprocessor"># if defined(__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__)</span></div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="comment">// use PinChangeInterrupt no INT0 for pin PB2</span></div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; PCMSK = _BV(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>);</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; GIFR |= 1 &lt;&lt; PCIF;</div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160; <span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00265"></a><span class="lineno"> 265</span>&#160; GIMSK |= 1 &lt;&lt; PCIE;</div>
<div class="line"><a name="l00266"></a><span class="lineno"> 266</span>&#160; </div>
<div class="line"><a name="l00267"></a><span class="lineno"> 267</span>&#160;<span class="preprocessor"># elif defined(__AVR_ATtiny87__) || defined(__AVR_ATtiny167__)</span></div>
<div class="line"><a name="l00268"></a><span class="lineno"> 268</span>&#160;<span class="preprocessor"># if defined(ARDUINO_AVR_DIGISPARKPRO)</span></div>
<div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<span class="preprocessor"># if (IR_INPUT_PIN == 3)</span></div>
<div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <span class="comment">// interrupt on any logical change</span></div>
<div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; EICRA |= _BV(ISC00);</div>
<div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160; EIFR |= 1 &lt;&lt; INTF0;</div>
<div class="line"><a name="l00274"></a><span class="lineno"> 274</span>&#160; <span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00275"></a><span class="lineno"> 275</span>&#160; EIMSK |= 1 &lt;&lt; INT0;</div>
<div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<span class="preprocessor"># elif (IR_INPUT_PIN == 9)</span></div>
<div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160; EICRA |= _BV(ISC10);</div>
<div class="line"><a name="l00278"></a><span class="lineno"> 278</span>&#160; <span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00279"></a><span class="lineno"> 279</span>&#160; EIFR |= 1 &lt;&lt; INTF1;</div>
<div class="line"><a name="l00280"></a><span class="lineno"> 280</span>&#160; <span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00281"></a><span class="lineno"> 281</span>&#160; EIMSK |= 1 &lt;&lt; INT1;</div>
<div class="line"><a name="l00282"></a><span class="lineno"> 282</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00283"></a><span class="lineno"> 283</span>&#160;<span class="preprocessor"># error &quot;IR_INPUT_PIN must be 9 or 3.&quot;</span></div>
<div class="line"><a name="l00284"></a><span class="lineno"> 284</span>&#160;<span class="preprocessor"># endif // if (IR_INPUT_PIN == 9)</span></div>
<div class="line"><a name="l00285"></a><span class="lineno"> 285</span>&#160; </div>
<div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<span class="preprocessor"># else // defined(ARDUINO_AVR_DIGISPARKPRO)</span></div>
<div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160;<span class="preprocessor"># if (IR_INPUT_PIN == 14)</span></div>
<div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <span class="comment">// interrupt on any logical change</span></div>
<div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; EICRA |= _BV(ISC00);</div>
<div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160; EIFR |= 1 &lt;&lt; INTF0;</div>
<div class="line"><a name="l00292"></a><span class="lineno"> 292</span>&#160; <span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00293"></a><span class="lineno"> 293</span>&#160; EIMSK |= 1 &lt;&lt; INT0;</div>
<div class="line"><a name="l00294"></a><span class="lineno"> 294</span>&#160;<span class="preprocessor"># elif (IR_INPUT_PIN == 3)</span></div>
<div class="line"><a name="l00295"></a><span class="lineno"> 295</span>&#160; EICRA |= _BV(ISC10);</div>
<div class="line"><a name="l00296"></a><span class="lineno"> 296</span>&#160; <span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00297"></a><span class="lineno"> 297</span>&#160; EIFR |= 1 &lt;&lt; INTF1;</div>
<div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160; <span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160; EIMSK |= 1 &lt;&lt; INT1;</div>
<div class="line"><a name="l00300"></a><span class="lineno"> 300</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00301"></a><span class="lineno"> 301</span>&#160;<span class="preprocessor"># error &quot;IR_INPUT_PIN must be 14 or 3.&quot;</span></div>
<div class="line"><a name="l00302"></a><span class="lineno"> 302</span>&#160;<span class="preprocessor"># endif // if (IR_INPUT_PIN == 14)</span></div>
<div class="line"><a name="l00303"></a><span class="lineno"> 303</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00304"></a><span class="lineno"> 304</span>&#160; </div>
<div class="line"><a name="l00305"></a><span class="lineno"> 305</span>&#160;<span class="preprocessor"># else // defined(__AVR_ATtiny25__)</span></div>
<div class="line"><a name="l00306"></a><span class="lineno"> 306</span>&#160; <span class="comment">/*</span></div>
<div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<span class="comment"> * ATmegas + ATtiny88 here</span></div>
<div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160;<span class="preprocessor"># if (IR_INPUT_PIN == 2)</span></div>
<div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; <span class="comment">// interrupt on any logical change</span></div>
<div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160; EICRA |= _BV(ISC00);</div>
<div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160; <span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; EIFR |= 1 &lt;&lt; INTF0;</div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; <span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; EIMSK |= 1 &lt;&lt; INT0;</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160;<span class="preprocessor"># elif (IR_INPUT_PIN == 3)</span></div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; EICRA |= _BV(ISC10);</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160;<span class="comment">// clear interrupt bit</span></div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; EIFR |= 1 &lt;&lt; INTF1;</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;<span class="comment">// enable interrupt on next change</span></div>
<div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160; EIMSK |= 1 &lt;&lt; INT1;</div>
<div class="line"><a name="l00322"></a><span class="lineno"> 322</span>&#160;<span class="preprocessor"># elif IR_INPUT_PIN == 4 || IR_INPUT_PIN == 5 || IR_INPUT_PIN == 6 || IR_INPUT_PIN == 7</span></div>
<div class="line"><a name="l00323"></a><span class="lineno"> 323</span>&#160; <span class="comment">//ATmega328 (Uno, Nano ) etc. Enable pin change interrupt 20 to 23 for port PD4 to PD7 (Arduino pin 4 to 7)</span></div>
<div class="line"><a name="l00324"></a><span class="lineno"> 324</span>&#160; PCICR |= _BV(PCIE2);</div>
<div class="line"><a name="l00325"></a><span class="lineno"> 325</span>&#160; PCMSK2 = digitalPinToBitMask(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>);</div>
<div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<span class="preprocessor"># elif IR_INPUT_PIN == 8 || IR_INPUT_PIN == 9 || IR_INPUT_PIN == 10 || IR_INPUT_PIN == 11 || IR_INPUT_PIN == 12 || IR_INPUT_PIN == 13</span></div>
<div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="comment">//ATmega328 (Uno, Nano ) etc. Enable pin change interrupt 0 to 5 for port PB0 to PB5 (Arduino pin 8 to 13)</span></div>
<div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160; PCICR |= _BV(PCIE0);</div>
<div class="line"><a name="l00329"></a><span class="lineno"> 329</span>&#160; PCMSK0 = digitalPinToBitMask(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>);</div>
<div class="line"><a name="l00330"></a><span class="lineno"> 330</span>&#160;<span class="preprocessor"># elif IR_INPUT_PIN == A0 || IR_INPUT_PIN == A1 || IR_INPUT_PIN == A2 || IR_INPUT_PIN == A3 || IR_INPUT_PIN == A4 || IR_INPUT_PIN == A5</span></div>
<div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160; <span class="comment">//ATmega328 (Uno, Nano ) etc. Enable pin change interrupt 8 to 13 for port PC0 to PC5 (Arduino pin A0 to A5)</span></div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; PCICR |= _BV(PCIE1);</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; PCMSK1 = digitalPinToBitMask(<a class="code" href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a>);</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160;<span class="preprocessor"># error &quot;IR_INPUT_PIN not allowed.&quot;</span></div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;<span class="preprocessor"># endif // if (IR_INPUT_PIN == 2)</span></div>
<div class="line"><a name="l00337"></a><span class="lineno"> 337</span>&#160;<span class="preprocessor"># endif // defined(__AVR_ATtiny25__)</span></div>
<div class="line"><a name="l00338"></a><span class="lineno"> 338</span>&#160;<span class="preprocessor">#endif // ! defined(__AVR__) || defined(TINY_RECEIVER_USE_ARDUINO_ATTACH_INTERRUPT)</span></div>
<div class="line"><a name="l00339"></a><span class="lineno"> 339</span>&#160;}</div>
<div class="line"><a name="l00340"></a><span class="lineno"> 340</span>&#160; </div>
<div class="line"><a name="l00341"></a><span class="lineno"> 341</span>&#160;<span class="comment">/*</span></div>
<div class="line"><a name="l00342"></a><span class="lineno"> 342</span>&#160;<span class="comment"> * Specify the right INT0, INT1 or PCINT0 interrupt vector according to different pins and cores.</span></div>
<div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<span class="comment"> * The default value of TINY_RECEIVER_USE_ARDUINO_ATTACH_INTERRUPT is set in TinyIRReceiver.h</span></div>
<div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160;<span class="comment"> */</span></div>
<div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;<span class="preprocessor">#if defined(__AVR__) &amp;&amp; !defined(TINY_RECEIVER_USE_ARDUINO_ATTACH_INTERRUPT)</span></div>
<div class="line"><a name="l00346"></a><span class="lineno"> 346</span>&#160;<span class="preprocessor"># if (IR_INPUT_PIN == 2)</span></div>
<div class="line"><a name="l00347"></a><span class="lineno"> 347</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(INT0_vect) <span class="comment">// Pin 2 global assignment</span></div>
<div class="line"><a name="l00348"></a><span class="lineno"> 348</span>&#160; </div>
<div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<span class="preprocessor"># elif (IR_INPUT_PIN == 3)</span></div>
<div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160;<span class="preprocessor"># if defined(ARDUINO_AVR_DIGISPARKPRO)</span></div>
<div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(INT0_vect) <span class="comment">// Pin 3 / PB6 / INT0 is connected to USB+ on DigisparkPro boards</span></div>
<div class="line"><a name="l00352"></a><span class="lineno"> 352</span>&#160;<span class="preprocessor"># else</span></div>
<div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(INT1_vect) <span class="comment">// Pin 3 global assignment</span></div>
<div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00355"></a><span class="lineno"> 355</span>&#160; </div>
<div class="line"><a name="l00356"></a><span class="lineno"> 356</span>&#160;<span class="preprocessor"># elif (IR_INPUT_PIN == 9) &amp;&amp; defined(ARDUINO_AVR_DIGISPARKPRO) // Digispark pro</span></div>
<div class="line"><a name="l00357"></a><span class="lineno"> 357</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(INT1_vect)</div>
<div class="line"><a name="l00358"></a><span class="lineno"> 358</span>&#160; </div>
<div class="line"><a name="l00359"></a><span class="lineno"> 359</span>&#160;<span class="preprocessor"># elif (IR_INPUT_PIN == 14) &amp;&amp; (defined(__AVR_ATtiny87__) || defined(__AVR_ATtiny167__))// For AVR_ATtiny167 INT0 is on pin 14 / PB6</span></div>
<div class="line"><a name="l00360"></a><span class="lineno"> 360</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(INT0_vect)</div>
<div class="line"><a name="l00361"></a><span class="lineno"> 361</span>&#160; </div>
<div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<span class="preprocessor"># elif (! defined(ISC10)) || ((defined(__AVR_ATtiny87__) || defined(__AVR_ATtiny167__)) &amp;&amp; INT1_PIN != 3)</span></div>
<div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160;<span class="comment">// on ATtinyX5 we do not have a INT1_vect but we can use the PCINT0_vect</span></div>
<div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(PCINT0_vect)</div>
<div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160; </div>
<div class="line"><a name="l00366"></a><span class="lineno"> 366</span>&#160;<span class="preprocessor"># elif IR_INPUT_PIN == 4 || IR_INPUT_PIN == 5 || IR_INPUT_PIN == 6 || IR_INPUT_PIN == 7</span></div>
<div class="line"><a name="l00367"></a><span class="lineno"> 367</span>&#160;<span class="comment">// PCINT for ATmega328 Arduino pins 4 (PD4) to 7 (PD7) - (PCINT 20 to 23)</span></div>
<div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(PCINT2_vect)</div>
<div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160; </div>
<div class="line"><a name="l00370"></a><span class="lineno"> 370</span>&#160;<span class="preprocessor"># elif IR_INPUT_PIN == 8 || IR_INPUT_PIN == 9 || IR_INPUT_PIN == 10 || IR_INPUT_PIN == 11 || IR_INPUT_PIN == 12 || IR_INPUT_PIN == 13</span></div>
<div class="line"><a name="l00371"></a><span class="lineno"> 371</span>&#160;<span class="comment">// PCINT for ATmega328 Arduino pins 8 (PB0) to 13 (PB5) - (PCINT 0 to 5)</span></div>
<div class="line"><a name="l00372"></a><span class="lineno"> 372</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(PCINT0_vect)</div>
<div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160; </div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;<span class="preprocessor"># elif IR_INPUT_PIN == A0 || IR_INPUT_PIN == A1 || IR_INPUT_PIN == A2 || IR_INPUT_PIN == A3 || IR_INPUT_PIN == A4 || IR_INPUT_PIN == A5</span></div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;<span class="comment">// PCINT for ATmega328 Arduino pins A1 (PC0) to A5 (PC5) - (PCINT 8 to 13)</span></div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160;<a class="code" href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a>(PCINT1_vect)</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; </div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160;<span class="preprocessor"># endif</span></div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;{</div>
<div class="line"><a name="l00380"></a><span class="lineno"> 380</span>&#160; <a class="code" href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">IRPinChangeInterruptHandler</a>();</div>
<div class="line"><a name="l00381"></a><span class="lineno"> 381</span>&#160;}</div>
<div class="line"><a name="l00382"></a><span class="lineno"> 382</span>&#160;<span class="preprocessor">#endif // defined(__AVR__) &amp;&amp; ! defined(TINY_RECEIVER_USE_ARDUINO_ATTACH_INTERRUPT)</span></div>
<div class="line"><a name="l00383"></a><span class="lineno"> 383</span>&#160; </div>
<div class="line"><a name="l00386"></a><span class="lineno"> 386</span>&#160;<span class="preprocessor">#endif // TINY_IR_RECEIVER_CPP_H</span></div>
</div><!-- fragment --></div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="agroup__Decoder_html_gaa82c77bc0131ac28bc3534b8cf3422bc"><div class="ttname"><a href="group__Decoder.html#gaa82c77bc0131ac28bc3534b8cf3422bc">NEC_BITS</a></div><div class="ttdeci">#define NEC_BITS</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00055">ir_NEC.cpp:54</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_gaf44d26445244a24863cda1636eb8bf97"><div class="ttname"><a href="group__TinyReceiver.html#gaf44d26445244a24863cda1636eb8bf97">handleReceivedIRData</a></div><div class="ttdeci">void handleReceivedIRData(uint16_t aAddress, uint8_t aCommand, bool isRepetition)</div><div class="ttdoc">Declaration of the callback function provided by the user application.</div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html_aca59e5c5331a581e0603a59c552fa8c9"><div class="ttname"><a href="structTinyIRReceiverStruct.html#aca59e5c5331a581e0603a59c552fa8c9">TinyIRReceiverStruct::IRReceiverState</a></div><div class="ttdeci">uint8_t IRReceiverState</div><div class="ttdoc">the state of the state machine.</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00118">TinyIRReceiver.h:118</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga02b97ed6af9381a224ea3be0cab054a0"><div class="ttname"><a href="group__TinyReceiver.html#ga02b97ed6af9381a224ea3be0cab054a0">lowerValue25Percent</a></div><div class="ttdeci">#define lowerValue25Percent(aDuration)</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00097">TinyIRReceiver.h:96</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a3d35ce09bbea79b9f4e9fb0c291da92c"><div class="ttname"><a href="digitalWriteFast_8h.html#a3d35ce09bbea79b9f4e9fb0c291da92c">digitalReadFast</a></div><div class="ttdeci">#define digitalReadFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00483">digitalWriteFast.h:482</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga2535b0f1ae380b696c6a37ffa69b3df3"><div class="ttname"><a href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a></div><div class="ttdeci">#define IR_RECEIVER_STATE_WAITING_FOR_START_MARK</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00105">TinyIRReceiver.h:104</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga1f3913249343258d738ea0a48f7e1aed"><div class="ttname"><a href="group__TinyReceiver.html#ga1f3913249343258d738ea0a48f7e1aed">initPCIInterruptForTinyReceiver</a></div><div class="ttdeci">void initPCIInterruptForTinyReceiver()</div><div class="ttdoc">Initializes hardware interrupt generation according to IR_INPUT_PIN or use attachInterrupt() function...</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8cpp_8h_source.html#l00242">TinyIRReceiver.cpp.h:242</a></div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html"><div class="ttname"><a href="structTinyIRReceiverStruct.html">TinyIRReceiverStruct</a></div><div class="ttdoc">Control and data variables of the state machine for TinyReceiver.</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00113">TinyIRReceiver.h:113</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_gae237abb240b59b9c8dd7d853fc3c76b1"><div class="ttname"><a href="group__TinyReceiver.html#gae237abb240b59b9c8dd7d853fc3c76b1">IR_RECEIVER_STATE_WAITING_FOR_DATA_MARK</a></div><div class="ttdeci">#define IR_RECEIVER_STATE_WAITING_FOR_DATA_MARK</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00109">TinyIRReceiver.h:108</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a99fa3e1d72f2f1a9ffba996b06767a39"><div class="ttname"><a href="digitalWriteFast_8h.html#a99fa3e1d72f2f1a9ffba996b06767a39">pinModeFast</a></div><div class="ttdeci">#define pinModeFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00470">digitalWriteFast.h:469</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html_a9bef074dfc5a83ffbb27929185ef9597"><div class="ttname"><a href="digitalWriteFast_8h.html#a9bef074dfc5a83ffbb27929185ef9597">digitalWriteFast</a></div><div class="ttdeci">#define digitalWriteFast</div><div class="ttdef"><b>Definition:</b> <a href="digitalWriteFast_8h_source.html#l00451">digitalWriteFast.h:450</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a39959ea2f32e1a035182d01376ae2dce"><div class="ttname"><a href="unionLongUnion.html#a39959ea2f32e1a035182d01376ae2dce">LongUnion::UByte</a></div><div class="ttdeci">struct LongUnion::@2 UByte</div></div>
<div class="ttc" id="agroup__Decoder_html_ga3abbe30ef3781c1cf2490003e1c1443a"><div class="ttname"><a href="group__Decoder.html#ga3abbe30ef3781c1cf2490003e1c1443a">NEC_BIT_MARK</a></div><div class="ttdeci">#define NEC_BIT_MARK</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00061">ir_NEC.cpp:60</a></div></div>
<div class="ttc" id="agroup__Receiving_html_gaa8c5af507063503eacfa11a27c993a90"><div class="ttname"><a href="group__Receiving.html#gaa8c5af507063503eacfa11a27c993a90">ISR</a></div><div class="ttdeci">ISR()</div><div class="ttdef"><b>Definition:</b> <a href="IRReceive_8cpp_8h_source.html#l01268">IRReceive.cpp.h:1268</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga30567324f26c2fae24bb11592262b6d3"><div class="ttname"><a href="group__TinyReceiver.html#ga30567324f26c2fae24bb11592262b6d3">TinyIRReceiverControl</a></div><div class="ttdeci">TinyIRReceiverStruct TinyIRReceiverControl</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8cpp_8h_source.html#l00053">TinyIRReceiver.cpp.h:53</a></div></div>
<div class="ttc" id="agroup__Decoder_html_gaf3317b0cf5cf7d3063addbaa0a256158"><div class="ttname"><a href="group__Decoder.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a></div><div class="ttdeci">#define NEC_UNIT</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00056">ir_NEC.cpp:55</a></div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html_a003e482629350aaee549b482dd653922"><div class="ttname"><a href="structTinyIRReceiverStruct.html#a003e482629350aaee549b482dd653922">TinyIRReceiverStruct::IRRepeatDetected</a></div><div class="ttdeci">bool IRRepeatDetected</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00125">TinyIRReceiver.h:125</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aa41368107679917a1c39f30999f4e9d9"><div class="ttname"><a href="unionLongUnion.html#aa41368107679917a1c39f30999f4e9d9">LongUnion::LowByte</a></div><div class="ttdeci">uint8_t LowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00056">LongUnion.h:56</a></div></div>
<div class="ttc" id="aTinyIRReceiver_8h_html"><div class="ttname"><a href="TinyIRReceiver_8h.html">TinyIRReceiver.h</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga57d0c5b7d83f10557910205596d66dfb"><div class="ttname"><a href="group__TinyReceiver.html#ga57d0c5b7d83f10557910205596d66dfb">IR_INPUT_PIN</a></div><div class="ttdeci">#define IR_INPUT_PIN</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00046">TinyIRReceiver.h:45</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aeed69e051ef3c5c3d03e0efa260226b1"><div class="ttname"><a href="unionLongUnion.html#aeed69e051ef3c5c3d03e0efa260226b1">LongUnion::MidLowByte</a></div><div class="ttdeci">uint8_t MidLowByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00057">LongUnion.h:57</a></div></div>
<div class="ttc" id="adigitalWriteFast_8h_html"><div class="ttname"><a href="digitalWriteFast_8h.html">digitalWriteFast.h</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga5ac04ec8b2185c9fb257d39c472733b1"><div class="ttname"><a href="group__Decoder.html#ga5ac04ec8b2185c9fb257d39c472733b1">NEC_ONE_SPACE</a></div><div class="ttdeci">#define NEC_ONE_SPACE</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00062">ir_NEC.cpp:61</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_gad3b7237c2aa120840c0eed233d5c627e"><div class="ttname"><a href="group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e">IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</a></div><div class="ttdeci">#define IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00108">TinyIRReceiver.h:107</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga5c751ad19033cb8c209d7253dccf34e7"><div class="ttname"><a href="group__TinyReceiver.html#ga5c751ad19033cb8c209d7253dccf34e7">handleReceivedTinyIRData</a></div><div class="ttdeci">void handleReceivedTinyIRData(uint16_t aAddress, uint8_t aCommand, bool isRepeat)</div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html_a978f2ac480cb3ab428ff3016239413f1"><div class="ttname"><a href="structTinyIRReceiverStruct.html#a978f2ac480cb3ab428ff3016239413f1">TinyIRReceiverStruct::LastChangeMicros</a></div><div class="ttdeci">uint32_t LastChangeMicros</div><div class="ttdoc">microseconds of last Pin Change Interrupt.</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00117">TinyIRReceiver.h:117</a></div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html_aa6f580c1bf0c11c37edefd255283361a"><div class="ttname"><a href="structTinyIRReceiverStruct.html#aa6f580c1bf0c11c37edefd255283361a">TinyIRReceiverStruct::IRRawDataMask</a></div><div class="ttdeci">uint32_t IRRawDataMask</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00123">TinyIRReceiver.h:123</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga3c3d6703d25dbcc0555823e23eec0e69"><div class="ttname"><a href="group__TinyReceiver.html#ga3c3d6703d25dbcc0555823e23eec0e69">IRPinChangeInterruptHandler</a></div><div class="ttdeci">void IRPinChangeInterruptHandler(void)</div><div class="ttdoc">The ISR of TinyIRRreceiver.</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8cpp_8h_source.html#l00076">TinyIRReceiver.cpp.h:76</a></div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html_accdf38f518f17dfaf1a8aa870d77ce91"><div class="ttname"><a href="structTinyIRReceiverStruct.html#accdf38f518f17dfaf1a8aa870d77ce91">TinyIRReceiverStruct::IRRawDataBitCounter</a></div><div class="ttdeci">uint8_t IRRawDataBitCounter</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00119">TinyIRReceiver.h:119</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aaf8815ca810b2d8386b5912f127586a7"><div class="ttname"><a href="unionLongUnion.html#aaf8815ca810b2d8386b5912f127586a7">LongUnion::ULong</a></div><div class="ttdeci">uint32_t ULong</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00088">LongUnion.h:88</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga5ee46914e98bf7f87f32a7104843b243"><div class="ttname"><a href="group__Decoder.html#ga5ee46914e98bf7f87f32a7104843b243">NEC_ZERO_SPACE</a></div><div class="ttdeci">#define NEC_ZERO_SPACE</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00063">ir_NEC.cpp:62</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_gaf6134d81e390f1e3dcd60e2aca9c9143"><div class="ttname"><a href="group__TinyReceiver.html#gaf6134d81e390f1e3dcd60e2aca9c9143">upperValue</a></div><div class="ttdeci">#define upperValue(aDuration)</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00100">TinyIRReceiver.h:99</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga5c728ed320ffee624e26767be0a80404"><div class="ttname"><a href="group__Decoder.html#ga5c728ed320ffee624e26767be0a80404">NEC_HEADER_SPACE</a></div><div class="ttdeci">#define NEC_HEADER_SPACE</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00059">ir_NEC.cpp:58</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga22a6cd77d395a6c06686eafdf9aa2b52"><div class="ttname"><a href="group__TinyReceiver.html#ga22a6cd77d395a6c06686eafdf9aa2b52">upperValue25Percent</a></div><div class="ttdeci">#define upperValue25Percent(aDuration)</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00098">TinyIRReceiver.h:97</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga91880ffa0b09391f2c827d3a1c565abf"><div class="ttname"><a href="group__Decoder.html#ga91880ffa0b09391f2c827d3a1c565abf">NEC_REPEAT_HEADER_SPACE</a></div><div class="ttdeci">#define NEC_REPEAT_HEADER_SPACE</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00065">ir_NEC.cpp:64</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_gadc6908665014a0bef4442c7769ed5054"><div class="ttname"><a href="group__TinyReceiver.html#gadc6908665014a0bef4442c7769ed5054">lowerValue</a></div><div class="ttdeci">#define lowerValue(aDuration)</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00099">TinyIRReceiver.h:98</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_gaecf505182d1fa2aa885fcde6cd4160bf"><div class="ttname"><a href="group__TinyReceiver.html#gaecf505182d1fa2aa885fcde6cd4160bf">IR_RECEIVER_STATE_WAITING_FOR_FIRST_DATA_MARK</a></div><div class="ttdeci">#define IR_RECEIVER_STATE_WAITING_FOR_FIRST_DATA_MARK</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00107">TinyIRReceiver.h:106</a></div></div>
<div class="ttc" id="aunionLongUnion_html_aba027b17010803cf910996cae9201f32"><div class="ttname"><a href="unionLongUnion.html#aba027b17010803cf910996cae9201f32">LongUnion::MidHighByte</a></div><div class="ttdeci">uint8_t MidHighByte</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00058">LongUnion.h:58</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a9c0af1e73f44cf26341485cdac332bd2"><div class="ttname"><a href="unionLongUnion.html#a9c0af1e73f44cf26341485cdac332bd2">LongUnion::LowWord</a></div><div class="ttdeci">int16_t LowWord</div><div class="ttdef"><b>Definition:</b> <a href="LongUnion_8h_source.html#l00073">LongUnion.h:73</a></div></div>
<div class="ttc" id="astructTinyIRReceiverStruct_html_a6277ed6c719314aef883af018f886056"><div class="ttname"><a href="structTinyIRReceiverStruct.html#a6277ed6c719314aef883af018f886056">TinyIRReceiverStruct::IRRawData</a></div><div class="ttdeci">LongUnion IRRawData</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00124">TinyIRReceiver.h:124</a></div></div>
<div class="ttc" id="agroup__TinyReceiver_html_ga43017cba7c72b3f0d45265f417e5195d"><div class="ttname"><a href="group__TinyReceiver.html#ga43017cba7c72b3f0d45265f417e5195d">IR_RECEIVER_STATE_WAITING_FOR_START_SPACE</a></div><div class="ttdeci">#define IR_RECEIVER_STATE_WAITING_FOR_START_SPACE</div><div class="ttdef"><b>Definition:</b> <a href="TinyIRReceiver_8h_source.html#l00106">TinyIRReceiver.h:105</a></div></div>
<div class="ttc" id="agroup__Decoder_html_ga8d393b95d8df4dfa15873aec6a37965e"><div class="ttname"><a href="group__Decoder.html#ga8d393b95d8df4dfa15873aec6a37965e">NEC_HEADER_MARK</a></div><div class="ttdeci">#define NEC_HEADER_MARK</div><div class="ttdef"><b>Definition:</b> <a href="ir__NEC_8cpp_source.html#l00058">ir_NEC.cpp:57</a></div></div>
<div class="ttc" id="aunionLongUnion_html_a5a22363e05a97df308b26f3d70636fd4"><div class="ttname"><a href="unionLongUnion.html#a5a22363e05a97df308b26f3d70636fd4">LongUnion::UWord</a></div><div class="ttdeci">struct LongUnion::@7 UWord</div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="TinyIRReceiver_8cpp_8h.html">TinyIRReceiver.cpp.h</a></li>
<li class="footer">Generated on Wed Jun 16 2021 23:31:01 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,201 +0,0 @@
<!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.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>IRremote: src/TinyIRReceiver.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="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">IRremote
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<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');
/* @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>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
<div id="nav-tree">
<div id="nav-tree-contents">
<div id="nav-sync" class="sync"></div>
</div>
</div>
<div id="splitbar" style="-moz-user-select:none;"
class="ui-resizable-handle">
</div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('TinyIRReceiver_8h.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div class="header">
<div class="summary">
<a href="#nested-classes">Classes</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">TinyIRReceiver.h File Reference</div> </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &lt;Arduino.h&gt;</code><br />
<code>#include &quot;<a class="el" href="LongUnion_8h_source.html">LongUnion.h</a>&quot;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for TinyIRReceiver.h:</div>
<div class="dyncontent">
<div class="center"><img src="TinyIRReceiver_8h__incl.png" border="0" usemap="#src_2TinyIRReceiver_8h" alt=""/></div>
<map name="src_2TinyIRReceiver_8h" id="src_2TinyIRReceiver_8h">
<area shape="rect" title=" " alt="" coords="29,5,169,32"/>
<area shape="rect" title=" " alt="" coords="5,80,83,107"/>
<area shape="rect" href="LongUnion_8h.html" title=" " alt="" coords="107,80,202,107"/>
<area shape="rect" title=" " alt="" coords="122,155,187,181"/>
</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="TinyIRReceiver_8h__dep__incl.png" border="0" usemap="#src_2TinyIRReceiver_8hdep" alt=""/></div>
<map name="src_2TinyIRReceiver_8hdep" id="src_2TinyIRReceiver_8hdep">
<area shape="rect" title=" " alt="" coords="13,5,153,32"/>
<area shape="rect" href="TinyIRReceiver_8hpp.html" title=" " alt="" coords="5,80,160,107"/>
</map>
</div>
</div>
<p><a href="TinyIRReceiver_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">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structTinyIRReceiverStruct.html">TinyIRReceiverStruct</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Control and data variables of the state machine for TinyReceiver. <a href="structTinyIRReceiverStruct.html#details">More...</a><br /></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="structTinyIRReceiverCallbackDataStruct.html">TinyIRReceiverCallbackDataStruct</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:ga2ab110e480a4b16fe516c2afd16a1ea2"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga2ab110e480a4b16fe516c2afd16a1ea2">NEC_ADDRESS_BITS</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:ga2ab110e480a4b16fe516c2afd16a1ea2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga07e295da53565eb7146072bdfeb2ed32"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga07e295da53565eb7146072bdfeb2ed32">NEC_COMMAND_BITS</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:ga07e295da53565eb7146072bdfeb2ed32"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa82c77bc0131ac28bc3534b8cf3422bc"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gaa82c77bc0131ac28bc3534b8cf3422bc">NEC_BITS</a>&#160;&#160;&#160;(<a class="el" href="group__TinyReceiver.html#ga2ab110e480a4b16fe516c2afd16a1ea2">NEC_ADDRESS_BITS</a> + <a class="el" href="group__TinyReceiver.html#ga07e295da53565eb7146072bdfeb2ed32">NEC_COMMAND_BITS</a>)</td></tr>
<tr class="separator:gaa82c77bc0131ac28bc3534b8cf3422bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaf3317b0cf5cf7d3063addbaa0a256158"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a>&#160;&#160;&#160;560</td></tr>
<tr class="separator:gaf3317b0cf5cf7d3063addbaa0a256158"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8d393b95d8df4dfa15873aec6a37965e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga8d393b95d8df4dfa15873aec6a37965e">NEC_HEADER_MARK</a>&#160;&#160;&#160;(16 * <a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a>)</td></tr>
<tr class="separator:ga8d393b95d8df4dfa15873aec6a37965e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5c728ed320ffee624e26767be0a80404"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga5c728ed320ffee624e26767be0a80404">NEC_HEADER_SPACE</a>&#160;&#160;&#160;(8 * <a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a>)</td></tr>
<tr class="separator:ga5c728ed320ffee624e26767be0a80404"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3abbe30ef3781c1cf2490003e1c1443a"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga3abbe30ef3781c1cf2490003e1c1443a">NEC_BIT_MARK</a>&#160;&#160;&#160;<a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a></td></tr>
<tr class="separator:ga3abbe30ef3781c1cf2490003e1c1443a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ac04ec8b2185c9fb257d39c472733b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga5ac04ec8b2185c9fb257d39c472733b1">NEC_ONE_SPACE</a>&#160;&#160;&#160;(3 * <a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a>)</td></tr>
<tr class="separator:ga5ac04ec8b2185c9fb257d39c472733b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5ee46914e98bf7f87f32a7104843b243"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga5ee46914e98bf7f87f32a7104843b243">NEC_ZERO_SPACE</a>&#160;&#160;&#160;<a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a></td></tr>
<tr class="separator:ga5ee46914e98bf7f87f32a7104843b243"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga91880ffa0b09391f2c827d3a1c565abf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga91880ffa0b09391f2c827d3a1c565abf">NEC_REPEAT_HEADER_SPACE</a>&#160;&#160;&#160;(4 * <a class="el" href="group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158">NEC_UNIT</a>)</td></tr>
<tr class="separator:ga91880ffa0b09391f2c827d3a1c565abf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac2dab5c4a22f8c4915217d3ee4676f08"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gac2dab5c4a22f8c4915217d3ee4676f08">NEC_REPEAT_PERIOD</a>&#160;&#160;&#160;110000</td></tr>
<tr class="separator:gac2dab5c4a22f8c4915217d3ee4676f08"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7445961959fb69fed84c046145402045"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga7445961959fb69fed84c046145402045">NEC_MINIMAL_DURATION</a>&#160;&#160;&#160;49900</td></tr>
<tr class="separator:ga7445961959fb69fed84c046145402045"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga41859c8b235dcc7733bc76d751ce2e68"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga41859c8b235dcc7733bc76d751ce2e68">NEC_MAXIMUM_REPEAT_SPACE</a>&#160;&#160;&#160;(<a class="el" href="group__TinyReceiver.html#gac2dab5c4a22f8c4915217d3ee4676f08">NEC_REPEAT_PERIOD</a> - <a class="el" href="group__TinyReceiver.html#ga7445961959fb69fed84c046145402045">NEC_MINIMAL_DURATION</a> + 5)</td></tr>
<tr class="separator:ga41859c8b235dcc7733bc76d751ce2e68"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga02b97ed6af9381a224ea3be0cab054a0"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga02b97ed6af9381a224ea3be0cab054a0">lowerValue25Percent</a>(aDuration)&#160;&#160;&#160;(aDuration - (aDuration / 4))</td></tr>
<tr class="separator:ga02b97ed6af9381a224ea3be0cab054a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga22a6cd77d395a6c06686eafdf9aa2b52"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga22a6cd77d395a6c06686eafdf9aa2b52">upperValue25Percent</a>(aDuration)&#160;&#160;&#160;(aDuration + (aDuration / 4))</td></tr>
<tr class="separator:ga22a6cd77d395a6c06686eafdf9aa2b52"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga46e492bdd0789424ce0c1eafdaddcd05"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga46e492bdd0789424ce0c1eafdaddcd05">lowerValue50Percent</a>(aDuration)&#160;&#160;&#160;(aDuration / 2)</td></tr>
<tr class="separator:ga46e492bdd0789424ce0c1eafdaddcd05"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga352aba643df683019cddd3ae28c80def"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga352aba643df683019cddd3ae28c80def">upperValue50Percent</a>(aDuration)&#160;&#160;&#160;(aDuration + (aDuration / 2))</td></tr>
<tr class="separator:ga352aba643df683019cddd3ae28c80def"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2535b0f1ae380b696c6a37ffa69b3df3"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3">IR_RECEIVER_STATE_WAITING_FOR_START_MARK</a>&#160;&#160;&#160;0</td></tr>
<tr class="separator:ga2535b0f1ae380b696c6a37ffa69b3df3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga43017cba7c72b3f0d45265f417e5195d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga43017cba7c72b3f0d45265f417e5195d">IR_RECEIVER_STATE_WAITING_FOR_START_SPACE</a>&#160;&#160;&#160;1</td></tr>
<tr class="separator:ga43017cba7c72b3f0d45265f417e5195d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaecf505182d1fa2aa885fcde6cd4160bf"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gaecf505182d1fa2aa885fcde6cd4160bf">IR_RECEIVER_STATE_WAITING_FOR_FIRST_DATA_MARK</a>&#160;&#160;&#160;2</td></tr>
<tr class="separator:gaecf505182d1fa2aa885fcde6cd4160bf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad3b7237c2aa120840c0eed233d5c627e"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e">IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE</a>&#160;&#160;&#160;3</td></tr>
<tr class="separator:gad3b7237c2aa120840c0eed233d5c627e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae237abb240b59b9c8dd7d853fc3c76b1"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gae237abb240b59b9c8dd7d853fc3c76b1">IR_RECEIVER_STATE_WAITING_FOR_DATA_MARK</a>&#160;&#160;&#160;4</td></tr>
<tr class="separator:gae237abb240b59b9c8dd7d853fc3c76b1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2f6f17e18c7b5f1ef4b9cfc907d086e4"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga2f6f17e18c7b5f1ef4b9cfc907d086e4">IR_RECEIVER_STATE_WAITING_FOR_STOP_MARK</a>&#160;&#160;&#160;5</td></tr>
<tr class="separator:ga2f6f17e18c7b5f1ef4b9cfc907d086e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga5c751ad19033cb8c209d7253dccf34e7"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga5c751ad19033cb8c209d7253dccf34e7">handleReceivedTinyIRData</a> (uint16_t aAddress, uint8_t aCommand, bool isRepeat)</td></tr>
<tr class="separator:ga5c751ad19033cb8c209d7253dccf34e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaafb51bc656ba199129d261afa3f950c2"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gaafb51bc656ba199129d261afa3f950c2">initPCIInterruptForTinyReceiver</a> ()</td></tr>
<tr class="memdesc:gaafb51bc656ba199129d261afa3f950c2"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets IR_INPUT_PIN mode to INPUT_PULLUP, if required, sets feedback LED output mode and call <a class="el" href="group__TinyReceiver.html#gacc1eec5de7563e88aa73d16aa9e60a10" title="Initializes hardware interrupt generation according to IR_INPUT_PIN or use attachInterrupt() function...">enablePCIInterruptForTinyReceiver()</a> <a href="group__TinyReceiver.html#gaafb51bc656ba199129d261afa3f950c2">More...</a><br /></td></tr>
<tr class="separator:gaafb51bc656ba199129d261afa3f950c2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gacc1eec5de7563e88aa73d16aa9e60a10"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gacc1eec5de7563e88aa73d16aa9e60a10">enablePCIInterruptForTinyReceiver</a> ()</td></tr>
<tr class="memdesc:gacc1eec5de7563e88aa73d16aa9e60a10"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initializes hardware interrupt generation according to IR_INPUT_PIN or use attachInterrupt() function. <a href="group__TinyReceiver.html#gacc1eec5de7563e88aa73d16aa9e60a10">More...</a><br /></td></tr>
<tr class="separator:gacc1eec5de7563e88aa73d16aa9e60a10"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4217cae1ded4a9b2ed54bc3a1e8cd86e"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#ga4217cae1ded4a9b2ed54bc3a1e8cd86e">disablePCIInterruptForTinyReceiver</a> ()</td></tr>
<tr class="separator:ga4217cae1ded4a9b2ed54bc3a1e8cd86e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab65e33fe496d3bee4af897e5d8bd9420"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__TinyReceiver.html#gab65e33fe496d3bee4af897e5d8bd9420">isTinyReceiverIdle</a> ()</td></tr>
<tr class="separator:gab65e33fe496d3bee4af897e5d8bd9420"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
<ul>
<li class="navelem"><a class="el" href="dir_68267d1309a1af8e8297ef4c3efbcdba.html">src</a></li><li class="navelem"><a class="el" href="TinyIRReceiver_8h.html">TinyIRReceiver.h</a></li>
<li class="footer">Generated on Sat Aug 6 2022 14:36:21 for IRremote by
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.18 </li>
</ul>
</div>
</body>
</html>

View File

@ -1,31 +0,0 @@
var TinyIRReceiver_8h =
[
[ "IR_RECEIVER_STATE_WAITING_FOR_DATA_MARK", "group__TinyReceiver.html#gae237abb240b59b9c8dd7d853fc3c76b1", null ],
[ "IR_RECEIVER_STATE_WAITING_FOR_DATA_SPACE", "group__TinyReceiver.html#gad3b7237c2aa120840c0eed233d5c627e", null ],
[ "IR_RECEIVER_STATE_WAITING_FOR_FIRST_DATA_MARK", "group__TinyReceiver.html#gaecf505182d1fa2aa885fcde6cd4160bf", null ],
[ "IR_RECEIVER_STATE_WAITING_FOR_START_MARK", "group__TinyReceiver.html#ga2535b0f1ae380b696c6a37ffa69b3df3", null ],
[ "IR_RECEIVER_STATE_WAITING_FOR_START_SPACE", "group__TinyReceiver.html#ga43017cba7c72b3f0d45265f417e5195d", null ],
[ "IR_RECEIVER_STATE_WAITING_FOR_STOP_MARK", "group__TinyReceiver.html#ga2f6f17e18c7b5f1ef4b9cfc907d086e4", null ],
[ "lowerValue25Percent", "group__TinyReceiver.html#ga02b97ed6af9381a224ea3be0cab054a0", null ],
[ "lowerValue50Percent", "group__TinyReceiver.html#ga46e492bdd0789424ce0c1eafdaddcd05", null ],
[ "NEC_ADDRESS_BITS", "group__TinyReceiver.html#ga2ab110e480a4b16fe516c2afd16a1ea2", null ],
[ "NEC_BIT_MARK", "group__TinyReceiver.html#ga3abbe30ef3781c1cf2490003e1c1443a", null ],
[ "NEC_BITS", "group__TinyReceiver.html#gaa82c77bc0131ac28bc3534b8cf3422bc", null ],
[ "NEC_COMMAND_BITS", "group__TinyReceiver.html#ga07e295da53565eb7146072bdfeb2ed32", null ],
[ "NEC_HEADER_MARK", "group__TinyReceiver.html#ga8d393b95d8df4dfa15873aec6a37965e", null ],
[ "NEC_HEADER_SPACE", "group__TinyReceiver.html#ga5c728ed320ffee624e26767be0a80404", null ],
[ "NEC_MAXIMUM_REPEAT_SPACE", "group__TinyReceiver.html#ga41859c8b235dcc7733bc76d751ce2e68", null ],
[ "NEC_MINIMAL_DURATION", "group__TinyReceiver.html#ga7445961959fb69fed84c046145402045", null ],
[ "NEC_ONE_SPACE", "group__TinyReceiver.html#ga5ac04ec8b2185c9fb257d39c472733b1", null ],
[ "NEC_REPEAT_HEADER_SPACE", "group__TinyReceiver.html#ga91880ffa0b09391f2c827d3a1c565abf", null ],
[ "NEC_REPEAT_PERIOD", "group__TinyReceiver.html#gac2dab5c4a22f8c4915217d3ee4676f08", null ],
[ "NEC_UNIT", "group__TinyReceiver.html#gaf3317b0cf5cf7d3063addbaa0a256158", null ],
[ "NEC_ZERO_SPACE", "group__TinyReceiver.html#ga5ee46914e98bf7f87f32a7104843b243", null ],
[ "upperValue25Percent", "group__TinyReceiver.html#ga22a6cd77d395a6c06686eafdf9aa2b52", null ],
[ "upperValue50Percent", "group__TinyReceiver.html#ga352aba643df683019cddd3ae28c80def", null ],
[ "disablePCIInterruptForTinyReceiver", "group__TinyReceiver.html#ga4217cae1ded4a9b2ed54bc3a1e8cd86e", null ],
[ "enablePCIInterruptForTinyReceiver", "group__TinyReceiver.html#gacc1eec5de7563e88aa73d16aa9e60a10", null ],
[ "handleReceivedTinyIRData", "group__TinyReceiver.html#ga5c751ad19033cb8c209d7253dccf34e7", null ],
[ "initPCIInterruptForTinyReceiver", "group__TinyReceiver.html#gaafb51bc656ba199129d261afa3f950c2", null ],
[ "isTinyReceiverIdle", "group__TinyReceiver.html#gab65e33fe496d3bee4af897e5d8bd9420", null ]
];

View File

@ -1,4 +0,0 @@
<map id="src/TinyIRReceiver.h" name="src/TinyIRReceiver.h">
<area shape="rect" id="node1" title=" " alt="" coords="13,5,153,32"/>
<area shape="rect" id="node2" href="$TinyIRReceiver_8hpp.html" title=" " alt="" coords="5,80,160,107"/>
</map>

View File

@ -1 +0,0 @@
3bcc699875a79a9bacf7c3fa8b9f214e

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

View File

@ -1,6 +0,0 @@
<map id="src/TinyIRReceiver.h" name="src/TinyIRReceiver.h">
<area shape="rect" id="node1" title=" " alt="" coords="29,5,169,32"/>
<area shape="rect" id="node2" title=" " alt="" coords="5,80,83,107"/>
<area shape="rect" id="node3" href="$LongUnion_8h.html" title=" " alt="" coords="107,80,202,107"/>
<area shape="rect" id="node4" title=" " alt="" coords="122,155,187,181"/>
</map>

View File

@ -1 +0,0 @@
1f40006fbc743dda014c33ac582a1d98

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.0 KiB

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