<!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"/> <title>libusb: libusb_control_setup Struct Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.3 --> <script type="text/javascript"> <!-- function changeDisplayState (e){ var num=this.id.replace(/[^[0-9]/g,''); var button=this.firstChild; var sectionDiv=document.getElementById('dynsection'+num); if (sectionDiv.style.display=='none'||sectionDiv.style.display==''){ sectionDiv.style.display='block'; button.src='open.gif'; }else{ sectionDiv.style.display='none'; button.src='closed.gif'; } } function initDynSections(){ var divs=document.getElementsByTagName('div'); var sectionCounter=1; for(var i=0;i<divs.length-1;i++){ if(divs[i].className=='dynheader'&&divs[i+1].className=='dynsection'){ var header=divs[i]; var section=divs[i+1]; var button=header.firstChild; if (button!='IMG'){ divs[i].insertBefore(document.createTextNode(' '),divs[i].firstChild); button=document.createElement('img'); divs[i].insertBefore(button,divs[i].firstChild); } header.style.cursor='pointer'; header.onclick=changeDisplayState; header.id='dynheader'+sectionCounter; button.src='closed.gif'; section.id='dynsection'+sectionCounter; section.style.display='none'; section.style.marginLeft='14px'; sectionCounter++; } } } window.onload = initDynSections; --> </script> <div class="navigation" id="top"> <div class="tabs"> <ul> <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="modules.html"><span>Modules</span></a></li> <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="files.html"><span>Files</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li><a href="classes.html"><span>Data Structure Index</span></a></li> <li><a href="functions.html"><span>Data Fields</span></a></li> </ul> </div> </div> <div class="contents"> <h1>libusb_control_setup Struct Reference<br/> <small> [<a class="el" href="group__asyncio.html">Asynchronous device I/O</a>]</small> </h1><!-- doxytag: class="libusb_control_setup" --> <p>Setup packet for control transfers. <a href="#_details">More...</a></p> <p><code>#include <<a class="el" href="libusb_8h_source.html">libusb.h</a>></code></p> <table border="0" cellpadding="0" cellspacing="0"> <tr><td colspan="2"><h2>Data Fields</h2></td></tr> <tr><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__control__setup.html#a39b148c231d675492ccd2383196926bf">bmRequestType</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Request type. <a href="#a39b148c231d675492ccd2383196926bf"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__control__setup.html#a1b80a28b8d4e8586fc54358194e70087">bRequest</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Request. <a href="#a1b80a28b8d4e8586fc54358194e70087"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__control__setup.html#abbb6daa01fe4b6a05dc43492e4e53a7d">wValue</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Value. <a href="#abbb6daa01fe4b6a05dc43492e4e53a7d"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__control__setup.html#a70c2ae456344b200a19d434ace85ae2b">wIndex</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Index. <a href="#a70c2ae456344b200a19d434ace85ae2b"></a><br/></td></tr> <tr><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c442c64fd7619b43b782367235766cc"></a><!-- doxytag: member="libusb_control_setup::wLength" ref="a3c442c64fd7619b43b782367235766cc" args="" --> uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__control__setup.html#a3c442c64fd7619b43b782367235766cc">wLength</a></td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Number of bytes to transfer. <br/></td></tr> </table> <hr/><a name="_details"></a><h2>Detailed Description</h2> <p>Setup packet for control transfers. </p> <hr/><h2>Field Documentation</h2> <a class="anchor" id="a39b148c231d675492ccd2383196926bf"></a><!-- doxytag: member="libusb_control_setup::bmRequestType" ref="a39b148c231d675492ccd2383196926bf" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint8_t <a class="el" href="structlibusb__control__setup.html#a39b148c231d675492ccd2383196926bf">libusb_control_setup::bmRequestType</a></td> </tr> </table> </div> <div class="memdoc"> <p>Request type. </p> <p>Bits 0:4 determine recipient, see <a class="el" href="group__misc.html#ga20a4e8a729aa543fa742a5086596cbae">libusb_request_recipient</a>. Bits 5:6 determine type, see <a class="el" href="group__misc.html#ga0b0933ae70744726cde11254c39fac91">libusb_request_type</a>. Bit 7 determines data transfer direction, see <a class="el" href="group__desc.html#ga86c880af878493aa8f805c2aba654b8b">libusb_endpoint_direction</a>. </p> </div> </div> <a class="anchor" id="a1b80a28b8d4e8586fc54358194e70087"></a><!-- doxytag: member="libusb_control_setup::bRequest" ref="a1b80a28b8d4e8586fc54358194e70087" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint8_t <a class="el" href="structlibusb__control__setup.html#a1b80a28b8d4e8586fc54358194e70087">libusb_control_setup::bRequest</a></td> </tr> </table> </div> <div class="memdoc"> <p>Request. </p> <p>If the type bits of bmRequestType are equal to <a class="el" href="group__misc.html#gga0b0933ae70744726cde11254c39fac91a20eca62c34d2d25be7e1776510184209">LIBUSB_REQUEST_TYPE_STANDARD</a> then this field refers to <a class="el" href="group__misc.html#ga5b5912057c2d7e23b3ed5aa0c20236df">libusb_standard_request</a>. For other cases, use of this field is application-specific. </p> </div> </div> <a class="anchor" id="abbb6daa01fe4b6a05dc43492e4e53a7d"></a><!-- doxytag: member="libusb_control_setup::wValue" ref="abbb6daa01fe4b6a05dc43492e4e53a7d" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint16_t <a class="el" href="structlibusb__control__setup.html#abbb6daa01fe4b6a05dc43492e4e53a7d">libusb_control_setup::wValue</a></td> </tr> </table> </div> <div class="memdoc"> <p>Value. </p> <p>Varies according to request </p> </div> </div> <a class="anchor" id="a70c2ae456344b200a19d434ace85ae2b"></a><!-- doxytag: member="libusb_control_setup::wIndex" ref="a70c2ae456344b200a19d434ace85ae2b" args="" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint16_t <a class="el" href="structlibusb__control__setup.html#a70c2ae456344b200a19d434ace85ae2b">libusb_control_setup::wIndex</a></td> </tr> </table> </div> <div class="memdoc"> <p>Index. </p> <p>Varies according to request, typically used to pass an index or offset </p> </div> </div> <hr/>The documentation for this struct was generated from the following file:<ul> <li><a class="el" href="libusb_8h_source.html">libusb.h</a></li> </ul> </div> <hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Apr 28 09:03:59 2010 for libusb by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address> </body> </html>