<!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.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>LIRC libraries: /home/iurt/rpmbuild/BUILD/lirc-0.10.1/lib/driver.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> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</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="projectlogo"><img alt="Logo" src="diode-2.gif"/></td> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">LIRC libraries </div> <div id="projectbrief">LinuxInfraredRemoteControl</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&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&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&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(function(){initNavTree('driver_8h.html','');}); /* @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> | <a href="#define-members">Macros</a> | <a href="#func-members">Functions</a> | <a href="#var-members">Variables</a> </div> <div class="headertitle"> <div class="title">driver.h File Reference<div class="ingroups"><a class="el" href="group__driver__api.html">User-space driver API</a> | <a class="el" href="group__private__api.html">Internal API</a></div></div> </div> </div><!--header--> <div class="contents"> <p>Interface to the userspace drivers. <a href="#details">More...</a></p> <div class="textblock"><code>#include <glob.h></code><br /> <code>#include <stdint.h></code><br /> <code>#include "media/lirc.h"</code><br /> <code>#include "lirc/ir_remote_types.h"</code><br /> <code>#include "lirc/curl_poll.h"</code><br /> </div> <p><a href="driver_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  </td><td class="memItemRight" valign="bottom"><a class="el" href="structoption__t.html">option_t</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Argument for DRV_SET_OPTION. <a href="structoption__t.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structdriver.html">driver</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">The data the driver exports i. <a href="structdriver.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </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:gaddfa831c1473e710d2b71b72fd7fcfa5"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><b>MAXPATHLEN</b>   4096</td></tr> <tr class="separator:gaddfa831c1473e710d2b71b72fd7fcfa5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0f4a99d74f168ac1242b1ac80ca496ce"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga0f4a99d74f168ac1242b1ac80ca496ce">HAVE_SERVER_VERSION</a>   1</td></tr> <tr class="memdesc:ga0f4a99d74f168ac1242b1ac80ca496ce"><td class="mdescLeft"> </td><td class="mdescRight">Testable flag for <a class="el" href="group__driver__api.html#ga81e2d4892674937c5b9eeecca20ecfad" title="Return numeric server version, m.v.r => 10000 * m + 100 * v + r.">get_server_version()</a> presence. <a href="group__driver__api.html#ga0f4a99d74f168ac1242b1ac80ca496ce">More...</a><br /></td></tr> <tr class="separator:ga0f4a99d74f168ac1242b1ac80ca496ce"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab58e0aa64a0fc3769c30e60aaf7061e9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gab58e0aa64a0fc3769c30e60aaf7061e9">DRV_ERR_NOT_IMPLEMENTED</a>   1</td></tr> <tr class="memdesc:gab58e0aa64a0fc3769c30e60aaf7061e9"><td class="mdescLeft"> </td><td class="mdescRight">drvctl definitions <a href="group__driver__api.html#gab58e0aa64a0fc3769c30e60aaf7061e9">More...</a><br /></td></tr> <tr class="separator:gab58e0aa64a0fc3769c30e60aaf7061e9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3637dcda1fb5508e6f51a39b0cc048a7"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga3637dcda1fb5508e6f51a39b0cc048a7">DRVCTL_GET_STATE</a>   1</td></tr> <tr class="memdesc:ga3637dcda1fb5508e6f51a39b0cc048a7"><td class="mdescLeft"> </td><td class="mdescRight">Drvctl cmd: return current state as an int in *arg. <a href="group__driver__api.html#ga3637dcda1fb5508e6f51a39b0cc048a7">More...</a><br /></td></tr> <tr class="separator:ga3637dcda1fb5508e6f51a39b0cc048a7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2d4b7ac43bc60cf3d930431f79b2fb89"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga2d4b7ac43bc60cf3d930431f79b2fb89">DRVCTL_SEND_SPACE</a>   2</td></tr> <tr class="memdesc:ga2d4b7ac43bc60cf3d930431f79b2fb89"><td class="mdescLeft"> </td><td class="mdescRight">Drvctl cmd: Send long space. <a href="group__driver__api.html#ga2d4b7ac43bc60cf3d930431f79b2fb89">More...</a><br /></td></tr> <tr class="separator:ga2d4b7ac43bc60cf3d930431f79b2fb89"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga1033feec74cbc16e939d713be2c5b8e0"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga1033feec74cbc16e939d713be2c5b8e0">DRVCTL_SET_OPTION</a>   3</td></tr> <tr class="memdesc:ga1033feec74cbc16e939d713be2c5b8e0"><td class="mdescLeft"> </td><td class="mdescRight">Drvctl cmd: Set driver options. <a href="group__driver__api.html#ga1033feec74cbc16e939d713be2c5b8e0">More...</a><br /></td></tr> <tr class="separator:ga1033feec74cbc16e939d713be2c5b8e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae1c0549ac24798610a08a38f98337dd2"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gae1c0549ac24798610a08a38f98337dd2">DRVCTL_GET_RAW_CODELENGTH</a>   4</td></tr> <tr class="memdesc:gae1c0549ac24798610a08a38f98337dd2"><td class="mdescLeft"> </td><td class="mdescRight">Drvctl cmd: get raw length to read, if different than codelength. <a href="group__driver__api.html#gae1c0549ac24798610a08a38f98337dd2">More...</a><br /></td></tr> <tr class="separator:gae1c0549ac24798610a08a38f98337dd2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga83be4d39fe52e903ae43627ecd4425c9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga83be4d39fe52e903ae43627ecd4425c9">DRVCTL_GET_DEVICES</a>   5</td></tr> <tr class="memdesc:ga83be4d39fe52e903ae43627ecd4425c9"><td class="mdescLeft"> </td><td class="mdescRight">Drvctl cmd: get list of possible devices. <a href="group__driver__api.html#ga83be4d39fe52e903ae43627ecd4425c9">More...</a><br /></td></tr> <tr class="separator:ga83be4d39fe52e903ae43627ecd4425c9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaabe20231530e93fa8280bc7055bc49e0"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gaabe20231530e93fa8280bc7055bc49e0">DRVCTL_FREE_DEVICES</a>   6</td></tr> <tr class="memdesc:gaabe20231530e93fa8280bc7055bc49e0"><td class="mdescLeft"> </td><td class="mdescRight">drvctl cmd: Free memory in argument obtained using DRVCTL_GET_DEVICES. <a href="group__driver__api.html#gaabe20231530e93fa8280bc7055bc49e0">More...</a><br /></td></tr> <tr class="separator:gaabe20231530e93fa8280bc7055bc49e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad037f706938a331377bb914f75e1a875"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gad037f706938a331377bb914f75e1a875">DRVCTL_NOTIFY_DECODE</a>   7</td></tr> <tr class="memdesc:gad037f706938a331377bb914f75e1a875"><td class="mdescLeft"> </td><td class="mdescRight">The former LIRC_NOTIFY_DECODE, informs drier that signal is successfully decoded e. <a href="group__driver__api.html#gad037f706938a331377bb914f75e1a875">More...</a><br /></td></tr> <tr class="separator:gad037f706938a331377bb914f75e1a875"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2628a2556297a773cddc0848db200d1a"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga2628a2556297a773cddc0848db200d1a">DRVCTL_MAX</a>   128</td></tr> <tr class="memdesc:ga2628a2556297a773cddc0848db200d1a"><td class="mdescLeft"> </td><td class="mdescRight">Last well-known command. <a href="group__driver__api.html#ga2628a2556297a773cddc0848db200d1a">More...</a><br /></td></tr> <tr class="separator:ga2628a2556297a773cddc0848db200d1a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab58e0aa64a0fc3769c30e60aaf7061e9"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gab58e0aa64a0fc3769c30e60aaf7061e9">DRV_ERR_NOT_IMPLEMENTED</a>   1</td></tr> <tr class="memdesc:gab58e0aa64a0fc3769c30e60aaf7061e9"><td class="mdescLeft"> </td><td class="mdescRight">drvctl definitions <a href="group__driver__api.html#gab58e0aa64a0fc3769c30e60aaf7061e9">More...</a><br /></td></tr> <tr class="separator:gab58e0aa64a0fc3769c30e60aaf7061e9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae323c069918a6b718b3bafd6abbef2a2"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gae323c069918a6b718b3bafd6abbef2a2">DRV_ERR_BAD_STATE</a>   2</td></tr> <tr class="memdesc:gae323c069918a6b718b3bafd6abbef2a2"><td class="mdescLeft"> </td><td class="mdescRight">drvctl error: cmd and arg is OK, but other errors. <a href="group__driver__api.html#gae323c069918a6b718b3bafd6abbef2a2">More...</a><br /></td></tr> <tr class="separator:gae323c069918a6b718b3bafd6abbef2a2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae98bd204d31330f5e862817faadf7f85"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gae98bd204d31330f5e862817faadf7f85">DRV_ERR_BAD_OPTION</a>   3</td></tr> <tr class="memdesc:gae98bd204d31330f5e862817faadf7f85"><td class="mdescLeft"> </td><td class="mdescRight">drvctl error: cmd is bad <br /></td></tr> <tr class="separator:gae98bd204d31330f5e862817faadf7f85"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga548694fee71123534ede5e27aa4e7e1f"><td class="memItemLeft" align="right" valign="top"> #define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga548694fee71123534ede5e27aa4e7e1f">DRV_ERR_BAD_VALUE</a>   4</td></tr> <tr class="memdesc:ga548694fee71123534ede5e27aa4e7e1f"><td class="mdescLeft"> </td><td class="mdescRight">drvctl error: arg is bad <br /></td></tr> <tr class="separator:ga548694fee71123534ede5e27aa4e7e1f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga966324b73e030420f247a3734f5c6ae3"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga966324b73e030420f247a3734f5c6ae3">DRV_ERR_ENUM_EMPTY</a>   5</td></tr> <tr class="memdesc:ga966324b73e030420f247a3734f5c6ae3"><td class="mdescLeft"> </td><td class="mdescRight">No requested data available. <a href="group__driver__api.html#ga966324b73e030420f247a3734f5c6ae3">More...</a><br /></td></tr> <tr class="separator:ga966324b73e030420f247a3734f5c6ae3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga030f88668a4c27bdd5fe20c2555881d5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga030f88668a4c27bdd5fe20c2555881d5">DRV_ERR_INTERNAL</a>   6</td></tr> <tr class="memdesc:ga030f88668a4c27bdd5fe20c2555881d5"><td class="mdescLeft"> </td><td class="mdescRight">drvctl error: "Should not happen" type of errors. <a href="group__driver__api.html#ga030f88668a4c27bdd5fe20c2555881d5">More...</a><br /></td></tr> <tr class="separator:ga030f88668a4c27bdd5fe20c2555881d5"><td class="memSeparator" colspan="2"> </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:ga81e2d4892674937c5b9eeecca20ecfad"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga81e2d4892674937c5b9eeecca20ecfad">get_server_version</a> (void)</td></tr> <tr class="memdesc:ga81e2d4892674937c5b9eeecca20ecfad"><td class="mdescLeft"> </td><td class="mdescRight">Return numeric server version, m.v.r => 10000 * m + 100 * v + r. <a href="group__driver__api.html#ga81e2d4892674937c5b9eeecca20ecfad">More...</a><br /></td></tr> <tr class="separator:ga81e2d4892674937c5b9eeecca20ecfad"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac0f7baaef9fe524365c16022001804d3"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gac0f7baaef9fe524365c16022001804d3">default_open</a> (const char *path)</td></tr> <tr class="memdesc:gac0f7baaef9fe524365c16022001804d3"><td class="mdescLeft"> </td><td class="mdescRight">Stores path in drv.device if non-null. <a href="group__driver__api.html#gac0f7baaef9fe524365c16022001804d3">More...</a><br /></td></tr> <tr class="separator:gac0f7baaef9fe524365c16022001804d3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga683dd53e7e5d62746c1a645fe133daf0"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga683dd53e7e5d62746c1a645fe133daf0">default_close</a> (void)</td></tr> <tr class="memdesc:ga683dd53e7e5d62746c1a645fe133daf0"><td class="mdescLeft"> </td><td class="mdescRight">For now, a placeholder. <a href="group__driver__api.html#ga683dd53e7e5d62746c1a645fe133daf0">More...</a><br /></td></tr> <tr class="separator:ga683dd53e7e5d62746c1a645fe133daf0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga96e3243bc45ff488f6c55dde5e9b377b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#ga96e3243bc45ff488f6c55dde5e9b377b">default_drvctl</a> (unsigned int cmd, void *arg)</td></tr> <tr class="memdesc:ga96e3243bc45ff488f6c55dde5e9b377b"><td class="mdescLeft"> </td><td class="mdescRight">Return DRV_ERR_NOTIMPLEMENTED. <a href="group__driver__api.html#ga96e3243bc45ff488f6c55dde5e9b377b">More...</a><br /></td></tr> <tr class="separator:ga96e3243bc45ff488f6c55dde5e9b377b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaae1b223d2bd3a0d0be6e77019c9a976c"><td class="memItemLeft" align="right" valign="top"> int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__driver__api.html#gaae1b223d2bd3a0d0be6e77019c9a976c">drv_handle_options</a> (const char *options)</td></tr> <tr class="memdesc:gaae1b223d2bd3a0d0be6e77019c9a976c"><td class="mdescLeft"> </td><td class="mdescRight">Parse an option string "key:value;key:value..." and invoke drvctl DRV_SET_OPTION as appropriate. <br /></td></tr> <tr class="separator:gaae1b223d2bd3a0d0be6e77019c9a976c"><td class="memSeparator" colspan="2"> </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:a656110ac202d464ae49251c9599baf66"><td class="memItemLeft" align="right" valign="top">const struct <a class="el" href="structdriver.html">driver</a> *const </td><td class="memItemRight" valign="bottom"><a class="el" href="driver_8h.html#a656110ac202d464ae49251c9599baf66">curr_driver</a></td></tr> <tr class="memdesc:a656110ac202d464ae49251c9599baf66"><td class="mdescLeft"> </td><td class="mdescRight">Read-only access to drv for application. <a href="#a656110ac202d464ae49251c9599baf66">More...</a><br /></td></tr> <tr class="separator:a656110ac202d464ae49251c9599baf66"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>Interface to the userspace drivers. </p> <p class="definition">Definition in file <a class="el" href="driver_8h_source.html">driver.h</a>.</p> </div><h2 class="groupheader">Variable Documentation</h2> <a id="a656110ac202d464ae49251c9599baf66"></a> <h2 class="memtitle"><span class="permalink"><a href="#a656110ac202d464ae49251c9599baf66">◆ </a></span>curr_driver</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const struct <a class="el" href="structdriver.html">driver</a>* const curr_driver</td> </tr> </table> </div><div class="memdoc"> <p>Read-only access to drv for application. </p> <p>Read-only access to drv for application. </p> <p class="definition">Definition at line <a class="el" href="driver_8c_source.html#l00034">34</a> of file <a class="el" href="driver_8c_source.html">driver.c</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_97aefd0d527b934f1d99a682da8fe6a9.html">lib</a></li><li class="navelem"><a class="el" href="driver_8h.html">driver.h</a></li> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.15 </li> </ul> </div> </body> </html>