diff -r 6369bfd1b60d -r 08b5eae9f9ff upnpframework/upnpcommonui/inc/upnpimageplayer.h --- a/upnpframework/upnpcommonui/inc/upnpimageplayer.h Mon Nov 01 13:44:24 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,274 +0,0 @@ -/* -* Copyright (c) 2006 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: Plays remote images on a renderer -* -*/ - - -#ifndef C_CUPNPIMAGEPLAYER_H -#define C_CUPNPIMAGEPLAYER_H - - -#include - -#include -#include "upnpavrenderingsessionobserver.h" -#include "upnpcommonui.h" - -// FORWARD DECLARATIONS -class MUPnPAVController; -class MUPnPAVRenderingSession; -class CUpnpAVDevice; -class CUpnpObject; -class MUPnPDeviceObserver; -class CUPnPCommonUI; - - -// CLASS DECLARATION - -/** -* UPnP AV Controller callback dispatcher -* -* -* @lib - -* @since Series 60 3.1 -*/ - -NONSHARABLE_CLASS( CUpnpImagePlayer ) : public CBase, - public MUPnPAVRenderingSessionObserver - { - - private: - /** - * Defines the image playing state - */ - enum TPendingOperation - { - EImageIdle = 0, //when no action on image has been set - EImageInitialising, //image uri has been set, callback not called - EImageShowing, //image play has been set, callback not called - EImageNext //another image is acting when the previous - //one's action has not been completed - }; - - public: // Constructors and destructor - - static CUpnpImagePlayer* NewL( MUPnPAVController& aAVControl, - MUPnPDeviceObserver& aDialog, - CUPnPCommonUI& aCommonUI ); - - /** - * Destructor. - */ - virtual ~CUpnpImagePlayer(); - - public: - - /** - * Set the renderer to show the image - * @since Series 60 3.1 - * @param aTargetDevice the selected renderer to show the image - * @return none - */ - void SetTargetDeviceL(const CUpnpAVDevice& aTargetDevice); - - /** - * Show the image - * @since Series 60 3.1 - * @param the image to be shown - * @return none - */ - void PlayL(const CUpnpObject& aItem); - - /** - * Stop showing the image - * @since Series 60 3.1 - * @param none; - * @return none - */ - void Stop(); - - - protected: //Functions from MUPnPAVRenderingSessionObserver - - /** - * UPnP AV Controller calls this method to return the result for the - * 'get volume' request. Parameter contains the volume level of the - * media renderer device to which the 'get volume' request was sent. - * - * @since Series 60 3.1 - * @param aError error code - * @param aVolumeLevel TInt volume level (between 0 - 100) - * @param aActionResponse EFalse if caused by pressing hardware key - * ETrue if caused by rendering session - * @return None - */ - void VolumeResult( TInt /*aError*/, TInt /*aVolumeLevel*/, - TBool /*aActionResponse*/ ){}; - - /** - * UPnP AV Controller calls this method to return the result for the - * 'get mute' request. Parameter contains the state of the mute of the - * media renderer device to which the 'get mute' request was sent. - * - * @since Series 60 3.1 - * @param aError error code - * @param aMute TBool the state of the mute (ETrue or EFalse) - * @param aActionResponse EFalse if caused by pressing hardware key - * ETrue if caused by rendering session - * @return None - */ - void MuteResult( TInt /*aError*/, TBool /*aMute*/, - TBool /*aActionResponse*/ ){}; - - /** - * UPnP AV Controller calls this method to indicate that the - * requested interaction operation (play, stop, etc.) is complete. - * In other words, the target rendering device has changed it's - * state accordingly. - * - * @since Series 60 3.1 - * @param aErrorCode TInt error code - * @param aOperation TInt operation (TAVInteractOperation) - * @return None - */ - void InteractOperationComplete( - TInt aError, - TUPnPAVInteractOperation aOperation - ); - - /** - * UPnP AV Controller calls this method as a response to Position - * Info action. The current position and the total length of the - * track that is currently playing is returned. The results are in - * (hh:mm:ss) format. - * - * UPnPAVController releases the memory allocated for aTrackPosition - * and aTrackLength. - * - * @since Series 60 3.0 - * @param aStatus TInt error code - * @param aTrackPosition TDesC8& track position - * @param aTrackLength TDesC8& track length - * @return None - */ - void PositionInfoResult( - TInt /*aError*/, - const TDesC8& /*aTrackPosition*/, - const TDesC8& /*aTrackLength*/ - ){}; - - /** - * UPnP AV Controller calls this method to return the result for the - * 'set uri' request. - * - * @since Series 60 3.1 - * @param aError error code - * @return None - */ - void SetURIResult( TInt aError ); - - /** - * UPnP AV Controller calls this method to return the result for the - * 'set next uri' request. - * - * @since Series 60 3.1 - * @param aError error code - * @return None - */ - void SetNextURIResult( TInt /*aError*/){}; - - /** - * Notifies that the Media Renderer we have a session with has - * disappeared. Session is now unusable and must be closed. - * - * @since Series 60 3.1 - * @return None - */ - void MediaRendererDisappeared( - TUPnPDeviceDisconnectedReason aReason ); - - /** - * Notifies that the Local Media Server has been put on sharing state - * - * @since Series 60 3.1 - * @param aReason reason code - * @return None - */ - void ReserveLocalMSServicesCompleted( TInt /*aError*/ ){}; - - private: - - /** - * C++ default constructor. - */ - CUpnpImagePlayer( MUPnPAVController& aAVControl, - MUPnPDeviceObserver& aDialog, - CUPnPCommonUI& aCommonUI ); - /** - * By default Symbian 2nd phase constructor is private. - */ - void ConstructL(); - - private: - - /** - * UPnP AV Controller calls this method to indicate that the - * requested interaction operation (play, stop, etc.) is complete. - * In other words, the target rendering device has changed it's - * state accordingly. - * - * @since Series 60 3.1 - * @param aErrorCode TInt error code - * @param aOperation TInt operation (TAVInteractOperation) - * @return None - */ - void InteractOperationCompleteL( - TInt aError, - TUPnPAVInteractOperation aOperation - ); - - /** - * UPnP AV Controller calls this method to return the result for the - * 'set uri' request. - * - * @since Series 60 3.1 - * @param aError error code - * @return None - */ - void SetURIResultL( TInt aError ); - - private: - - MUPnPAVRenderingSession* iRendSession; //owned - MUPnPAVController& iAVControl; //not owned - const CUpnpAVDevice* iTargetDevice; //not owned - - TPendingOperation iImageState; - - HBufC8* iUri; //OWNED - - const CUpnpItem* iItem; //not owned - - MUPnPDeviceObserver& iDialog; //not owned - - CUPnPCommonUI& iCommonUI; //Not owned - - TBool iFirstStart; - - CUPnPCommonUI::TUPnPAction iAction; - }; - - -#endif // C_CUPNPIMAGEPLAYER_H