mmhais/videohai/devvideo/inc/devvideosurfacehandlecustominterface.h
changeset 0 40261b775718
equal deleted inserted replaced
-1:000000000000 0:40261b775718
       
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #ifndef DEVVIDEOSURFACEHANDLECUSTOMINTERFACE_H
       
    17 #define DEVVIDEOSURFACEHANDLECUSTOMINTERFACE_H
       
    18 
       
    19 #include <graphics/surface.h>
       
    20 #include <mmf/common/mmfvideo.h>
       
    21 
       
    22 /** 
       
    23 DevVideo SurfaceHandle Custom Interface UID.
       
    24 
       
    25 @publishedPartner
       
    26 @prototype
       
    27 */
       
    28 const TUid KUidMMFVideoSurfaceHandleControl = { 0x10286486 };
       
    29 
       
    30 /**
       
    31 Video play surface handle custom interface.
       
    32 This interface can be used by a H/W device which creates a surface to pass
       
    33 information about the surface (such as the surface handle) to another H/W device.
       
    34 This is typically implemented by a post processor and used by a decoder.
       
    35 
       
    36 @publishedPartner
       
    37 @prototype
       
    38 */
       
    39 class MMmfVideoSurfaceHandleControl
       
    40 	{
       
    41 	public:
       
    42 
       
    43 	/**
       
    44 	Set the handle for the surface
       
    45 
       
    46 	@param aSurfaceHandle Surface handle for the new surface.
       
    47 	*/
       
    48 	virtual void MmvshcSetSurfaceHandle(const TSurfaceId& aSurfaceHandle) = 0;
       
    49 
       
    50 	/**
       
    51 	Pass a buffer to redraw on the surface.
       
    52 	One situation here this might be used is where resources for a decoder are
       
    53 	temporarily removed. The decoder can call this routine in order to pass the
       
    54 	last picture to a postprocessor for redrawing.
       
    55 
       
    56 	@param  aRedrawBuffer Buffer containing picture to redraw. The memory for
       
    57 	this buffer is owned by the caller and ownership of the memory is not
       
    58 	transferred as part of this call. The memory may not be valid	after the
       
    59 	call completes.
       
    60 	*/
       
    61 	virtual void MmvshcRedrawBufferToSurface(TPtrC8& /*aRedrawBuffer*/) {};
       
    62 	};
       
    63 
       
    64 #endif // DEVVIDEOSURFACEHANDLECUSTOMINTERFACE_H