williamr@4: /* williamr@4: * Copyright (c) 2003-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@4: * All rights reserved. williamr@4: * This component and the accompanying materials are made available williamr@4: * under the terms of "Eclipse Public License v1.0" williamr@4: * which accompanies this distribution, and is available williamr@4: * at the URL "http://www.eclipse.org/legal/epl-v10.html". williamr@4: * williamr@4: * Initial Contributors: williamr@4: * Nokia Corporation - initial contribution. williamr@4: * williamr@4: * Contributors: williamr@4: * williamr@4: * Description: williamr@4: * Resource header for usbman configuration. williamr@4: * williamr@4: */ williamr@4: williamr@4: /** williamr@4: @file williamr@4: @publishedPartner williamr@4: @released williamr@4: */ williamr@4: williamr@4: STRUCT usb_configuration williamr@4: { williamr@4: /** williamr@4: vendorId is the 16-bit number that is assigned by USB-ORG. williamr@4: */ williamr@4: WORD vendorId = 0x0e22; williamr@4: williamr@4: /** williamr@4: productId is a 16-bit number that is assigned by the licensee to williamr@4: uniquely identify this particular type of device. williamr@4: */ williamr@4: WORD productId = 0x000b; williamr@4: williamr@4: /** williamr@4: bcdDevice may be optionally used during enumeration, this depends on williamr@4: the licensee's policy regarding device upgrades (new versions of a williamr@4: device may require to use new host driver files) williamr@4: */ williamr@4: WORD bcdDevice = 0x0000; williamr@4: williamr@4: /** williamr@4: manufacturerString is displayed on the Windows screen during first williamr@4: enumeration of the device, and should identify the same company that williamr@4: owns the USB vendorId given above williamr@4: */ williamr@4: LTEXT manufacturer = "Symbian Ltd."; williamr@4: williamr@4: /** williamr@4: productString is displayed on the Windows screen during first williamr@4: enumeration of the device, and should identify the same device that is williamr@4: implied by the productId given above williamr@4: */ williamr@4: LTEXT product = "Symbian OS"; williamr@4: } williamr@4: williamr@4: STRUCT PERSONALITY williamr@4: { williamr@4: /** Class code (assigned by the USB-IF). If this field is set to zero, each interface within williamr@4: a configuration specifies its own class information and the various interfaces operate independently. williamr@4: williamr@4: If this field is set to a value between 1 and FEH, the device supports different class williamr@4: specifications on different interfaces and the interfaces may not operate independently. williamr@4: This value identifies the class definition used for the aggregate interfaces. williamr@4: williamr@4: If this field is set to FFH, the device class is vendor-specific. */ williamr@4: BYTE bDeviceClass; williamr@4: williamr@4: /** Subclass code (assigned by the USB-IF). These codes are qualified by the value of the bDeviceClass field. williamr@4: If the bDeviceClass field is set to zero, this field must also be set to zero. williamr@4: If the bDeviceClass field is not set to FFH, all values are reserved for assignment by the USB-IF. */ williamr@4: BYTE bDeviceSubClass; williamr@4: williamr@4: /** Protocol code (assigned by the USB-IF). These codes are qualified by the value of the bDeviceClass and the williamr@4: bDeviceSubClass fields. If a device supports class-specific protocols on a device basis as opposed to an williamr@4: interface basis, this code identifies the protocols that the device uses as defined by the specification of the device class. williamr@4: If this field is set to zero, the device does not use class-specific protocols on a device basis. However, it may use williamr@4: classspecific protocols on an interface basis. williamr@4: If this field is set to FFH, the device uses a vendor-specific protocol on a device basis. */ williamr@4: BYTE protocol; williamr@4: williamr@4: /** Number of possible configurations */ williamr@4: BYTE numConfigurations; williamr@4: williamr@4: /** vendorId is the 16-bit number that is assigned by USB-ORG. */ williamr@4: WORD vendorId; williamr@4: williamr@4: /** productId is a 16-bit number that is assigned by the licensee to williamr@4: uniquely identify this particular personality as type of device . */ williamr@4: WORD productId; williamr@4: williamr@4: /** bcdDevice may be optionally used during enumeration, this depends on williamr@4: the licensee's policy regarding device upgrades */ williamr@4: WORD bcdDevice; williamr@4: williamr@4: /** manufacturerString is displayed on the Windows screen during first williamr@4: enumeration of the device, and should identify the same company that williamr@4: owns the USB vendorId given above */ williamr@4: LTEXT manufacturer; williamr@4: williamr@4: /** productString is displayed on the Windows screen during first williamr@4: enumeration of the device, and should identify the same device that is williamr@4: implied by the productId given above */ williamr@4: LTEXT product; williamr@4: williamr@4: /** personality id - UID which identified this personality */ williamr@4: WORD id; williamr@4: williamr@4: /** list of Class Controllers UIDs associated with this personality. williamr@4: UIDs shoud be provided as list of hexadecimal numbers separated by space or comma. williamr@4: Note Do not provide leading 0x or any trailing characters! williamr@4: Example "1Abc3422, 12345678 FE43bc33" williamr@4: Incorrect example "1abc3422, 0x12345678," */ williamr@4: LTEXT class_uids; williamr@4: williamr@4: /** free text description of this personality. */ williamr@4: LTEXT description; williamr@4: williamr@4: /** free text detailed description of this personality. */ williamr@4: LTEXT detailedDescription; williamr@4: williamr@4: /** personality property - the property of this personality */ williamr@4: LONG property; williamr@4: williamr@4: } williamr@4: williamr@4: STRUCT PERSONALITY_ARRAY williamr@4: { williamr@4: STRUCT personalities[]; // STRUCT PERSONALITY williamr@4: }