diff -r 5cc91383ab1e -r 7333d7932ef7 installationservices/swi/inc/swi/nativecomponentinfo.h --- a/installationservices/swi/inc/swi/nativecomponentinfo.h Thu Aug 19 10:02:49 2010 +0300 +++ b/installationservices/swi/inc/swi/nativecomponentinfo.h Tue Aug 31 15:21:33 2010 +0300 @@ -38,6 +38,28 @@ class CNativeComponentInfo : public CBase { public: + + class CNativeApplicationInfo : public CBase + { + public: + IMPORT_C static CNativeApplicationInfo* NewLC(const TUid& aAppUid, const TDesC& aName, const TDesC& aGroupName, const TDesC& aIconFileName); + static CNativeApplicationInfo* NewL(RReadStream& aStream); + void ExternalizeL(RWriteStream& aStream) const; + + IMPORT_C const TUid& AppUid() const; + IMPORT_C const TDesC& Name() const; + IMPORT_C const TDesC& GroupName() const; + IMPORT_C const TDesC& IconFileName() const; + IMPORT_C virtual ~CNativeApplicationInfo(); + private: + CNativeApplicationInfo(); + + TUid iAppUid; // Application UID + HBufC* iName; // Name of the application + HBufC* iGroupName; // Group folder name where the application will be present + HBufC* iIconFileName; // Full path of the icon file + }; + /** Creates a new instance of the CNativeComponentInfo class. @leave System wide error code @@ -80,9 +102,17 @@ Usif::TAuthenticity iAuthenticity; ///< The authenticity of the component TCapabilitySet iUserGrantableCaps; ///< User grantable capabilities required be the component TInt iMaxInstalledSize; ///< The maximum size of the component after installation - TBool iHasExe; /// iApplications; ///< The array of application info of the component being queried RCPointerArray iChildren; ///< The children component info, incase of embedded packages. + enum + { + // An arbitrary limit for the length of a single descriptor, for example aComponentName, aVersion or aVendor. + KMaxDescriptorLength = 256, + }; + }; } // nameSpace Swi #endif // SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK