diff -r f92a4f87e424 -r 012cc2ee6408 usbmgmt/usbmgr/usbman/server/INC/CPersonality.h --- a/usbmgmt/usbmgr/usbman/server/INC/CPersonality.h Tue Aug 31 17:01:47 2010 +0300 +++ b/usbmgmt/usbmgr/usbman/server/INC/CPersonality.h Wed Sep 01 12:35:00 2010 +0100 @@ -1,5 +1,5 @@ /** -* Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies). +* Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies). * All rights reserved. * This component and the accompanying materials are made available * under the terms of "Eclipse Public License v1.0" @@ -29,102 +29,60 @@ #include #include "CUsbDevice.h" - -/** - * The CPersonalityConfigurations class keep all information of the table - * "Configuration" of USB cenrep - */ - -NONSHARABLE_CLASS(CPersonalityConfigurations) : public CBase - { -public: - /*USB Classes*/ - class TUsbClasses - { - public: - TUid iClassUid; - TInt iFeatureId; // Indicates the class is configurable or not. - }; -public: - void SetPersonalityId(TInt aPersonalityId); - void SetConfigId(TInt aConfigId); - inline const RArray& Classes() const; - void AppendClassesL(const TUsbClasses& aClasses ); - ~CPersonalityConfigurations(); - -private: - TInt iPersonalityId; /*Personality Id*/ - TInt iConfigId; /*Configuration Id*/ - RArray iClasses; /*Class array*/ - }; - NONSHARABLE_CLASS(CPersonality) : public CBase { public: static CPersonality* NewL(); ~CPersonality(); - const RArray& SupportedClasses() const; - TBool ClassSupported(TUid aClassId) const; + TInt PersonalityId() const; + const RArray& SupportedClasses() const; + TInt ClassSupported(TUid aClassId) const; + const CUsbDevice::TUsbDeviceDescriptor& DeviceDescriptor() const; + CUsbDevice::TUsbDeviceDescriptor& DeviceDescriptor(); + const TDesC* Manufacturer() const; + const TDesC* Product() const; + const TDesC* Description() const; + TInt AddSupportedClasses(TUid aClassId); + void SetId(TInt aId); + void SetManufacturer(const TDesC* aManufacturer); + void SetProduct(const TDesC* aProduct); + void SetDescription(const TDesC* aDescription); static TInt Compare(const TUid& aFirst, const TUid& aSecond); - inline TInt Version() const; - void SetVersion(TInt version); - - inline TUint32 Property() const; - void SetProperty(TUint32 aProperty); - - inline TUint8 DeviceClass() const; - void SetDeviceClass(TUint8 aDeviceClass); - - inline TUint8 DeviceSubClass() const; - void SetDeviceSubClass(TUint8 aDeviceSubClass); + const TDesC* DetailedDescription() const; + void SetDetailedDescription(const TDesC* aDetailedDescription); - inline TUint8 DeviceProtocol() const; - void SetDeviceProtocol(TUint8 aDeviceProtocol); - - inline TUint8 NumConfigurations() const; - void SetNumConfigurations(TUint8 aNumConfigurations); - - inline TUint16 ProductId() const; - void SetProductId(TUint16 aProductId); - - inline TInt FeatureId() const; - void SetFeatureId(TInt aFeatureId); - - inline TUint16 BcdDevice() const; - void SetBcdDevice(TUint16 aBcdDevice); - - inline TInt PersonalityId() const; - void SetPersonalityId(TInt aPersonalityId); - - inline const TDesC* Description() const; - void SetDescription(const TDesC* aDescription); - - inline const RPointerArray& PersonalityConfigs() const; - void AppendPersonalityConfigsL(const CPersonalityConfigurations *aPersonalityConfig ); + TUint32 Property() const; + void SetProperty(TUint32 aProperty); + + TInt Version() const; + void SetVersion(TInt version); private: CPersonality(); void ConstructL(); - + private: - TInt iVersion; - TUint32 iProperty; - TUint8 iDeviceClass; - TUint8 iDeviceSubClass; - TUint8 iDeviceProtocol; - TUint8 iNumConfigurations; - TUint16 iProductId; - TInt iFeatureId; - TUint16 iBcdDevice; - TInt iPersonalityId; // personality id - HBufC* iDescription; // Own this Personality's description - RPointerArray iPersonalityConfigs; + // personality id + TInt iId; + // USB class ids + RArray iClassUids; + // textual description of manufacturer + HBufC* iManufacturer; + // textual description of product + HBufC* iProduct; + // textual description of personality + HBufC* iDescription; + // USB device descriptor struct + CUsbDevice::TUsbDeviceDescriptor iDeviceDescriptor; + // detailed textual description of personality + HBufC* iDetailedDescription; + + TInt iVersion; + TUint32 iProperty; }; - - #include "CPersonality.inl" #endif // __CPERSONALITY_H__