36 { |
36 { |
37 |
37 |
38 class CNativeComponentInfo : public CBase |
38 class CNativeComponentInfo : public CBase |
39 { |
39 { |
40 public: |
40 public: |
41 |
|
42 class CNativeApplicationInfo : public CBase |
|
43 { |
|
44 public: |
|
45 IMPORT_C static CNativeApplicationInfo* NewLC(const TUid& aAppUid, const TDesC& aName, const TDesC& aGroupName, const TDesC& aIconFileName); |
|
46 static CNativeApplicationInfo* NewL(RReadStream& aStream); |
|
47 void ExternalizeL(RWriteStream& aStream) const; |
|
48 |
|
49 IMPORT_C const TUid& AppUid() const; |
|
50 IMPORT_C const TDesC& Name() const; |
|
51 IMPORT_C const TDesC& GroupName() const; |
|
52 IMPORT_C const TDesC& IconFileName() const; |
|
53 IMPORT_C virtual ~CNativeApplicationInfo(); |
|
54 private: |
|
55 CNativeApplicationInfo(); |
|
56 |
|
57 TUid iAppUid; // Application UID |
|
58 HBufC* iName; // Name of the application |
|
59 HBufC* iGroupName; // Group folder name where the application will be present |
|
60 HBufC* iIconFileName; // Full path of the icon file |
|
61 }; |
|
62 |
|
63 /** |
41 /** |
64 Creates a new instance of the CNativeComponentInfo class. |
42 Creates a new instance of the CNativeComponentInfo class. |
65 @leave System wide error code |
43 @leave System wide error code |
66 */ |
44 */ |
67 IMPORT_C static CNativeComponentInfo* NewL(); |
45 IMPORT_C static CNativeComponentInfo* NewL(); |
100 Usif::TInstallStatus iInstallStatus; ///< Informs whether the component is already installed or upgradeable |
78 Usif::TInstallStatus iInstallStatus; ///< Informs whether the component is already installed or upgradeable |
101 Usif::TComponentId iComponentId; ///< The unique id of the component if already installed |
79 Usif::TComponentId iComponentId; ///< The unique id of the component if already installed |
102 Usif::TAuthenticity iAuthenticity; ///< The authenticity of the component |
80 Usif::TAuthenticity iAuthenticity; ///< The authenticity of the component |
103 TCapabilitySet iUserGrantableCaps; ///< User grantable capabilities required be the component |
81 TCapabilitySet iUserGrantableCaps; ///< User grantable capabilities required be the component |
104 TInt iMaxInstalledSize; ///< The maximum size of the component after installation |
82 TInt iMaxInstalledSize; ///< The maximum size of the component after installation |
105 TBool iHasExe; ///<Indicates Whether the component has an exe or not |
83 TBool iHasExe; ///<Indicates Whether the component has an exe or not |
106 TBool iIsDriveSelectionRequired; ///< Indicates Whether drive selection is required or not. |
|
107 RCPointerArray<CNativeApplicationInfo> iApplications; ///< The array of application info of the component being queried |
|
108 RCPointerArray<CNativeComponentInfo> iChildren; ///< The children component info, incase of embedded packages. |
84 RCPointerArray<CNativeComponentInfo> iChildren; ///< The children component info, incase of embedded packages. |
109 |
85 |
110 enum |
|
111 { |
|
112 // An arbitrary limit for the length of a single descriptor, for example aComponentName, aVersion or aVendor. |
|
113 KMaxDescriptorLength = 256, |
|
114 }; |
|
115 |
|
116 }; |
86 }; |
117 } // nameSpace Swi |
87 } // nameSpace Swi |
118 #endif // SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK |
88 #endif // SYMBIAN_UNIVERSAL_INSTALL_FRAMEWORK |
119 #endif // NATIVECOMPONENTINFO_H |
89 #endif // NATIVECOMPONENTINFO_H |