2013-01-30 22:00:18 +01:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
< html xmlns = "http://www.w3.org/1999/xhtml" >
< head >
< meta http-equiv = "Content-Type" content = "text/xhtml;charset=UTF-8" / >
< meta http-equiv = "X-UA-Compatible" content = "IE=9" / >
< meta name = "generator" content = "Doxygen 1.8.3.1" / >
2013-02-17 01:37:13 +01:00
< title > USB Host Shield 2.0: XBOXRECV.h Source File< / title >
2013-01-30 22:00:18 +01:00
< link href = "tabs.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "jquery.js" > < / script >
< script type = "text/javascript" src = "dynsections.js" > < / script >
< link href = "search/search.css" rel = "stylesheet" type = "text/css" / >
< script type = "text/javascript" src = "search/search.js" > < / script >
< script type = "text/javascript" >
$(document).ready(function() { searchBox.OnSelectItem(0); });
< / script >
< link href = "doxygen.css" rel = "stylesheet" type = "text/css" / >
2013-02-05 22:39:56 +01:00
< link href = "imageStyle.css" rel = "stylesheet" type = "text/css" / >
2013-01-30 22:00:18 +01:00
< / head >
< body >
< div id = "top" > <!-- do not remove this div, it is closed by doxygen! -->
< div id = "titlearea" >
< table cellspacing = "0" cellpadding = "0" >
< tbody >
< tr style = "height: 56px;" >
< td style = "padding-left: 0.5em;" >
2013-02-17 01:37:13 +01:00
< div id = "projectname" > USB Host Shield 2.0
2013-01-30 22:00:18 +01:00
< / div >
< / td >
< / tr >
< / tbody >
< / table >
< / div >
<!-- end header part -->
<!-- Generated by Doxygen 1.8.3.1 -->
< script type = "text/javascript" >
var searchBox = new SearchBox("searchBox", "search",false,'Search');
< / script >
< div id = "navrow1" class = "tabs" >
< ul class = "tablist" >
< li > < a href = "index.html" > < span > Main  Page< / span > < / a > < / li >
< li > < a href = "pages.html" > < span > Related  Pages< / span > < / a > < / li >
< li > < a href = "annotated.html" > < span > Classes< / span > < / a > < / li >
< li class = "current" > < a href = "files.html" > < span > Files< / span > < / a > < / li >
< li >
< div id = "MSearchBox" class = "MSearchBoxInactive" >
< span class = "left" >
< img id = "MSearchSelect" src = "search/mag_sel.png"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
alt=""/>
< input type = "text" id = "MSearchField" value = "Search" accesskey = "S"
onfocus="searchBox.OnSearchFieldFocus(true)"
onblur="searchBox.OnSearchFieldFocus(false)"
onkeyup="searchBox.OnSearchFieldChange(event)"/>
< / span > < span class = "right" >
< a id = "MSearchClose" href = "javascript:searchBox.CloseResultsWindow()" > < img id = "MSearchCloseImg" border = "0" src = "search/close.png" alt = "" / > < / a >
< / span >
< / div >
< / li >
< / ul >
< / div >
< div id = "navrow2" class = "tabs2" >
< ul class = "tablist" >
< li > < a href = "files.html" > < span > File  List< / span > < / a > < / li >
< li > < a href = "globals.html" > < span > File  Members< / span > < / a > < / li >
< / ul >
< / div >
<!-- window showing the filter options -->
< div id = "MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
< a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(0)" > < span class = "SelectionMark" >   < / span > All< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(1)" > < span class = "SelectionMark" >   < / span > Classes< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(2)" > < span class = "SelectionMark" >   < / span > Files< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(3)" > < span class = "SelectionMark" >   < / span > Functions< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(4)" > < span class = "SelectionMark" >   < / span > Variables< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(5)" > < span class = "SelectionMark" >   < / span > Typedefs< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(6)" > < span class = "SelectionMark" >   < / span > Enumerations< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(7)" > < span class = "SelectionMark" >   < / span > Enumerator< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(8)" > < span class = "SelectionMark" >   < / span > Macros< / a > < a class = "SelectItem" href = "javascript:void(0)" onclick = "searchBox.OnSelectItem(9)" > < span class = "SelectionMark" >   < / span > Pages< / a > < / div >
<!-- iframe showing the search results (closed by default) -->
< div id = "MSearchResultsWindow" >
< iframe src = "javascript:void(0)" frameborder = "0"
name="MSearchResults" id="MSearchResults">
< / iframe >
< / div >
< div id = "nav-path" class = "navpath" >
< ul >
2013-02-05 22:39:56 +01:00
< li class = "navelem" > < a class = "el" href = "dir_e5fbe6d2783ccd4c93c7856d92d7be6e.html" > GitHub< / a > < / li > < li class = "navelem" > < a class = "el" href = "dir_397a095372f04465e811d0ee219bbf8f.html" > USB_Host_Shield_2.0< / a > < / li > < / ul >
2013-01-30 22:00:18 +01:00
< / div >
< / div > <!-- top -->
< div class = "header" >
< div class = "headertitle" >
< div class = "title" > XBOXRECV.h< / div > < / div >
< / div > <!-- header -->
< div class = "contents" >
< a href = "_x_b_o_x_r_e_c_v_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 >   < span class = "comment" > /* Copyright (C) 2012 Kristian Lauszus, TKJ Electronics. All rights reserved.< / span > < / div >
2013-04-01 22:52:24 +02:00
< div class = "line" > < a name = "l00002" > < / a > < span class = "lineno" > 2< / span >   < span class = "comment" > < / span > < / div >
2013-01-30 22:00:18 +01:00
< div class = "line" > < a name = "l00003" > < / a > < span class = "lineno" > 3< / span >   < span class = "comment" > This software may be distributed and modified under the terms of the GNU< / span > < / div >
< div class = "line" > < a name = "l00004" > < / a > < span class = "lineno" > 4< / span >   < span class = "comment" > General Public License version 2 (GPL2) as published by the Free Software< / span > < / div >
< div class = "line" > < a name = "l00005" > < / a > < span class = "lineno" > 5< / span >   < span class = "comment" > Foundation and appearing in the file GPL2.TXT included in the packaging of< / span > < / div >
< div class = "line" > < a name = "l00006" > < / a > < span class = "lineno" > 6< / span >   < span class = "comment" > this file. Please note that GPL2 Section 2[b] requires that all works based< / span > < / div >
< div class = "line" > < a name = "l00007" > < / a > < span class = "lineno" > 7< / span >   < span class = "comment" > on this software must also be made publicly available under the terms of< / span > < / div >
< div class = "line" > < a name = "l00008" > < / a > < span class = "lineno" > 8< / span >   < span class = "comment" > the GPL2 (" Copyleft" ).< / span > < / div >
2013-04-01 22:52:24 +02:00
< div class = "line" > < a name = "l00009" > < / a > < span class = "lineno" > 9< / span >   < span class = "comment" > < / span > < / div >
2013-01-30 22:00:18 +01:00
< div class = "line" > < a name = "l00010" > < / a > < span class = "lineno" > 10< / span >   < span class = "comment" > Contact information< / span > < / div >
< div class = "line" > < a name = "l00011" > < / a > < span class = "lineno" > 11< / span >   < span class = "comment" > -------------------< / span > < / div >
2013-04-01 22:52:24 +02:00
< div class = "line" > < a name = "l00012" > < / a > < span class = "lineno" > 12< / span >   < span class = "comment" > < / span > < / div >
2013-01-30 22:00:18 +01:00
< div class = "line" > < a name = "l00013" > < / a > < span class = "lineno" > 13< / span >   < span class = "comment" > Kristian Lauszus, TKJ Electronics< / span > < / div >
< div class = "line" > < a name = "l00014" > < / a > < span class = "lineno" > 14< / span >   < span class = "comment" > Web : http://www.tkjelectronics.com< / span > < / div >
< div class = "line" > < a name = "l00015" > < / a > < span class = "lineno" > 15< / span >   < span class = "comment" > e-mail : kristianl@tkjelectronics.com< / span > < / div >
< div class = "line" > < a name = "l00016" > < / a > < span class = "lineno" > 16< / span >   < span class = "comment" > < / span > < / div >
< div class = "line" > < a name = "l00017" > < / a > < span class = "lineno" > 17< / span >   < span class = "comment" > getBatteryLevel and checkStatus functions made by timstamp.co.uk found using BusHound from Perisoft.net< / span > < / div >
< div class = "line" > < a name = "l00018" > < / a > < span class = "lineno" > 18< / span >   < span class = "comment" > */< / span > < / div >
< div class = "line" > < a name = "l00019" > < / a > < span class = "lineno" > 19< / span >   < / div >
< div class = "line" > < a name = "l00020" > < / a > < span class = "lineno" > 20< / span >   < span class = "preprocessor" > #ifndef _xboxrecv_h_< / span > < / div >
< div class = "line" > < a name = "l00021" > < / a > < span class = "lineno" > 21< / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define _xboxrecv_h_< / span > < / div >
< div class = "line" > < a name = "l00022" > < / a > < span class = "lineno" > 22< / span >   < span class = "preprocessor" > < / span > < / div >
< div class = "line" > < a name = "l00023" > < / a > < span class = "lineno" > 23< / span >   < span class = "preprocessor" > #if defined(ARDUINO) & & ARDUINO > = 100< / span > < / div >
< div class = "line" > < a name = "l00024" > < / a > < span class = "lineno" > 24< / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #include " Arduino.h" < / span > < / div >
< div class = "line" > < a name = "l00025" > < / a > < span class = "lineno" > 25< / span >   < span class = "preprocessor" > #else< / span > < / div >
< div class = "line" > < a name = "l00026" > < / a > < span class = "lineno" > 26< / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #include " WProgram.h" < / span > < / div >
< div class = "line" > < a name = "l00027" > < / a > < span class = "lineno" > 27< / span >   < span class = "preprocessor" > #endif< / span > < / div >
< div class = "line" > < a name = "l00028" > < / a > < span class = "lineno" > 28< / span >   < span class = "preprocessor" > < / span > < / div >
< div class = "line" > < a name = "l00029" > < / a > < span class = "lineno" > 29< / span >   < span class = "preprocessor" > #include " < a class = "code" href = "_usb_8h.html" > Usb.h< / a > " < / span > < / div >
2013-04-01 22:52:24 +02:00
< div class = "line" > < a name = "l00030" > < / a > < span class = "lineno" > 30< / span >   < span class = "preprocessor" > #include " < a class = "code" href = "xbox_enums_8h.html" > xboxEnums.h< / a > " < / span > < / div >
2013-01-30 22:00:18 +01:00
< div class = "line" > < a name = "l00031" > < / a > < span class = "lineno" > 31< / span >   < / div >
< div class = "line" > < a name = "l00032" > < / a > < span class = "lineno" > 32< / span >   < span class = "comment" > /* Data Xbox 360 taken from descriptors */< / span > < / div >
< div class = "line" > < a name = "l00033" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#abcb805b13bfd36145e252b0633bbcfc0" > 33< / a > < / span >   < span class = "preprocessor" > #define EP_MAXPKTSIZE 32 // max size for data via USB< / span > < / div >
< div class = "line" > < a name = "l00034" > < / a > < span class = "lineno" > 34< / span >   < span class = "preprocessor" > < / span > < / div >
< div class = "line" > < a name = "l00035" > < / a > < span class = "lineno" > 35< / span >   < span class = "comment" > /* Endpoint types */< / span > < / div >
< div class = "line" > < a name = "l00036" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#ad4d26e1c566064f2259faf65f0858b6e" > 36< / a > < / span >   < span class = "preprocessor" > #define EP_INTERRUPT 0x03< / span > < / div >
< div class = "line" > < a name = "l00037" > < / a > < span class = "lineno" > 37< / span >   < span class = "preprocessor" > < / span > < / div >
< div class = "line" > < a name = "l00038" > < / a > < span class = "lineno" > 38< / span >   < span class = "comment" > /* Names we give to the 9 Xbox360 pipes */< / span > < / div >
< div class = "line" > < a name = "l00039" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a8f4ee68cc0f05690f5f26104c7d9e490" > 39< / a > < / span >   < span class = "preprocessor" > #define XBOX_CONTROL_PIPE 0< / span > < / div >
< div class = "line" > < a name = "l00040" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a2824b25aa9a384c29f27a4e1bb443799" > 40< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_INPUT_PIPE_1 1< / span > < / div >
< div class = "line" > < a name = "l00041" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a962be1e740bce25cf37e111bd88be9bf" > 41< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_OUTPUT_PIPE_1 2< / span > < / div >
< div class = "line" > < a name = "l00042" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#aab6feb681a78b190190bcc081868a485" > 42< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_INPUT_PIPE_2 3< / span > < / div >
< div class = "line" > < a name = "l00043" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a8ba688a4bdb47869d7ee3f49b6d07b7c" > 43< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_OUTPUT_PIPE_2 4< / span > < / div >
< div class = "line" > < a name = "l00044" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a86a3e5765d02bc043d5d1f674a7ffb0f" > 44< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_INPUT_PIPE_3 5< / span > < / div >
< div class = "line" > < a name = "l00045" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#afce4154cabb3a0d2c7eeb39b1c15d353" > 45< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_OUTPUT_PIPE_3 6< / span > < / div >
< div class = "line" > < a name = "l00046" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a5acfdaefe74aba1632c71acb79c49671" > 46< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_INPUT_PIPE_4 7< / span > < / div >
< div class = "line" > < a name = "l00047" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a7a74e0ea052831dbbb4a0973fffc8179" > 47< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_OUTPUT_PIPE_4 8< / span > < / div >
< div class = "line" > < a name = "l00048" > < / a > < span class = "lineno" > 48< / span >   < span class = "preprocessor" > < / span > < / div >
< div class = "line" > < a name = "l00049" > < / a > < span class = "lineno" > 49< / span >   < span class = "comment" > // PID and VID of the different devices< / span > < / div >
< div class = "line" > < a name = "l00050" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a8e7834e5604c4fb588cceab9258d0568" > 50< / a > < / span >   < span class = "preprocessor" > #define XBOX_VID 0x045E // Microsoft Corporation< / span > < / div >
< div class = "line" > < a name = "l00051" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a1a97ce2829a30b96ea6640d387d245a9" > 51< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_WIRELESS_RECEIVER_PID 0x0719 // Microsoft Wireless Gaming Receiver< / span > < / div >
< div class = "line" > < a name = "l00052" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a6842663964e470b86786f046e4bc30d9" > 52< / a > < / span >   < span class = "preprocessor" > < / span > < span class = "preprocessor" > #define XBOX_WIRELESS_RECEIVER_THIRD_PARTY_PID 0x0291 // Third party Wireless Gaming Receiver< / span > < / div >
< div class = "line" > < a name = "l00053" > < / a > < span class = "lineno" > 53< / span >   < span class = "preprocessor" > < / span > < / div >
2013-02-17 01:37:13 +01:00
< div class = "line" > < a name = "l00054" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#a2f5523a1aaa6718e1d11c6bc5b29a575" > 54< / a > < / span >   < span class = "preprocessor" > #define MADCATZ_VID 0x1BAD // For unofficial Mad Catz receivers< / span > < / div >
2013-01-30 22:00:18 +01:00
< div class = "line" > < a name = "l00055" > < / a > < span class = "lineno" > 55< / span >   < span class = "preprocessor" > < / span > < / div >
< div class = "line" > < a name = "l00056" > < / a > < span class = "lineno" > < a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#af35f872fc33e690571eb99de648e8e96" > 56< / a > < / span >   < span class = "preprocessor" > #define XBOX_MAX_ENDPOINTS 9< / span > < / div >
< div class = "line" > < a name = "l00057" > < / a > < span class = "lineno" > 57< / span >   < span class = "preprocessor" > < / span > < / div >
2013-02-17 01:37:13 +01:00
< div class = "line" > < a name = "l00063" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html" > 63< / a > < / span >   < span class = "keyword" > class < / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html" > XBOXRECV< / a > : < span class = "keyword" > public< / span > < a class = "code" href = "class_u_s_b_device_config.html" > USBDeviceConfig< / a > {< / div >
< div class = "line" > < a name = "l00064" > < / a > < span class = "lineno" > 64< / span >   < span class = "keyword" > public< / span > :< / div >
2013-04-01 22:52:24 +02:00
< div class = "line" > < a name = "l00069" > < / a > < span class = "lineno" > 69< / span >   < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#ac856259af28db351f85302b5eddabf1d" > XBOXRECV< / a > (< a class = "code" href = "class_u_s_b.html" > USB< / a > *< a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a53047c86c8c2f625916af62238d50fc8" > pUsb< / a > );< / div >
2013-02-17 01:37:13 +01:00
< div class = "line" > < a name = "l00070" > < / a > < span class = "lineno" > 70< / span >   < / div >
2013-04-01 22:52:24 +02:00
< div class = "line" > < a name = "l00079" > < / a > < span class = "lineno" > 79< / span >   < span class = "keyword" > virtual< / span > uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a07de216bf16a83501d74463c00bf1fc8" > Init< / a > (uint8_t parent, uint8_t port, < span class = "keywordtype" > bool< / span > lowspeed);< / div >
< div class = "line" > < a name = "l00084" > < / a > < span class = "lineno" > 84< / span >   < span class = "keyword" > virtual< / span > uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#ad0e6b53a818516b7d6af0beaa8cebc7a" > Release< / a > ();< / div >
< div class = "line" > < a name = "l00089" > < / a > < span class = "lineno" > 89< / span >   < span class = "keyword" > virtual< / span > uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#aafe1688ba3dc9b9ac425ebbbf001a1cc" > Poll< / a > ();< / div >
< div class = "line" > < a name = "l00090" > < / a > < span class = "lineno" > 90< / span >   < / div >
< div class = "line" > < a name = "l00095" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a2d58b0a20eb804d853713ade83d01631" > 95< / a > < / span >   < span class = "keyword" > virtual< / span > uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a2d58b0a20eb804d853713ade83d01631" > GetAddress< / a > () {< / div >
< div class = "line" > < a name = "l00096" > < / a > < span class = "lineno" > 96< / span >   < span class = "keywordflow" > return< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a1d4bdb1b740c87fd51aca3969e67c730" > bAddress< / a > ;< / div >
< div class = "line" > < a name = "l00097" > < / a > < span class = "lineno" > 97< / span >   };< / div >
< div class = "line" > < a name = "l00098" > < / a > < span class = "lineno" > 98< / span >   < / div >
< div class = "line" > < a name = "l00103" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a570568108edafee8d060aad8fe40db57" > 103< / a > < / span >   < span class = "keyword" > virtual< / span > < span class = "keywordtype" > bool< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a570568108edafee8d060aad8fe40db57" > isReady< / a > () {< / div >
< div class = "line" > < a name = "l00104" > < / a > < span class = "lineno" > 104< / span >   < span class = "keywordflow" > return< / span > bPollEnable;< / div >
< div class = "line" > < a name = "l00105" > < / a > < span class = "lineno" > 105< / span >   };< / div >
< div class = "line" > < a name = "l00121" > < / a > < span class = "lineno" > 121< / span >   uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#ad33cd16d10e438bb8051f7fa6052f6c9" > getButtonPress< / a > (uint8_t controller, < a class = "code" href = "controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0" > Button< / a > b);< / div >
< div class = "line" > < a name = "l00122" > < / a > < span class = "lineno" > 122< / span >   < span class = "keywordtype" > bool< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a5e9a59d90ec1941c7152cdd438c284d0" > getButtonClick< / a > (uint8_t controller, < a class = "code" href = "controller_enums_8h.html#a03bfec859eac87be20f8952c1eb89de0" > Button< / a > b);< / div >
< div class = "line" > < a name = "l00132" > < / a > < span class = "lineno" > 132< / span >   int16_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a1b277f0980bd53f30283d4af9d9b8926" > getAnalogHat< / a > (uint8_t controller, < a class = "code" href = "controller_enums_8h.html#aaaabdefc068fd57ec2bef2b62ea4ba92" > AnalogHat< / a > a);< / div >
< div class = "line" > < a name = "l00133" > < / a > < span class = "lineno" > 133< / span >   < / div >
< div class = "line" > < a name = "l00138" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a65f4ca4dc0156418fbac30060c06730d" > 138< / a > < / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a65f4ca4dc0156418fbac30060c06730d" > setAllOff< / a > (uint8_t controller) {< / div >
< div class = "line" > < a name = "l00139" > < / a > < span class = "lineno" > 139< / span >   < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#afd1f58838a9aea8e742103fddbe8fe69" > setRumbleOn< / a > (controller, 0, 0);< / div >
< div class = "line" > < a name = "l00140" > < / a > < span class = "lineno" > 140< / span >   < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#abedb93ccf24954f652d8f1cbc138924f" > setLedOff< / a > (controller);< / div >
< div class = "line" > < a name = "l00141" > < / a > < span class = "lineno" > 141< / span >   };< / div >
< div class = "line" > < a name = "l00142" > < / a > < span class = "lineno" > 142< / span >   < / div >
< div class = "line" > < a name = "l00147" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#aa75c1d01b94b7c50fb518bc0f9228782" > 147< / a > < / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#aa75c1d01b94b7c50fb518bc0f9228782" > setRumbleOff< / a > (uint8_t controller) {< / div >
< div class = "line" > < a name = "l00148" > < / a > < span class = "lineno" > 148< / span >   < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#afd1f58838a9aea8e742103fddbe8fe69" > setRumbleOn< / a > (controller, 0, 0);< / div >
< div class = "line" > < a name = "l00149" > < / a > < span class = "lineno" > 149< / span >   };< / div >
< div class = "line" > < a name = "l00156" > < / a > < span class = "lineno" > 156< / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#afd1f58838a9aea8e742103fddbe8fe69" > setRumbleOn< / a > (uint8_t controller, uint8_t lValue, uint8_t rValue);< / div >
< div class = "line" > < a name = "l00164" > < / a > < span class = "lineno" > 164< / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d" > setLedRaw< / a > (uint8_t controller, uint8_t value);< / div >
< div class = "line" > < a name = "l00165" > < / a > < span class = "lineno" > 165< / span >   < / div >
< div class = "line" > < a name = "l00170" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#abedb93ccf24954f652d8f1cbc138924f" > 170< / a > < / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#abedb93ccf24954f652d8f1cbc138924f" > setLedOff< / a > (uint8_t controller) {< / div >
< div class = "line" > < a name = "l00171" > < / a > < span class = "lineno" > 171< / span >   < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a354ede498c38b95a60c1b27deb01e47d" > setLedRaw< / a > (controller, 0);< / div >
< div class = "line" > < a name = "l00172" > < / a > < span class = "lineno" > 172< / span >   };< / div >
< div class = "line" > < a name = "l00178" > < / a > < span class = "lineno" > 178< / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a9e17aa44f2946e710fb9343f27290c85" > setLedOn< / a > (uint8_t controller, < a class = "code" href = "controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6" > LED< / a > l);< / div >
< div class = "line" > < a name = "l00184" > < / a > < span class = "lineno" > 184< / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a54490f57e16eaee6689ca92351958017" > setLedBlink< / a > (uint8_t controller, < a class = "code" href = "controller_enums_8h.html#aadcb6002d2b42fdfe01490f730ab00a6" > LED< / a > l);< / div >
< div class = "line" > < a name = "l00190" > < / a > < span class = "lineno" > 190< / span >   < span class = "keywordtype" > void< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#ace7deafed6fa6991d38417b41a490c57" > setLedMode< / a > (uint8_t controller, < a class = "code" href = "xbox_enums_8h.html#a57effb96f46e458675a2653d4c543ca2" > LEDMode< / a > lm);< / div >
< div class = "line" > < a name = "l00196" > < / a > < span class = "lineno" > 196< / span >   uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a671caa6d19debca8ff14dc82ac3ed005" > getBatteryLevel< / a > (uint8_t controller);< / div >
< div class = "line" > < a name = "l00202" > < / a > < span class = "lineno" > 202< / span >   < span class = "keywordtype" > bool< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#aa2263642c0d422c6d21fed3933d6044c" > buttonChanged< / a > (uint8_t controller);< / div >
< div class = "line" > < a name = "l00206" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a5ff16bba78f05af3023f395a342b625c" > 206< / a > < / span >   < span class = "keywordtype" > bool< / span > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a5ff16bba78f05af3023f395a342b625c" > XboxReceiverConnected< / a > ;< / div >
< div class = "line" > < a name = "l00208" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#ac07faada38e159f1e7831d90863ebe3a" > 208< / a > < / span >   uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#ac07faada38e159f1e7831d90863ebe3a" > Xbox360Connected< / a > [4];< / div >
< div class = "line" > < a name = "l00209" > < / a > < span class = "lineno" > 209< / span >   < / div >
< div class = "line" > < a name = "l00210" > < / a > < span class = "lineno" > 210< / span >   < span class = "keyword" > protected< / span > :< / div >
< div class = "line" > < a name = "l00212" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a53047c86c8c2f625916af62238d50fc8" > 212< / a > < / span >   < a class = "code" href = "class_u_s_b.html" > USB< / a > *< a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a53047c86c8c2f625916af62238d50fc8" > pUsb< / a > ;< / div >
< div class = "line" > < a name = "l00214" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a1d4bdb1b740c87fd51aca3969e67c730" > 214< / a > < / span >   uint8_t < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#a1d4bdb1b740c87fd51aca3969e67c730" > bAddress< / a > ;< / div >
< div class = "line" > < a name = "l00216" > < / a > < span class = "lineno" > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#af97c8d0efc945fa4ba1d120c8a5a9cbb" > 216< / a > < / span >   < a class = "code" href = "struct_ep_info.html" > EpInfo< / a > < a class = "code" href = "class_x_b_o_x_r_e_c_v.html#af97c8d0efc945fa4ba1d120c8a5a9cbb" > epInfo< / a > [< a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#af35f872fc33e690571eb99de648e8e96" > XBOX_MAX_ENDPOINTS< / a > ];< / div >
< div class = "line" > < a name = "l00217" > < / a > < span class = "lineno" > 217< / span >   < / div >
< div class = "line" > < a name = "l00218" > < / a > < span class = "lineno" > 218< / span >   < span class = "keyword" > private< / span > :< / div >
< div class = "line" > < a name = "l00219" > < / a > < span class = "lineno" > 219< / span >   < span class = "keywordtype" > bool< / span > bPollEnable;< / div >
< div class = "line" > < a name = "l00220" > < / a > < span class = "lineno" > 220< / span >   < / div >
< div class = "line" > < a name = "l00221" > < / a > < span class = "lineno" > 221< / span >   < span class = "comment" > /* Variables to store the buttons */< / span > < / div >
< div class = "line" > < a name = "l00222" > < / a > < span class = "lineno" > 222< / span >   uint32_t ButtonState[4];< / div >
< div class = "line" > < a name = "l00223" > < / a > < span class = "lineno" > 223< / span >   uint32_t OldButtonState[4];< / div >
< div class = "line" > < a name = "l00224" > < / a > < span class = "lineno" > 224< / span >   uint16_t ButtonClickState[4];< / div >
< div class = "line" > < a name = "l00225" > < / a > < span class = "lineno" > 225< / span >   int16_t hatValue[4][4];< / div >
< div class = "line" > < a name = "l00226" > < / a > < span class = "lineno" > 226< / span >   uint16_t controllerStatus[4];< / div >
< div class = "line" > < a name = "l00227" > < / a > < span class = "lineno" > 227< / span >   < span class = "keywordtype" > bool< / span > buttonStateChanged[4]; < span class = "comment" > // True if a button has changed< / span > < / div >
< div class = "line" > < a name = "l00228" > < / a > < span class = "lineno" > 228< / span >   < / div >
< div class = "line" > < a name = "l00229" > < / a > < span class = "lineno" > 229< / span >   < span class = "keywordtype" > bool< / span > L2Clicked[4]; < span class = "comment" > // These buttons are analog, so we use we use these bools to check if they where clicked or not< / span > < / div >
< div class = "line" > < a name = "l00230" > < / a > < span class = "lineno" > 230< / span >   < span class = "keywordtype" > bool< / span > R2Clicked[4];< / div >
< div class = "line" > < a name = "l00231" > < / a > < span class = "lineno" > 231< / span >   < / div >
< div class = "line" > < a name = "l00232" > < / a > < span class = "lineno" > 232< / span >   < span class = "keywordtype" > unsigned< / span > < span class = "keywordtype" > long< / span > timer; < span class = "comment" > // Timing for checkStatus() signals< / span > < / div >
< div class = "line" > < a name = "l00233" > < / a > < span class = "lineno" > 233< / span >   < / div >
< div class = "line" > < a name = "l00234" > < / a > < span class = "lineno" > 234< / span >   uint8_t readBuf[< a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#abcb805b13bfd36145e252b0633bbcfc0" > EP_MAXPKTSIZE< / a > ]; < span class = "comment" > // General purpose buffer for input data< / span > < / div >
< div class = "line" > < a name = "l00235" > < / a > < span class = "lineno" > 235< / span >   uint8_t writeBuf[< a class = "code" href = "_x_b_o_x_r_e_c_v_8h.html#abcb805b13bfd36145e252b0633bbcfc0" > EP_MAXPKTSIZE< / a > ]; < span class = "comment" > // General purpose buffer for output data< / span > < / div >
< div class = "line" > < a name = "l00236" > < / a > < span class = "lineno" > 236< / span >   < / div >
< div class = "line" > < a name = "l00237" > < / a > < span class = "lineno" > 237< / span >   < span class = "keywordtype" > void< / span > readReport(uint8_t controller); < span class = "comment" > // read incoming data< / span > < / div >
< div class = "line" > < a name = "l00238" > < / a > < span class = "lineno" > 238< / span >   < span class = "keywordtype" > void< / span > printReport(uint8_t controller, uint8_t nBytes); < span class = "comment" > // print incoming date - Uncomment for debugging< / span > < / div >
< div class = "line" > < a name = "l00239" > < / a > < span class = "lineno" > 239< / span >   < / div >
< div class = "line" > < a name = "l00240" > < / a > < span class = "lineno" > 240< / span >   < span class = "comment" > /* Private commands */< / span > < / div >
< div class = "line" > < a name = "l00241" > < / a > < span class = "lineno" > 241< / span >   < span class = "keywordtype" > void< / span > XboxCommand(uint8_t controller, uint8_t* data, uint16_t nbytes);< / div >
< div class = "line" > < a name = "l00242" > < / a > < span class = "lineno" > 242< / span >   < span class = "keywordtype" > void< / span > checkStatus();< / div >
< div class = "line" > < a name = "l00243" > < / a > < span class = "lineno" > 243< / span >   };< / div >
< div class = "line" > < a name = "l00244" > < / a > < span class = "lineno" > 244< / span >   < span class = "preprocessor" > #endif< / span > < / div >
2013-01-30 22:00:18 +01:00
< / div > <!-- fragment --> < / div > <!-- contents -->
<!-- start footer part -->
< hr class = "footer" / > < address class = "footer" > < small >
2013-02-17 01:37:13 +01:00
Generated by   < a href = "http://www.doxygen.org/index.html" >
2013-01-30 22:00:18 +01:00
< img class = "footer" src = "doxygen.png" alt = "doxygen" / >
< / a > 1.8.3.1
< / small > < / address >
< / body >
< / html >