32 #include <badesca.h> |
32 #include <badesca.h> |
33 |
33 |
34 class CHbSymbianVariantPrivate; |
34 class CHbSymbianVariantPrivate; |
35 class CHbSymbianVariantMapPrivate; |
35 class CHbSymbianVariantMapPrivate; |
36 |
36 |
37 class CHbSymbianVariant : public CBase |
37 class CHbSymbianVariant |
|
38 #if !defined(HB_DOXYGEN) |
|
39 : public CBase |
|
40 #endif // !defined(HB_DOXYGEN) |
38 { |
41 { |
39 public: |
42 public: |
40 |
43 |
41 enum TType{ |
44 enum TType{ |
42 EInt, |
45 EInt, EBool, EUint, EReal, ERect, EPoint, ESize, EChar, |
43 EBool, |
46 EDes, EBinary, EDesArray, EVariantMap |
44 EUint, |
|
45 EReal, |
|
46 ERect, |
|
47 EPoint, |
|
48 ESize, |
|
49 EChar, |
|
50 EDes, |
|
51 EBinary, |
|
52 EDesArray, |
|
53 EVariantMap |
|
54 }; |
47 }; |
55 |
48 |
56 IMPORT_C static CHbSymbianVariant* NewL(const TAny* aData, TType aDataType); |
49 IMPORT_C static CHbSymbianVariant* NewL(const TAny* aData, TType aDataType); |
57 |
50 IMPORT_C ~CHbSymbianVariant(); |
58 |
51 |
59 IMPORT_C CHbSymbianVariant::TType Type() const; |
52 IMPORT_C CHbSymbianVariant::TType Type() const; |
60 |
53 |
61 template<typename T> |
54 template<typename T> |
62 T* Value() const { |
55 T* Value() const { |
66 } |
59 } |
67 else return 0; |
60 else return 0; |
68 } |
61 } |
69 |
62 |
70 IMPORT_C TAny* Data() const; |
63 IMPORT_C TAny* Data() const; |
71 |
|
72 IMPORT_C void SetData(TAny* aData, TType aDataType); |
64 IMPORT_C void SetData(TAny* aData, TType aDataType); |
73 |
|
74 IMPORT_C TBool IsValid() const; |
65 IMPORT_C TBool IsValid() const; |
75 |
|
76 IMPORT_C ~CHbSymbianVariant(); |
|
77 |
66 |
78 private: |
67 private: |
79 CHbSymbianVariant(const TAny* aData, TType aDataType); |
68 CHbSymbianVariant(const TAny* aData, TType aDataType); |
80 |
|
81 void ConstructL(const TAny* aData, TType aDataType); |
69 void ConstructL(const TAny* aData, TType aDataType); |
82 |
|
83 CHbSymbianVariant(const CHbSymbianVariant& aNativeVariant); |
70 CHbSymbianVariant(const CHbSymbianVariant& aNativeVariant); |
84 |
71 |
85 private: |
72 private: |
86 CHbSymbianVariantPrivate* d; |
73 CHbSymbianVariantPrivate* d; |
87 }; |
74 }; |
88 |
75 |
89 class CHbSymbianVariantMap : public CBase |
76 class CHbSymbianVariantMap |
|
77 #if !defined(HB_DOXYGEN) |
|
78 : public CBase |
|
79 #endif // !defined(HB_DOXYGEN) |
90 { |
80 { |
91 public: |
81 public: |
92 IMPORT_C static CHbSymbianVariantMap* NewL(); |
82 IMPORT_C static CHbSymbianVariantMap* NewL(); |
93 IMPORT_C ~CHbSymbianVariantMap(); |
83 IMPORT_C ~CHbSymbianVariantMap(); |
94 |
84 |
95 IMPORT_C TInt Add(const TDesC& aKey, CHbSymbianVariant* aVariant); |
85 IMPORT_C TInt Add(const TDesC& aKey, CHbSymbianVariant* aVariant); |
96 |
|
97 IMPORT_C TInt Delete(const TDesC& aKey); |
86 IMPORT_C TInt Delete(const TDesC& aKey); |
98 |
|
99 IMPORT_C const CHbSymbianVariant* Get(const TDesC& aKey) const; |
87 IMPORT_C const CHbSymbianVariant* Get(const TDesC& aKey) const; |
100 |
|
101 IMPORT_C MDesCArray& Keys() const; |
88 IMPORT_C MDesCArray& Keys() const; |
102 |
89 |
103 private: |
90 private: |
104 |
|
105 CHbSymbianVariantMap(); |
91 CHbSymbianVariantMap(); |
106 |
|
107 void ConstructL(); |
92 void ConstructL(); |
108 |
93 |
109 CHbSymbianVariantMapPrivate* d; |
94 CHbSymbianVariantMapPrivate* d; |
110 }; |
95 }; |
111 |
96 |