equal
deleted
inserted
replaced
22 #include <e32base.h> |
22 #include <e32base.h> |
23 |
23 |
24 // User includes |
24 // User includes |
25 #include <memspyengineclientinterface.h> |
25 #include <memspyengineclientinterface.h> |
26 #include <memspy/engine/memspydevicewideoperations.h> |
26 #include <memspy/engine/memspydevicewideoperations.h> |
|
27 #include <memspy/engine/memspyengineobserver.h> |
27 |
28 |
28 // Classes referenced |
29 // Classes referenced |
29 class CMemSpyEngine; |
30 class CMemSpyEngine; |
30 class CMemSpyDwOperationTracker; |
31 class CMemSpyDwOperationTracker; |
|
32 class CMemSpyNotificationTracker; |
31 |
33 |
32 NONSHARABLE_CLASS( CShutdown ) : public CTimer |
34 NONSHARABLE_CLASS( CShutdown ) : public CTimer |
33 { |
35 { |
34 enum {KMyShutdownDelay=10 * 1000000}; // 10s |
36 enum {KMyShutdownDelay=10 * 1000000}; // 10s |
35 public: |
37 public: |
47 ~CMemSpyEngineServer(); |
49 ~CMemSpyEngineServer(); |
48 |
50 |
49 CMemSpyDwOperationTracker* CurrentOperationTracker() const { return iCurrentOperationTracker; } |
51 CMemSpyDwOperationTracker* CurrentOperationTracker() const { return iCurrentOperationTracker; } |
50 void SetCurrentOperationTracker(CMemSpyDwOperationTracker* aTracker) { iCurrentOperationTracker = aTracker; } |
52 void SetCurrentOperationTracker(CMemSpyDwOperationTracker* aTracker) { iCurrentOperationTracker = aTracker; } |
51 |
53 |
|
54 CMemSpyNotificationTracker* NotificationTracker() const { return iNotificationTracker; } |
|
55 |
52 CMemSpyEngine& Engine() { return iEngine; } |
56 CMemSpyEngine& Engine() { return iEngine; } |
53 |
57 |
54 void AddSession(TBool aCliRequest); |
58 void AddSession(TBool aCliRequest); |
55 void DropSession(TBool aCliRequest); |
59 void DropSession(TBool aCliRequest); |
56 |
60 |
62 CSession2* NewSessionL(const TVersion& aVersion, const RMessage2& aMessage) const; |
66 CSession2* NewSessionL(const TVersion& aVersion, const RMessage2& aMessage) const; |
63 |
67 |
64 private: |
68 private: |
65 CMemSpyEngine& iEngine; |
69 CMemSpyEngine& iEngine; |
66 CMemSpyDwOperationTracker* iCurrentOperationTracker; |
70 CMemSpyDwOperationTracker* iCurrentOperationTracker; |
|
71 CMemSpyNotificationTracker* iNotificationTracker; |
67 |
72 |
68 TInt iSessionCount; |
73 TInt iSessionCount; |
69 TBool iCliConnected; |
74 TBool iCliConnected; |
70 |
75 |
71 CShutdown iShutdown; |
76 CShutdown iShutdown; |
137 CArrayFixFlat<RMessage2>* iPendingNotifications; |
142 CArrayFixFlat<RMessage2>* iPendingNotifications; |
138 CMemSpyDeviceWideOperations* iOperation; |
143 CMemSpyDeviceWideOperations* iOperation; |
139 TInt iProgress; |
144 TInt iProgress; |
140 }; |
145 }; |
141 |
146 |
|
147 /** |
|
148 * CMemSpyNotificationTracker |
|
149 * Tracks notification requests for various events on server site. |
|
150 * Currently only notifications of process changes are supported. |
|
151 */ |
|
152 NONSHARABLE_CLASS( CMemSpyNotificationTracker ) : public CBase, public MMemSpyEngineObserver |
|
153 { |
|
154 public: |
|
155 static CMemSpyNotificationTracker* NewL(); |
|
156 ~CMemSpyNotificationTracker(); |
|
157 |
|
158 void AddNotificationL( const RMessage2& aMessage ); |
|
159 |
|
160 void CancelNotification(const RMessage2& aMessage); |
|
161 |
|
162 public: // From MMemSpyEngineObserver |
|
163 void HandleMemSpyEngineEventL( TEvent aEvent, TAny* aContext = NULL ); |
|
164 |
|
165 private: |
|
166 CMemSpyNotificationTracker() {}; |
|
167 void ConstructL(); |
|
168 |
|
169 private: |
|
170 CArrayFixFlat<RMessage2>* iPendingNotifications; |
|
171 }; |
|
172 |
142 |
173 |
143 #endif |
174 #endif |