libx52/libx52io_8h.html

254 lines
28 KiB
HTML

<!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" lang="en-US">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=11"/>
<meta name="generator" content="Doxygen 1.9.8"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>libx52: /home/runner/work/libx52/libx52/libx52io/libx52io.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/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 id="projectrow">
<td id="projectalign">
<div id="projectname">libx52<span id="projectnumber">&#160;0.3.2</span>
</div>
<div id="projectbrief">Saitek X52/X52Pro drivers for Linux/Unix</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.9.8 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
var searchBox = new SearchBox("searchBox", "search/",'.html');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */
</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<div id="MSearchResults">
<div class="SRPage">
<div id="SRIndex">
<div id="SRResults"></div>
<div class="SRStatus" id="Loading">Loading...</div>
<div class="SRStatus" id="Searching">Searching...</div>
<div class="SRStatus" id="NoMatches">No Matches</div>
</div>
</div>
</div>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="dir_72bd0fa12375565f4a365205e194c9e5.html">libx52io</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#nested-classes">Data Structures</a> &#124;
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#enum-members">Enumerations</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle"><div class="title">libx52io.h File Reference</div></div>
</div><!--header-->
<div class="contents">
<p>Functions, structures and enumerations for the Saitek X52 IO driver library.
<a href="#details">More...</a></p>
<p><a href="libx52io_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 id="nested-classes" name="nested-classes"></a>
Data Structures</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="structlibx52io__report.html">libx52io_report</a></td></tr>
<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">X52 HID Report. <a href="structlibx52io__report.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 id="typedef-members" name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:gad29a5b097b9d5223c332609a10a296d1" id="r_gad29a5b097b9d5223c332609a10a296d1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a></td></tr>
<tr class="memdesc:gad29a5b097b9d5223c332609a10a296d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Device context structure used by libx52io. <br /></td></tr>
<tr class="separator:gad29a5b097b9d5223c332609a10a296d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="enum-members" name="enum-members"></a>
Enumerations</h2></td></tr>
<tr class="memitem:ga97c754361b4ac2fff7afb12598c8b344" id="r_ga97c754361b4ac2fff7afb12598c8b344"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga97c754361b4ac2fff7afb12598c8b344">libx52io_error_code</a> { <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344aa0e7bdbfd58024e6e9c3abdd19f62dc3">LIBX52IO_SUCCESS</a>
, <a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344a14ff8cd7a44886cb16fc51cbeb89c148">LIBX52IO_ERROR_INIT_FAILURE</a>
, <a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344a79415c3c7fadab716c1a30781ca59278">LIBX52IO_ERROR_NO_DEVICE</a>
, <a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344a0ac14ec601e2b6f8990a7a1300902c42">LIBX52IO_ERROR_INVALID</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344a1e21c76a7ca47be35f8978d4716a810c">LIBX52IO_ERROR_CONN</a>
, <a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344a3d76f4416444857fc9740ac9e240f0a5">LIBX52IO_ERROR_IO</a>
, <a class="el" href="group__libx52io.html#gga97c754361b4ac2fff7afb12598c8b344ac7f51d12f0f2d011408bbf7c78ddb69a">LIBX52IO_ERROR_TIMEOUT</a>
<br />
}</td></tr>
<tr class="memdesc:ga97c754361b4ac2fff7afb12598c8b344"><td class="mdescLeft">&#160;</td><td class="mdescRight">libx52 IO error codes <a href="group__libx52io.html#ga97c754361b4ac2fff7afb12598c8b344">More...</a><br /></td></tr>
<tr class="separator:ga97c754361b4ac2fff7afb12598c8b344"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga89b8918a3e029eaf51676171f97b57b6" id="r_ga89b8918a3e029eaf51676171f97b57b6"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga89b8918a3e029eaf51676171f97b57b6">libx52io_axis</a> { <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a060ef07b6eb7a8645df391612564469e">LIBX52IO_AXIS_X</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a9d97a4140136c1307ea43c2be9be5771">LIBX52IO_AXIS_Y</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a69b7a4fcbb96227948a021d101c3c57d">LIBX52IO_AXIS_RZ</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6abd017592870a9b37f577652cb364aebd">LIBX52IO_AXIS_Z</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a5f17e58a8720a162b76cced5293c790d">LIBX52IO_AXIS_RX</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6ad086993617bb9cc822cb4a0a551be49e">LIBX52IO_AXIS_RY</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a81194d60295150569d8373b75db9184f">LIBX52IO_AXIS_SLIDER</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6aa4d9091952cda83e83af92359ef83bd8">LIBX52IO_AXIS_THUMBX</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a53b5cd86b439f1349bf4de0f0fb80221">LIBX52IO_AXIS_THUMBY</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6a853732efcadaa2fc9cc33ec1bfe2f805">LIBX52IO_AXIS_HATX</a>
, <a class="el" href="group__libx52io.html#gga89b8918a3e029eaf51676171f97b57b6af6746adebf71f362983e449f7281cd6e">LIBX52IO_AXIS_HATY</a>
, <b>LIBX52IO_AXIS_MAX</b>
<br />
}</td></tr>
<tr class="memdesc:ga89b8918a3e029eaf51676171f97b57b6"><td class="mdescLeft">&#160;</td><td class="mdescRight">X52 Axis definitions. <a href="group__libx52io.html#ga89b8918a3e029eaf51676171f97b57b6">More...</a><br /></td></tr>
<tr class="separator:ga89b8918a3e029eaf51676171f97b57b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga353d02ab22bf3e4cbf5d6514b298cb56" id="r_ga353d02ab22bf3e4cbf5d6514b298cb56"><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga353d02ab22bf3e4cbf5d6514b298cb56">libx52io_button</a> { <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a74b765d12f9dd3d235ebb348f23e38ae">LIBX52IO_BTN_TRIGGER</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a264e3b52ded783f31662be5666b7b701">LIBX52IO_BTN_TRIGGER_2</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a1e456775da2a72231f1611acb7bcafde">LIBX52IO_BTN_FIRE</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ad34776f621e04831f06a97d6288eb3a9">LIBX52IO_BTN_PINKY</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a5689c337d3dd6f829a98996326106d2c">LIBX52IO_BTN_A</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a576e3d180fd939fd45d2e56a8bfe2b5f">LIBX52IO_BTN_B</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56adc44ccc8a2127abb7328e144e0db7cae">LIBX52IO_BTN_C</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ae7ba732e5938c8252e27ca294ee31fb3">LIBX52IO_BTN_D</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56aa85dbec03b40dc43a01a94dfec235598">LIBX52IO_BTN_E</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56acd14e0debf6f174a519093513811f524">LIBX52IO_BTN_T1_UP</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a1ee6bbc00bdfb903c295511142548da4">LIBX52IO_BTN_T1_DN</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56afb826868cba883352fa6cf920ecf9b58">LIBX52IO_BTN_T2_UP</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a71da77d63cefda8adafb6f72a327c626">LIBX52IO_BTN_T2_DN</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a3a5742fbf1a6902f8232d5db0e29467a">LIBX52IO_BTN_T3_UP</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ad13d5e92b7de00a87080e6e475adec3b">LIBX52IO_BTN_T3_DN</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ab082b52e0944bc0c71e9e12da0d90fec">LIBX52IO_BTN_POV_1_N</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56abe9ea9ad3c09a3da6a238f6a848a4cd2">LIBX52IO_BTN_POV_1_E</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a309643bd8eaf8cb5fb7ec8f203c2b4e7">LIBX52IO_BTN_POV_1_S</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ae44586d598c43858d072157e2f190167">LIBX52IO_BTN_POV_1_W</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ab554b077f2c0beb57ad8ab3d7a89f2a6">LIBX52IO_BTN_POV_2_N</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a8d9cd3f6a7eaa0fd5b37c4359707fddd">LIBX52IO_BTN_POV_2_E</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a66a65f540c00664d91b064d0c26e27dd">LIBX52IO_BTN_POV_2_S</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ac013701690c7312708de56a21f9c6c21">LIBX52IO_BTN_POV_2_W</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ac120842e6da8ccd79ed8c3c04f088545">LIBX52IO_BTN_CLUTCH</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a4109f7d9aec4d0708e82bfec20bf4902">LIBX52IO_BTN_MOUSE_PRIMARY</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56af35f08afd0a73847ac75b61f922efa30">LIBX52IO_BTN_MOUSE_SECONDARY</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a77241622e751f345cc88c7bd985d967a">LIBX52IO_BTN_MOUSE_SCROLL_UP</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a8dab2ad9c035da7178f4ac0224ab7ac8">LIBX52IO_BTN_MOUSE_SCROLL_DN</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ad16b57e4b8ad5d29e29ce44d8a6dca17">LIBX52IO_BTN_FUNCTION</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ae70ee79631c69a1b501a3953d9168a94">LIBX52IO_BTN_START_STOP</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ac005c06fff55df4ff25e013a36d774fc">LIBX52IO_BTN_RESET</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a5d65a0e124a7542d30b2025b87ee47d9">LIBX52IO_BTN_PG_UP</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ab64229a4571fc92e0ff5f29aa9d8cf67">LIBX52IO_BTN_PG_DN</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56afabbea3cda9ef2f94d1ea1ac3d9d8692">LIBX52IO_BTN_UP</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56aab507182793aeef631ff976b27442291">LIBX52IO_BTN_DN</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a9c4206f54653574ff6226f33b7fb0e15">LIBX52IO_BTN_SELECT</a>
, <br />
&#160;&#160;<a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56a30f6cab62869a4705e93d93a685b3633">LIBX52IO_BTN_MODE_1</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56ac503573f9b1f229eace81c12c780da38">LIBX52IO_BTN_MODE_2</a>
, <a class="el" href="group__libx52io.html#gga353d02ab22bf3e4cbf5d6514b298cb56acd6846d4d4212b9e5e94b984fe4a9ac1">LIBX52IO_BTN_MODE_3</a>
, <b>LIBX52IO_BUTTON_MAX</b>
<br />
}</td></tr>
<tr class="memdesc:ga353d02ab22bf3e4cbf5d6514b298cb56"><td class="mdescLeft">&#160;</td><td class="mdescRight">X52 Button definitions. <a href="group__libx52io.html#ga353d02ab22bf3e4cbf5d6514b298cb56">More...</a><br /></td></tr>
<tr class="separator:ga353d02ab22bf3e4cbf5d6514b298cb56"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="func-members" name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ga3dd2cf8fe17324dc3a62fe1491f4cb9f" id="r_ga3dd2cf8fe17324dc3a62fe1491f4cb9f"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga3dd2cf8fe17324dc3a62fe1491f4cb9f">libx52io_init</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> **ctx)</td></tr>
<tr class="memdesc:ga3dd2cf8fe17324dc3a62fe1491f4cb9f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Initialize the IO library. <br /></td></tr>
<tr class="separator:ga3dd2cf8fe17324dc3a62fe1491f4cb9f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga71b22837414e6d4e63c0c655c768ab4a" id="r_ga71b22837414e6d4e63c0c655c768ab4a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga71b22837414e6d4e63c0c655c768ab4a">libx52io_exit</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:ga71b22837414e6d4e63c0c655c768ab4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Exit the library and free up any resources used. <br /></td></tr>
<tr class="separator:ga71b22837414e6d4e63c0c655c768ab4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae3ff340342486053ba94b37d8d78ddcc" id="r_gae3ff340342486053ba94b37d8d78ddcc"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gae3ff340342486053ba94b37d8d78ddcc">libx52io_open</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:gae3ff340342486053ba94b37d8d78ddcc"><td class="mdescLeft">&#160;</td><td class="mdescRight">Open a connection to a supported joystick. <br /></td></tr>
<tr class="separator:gae3ff340342486053ba94b37d8d78ddcc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga96a7ce37d39df35c9241859e8ce3c505" id="r_ga96a7ce37d39df35c9241859e8ce3c505"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga96a7ce37d39df35c9241859e8ce3c505">libx52io_close</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:ga96a7ce37d39df35c9241859e8ce3c505"><td class="mdescLeft">&#160;</td><td class="mdescRight">Close an existing connection to a supported joystick. <br /></td></tr>
<tr class="separator:ga96a7ce37d39df35c9241859e8ce3c505"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa6f7094a7abcf92b2f017c5df11713eb" id="r_gaa6f7094a7abcf92b2f017c5df11713eb"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gaa6f7094a7abcf92b2f017c5df11713eb">libx52io_read_timeout</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx, <a class="el" href="structlibx52io__report.html">libx52io_report</a> *report, int timeout)</td></tr>
<tr class="memdesc:gaa6f7094a7abcf92b2f017c5df11713eb"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read and parse a HID report. <br /></td></tr>
<tr class="separator:gaa6f7094a7abcf92b2f017c5df11713eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga709adda3b1122232a8553ac5ee42729d" id="r_ga709adda3b1122232a8553ac5ee42729d"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga709adda3b1122232a8553ac5ee42729d">libx52io_read</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx, <a class="el" href="structlibx52io__report.html">libx52io_report</a> *report)</td></tr>
<tr class="memdesc:ga709adda3b1122232a8553ac5ee42729d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Read and parse a HID report. <br /></td></tr>
<tr class="separator:ga709adda3b1122232a8553ac5ee42729d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad75ec9273a3ed0784568a8c290b7a5ff" id="r_gad75ec9273a3ed0784568a8c290b7a5ff"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gad75ec9273a3ed0784568a8c290b7a5ff">libx52io_get_axis_range</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx, <a class="el" href="group__libx52io.html#ga89b8918a3e029eaf51676171f97b57b6">libx52io_axis</a> axis, int32_t *min, int32_t *max)</td></tr>
<tr class="memdesc:gad75ec9273a3ed0784568a8c290b7a5ff"><td class="mdescLeft">&#160;</td><td class="mdescRight">Retrieve the range of an axis. <br /></td></tr>
<tr class="separator:gad75ec9273a3ed0784568a8c290b7a5ff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaee1c45a0f430898a0de64fbbb23a2a2d" id="r_gaee1c45a0f430898a0de64fbbb23a2a2d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gaee1c45a0f430898a0de64fbbb23a2a2d">libx52io_strerror</a> (<a class="el" href="group__libx52io.html#ga97c754361b4ac2fff7afb12598c8b344">libx52io_error_code</a> code)</td></tr>
<tr class="memdesc:gaee1c45a0f430898a0de64fbbb23a2a2d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string representation of an error code. <br /></td></tr>
<tr class="separator:gaee1c45a0f430898a0de64fbbb23a2a2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadc935b522ef6e64db9eccfb01a6f0864" id="r_gadc935b522ef6e64db9eccfb01a6f0864"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gadc935b522ef6e64db9eccfb01a6f0864">libx52io_axis_to_str</a> (<a class="el" href="group__libx52io.html#ga89b8918a3e029eaf51676171f97b57b6">libx52io_axis</a> axis)</td></tr>
<tr class="memdesc:gadc935b522ef6e64db9eccfb01a6f0864"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string representation of an axis. <br /></td></tr>
<tr class="separator:gadc935b522ef6e64db9eccfb01a6f0864"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gad6f1b99da0a58fe6cb2f2d8427a03dde" id="r_gad6f1b99da0a58fe6cb2f2d8427a03dde"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gad6f1b99da0a58fe6cb2f2d8427a03dde">libx52io_button_to_str</a> (<a class="el" href="group__libx52io.html#ga353d02ab22bf3e4cbf5d6514b298cb56">libx52io_button</a> button)</td></tr>
<tr class="memdesc:gad6f1b99da0a58fe6cb2f2d8427a03dde"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the string representation of a button. <br /></td></tr>
<tr class="separator:gad6f1b99da0a58fe6cb2f2d8427a03dde"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8b3b6825174ef6aa6328e5ee9ebafaa8" id="r_ga8b3b6825174ef6aa6328e5ee9ebafaa8"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga8b3b6825174ef6aa6328e5ee9ebafaa8">libx52io_get_vendor_id</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:ga8b3b6825174ef6aa6328e5ee9ebafaa8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the vendor ID of the connected X52 device. <br /></td></tr>
<tr class="separator:ga8b3b6825174ef6aa6328e5ee9ebafaa8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga140f4f34fbe7ee01efe74b21b0a5a7fe" id="r_ga140f4f34fbe7ee01efe74b21b0a5a7fe"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga140f4f34fbe7ee01efe74b21b0a5a7fe">libx52io_get_product_id</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:ga140f4f34fbe7ee01efe74b21b0a5a7fe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the product ID of the connected X52 device. <br /></td></tr>
<tr class="separator:ga140f4f34fbe7ee01efe74b21b0a5a7fe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga81ecbc781c2c4e7a221d6f16bc88e91f" id="r_ga81ecbc781c2c4e7a221d6f16bc88e91f"><td class="memItemLeft" align="right" valign="top">uint16_t&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga81ecbc781c2c4e7a221d6f16bc88e91f">libx52io_get_device_version</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:ga81ecbc781c2c4e7a221d6f16bc88e91f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the device version of the connected X52 device. <br /></td></tr>
<tr class="separator:ga81ecbc781c2c4e7a221d6f16bc88e91f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadf14d20dfc634ef2b3112af1deccadad" id="r_gadf14d20dfc634ef2b3112af1deccadad"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gadf14d20dfc634ef2b3112af1deccadad">libx52io_get_manufacturer_string</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:gadf14d20dfc634ef2b3112af1deccadad"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the manufacturer string of the connected X52 device. <br /></td></tr>
<tr class="separator:gadf14d20dfc634ef2b3112af1deccadad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa7a483de441d6db529467aefb361b3a0" id="r_gaa7a483de441d6db529467aefb361b3a0"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#gaa7a483de441d6db529467aefb361b3a0">libx52io_get_product_string</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:gaa7a483de441d6db529467aefb361b3a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the product string of the connected X52 device. <br /></td></tr>
<tr class="separator:gaa7a483de441d6db529467aefb361b3a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga945b0ab4a26e1ca7d91944ce4d4433ed" id="r_ga945b0ab4a26e1ca7d91944ce4d4433ed"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__libx52io.html#ga945b0ab4a26e1ca7d91944ce4d4433ed">libx52io_get_serial_number_string</a> (<a class="el" href="group__libx52io.html#gad29a5b097b9d5223c332609a10a296d1">libx52io_context</a> *ctx)</td></tr>
<tr class="memdesc:ga945b0ab4a26e1ca7d91944ce4d4433ed"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the serial number of the connected X52 device. <br /></td></tr>
<tr class="separator:ga945b0ab4a26e1ca7d91944ce4d4433ed"><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>Functions, structures and enumerations for the Saitek X52 IO driver library. </p>
<p>This file contains the type, enum and function prototypes for the Saitek X52 IO driver library. These functions allow an application to connect to a supported X52/X52Pro joystick and read the state of the buttons and axes.</p>
<dl class="section author"><dt>Author</dt><dd>Nirenjan Krishnan (<a href="#" onclick="location.href='mai'+'lto:'+'nir'+'en'+'jan'+'@n'+'ire'+'nj'+'an.'+'or'+'g'; return false;">niren<span class="obfuscator">.nosp@m.</span>jan@<span class="obfuscator">.nosp@m.</span>niren<span class="obfuscator">.nosp@m.</span>jan.<span class="obfuscator">.nosp@m.</span>org</a>) </dd></dl>
</div></div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by&#160;<a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.8
</small></address>
</body>
</html>