--- a/epoc32/include/mw/akniconsrvclient.h Tue Nov 24 13:55:44 2009 +0000
+++ b/epoc32/include/mw/akniconsrvclient.h Tue Mar 16 16:12:26 2010 +0000
@@ -1,1 +1,164 @@
-akniconsrvclient.h
+/*
+* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
+* which accompanies this distribution, and is available
+* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+
+
+#ifndef AKN_ICON_SRV_CLIENT_H
+#define AKN_ICON_SRV_CLIENT_H
+
+#include <e32base.h>
+#include <AknIconUtils.h>
+
+struct TAknIconParams;
+struct TAknIconInitData;
+class CAknBitmap;
+class CAknIconManager;
+
+
+/**
+ * A client-side handle to a session with an icon server which allows handling
+ * icons (bitmaps).
+ *
+ * @since 3.0
+ */
+class RAknIconSrvClient : public RSessionBase
+ {
+
+ public: // New functions
+
+ /**
+ * C++ default constructor.
+ */
+ RAknIconSrvClient();
+
+ /**
+ * Connects AknIconSrv session. It is stored in TLS.
+ * Application framework calls this in application startup.
+ *
+ * @since 3.0
+ * @return Symbian OS standard error code.
+ */
+ IMPORT_C static TInt Connect();
+
+ /**
+ * Disconnects the session.
+ * @since 3.0
+ */
+ IMPORT_C static void Disconnect();
+
+ /**
+ * Returns the connected server client from TLS.
+ *
+ * @return The connected server client from TLS.
+ * @panic EClientSessionNotConnected @c Connect() has not been called
+ * successfully earlier.
+ */
+ static RAknIconSrvClient* GetSession();
+
+ public: // But not exported.
+
+ /**
+ * Initializes the given bitmap and mask according to the member data
+ * stored in them and the given pixel size.
+ *
+ * @param[in] aBitmap Bitmap.
+ * @param[in] aMask Mask of the bitmap.
+ * @param[out] aContentDimensions The content dimensions if it is
+ * a SVG icon.
+ * @param aInfo parameters of the icon.
+ */
+ void InitializeIconL(
+ CAknBitmap& aBitmap,
+ CAknBitmap& aMask,
+ TAknContentDimensions& aContentDimensions,
+ const TAknIconParams& aInfo ) const;
+
+ /**
+ * Frees the shared bitmap.
+ *
+ * @param aBitmap Bitmap.
+ */
+ void FreeBitmap( CAknBitmap& aBitmap ) const;
+
+ /**
+ * Gets content dimensions of the icon.
+ *
+ * @param[in] aBitmap Bitmap.
+ * @param[out] aContentDimensions The content dimensions of an icon.
+ * @return Symbian OS standard error code .
+ */
+ TInt GetContentDimensions(
+ CAknBitmap& aBitmap,
+ TAknContentDimensions& aContentDimensions ) const;
+
+ /**
+ * Preserves icon data (e.g. SVG-T DOM tree) in memory.
+ *
+ * @param aBitmap Bitmap.
+ * @return Symbian OS standard error code .
+ */
+ TInt PreserveIconData( CAknIconManager& aBitmap ) const;
+
+ /**
+ * Removes icon data (e.g. SVG-T DOM tree) from the memory.
+ *
+ * @param aBitmap Bitmap.
+ */
+ void DestroyIconData( CAknIconManager& aBitmap ) const;
+
+ /**
+ * Retrieves initialization data from server side.
+ *
+ * @param[out] aData Initialization data.
+ */
+ void GetInitData( TAknIconInitData& aData ) const;
+
+ /**
+ * Test functions (debug only).
+ */
+ void __SERVER_HEAP_MARK() const;
+ void __SERVER_HEAP_MARKEND() const;
+ void __SERVER_HEAP_FAILNEXT( TInt aCount ) const;
+ void __SERVER_HEAP_FAILNEXT_INCREASING( TInt aCount ) const;
+ void __SERVER_HEAP_RESET() const;
+ void __SERVER_RESET_DYNAMICALLY_CHANGING_ALLOCATIONS() const;
+ TInt __SERVER_HEAP_USED() const;
+ void __SERVER_SET_PREFERRED_ICON_DISPLAY_MODE(
+ TDisplayMode aMode ) const;
+
+ /**
+ * Connects to server.
+ *
+ * @return Symbian OS standard error code .
+ */
+ TInt ConnectToServer();
+
+ /**
+ * Enable or disable the AknIcon cache.
+ *
+ * @return Symbian OS standard error code .
+ */
+ TInt EnableCache(TBool aEnable);
+
+ private: // Data
+ TInt iConnections;
+ };
+
+#endif // AKN_ICON_SRV_CLIENT_H
+
+// End of File