diff -r 000000000000 -r 96612d01cf9f videofeeds/vcnsuiengine/inc/vcxnsserviceproviderif.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/videofeeds/vcnsuiengine/inc/vcxnsserviceproviderif.h Mon Jan 18 20:21:12 2010 +0200 @@ -0,0 +1,162 @@ +/* +* Copyright (c) 2008 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 "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: +* +*/ + + + + +#ifndef M_VCXNSAPPSERVICEPROVIDERIF_H +#define M_VCXNSAPPSERVICEPROVIDERIF_H + +// INCLUDES +#include + +// CLASS DECLARATION +class MVcxNsServiceProviderObserver; +class CVcxNsService; + +/** +* Class MVcxNsServiceProviderIf +* Interface for using UI engine's service provider +* +* @lib vcxnsuiengine.lib +*/ +class MVcxNsServiceProviderIf + { + +public: + + /** + * RegisterObserver. + * @param aObserver Observer + */ + virtual void RegisterObserver( MVcxNsServiceProviderObserver* aObserver ) = 0; + + /** + * DeRegisterObserver. + * @param aObserver Observer + */ + virtual void DeRegisterObserver( MVcxNsServiceProviderObserver* aObserver ) = 0; + + /** + * Gets all subscribed services. + * + * @return Vod services. + */ + virtual RPointerArray& GetSubscribedServicesL() = 0 ; + + /** + * Gets all services under active service group. + * @return Group service list for active service group. + */ + virtual RPointerArray& GetActiveGroupListL() = 0; + + /** + * Opens selected service. + * + * @param aIndex Index of the service to be opened. + */ + virtual void OpenServiceL( TInt aIndex ) = 0 ; + + /** + * Open service with given service id. + * + * @param aServiceId Id of service to open + */ + virtual void OpenServiceL( TUint32 aServiceId ) = 0; + + /** + * Remove service + * + * @param aIndex Index of the service to be removed. + */ + virtual void RemoveServiceL( TInt aIndex ) = 0; + + /** + * Get pointer to service data + * @param aIndex Index of the service in list + * @return Pointer to service data. + * NULL returned, if service data not found + */ + virtual CVcxNsService* GetServiceData( TInt aIndex ) = 0; + + /** + * Return pointer to active service data + * @return Pointer to active service data. + * NULL returned, if service data not found + */ + virtual CVcxNsService* GetActiveServiceData() = 0; + + /** + * Handle the back command by choosing new application state. + * @return Was the back event consumed. If EFalse, + * the back event should be handled by caller. + */ + virtual TBool HandleBack() = 0; + + /** + * Start ecg update for all visible feeds. + */ + virtual void RefreshAllServicesL() = 0; + + /** + * Open video directory. + */ + virtual void OpenVideoDirectoryL() = 0; + + /** + * Manage account for selected service. + * @param aSelected Selected item index + */ + virtual void ManageAccountL( TInt aSelected ) = 0; + + /** + * Save authentication data for service. + * This handles data for active service. + * @param aUserName username + * @param aPasswd passwd + */ + virtual void SetAuthenticationDataL( + const TDesC& aUserName, + const TDesC& aPasswd ) = 0; + + /** + * Checks if feed has more details than just name + * + * @param aSelected Index of selected item + * @return Does the feed have other details than just name + */ + virtual TBool HasFeedDetails( TInt aSelected ) = 0; + + /** + * Moves a service from given position to another. + * + * @param aSourceIndex where from move the service + * @param aTargetIndex where to move the service. + * @return error code + */ + virtual TInt MoveServiceL( TInt aSourceIndex, TInt aTargetIndex ) = 0; + + /** + * Check if item has account management uri. + * @param aSelected Index of selected item. + * @return ETrue if account management uri available. + */ + virtual TBool HasAccountManagementUri( TInt aSelected ) = 0; + + }; + +#endif // MVCXNSAPPSERVICEPROVIDERIF_H