|
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 /** |
|
17 @file |
|
18 @publishedPartner |
|
19 @released |
|
20 */ |
|
21 #ifndef MMTPDEVDPEXTN_H_ |
|
22 #define MMTPDEVDPEXTN_H_ |
|
23 |
|
24 #include <e32base.h> |
|
25 #include <e32cons.h> |
|
26 #include <e32cmn.h> |
|
27 #include <ecom/ecom.h> |
|
28 #include <mtp/mtpdataproviderapitypes.h> |
|
29 #include <mtp/tmtptyperequest.h> |
|
30 #include <mtp/mtpprotocolconstants.h> |
|
31 |
|
32 |
|
33 class MExtnDevicePropDp |
|
34 { |
|
35 public: |
|
36 /** |
|
37 This interface method is designed to implement GetDevicePropValue (Operation Code EMTPOpCodeGetDevicePropValue). |
|
38 This operation returns the current value of the particular device property. |
|
39 @param aPropCode : device property code eg: PlaybackObject(D411) |
|
40 @param aMMTPtype : out param memory need to be allocated by the implementation. |
|
41 Owner ship of this param should be with allocator. |
|
42 */ |
|
43 virtual TInt GetDevPropertyL(const TMTPDevicePropertyCode aPropCode, MMTPType** aMMTPtype) = 0; |
|
44 |
|
45 |
|
46 /** |
|
47 This interface method is designed to implement GetDevicePropDesc (Operation Code EMTPOpCodeGetDevicePropDesc). |
|
48 This operation returns the current property desc of the particular device property. |
|
49 @param aPropCode : device property code eg: PlaybackObject(D411) |
|
50 @param aMMTPtype : out param memory need to be allocated by the implementation. |
|
51 Owner ship of this param should be with allocator. |
|
52 */ |
|
53 virtual TInt GetDevPropertyDescL(const TMTPDevicePropertyCode aPropCode, MMTPType** aMMTPtype) = 0; |
|
54 |
|
55 /** |
|
56 @param aMMTPtype : out param memory need to be allocated by the implementation. |
|
57 Owner ship of this param should be with allocator. |
|
58 SetDevicePropertyL function uses the allocated memory to set the device property when |
|
59 a EMTPOpCodeSetDevicePropValue operation code comes. |
|
60 |
|
61 */ |
|
62 virtual TInt GetDevicePropertyContainerL(TMTPDevicePropertyCode aPropCode, MMTPType** aMMTPtype) = 0; |
|
63 |
|
64 /** |
|
65 This method sets the device property implemented by extension plugin. |
|
66 */ |
|
67 virtual TMTPResponseCode SetDevicePropertyL() = 0; |
|
68 |
|
69 /** |
|
70 This method returns the supported properties by extension plugin. |
|
71 */ |
|
72 virtual void Supported (TMTPSupportCategory aCategory, RArray <TUint>& aArray, TMTPOperationalMode aMode) = 0; |
|
73 |
|
74 /** |
|
75 This interface method is designed to implement RessetDevicePropValue. |
|
76 @param aPropCode : device property code . |
|
77 */ |
|
78 virtual TInt ResetDevPropertyL(const TMTPDevicePropertyCode aPropCode) = 0; |
|
79 |
|
80 }; |
|
81 |
|
82 |
|
83 #endif /*MMTPDEVDPEXTN_H_*/ |