<!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.5"/> <title>libusb_device_descriptor Struct 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="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 style="padding-left: 0.5em;"> <div id="projectbrief">eXpand your USB potential</div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <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="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 id="navrow2" class="tabs2"> <ul class="tablist"> <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><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-attribs">Data Fields</a> </div> <div class="headertitle"> <div class="title">libusb_device_descriptor Struct Reference<div class="ingroups"><a class="el" href="group__desc.html">USB descriptors</a></div></div> </div> </div><!--header--> <div class="contents"> <p>A structure representing the standard USB device descriptor. <a href="structlibusb__device__descriptor.html#details">More...</a></p> <p><code>#include <<a class="el" href="libusb_8h_source.html">libusb.h</a>></code></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a> Data Fields</h2></td></tr> <tr class="memitem:affda0be3fe1c37092ddc7cb120428f30"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="affda0be3fe1c37092ddc7cb120428f30"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#affda0be3fe1c37092ddc7cb120428f30">bLength</a></td></tr> <tr class="memdesc:affda0be3fe1c37092ddc7cb120428f30"><td class="mdescLeft"> </td><td class="mdescRight">Size of this descriptor (in bytes) <br/></td></tr> <tr class="separator:affda0be3fe1c37092ddc7cb120428f30"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a63c4b109725ce829fc81c5c9cad8c87a"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a63c4b109725ce829fc81c5c9cad8c87a">bDescriptorType</a></td></tr> <tr class="memdesc:a63c4b109725ce829fc81c5c9cad8c87a"><td class="mdescLeft"> </td><td class="mdescRight">Descriptor type. <a href="#a63c4b109725ce829fc81c5c9cad8c87a">More...</a><br/></td></tr> <tr class="separator:a63c4b109725ce829fc81c5c9cad8c87a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af0682f293291db942b5d253092d472e4"><td class="memItemLeft" align="right" valign="top">uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#af0682f293291db942b5d253092d472e4">bcdUSB</a></td></tr> <tr class="memdesc:af0682f293291db942b5d253092d472e4"><td class="mdescLeft"> </td><td class="mdescRight">USB specification release number in binary-coded decimal. <a href="#af0682f293291db942b5d253092d472e4">More...</a><br/></td></tr> <tr class="separator:af0682f293291db942b5d253092d472e4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab86c8f43e75d4d54fccbc199cfa9703b"><td class="memItemLeft" align="right" valign="top">uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#ab86c8f43e75d4d54fccbc199cfa9703b">bDeviceClass</a></td></tr> <tr class="memdesc:ab86c8f43e75d4d54fccbc199cfa9703b"><td class="mdescLeft"> </td><td class="mdescRight">USB-IF class code for the device. <a href="#ab86c8f43e75d4d54fccbc199cfa9703b">More...</a><br/></td></tr> <tr class="separator:ab86c8f43e75d4d54fccbc199cfa9703b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9c3a91102d3d53d9414d0dda0191c5ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c3a91102d3d53d9414d0dda0191c5ab"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a9c3a91102d3d53d9414d0dda0191c5ab">bDeviceSubClass</a></td></tr> <tr class="memdesc:a9c3a91102d3d53d9414d0dda0191c5ab"><td class="mdescLeft"> </td><td class="mdescRight">USB-IF subclass code for the device, qualified by the bDeviceClass value. <br/></td></tr> <tr class="separator:a9c3a91102d3d53d9414d0dda0191c5ab"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a480a0b5345a2e59987e20fa7247c3f0e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a480a0b5345a2e59987e20fa7247c3f0e"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a480a0b5345a2e59987e20fa7247c3f0e">bDeviceProtocol</a></td></tr> <tr class="memdesc:a480a0b5345a2e59987e20fa7247c3f0e"><td class="mdescLeft"> </td><td class="mdescRight">USB-IF protocol code for the device, qualified by the bDeviceClass and bDeviceSubClass values. <br/></td></tr> <tr class="separator:a480a0b5345a2e59987e20fa7247c3f0e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3b60170f077c9b26fc9f86e0cdb1d28a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b60170f077c9b26fc9f86e0cdb1d28a"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a3b60170f077c9b26fc9f86e0cdb1d28a">bMaxPacketSize0</a></td></tr> <tr class="memdesc:a3b60170f077c9b26fc9f86e0cdb1d28a"><td class="mdescLeft"> </td><td class="mdescRight">Maximum packet size for endpoint 0. <br/></td></tr> <tr class="separator:a3b60170f077c9b26fc9f86e0cdb1d28a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad26c5e2fbd16ce3ee143f4bac5d49bda"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad26c5e2fbd16ce3ee143f4bac5d49bda"></a> uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#ad26c5e2fbd16ce3ee143f4bac5d49bda">idVendor</a></td></tr> <tr class="memdesc:ad26c5e2fbd16ce3ee143f4bac5d49bda"><td class="mdescLeft"> </td><td class="mdescRight">USB-IF vendor ID. <br/></td></tr> <tr class="separator:ad26c5e2fbd16ce3ee143f4bac5d49bda"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a568d479fb0b76ea572a739c961fd3047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a568d479fb0b76ea572a739c961fd3047"></a> uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a568d479fb0b76ea572a739c961fd3047">idProduct</a></td></tr> <tr class="memdesc:a568d479fb0b76ea572a739c961fd3047"><td class="mdescLeft"> </td><td class="mdescRight">USB-IF product ID. <br/></td></tr> <tr class="separator:a568d479fb0b76ea572a739c961fd3047"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:afb5e0fc6f0cfe51de900d35506fb9317"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb5e0fc6f0cfe51de900d35506fb9317"></a> uint16_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#afb5e0fc6f0cfe51de900d35506fb9317">bcdDevice</a></td></tr> <tr class="memdesc:afb5e0fc6f0cfe51de900d35506fb9317"><td class="mdescLeft"> </td><td class="mdescRight">Device release number in binary-coded decimal. <br/></td></tr> <tr class="separator:afb5e0fc6f0cfe51de900d35506fb9317"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab9e9a064265f2833d1d3f216f15a487a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9e9a064265f2833d1d3f216f15a487a"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#ab9e9a064265f2833d1d3f216f15a487a">iManufacturer</a></td></tr> <tr class="memdesc:ab9e9a064265f2833d1d3f216f15a487a"><td class="mdescLeft"> </td><td class="mdescRight">Index of string descriptor describing manufacturer. <br/></td></tr> <tr class="separator:ab9e9a064265f2833d1d3f216f15a487a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a20082f9e03f1cbffef3d9472a8dcfd64"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20082f9e03f1cbffef3d9472a8dcfd64"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a20082f9e03f1cbffef3d9472a8dcfd64">iProduct</a></td></tr> <tr class="memdesc:a20082f9e03f1cbffef3d9472a8dcfd64"><td class="mdescLeft"> </td><td class="mdescRight">Index of string descriptor describing product. <br/></td></tr> <tr class="separator:a20082f9e03f1cbffef3d9472a8dcfd64"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a327e8ede51268b38955ef035cf6de875"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a327e8ede51268b38955ef035cf6de875"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a327e8ede51268b38955ef035cf6de875">iSerialNumber</a></td></tr> <tr class="memdesc:a327e8ede51268b38955ef035cf6de875"><td class="mdescLeft"> </td><td class="mdescRight">Index of string descriptor containing device serial number. <br/></td></tr> <tr class="separator:a327e8ede51268b38955ef035cf6de875"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0f3f80cd931628a0531a815b59d067dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f3f80cd931628a0531a815b59d067dd"></a> uint8_t </td><td class="memItemRight" valign="bottom"><a class="el" href="structlibusb__device__descriptor.html#a0f3f80cd931628a0531a815b59d067dd">bNumConfigurations</a></td></tr> <tr class="memdesc:a0f3f80cd931628a0531a815b59d067dd"><td class="mdescLeft"> </td><td class="mdescRight">Number of possible configurations. <br/></td></tr> <tr class="separator:a0f3f80cd931628a0531a815b59d067dd"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><p>A structure representing the standard USB device descriptor. </p> <p>This descriptor is documented in section 9.6.1 of the USB 3.0 specification. All multiple-byte fields are represented in host-endian format. </p> </div><h2 class="groupheader">Field Documentation</h2> <a class="anchor" id="a63c4b109725ce829fc81c5c9cad8c87a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint8_t libusb_device_descriptor::bDescriptorType</td> </tr> </table> </div><div class="memdoc"> <p>Descriptor type. </p> <p>Will have value <a class="el" href="group__desc.html#gga0a2e8a25dfdebf29fdd4764dcdbc1a9ca486e222e9f3053502ce4954a5bd89ba2">libusb_descriptor_type::LIBUSB_DT_DEVICE</a> LIBUSB_DT_DEVICE in this context. </p> </div> </div> <a class="anchor" id="af0682f293291db942b5d253092d472e4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint16_t libusb_device_descriptor::bcdUSB</td> </tr> </table> </div><div class="memdoc"> <p>USB specification release number in binary-coded decimal. </p> <p>A value of 0x0200 indicates USB 2.0, 0x0110 indicates USB 1.1, etc. </p> </div> </div> <a class="anchor" id="ab86c8f43e75d4d54fccbc199cfa9703b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">uint8_t libusb_device_descriptor::bDeviceClass</td> </tr> </table> </div><div class="memdoc"> <p>USB-IF class code for the device. </p> <p>See <a class="el" href="group__desc.html#gac529888effbefef8af4f9d17ebc903a1">libusb_class_code</a>. </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><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Sat Oct 19 2013 16:44:34 by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.5 </small></address> </body> </html>