os/mm/mdfdevvideoextensions/nga_mdf_postprocessor_shai/inc/devvideosurfacehandlecustominterface.h
Update contrib.
2 * Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
4 * This component and the accompanying materials are made available
5 * under the terms of "Eclipse Public License v1.0"
6 * which accompanies this distribution, and is available
7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
9 * Initial Contributors:
10 * Nokia Corporation - initial contribution.
18 #ifndef DEVVIDEOSURFACEHANDLECUSTOMINTERFACE_H
19 #define DEVVIDEOSURFACEHANDLECUSTOMINTERFACE_H
21 #include <graphics/surface.h>
22 #include <mmf/common/mmfvideo.h>
23 #include <graphics/surfacemanager.h>
26 DevVideo SurfaceHandle Custom Interface UID.
31 const TUid KUidMMFVideoSurfaceHandleControl = { 0x10286486 };
34 Video play surface handle custom interface. This interface can be used by
35 a H/W device which creates a surface to pass the surface handle to
36 another H/W device. Alternatively, a H/W device may create resources for the
37 surface, for example, chunks and pass details to another H/W device to
38 create surface based on the chunk information.
39 Typically implemented by the post processor and used by a decoder.
44 class MMmfVideoSurfaceHandleControl
49 @param aSurfaceHandle Surface handle for the new surface.
51 virtual void MmvshcSetSurfaceHandle(const TSurfaceId& aSurfaceHandle) = 0;
54 @param aRedrawBuffer Buffer for the redrawing of the last picture. The
55 memory of this buffer is owned by the caller and ownerhship of this memory
56 is not transerred as part of this call. Also, the memory may not be valid
57 after the call completes.
59 virtual void MmvshcRedrawBufferToSurface(TPtrC8& aRedrawBuffer) = 0;
62 This is used to get th esurface create dbased on an ixisting chunk. Typically,
63 the chunk would be created by the caller of this method and surface would be
64 created by the implementer.
66 @param aAttributes Info necessary to create surface based on existing chunk.
67 @param aHandle Handle of the existing chunk
68 @param aSurfaceId Surface Id created as on output of this method.
72 virtual TInt MmvshcCreateSurface(const RSurfaceManager::TSurfaceCreationAttributes& aAttributes, TInt aHandle, TSurfaceId& aSurfaceId) = 0;
77 #endif // DEVVIDEOSURFACEHANDLECUSTOMINTERFACE_H