TUsbDeviceDescriptor Class Reference

class TUsbDeviceDescriptor : public TUsbGenericDescriptor

Device descriptor.

See section 9.6.1 of the USB 2.0 specification.

Intended to be available to 3rd parties later

Inherits from

Public Member Functions
TUsbDeviceDescriptor ()
IMPORT_C TUsbDeviceDescriptor * Cast ( TUsbGenericDescriptor *)
IMPORT_C TUint16 DeviceBcd ()
IMPORT_C TUint8 DeviceClass ()
IMPORT_C TUint8 DeviceProtocol ()
IMPORT_C TUint8 DeviceSubClass ()
TBool IsParent ( TUsbGenericDescriptor &)
TBool IsPeer ( TUsbGenericDescriptor &)
IMPORT_C TUint8 ManufacturerIndex ()
IMPORT_C TUint8 MaxPacketSize0 ()
IMPORT_C TUint8 NumConfigurations ()
TUsbDeviceDescriptor * ParseL ( TPtrC8 &, TUsbGenericDescriptor *)
IMPORT_C TUint16 ProductId ()
IMPORT_C TUint8 ProductIndex ()
IMPORT_C TUint8 SerialNumberIndex ()
IMPORT_C TUint16 USBBcd ()
IMPORT_C TUint16 VendorId ()
Inherited Functions
TUsbGenericDescriptor::DestroyTree()
TUsbGenericDescriptor::IsChild(TUsbGenericDescriptor &)
TUsbGenericDescriptor::TUint16At(TInt)const
TUsbGenericDescriptor::TUint32At(TInt)const
TUsbGenericDescriptor::TUint8At(TInt)const
TUsbGenericDescriptor::TUsbGenericDescriptor()
TUsbGenericDescriptor::operator TCleanupItem()
TUsbGenericDescriptor::operator=(const TUsbGenericDescriptor &)
Public Member Enumerations
enum TFieldOffsets {
EbcdUSB  = 2, EbDeviceClass  = 4, EbDeviceSubClass  = 5, EbDeviceProtocol  = 6, EbMaxPacketSize0  = 7, EidVendor  = 8, EidProduct  = 10, EbcdDevice  = 12, EiManufacturer  = 14, EiProduct  = 15, EiSerialNumber  = 16, EbNumConfigurations  = 17
}
Inherited Enumerations
TUsbGenericDescriptor:TUsbGenericDescriptorFlags
Public Attributes
const TInt KSizeInOctets
Inherited Attributes
TUsbGenericDescriptor::KbDescriptorTypeOffset
TUsbGenericDescriptor::KbLengthOffset
TUsbGenericDescriptor::iBlob
TUsbGenericDescriptor::iFirstChild
TUsbGenericDescriptor::iNextPeer
TUsbGenericDescriptor::iParent
TUsbGenericDescriptor::iRecognisedAndParsed
TUsbGenericDescriptor::ibDescriptorType
TUsbGenericDescriptor::ibLength

Constructor & Destructor Documentation

TUsbDeviceDescriptor()

IMPORT_C TUsbDeviceDescriptor ( )

Member Functions Documentation

Cast(TUsbGenericDescriptor *)

IMPORT_C TUsbDeviceDescriptor * Cast ( TUsbGenericDescriptor * aOriginal ) [static]

Parameters

TUsbGenericDescriptor * aOriginal

DeviceBcd()

IMPORT_C TUint16 DeviceBcd ( ) const

DeviceClass()

IMPORT_C TUint8 DeviceClass ( ) const

DeviceProtocol()

IMPORT_C TUint8 DeviceProtocol ( ) const

DeviceSubClass()

IMPORT_C TUint8 DeviceSubClass ( ) const

IsParent(TUsbGenericDescriptor &)

TBool IsParent ( TUsbGenericDescriptor & aPotentialParent ) [virtual]

Parameters

TUsbGenericDescriptor & aPotentialParent

IsPeer(TUsbGenericDescriptor &)

TBool IsPeer ( TUsbGenericDescriptor & aPotentialPeer ) [virtual]

Parameters

TUsbGenericDescriptor & aPotentialPeer

ManufacturerIndex()

IMPORT_C TUint8 ManufacturerIndex ( ) const

MaxPacketSize0()

IMPORT_C TUint8 MaxPacketSize0 ( ) const

NumConfigurations()

IMPORT_C TUint8 NumConfigurations ( ) const

ParseL(TPtrC8 &, TUsbGenericDescriptor *)

TUsbDeviceDescriptor * ParseL ( TPtrC8 & aUsbDes,
TUsbGenericDescriptor * aPreviousDesc
) [static]

The parsing routine for device descriptors. Here the previous descriptor parameter is ignored - because logically a device descriptor can be neither a peer nor a child.

Parameters

TPtrC8 & aUsbDes
TUsbGenericDescriptor * aPreviousDesc

ProductId()

IMPORT_C TUint16 ProductId ( ) const

ProductIndex()

IMPORT_C TUint8 ProductIndex ( ) const

SerialNumberIndex()

IMPORT_C TUint8 SerialNumberIndex ( ) const

USBBcd()

IMPORT_C TUint16 USBBcd ( ) const

VendorId()

IMPORT_C TUint16 VendorId ( ) const

Member Enumerations Documentation

Enum TFieldOffsets

Enumerators

EbcdUSB = 2
EbDeviceClass = 4
EbDeviceSubClass = 5
EbDeviceProtocol = 6
EbMaxPacketSize0 = 7
EidVendor = 8
EidProduct = 10
EbcdDevice = 12
EiManufacturer = 14
EiProduct = 15
EiSerialNumber = 16
EbNumConfigurations = 17

Member Data Documentation

const TInt KSizeInOctets

const TInt KSizeInOctets [static]