equal
deleted
inserted
replaced
12 * Contributors: |
12 * Contributors: |
13 * |
13 * |
14 * Description: |
14 * Description: |
15 * |
15 * |
16 */ |
16 */ |
|
17 #include <s32mem.h> |
17 #include "hsserializer.h" |
18 #include "hsserializer.h" |
18 #include <s32mem.h> |
|
19 // ----------------------------------------------------------------------------- |
19 // ----------------------------------------------------------------------------- |
20 // |
20 // |
21 // ----------------------------------------------------------------------------- |
21 // ----------------------------------------------------------------------------- |
22 // |
22 // |
23 RBuf8 &operator <<(RBuf8 &dst, const QVariantHash &src) |
23 RBuf8 &operator <<(RBuf8 &dst, const QVariantHash &src) |
46 |
46 |
47 QDataStream stream(&buffer, QIODevice::ReadOnly); |
47 QDataStream stream(&buffer, QIODevice::ReadOnly); |
48 QT_TRYCATCH_LEAVING(stream >> dst); |
48 QT_TRYCATCH_LEAVING(stream >> dst); |
49 return dst; |
49 return dst; |
50 } |
50 } |
51 |
|
52 // ----------------------------------------------------------------------------- |
|
53 // |
|
54 // ----------------------------------------------------------------------------- |
|
55 // |
|
56 QList<QVariantHash>& operator <<(QList<QVariantHash>& dst, const TDesC8 &src) |
|
57 { |
|
58 dst.clear(); |
|
59 |
|
60 QVariantHash item; |
|
61 TRAP_IGNORE( |
|
62 RDesReadStream srcStream(src); |
|
63 int numOfItems(srcStream.ReadInt32L()); |
|
64 int bufferSize; |
|
65 |
|
66 RBuf8 tmpBuff; |
|
67 CleanupClosePushL(tmpBuff); |
|
68 for (int iter(0); iter < numOfItems; ++iter) { |
|
69 bufferSize = srcStream.ReadInt32L(); |
|
70 if (tmpBuff.MaxLength() < bufferSize) { |
|
71 tmpBuff.ReAllocL(bufferSize); |
|
72 } |
|
73 item.clear(); |
|
74 if (0 < bufferSize) { |
|
75 srcStream.ReadL(tmpBuff, bufferSize); |
|
76 item << tmpBuff; |
|
77 } |
|
78 dst.append(item); |
|
79 } |
|
80 CleanupStack::PopAndDestroy(&tmpBuff)); |
|
81 return dst; |
|
82 } |
|