diff -r 000000000000 -r e686773b3f54 logsui/logsserviceextension/inc/clogsextbrandfetcher.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/logsui/logsserviceextension/inc/clogsextbrandfetcher.h Tue Feb 02 10:12:17 2010 +0200 @@ -0,0 +1,130 @@ +/* +* Copyright (c) 2007 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" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: Fetches a brand icon and its bitmask. +* +*/ + + + +#ifndef C_CLOGSEXTBRANDFETCHER_H +#define C_CLOGSEXTBRANDFETCHER_H + + +#include + +class MLogsExtBrandFetcherObserver; + +/** + * Branding icon fetcher class. + * + * @since S60 v3.2 + */ +NONSHARABLE_CLASS(CLogsExtBrandFetcher) : public CBase + { + +public: + + + /** + * Creates a new CLogsExtBrandFetcher. + * + * @since S60 v3.2 + * @param aServiceId a service id + * @param aObserver the observer of this fetching process + * @return a new CLogsExtBrandFetcher instance + */ + static CLogsExtBrandFetcher* NewL( + const TUint32 aServiceId, + MLogsExtBrandFetcherObserver& aObserver ); + + /** + * Creates a new CLogsExtBrandFetcher. + * + * @since S60 v3.2 + * @param aServiceId a service id + * @param aObserver the observer of this fetching process + * @return a new CLogsExtBrandFetcher instance + */ + static CLogsExtBrandFetcher* NewLC( + const TUint32 aServiceId, + MLogsExtBrandFetcherObserver& aObserver ); + + /** + * Destructor. + */ + ~CLogsExtBrandFetcher(); + +public: + + /** + * Initiates the fetching of the icon. + * + * @since S60 v3.2 + * @return KErrNone in case of no error, system error otherwise + * e.g. KErrNotReady if the fetcher is in use already + */ + TInt Fetch(); + + /** + * Returns the service id. + * + * @since S60 v3.2 + * @return the service id + */ + TUint32 ServiceId(); + + +protected: + + /** + * Symbian second-phase constructor + */ + void ConstructL(); + + +private: + + /** + * Constructor. + */ + CLogsExtBrandFetcher( const TUint32 aServiceId, + MLogsExtBrandFetcherObserver& aObserver ); + + /** + * Retrieves the icon's bitmap and bitmask from the branding server + * and completes its own request. RunL should call the callback + * afterwards. + * + * @since S60 v3.2 + */ + void GetBitmapsFromBrandServerL(); + + +private: // data + + /** + * Service id + */ + TUint32 iServiceId; + + /** + * The observer of this fetcher. Its callback function is called when + * the bitmaps have been fetched successfully. + * Not own. + */ + MLogsExtBrandFetcherObserver* iObserver; + + }; + +#endif // C_CLOGSEXTBRANDFETCHER_H