00001 /* 00002 * ============================================================================== 00003 * Name : AknIconSrvClient.h 00004 * Part of : AknIconSrv 00005 * Interface : N/A 00006 * Description : 00007 * 00008 * Version : 1 00009 * 00010 * Copyright (c) 2002 Nokia Corporation. 00011 * This material, including documentation and any related 00012 * computer programs, is protected by copyright controlled by 00013 * Nokia Corporation. All rights are reserved. Copying, 00014 * including reproducing, storing, adapting or translating, any 00015 * or all of this material requires the prior written consent of 00016 * Nokia Corporation. This material also contains confidential 00017 * information which may not be disclosed to others without the 00018 * prior written consent of Nokia Corporation. 00019 * ============================================================================== 00020 */ 00021 00022 00023 #ifndef AKN_ICON_SRV_CLIENT_H 00024 #define AKN_ICON_SRV_CLIENT_H 00025 00026 #include <e32base.h> 00027 #include <AknIconUtils.h> 00028 00029 struct TAknIconParams; 00030 struct TAknIconInitData; 00031 class CAknBitmap; 00032 class CAknIconManager; 00033 00034 00041 class RAknIconSrvClient : public RSessionBase 00042 { 00043 00044 public: // New functions 00045 00049 RAknIconSrvClient(); 00050 00058 IMPORT_C static TInt Connect(); 00059 00064 IMPORT_C static void Disconnect(); 00065 00073 static RAknIconSrvClient* GetSession(); 00074 00075 public: // But not exported. 00076 00087 void InitializeIconL( 00088 CAknBitmap& aBitmap, 00089 CAknBitmap& aMask, 00090 TAknContentDimensions& aContentDimensions, 00091 const TAknIconParams& aInfo ) const; 00092 00098 void FreeBitmap( CAknBitmap& aBitmap ) const; 00099 00107 TInt GetContentDimensions( 00108 CAknBitmap& aBitmap, 00109 TAknContentDimensions& aContentDimensions ) const; 00110 00117 TInt PreserveIconData( CAknIconManager& aBitmap ) const; 00118 00124 void DestroyIconData( CAknIconManager& aBitmap ) const; 00125 00131 void GetInitData( TAknIconInitData& aData ) const; 00132 00136 void __SERVER_HEAP_MARK() const; 00137 void __SERVER_HEAP_MARKEND() const; 00138 void __SERVER_HEAP_FAILNEXT( TInt aCount ) const; 00139 void __SERVER_HEAP_FAILNEXT_INCREASING( TInt aCount ) const; 00140 void __SERVER_HEAP_RESET() const; 00141 void __SERVER_RESET_DYNAMICALLY_CHANGING_ALLOCATIONS() const; 00142 TInt __SERVER_HEAP_USED() const; 00143 void __SERVER_SET_PREFERRED_ICON_DISPLAY_MODE( 00144 TDisplayMode aMode ) const; 00145 00151 TInt ConnectToServer(); 00152 00158 TInt EnableCache(TBool aEnable); 00159 00160 private: // Data 00161 TInt iConnections; 00162 }; 00163 00164 // AKN_ICON_SRV_CLIENT_H 00165 #endif 00166 00167 // End of File