16 */ |
16 */ |
17 #ifndef HSACTIVITYDBASYNCREQUESTPRIVATE_H |
17 #ifndef HSACTIVITYDBASYNCREQUESTPRIVATE_H |
18 #define HSACTIVITYDBASYNCREQUESTPRIVATE_H |
18 #define HSACTIVITYDBASYNCREQUESTPRIVATE_H |
19 #include <e32base.h> |
19 #include <e32base.h> |
20 #include <QVariant> |
20 #include <QVariant> |
|
21 #include <QPixmap> |
21 #include <hsactivitydbasyncrequestobserver.h> |
22 #include <hsactivitydbasyncrequestobserver.h> |
|
23 #include <activitycmd.h> |
22 |
24 |
23 class HsActivityDbClientPrivate; |
25 class HsActivityDbClientPrivate; |
24 |
26 |
25 /** |
27 /** |
26 * Class is responsible for async. request handling |
28 * Class is responsible for async. request handling |
27 */ |
29 */ |
28 class HsActivityDbAsyncRequestPrivate : public CActive |
30 class HsActivityDbAsyncRequestPrivate : public CActive |
29 |
31 |
30 { |
32 { |
31 public: |
33 public: |
|
34 |
|
35 enum TAsyncRequest{ |
|
36 EWaitActivity = WaitActivity, |
|
37 EWaitGetThumbnail = GetThumbnail |
|
38 }; |
|
39 |
|
40 private: |
32 /** |
41 /** |
33 * First step constructor |
42 * First step constructor |
34 */ |
43 */ |
35 static HsActivityDbAsyncRequestPrivate* |
44 static HsActivityDbAsyncRequestPrivate* |
36 NewL(HsActivityDbAsyncRequestObserver &, HsActivityDbClientPrivate &); |
45 NewL(HsActivityDbAsyncRequestObserver &, |
37 |
46 HsActivityDbClientPrivate &, |
38 /** |
47 TAsyncRequest, |
39 * First step constructor |
48 void* userData = 0); |
40 */ |
49 |
|
50 public: |
|
51 |
41 static HsActivityDbAsyncRequestPrivate* |
52 static HsActivityDbAsyncRequestPrivate* |
42 NewLC(HsActivityDbAsyncRequestObserver &, HsActivityDbClientPrivate &); |
53 newWaitActivityL(HsActivityDbAsyncRequestObserver &, |
|
54 HsActivityDbClientPrivate &); |
|
55 |
|
56 static void |
|
57 getThumbnailLD(HsActivityDbAsyncRequestObserver &observer, |
|
58 HsActivityDbClientPrivate &session, |
|
59 QSize size, |
|
60 QString imagePath, |
|
61 QString mimeType, |
|
62 void *userDdata); |
|
63 |
43 |
64 |
44 /** |
65 /** |
45 * Destructor |
66 * Destructor |
46 */ |
67 */ |
47 ~HsActivityDbAsyncRequestPrivate(); |
68 ~HsActivityDbAsyncRequestPrivate(); |
49 /** |
70 /** |
50 * Function create subscription to current ativity changes |
71 * Function create subscription to current ativity changes |
51 * @param condition - activity filetering rules |
72 * @param condition - activity filetering rules |
52 */ |
73 */ |
53 void waitActivity(const QVariantHash &condition); |
74 void waitActivity(const QVariantHash &condition); |
|
75 private: |
|
76 /** |
|
77 */ |
|
78 void getThumbnail(QSize size, QString imagePath, QString mimeType); |
|
79 |
|
80 /** |
|
81 */ |
|
82 QPixmap copyPixmap(CFbsBitmap* bitmap); |
|
83 |
54 protected: |
84 protected: |
55 /** |
85 /** |
56 * Interface implementation. |
86 * Interface implementation. |
57 * @see void CActive::DoCancel() |
87 * @see void CActive::DoCancel() |
58 */ |
88 */ |
65 void RunL(); |
95 void RunL(); |
66 private: |
96 private: |
67 /** |
97 /** |
68 * Constructor |
98 * Constructor |
69 */ |
99 */ |
70 HsActivityDbAsyncRequestPrivate(HsActivityDbAsyncRequestObserver &, |
100 HsActivityDbAsyncRequestPrivate(HsActivityDbAsyncRequestObserver &, |
71 HsActivityDbClientPrivate &); |
101 HsActivityDbClientPrivate &, |
|
102 TAsyncRequest, |
|
103 void* userData); |
72 private: |
104 private: |
73 HsActivityDbAsyncRequestObserver &mObserver; |
105 HsActivityDbAsyncRequestObserver &mObserver; |
74 HsActivityDbClientPrivate &mSession; |
106 HsActivityDbClientPrivate &mSession; |
75 int mRequestType; |
107 const TAsyncRequest mRequestType; |
|
108 TPckgBuf<int> mTaskId; |
|
109 TPckgBuf<int> mDataSize; |
|
110 TPckgBuf<int> mBitmapId; |
|
111 HBufC* mBitmapPath; |
|
112 HBufC8* mBitmapMimeType; |
76 RBuf8 mDataBuf; |
113 RBuf8 mDataBuf; |
77 TPckgBuf<int> mDataSize; |
114 void *const mUserData; |
78 }; |
115 }; |
79 #endif // HSACTIVITYDBCLIENTPRIVATE_H |
116 #endif // HSACTIVITYDBCLIENTPRIVATE_H |