|
1 // Copyright (c) 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 DEVVIDEOHWDEVICETUNNELCUSTOMINTERFACE_H |
|
17 #define DEVVIDEOHWDEVICETUNNELCUSTOMINTERFACE_H |
|
18 |
|
19 #include <mmf/devvideo/devvideobase.h> |
|
20 |
|
21 /** |
|
22 KUidMmfVideoHwDeviceTunnel interface UID. |
|
23 |
|
24 @publishedPartner |
|
25 @released |
|
26 */ |
|
27 const TUid KUidMmfVideoHwDeviceTunnel = { 0x1028668C }; |
|
28 |
|
29 /** |
|
30 HwDevice Tunneling custom interface. |
|
31 Controllers or other DevVideo clients can use this interface in order to setup |
|
32 a tunnel from one HwDevice to another. For instance this would allow a video |
|
33 decoder to be tunneled to a video encoder for transcoding use cases. |
|
34 |
|
35 Clients must query the HwDevice at both ends of the tunnel for the custom |
|
36 interface in order to ensure that both devices support tunneled operation. |
|
37 |
|
38 @publishedPartner |
|
39 @released |
|
40 */ |
|
41 class MMmfVideoHwDeviceTunnel |
|
42 { |
|
43 public: |
|
44 /** |
|
45 Get the instance of the HwDevice at this end of the tunnel. |
|
46 |
|
47 @return The HwDevice instance |
|
48 */ |
|
49 virtual CMMFVideoHwDevice* MmvhdtHwDevice() = 0; |
|
50 |
|
51 /** |
|
52 Setup a tunnel to another HwDevice |
|
53 |
|
54 @param aHwDevice The HwDevice to setup the tunnel to |
|
55 */ |
|
56 virtual void MmvhdtSetupTunnelL(CMMFVideoHwDevice* aHwDevice) = 0; |
|
57 }; |
|
58 |
|
59 #endif // DEVVIDEOHWDEVICETUNNELCUSTOMINTERFACE_H |