26 |
26 |
27 #include "thumbagaudioobserver.h" |
27 #include "thumbagaudioobserver.h" |
28 #include "thumbnaillog.h" |
28 #include "thumbnaillog.h" |
29 #include "thumbnailmanagerconstants.h" |
29 #include "thumbnailmanagerconstants.h" |
30 #include "thumbnailmanagerprivatecrkeys.h" |
30 #include "thumbnailmanagerprivatecrkeys.h" |
|
31 #include "OstTraceDefinitions.h" |
|
32 #ifdef OST_TRACE_COMPILER_IN_USE |
|
33 #include "thumbagaudioobserverTraces.h" |
|
34 #endif |
31 |
35 |
32 |
36 |
33 // --------------------------------------------------------------------------- |
37 // --------------------------------------------------------------------------- |
34 // NewLC |
38 // NewLC |
35 // --------------------------------------------------------------------------- |
39 // --------------------------------------------------------------------------- |
36 // |
40 // |
37 CThumbAGAudioObserver* CThumbAGAudioObserver::NewLC(CThumbAGProcessor* aProcessor) |
41 CThumbAGAudioObserver* CThumbAGAudioObserver::NewLC(CThumbAGProcessor* aProcessor) |
38 { |
42 { |
39 TN_DEBUG1( "CThumbAGAudioObserver::NewLC() - begin" ); |
43 TN_DEBUG1( "CThumbAGAudioObserver::NewLC() - begin" ); |
|
44 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_NEWLC, "CThumbAGAudioObserver::NewLC" ); |
40 |
45 |
41 CThumbAGAudioObserver* self = new (ELeave) CThumbAGAudioObserver(aProcessor); |
46 CThumbAGAudioObserver* self = new (ELeave) CThumbAGAudioObserver(aProcessor); |
42 CleanupStack::PushL( self ); |
47 CleanupStack::PushL( self ); |
43 self->ConstructL(); |
48 self->ConstructL(); |
44 return self; |
49 return self; |
72 // --------------------------------------------------------------------------- |
77 // --------------------------------------------------------------------------- |
73 // |
78 // |
74 void CThumbAGAudioObserver::ConstructL() |
79 void CThumbAGAudioObserver::ConstructL() |
75 { |
80 { |
76 TN_DEBUG1( "CThumbAGAudioObserver::ConstructL() - begin" ); |
81 TN_DEBUG1( "CThumbAGAudioObserver::ConstructL() - begin" ); |
|
82 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_CONSTRUCTL, "CThumbAGAudioObserver::ConstructL - begin" ); |
77 |
83 |
78 #ifdef _DEBUG |
84 #ifdef _DEBUG |
79 iAddCounter = 0; |
85 iAddCounter = 0; |
80 iModCounter = 0; |
86 iModCounter = 0; |
81 #endif |
87 #endif |
82 |
88 |
83 InitializeL(); |
89 InitializeL(); |
84 |
90 |
85 TN_DEBUG1( "CThumbAGAudioObserver::ConstructL() - end" ); |
91 TN_DEBUG1( "CThumbAGAudioObserver::ConstructL() - end" ); |
|
92 OstTrace0( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_CONSTRUCTL, "CThumbAGAudioObserver::ConstructL - end" ); |
86 } |
93 } |
87 |
94 |
88 // --------------------------------------------------------------------------- |
95 // --------------------------------------------------------------------------- |
89 // ~CThumbAGAudioObserver |
96 // ~CThumbAGAudioObserver |
90 // --------------------------------------------------------------------------- |
97 // --------------------------------------------------------------------------- |
91 // |
98 // |
92 void CThumbAGAudioObserver::InitializeL() |
99 void CThumbAGAudioObserver::InitializeL() |
93 { |
100 { |
94 TN_DEBUG1( "CThumbAGAudioObserver::InitializeL() - begin" ); |
101 TN_DEBUG1( "CThumbAGAudioObserver::InitializeL() - begin" ); |
95 |
102 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_INITIALIZEL, "CThumbAGAudioObserver::InitializeL - begin" ); |
96 |
103 |
97 TN_DEBUG1( "CThumbAGAudioObserver::InitializeL() - create observers" ); |
104 TN_DEBUG1( "CThumbAGAudioObserver::InitializeL() - create observers" ); |
|
105 OstTrace0( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_INITIALIZEL, "CThumbAGAudioObserver::InitializeL - create observers" ); |
98 |
106 |
99 // create shutdown observer |
107 // create shutdown observer |
100 if(iMDSShutdownObserver) |
108 if(iMDSShutdownObserver) |
101 { |
109 { |
102 delete iMDSShutdownObserver; |
110 delete iMDSShutdownObserver; |
132 |
141 |
133 iMdESession = CMdESession::NewL( *this ); |
142 iMdESession = CMdESession::NewL( *this ); |
134 iSessionError = EFalse; |
143 iSessionError = EFalse; |
135 |
144 |
136 TN_DEBUG1( "CThumbAGAudioObserver::InitializeL() - end" ); |
145 TN_DEBUG1( "CThumbAGAudioObserver::InitializeL() - end" ); |
|
146 OstTrace0( TRACE_FATAL, DUP3_CTHUMBAGAUDIOOBSERVER_INITIALIZEL, "CThumbAGAudioObserver::InitializeL - end" ); |
137 } |
147 } |
138 |
148 |
139 // --------------------------------------------------------------------------- |
149 // --------------------------------------------------------------------------- |
140 // ~CThumbAGAudioObserver |
150 // ~CThumbAGAudioObserver |
141 // --------------------------------------------------------------------------- |
151 // --------------------------------------------------------------------------- |
142 // |
152 // |
143 CThumbAGAudioObserver::~CThumbAGAudioObserver() |
153 CThumbAGAudioObserver::~CThumbAGAudioObserver() |
144 { |
154 { |
145 TN_DEBUG1( "CThumbAGAudioObserver::~CThumbAGAudioObserver() - begin" ); |
155 TN_DEBUG1( "CThumbAGAudioObserver::~CThumbAGAudioObserver() - begin" ); |
|
156 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_CTHUMBAGAUDIOOBSERVER, "CThumbAGAudioObserver::~CThumbAGAudioObserver - begin" ); |
146 |
157 |
147 iShutdown = ETrue; |
158 iShutdown = ETrue; |
148 |
159 |
149 Shutdown(); |
160 Shutdown(); |
150 |
161 |
151 TN_DEBUG1( "CThumbAGAudioObserver::~CThumbAGAudioObserver() - end" ); |
162 TN_DEBUG1( "CThumbAGAudioObserver::~CThumbAGAudioObserver() - end" ); |
|
163 OstTrace0( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_CTHUMBAGAUDIOOBSERVER, "CThumbAGAudioObserver::~CThumbAGAudioObserver - end" ); |
152 } |
164 } |
153 |
165 |
154 void CThumbAGAudioObserver::Shutdown() |
166 void CThumbAGAudioObserver::Shutdown() |
155 { |
167 { |
156 TN_DEBUG1( "CThumbAGAudioObserver::Shutdown()" ); |
168 TN_DEBUG1( "CThumbAGAudioObserver::Shutdown()" ); |
|
169 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_SHUTDOWN, "CThumbAGAudioObserver::Shutdown" ); |
157 |
170 |
158 delete iMDSShutdownObserver; |
171 delete iMDSShutdownObserver; |
159 iMDSShutdownObserver = NULL; |
172 iMDSShutdownObserver = NULL; |
160 delete iShutdownObserver; |
173 delete iShutdownObserver; |
161 iShutdownObserver = NULL; |
174 iShutdownObserver = NULL; |
183 // ----------------------------------------------------------------------------- |
196 // ----------------------------------------------------------------------------- |
184 // |
197 // |
185 void CThumbAGAudioObserver::HandleSessionOpened( CMdESession& /* aSession */, TInt aError ) |
198 void CThumbAGAudioObserver::HandleSessionOpened( CMdESession& /* aSession */, TInt aError ) |
186 { |
199 { |
187 TN_DEBUG1( "CThumbAGAudioObserver::HandleSessionOpened"); |
200 TN_DEBUG1( "CThumbAGAudioObserver::HandleSessionOpened"); |
|
201 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_HANDLESESSIONOPENED, "CThumbAGAudioObserver::HandleSessionOpened" ); |
188 |
202 |
189 if (aError == KErrNone) |
203 if (aError == KErrNone) |
190 { |
204 { |
191 TRAPD( err, AddObserversL() ); |
205 TRAPD( err, AddObserversL() ); |
192 if (err != KErrNone) |
206 if (err != KErrNone) |
193 { |
207 { |
194 TN_DEBUG2( "CThumbAGAudioObserver::HandleSessionOpened, AddObserversL error == %d", err ); |
208 TN_DEBUG2( "CThumbAGAudioObserver::HandleSessionOpened, AddObserversL error == %d", err ); |
|
209 OstTrace1( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_HANDLESESSIONOPENED, "CThumbAGAudioObserver::HandleSessionOpened;err=%d", err ); |
195 } |
210 } |
196 } |
211 } |
197 else |
212 else |
198 { |
213 { |
199 TN_DEBUG2( "CThumbAGAudioObserver::HandleSessionOpened error == %d", aError ); |
214 TN_DEBUG2( "CThumbAGAudioObserver::HandleSessionOpened error == %d", aError ); |
|
215 OstTrace1( TRACE_FATAL, DUP2_CTHUMBAGAUDIOOBSERVER_HANDLESESSIONOPENED, "CThumbAGAudioObserver::HandleSessionOpened;aError=%d", aError ); |
200 } |
216 } |
201 } |
217 } |
202 |
218 |
203 // ----------------------------------------------------------------------------- |
219 // ----------------------------------------------------------------------------- |
204 // CThumbAGAudioObserver::HandleSessionError |
220 // CThumbAGAudioObserver::HandleSessionError |
205 // ----------------------------------------------------------------------------- |
221 // ----------------------------------------------------------------------------- |
206 // |
222 // |
207 void CThumbAGAudioObserver::HandleSessionError( CMdESession& /*aSession*/, TInt aError ) |
223 void CThumbAGAudioObserver::HandleSessionError( CMdESession& /*aSession*/, TInt aError ) |
208 { |
224 { |
209 TN_DEBUG2( "CThumbAGAudioObserver::HandleSessionError == %d", aError ); |
225 TN_DEBUG2( "CThumbAGAudioObserver::HandleSessionError == %d", aError ); |
|
226 OstTrace1( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_HANDLESESSIONERROR, "CThumbAGAudioObserver::HandleSessionError;aError=%d", aError ); |
210 if (aError != KErrNone && !iSessionError) |
227 if (aError != KErrNone && !iSessionError) |
211 { |
228 { |
212 iSessionError = ETrue; |
229 iSessionError = ETrue; |
213 |
230 |
214 if (!iShutdown) |
231 if (!iShutdown) |
232 void CThumbAGAudioObserver::HandleObjectNotification( CMdESession& /*aSession*/, |
250 void CThumbAGAudioObserver::HandleObjectNotification( CMdESession& /*aSession*/, |
233 TObserverNotificationType aType, |
251 TObserverNotificationType aType, |
234 const RArray<TItemId>& aObjectIdArray ) |
252 const RArray<TItemId>& aObjectIdArray ) |
235 { |
253 { |
236 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - begin" ); |
254 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - begin" ); |
|
255 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - begin" ); |
237 |
256 |
238 // no processor or shutting down |
257 // no processor or shutting down |
239 if ( iShutdown || !iProcessor) |
258 if ( iShutdown || !iProcessor) |
240 { |
259 { |
241 return; |
260 return; |
243 |
262 |
244 #ifdef _DEBUG |
263 #ifdef _DEBUG |
245 if (aType == ENotifyAdd) |
264 if (aType == ENotifyAdd) |
246 { |
265 { |
247 TN_DEBUG2( "CThumbAGAudioObserver::HandleObjectNotification() - ENotifyAdd %d", aObjectIdArray.Count() ); |
266 TN_DEBUG2( "CThumbAGAudioObserver::HandleObjectNotification() - ENotifyAdd %d", aObjectIdArray.Count() ); |
|
267 OstTrace1( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - ENotifyAdd;aObjectIdArray.Count()=%d", aObjectIdArray.Count() ); |
248 iAddCounter = aObjectIdArray.Count(); |
268 iAddCounter = aObjectIdArray.Count(); |
249 } |
269 } |
250 else if (aType == ENotifyModify) |
270 else if (aType == ENotifyModify) |
251 { |
271 { |
252 TN_DEBUG2( "CThumbAGAudioObserver::HandleObjectNotification() - ENotifyModify %d", aObjectIdArray.Count() ); |
272 TN_DEBUG2( "CThumbAGAudioObserver::HandleObjectNotification() - ENotifyModify %d", aObjectIdArray.Count() ); |
|
273 OstTrace1( TRACE_FATAL, DUP2_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - ENotifyModify;aObjectIdArray.Count()=%d", aObjectIdArray.Count() ); |
253 iModCounter = aObjectIdArray.Count(); |
274 iModCounter = aObjectIdArray.Count(); |
254 } |
275 } |
255 #endif |
276 #endif |
256 |
277 |
257 if ( (aType == ENotifyAdd || aType == ENotifyModify ) && (aObjectIdArray.Count() > 0) ) |
278 if ( (aType == ENotifyAdd || aType == ENotifyModify ) && (aObjectIdArray.Count() > 0) ) |
258 { |
279 { |
259 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - AddToQueueL" ); |
280 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - AddToQueueL" ); |
|
281 OstTrace0( TRACE_FATAL, DUP3_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - AddToQueueL" ); |
260 |
282 |
261 // Add event to processing queue by type and enable force run |
283 // Add event to processing queue by type and enable force run |
262 RPointerArray<HBufC> dummyArray; |
284 RPointerArray<HBufC> dummyArray; |
263 TRAPD(err, iProcessor->AddToQueueL(aType, EGenerationItemTypeAudio, aObjectIdArray, dummyArray, EFalse)); |
285 TRAPD(err, iProcessor->AddToQueueL(aType, EGenerationItemTypeAudio, aObjectIdArray, dummyArray, EFalse)); |
264 if (err != KErrNone) |
286 if (err != KErrNone) |
265 { |
287 { |
266 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - error adding to queue" ); |
288 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - error adding to queue" ); |
|
289 OstTrace0( TRACE_FATAL, DUP4_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - error adding to queue" ); |
267 } |
290 } |
268 } |
291 } |
269 else |
292 else |
270 { |
293 { |
271 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - bad notification" ); |
294 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - bad notification" ); |
|
295 OstTrace0( TRACE_FATAL, DUP5_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - bad notification" ); |
272 } |
296 } |
273 |
297 |
274 #ifdef _DEBUG |
298 #ifdef _DEBUG |
275 TN_DEBUG3( "CThumbAGAudioObserver::IN-COUNTERS---------- Add = %d Modify = %d", iAddCounter, iModCounter ); |
299 TN_DEBUG3( "CThumbAGAudioObserver::IN-COUNTERS---------- Add = %d Modify = %d", iAddCounter, iModCounter ); |
|
300 OstTraceExt2( TRACE_FATAL, DUP6_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification;iAddCounter=%u;iModCounter=%u", iAddCounter, iModCounter ); |
276 iModCounter = 0; |
301 iModCounter = 0; |
277 iAddCounter = 0; |
302 iAddCounter = 0; |
278 #endif |
303 #endif |
279 |
304 |
280 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - end" ); |
305 TN_DEBUG1( "CThumbAGAudioObserver::HandleObjectNotification() - end" ); |
|
306 OstTrace0( TRACE_FATAL, DUP7_CTHUMBAGAUDIOOBSERVER_HANDLEOBJECTNOTIFICATION, "CThumbAGAudioObserver::HandleObjectNotification - end" ); |
281 } |
307 } |
282 |
308 |
283 // ----------------------------------------------------------------------------- |
309 // ----------------------------------------------------------------------------- |
284 // CThumbAGAudioObserver::ShutdownNotification |
310 // CThumbAGAudioObserver::ShutdownNotification |
285 // ----------------------------------------------------------------------------- |
311 // ----------------------------------------------------------------------------- |
286 // |
312 // |
287 void CThumbAGAudioObserver::ShutdownNotification() |
313 void CThumbAGAudioObserver::ShutdownNotification() |
288 { |
314 { |
289 TN_DEBUG1( "CThumbAGAudioObserver::ShutdownNotification()" ); |
315 TN_DEBUG1( "CThumbAGAudioObserver::ShutdownNotification()" ); |
|
316 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_SHUTDOWNNOTIFICATION, "CThumbAGAudioObserver::ShutdownNotification" ); |
290 |
317 |
291 if (!iShutdown) |
318 if (!iShutdown) |
292 { |
319 { |
293 TN_DEBUG1( "CThumbAGAudioObserver::ShutdownNotification() shutdown" ); |
320 TN_DEBUG1( "CThumbAGAudioObserver::ShutdownNotification() shutdown" ); |
|
321 OstTrace0( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_SHUTDOWNNOTIFICATION, "CThumbAGAudioObserver::ShutdownNotification - shutdown" ); |
294 iShutdown = ETrue; |
322 iShutdown = ETrue; |
295 } |
323 } |
296 } |
324 } |
297 |
325 |
298 // --------------------------------------------------------------------------- |
326 // --------------------------------------------------------------------------- |
322 iMdESession->AddObjectObserverL( *this, modifyCondition, ENotifyModify ); |
351 iMdESession->AddObjectObserverL( *this, modifyCondition, ENotifyModify ); |
323 |
352 |
324 CleanupStack::Pop( 4, addCondition ); |
353 CleanupStack::Pop( 4, addCondition ); |
325 |
354 |
326 TN_DEBUG1( "CThumbAGAudioObserver::AddObserversL() - end" ); |
355 TN_DEBUG1( "CThumbAGAudioObserver::AddObserversL() - end" ); |
|
356 OstTrace0( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_ADDOBSERVERSL, "CThumbAGAudioObserver::AddObserversL - end" ); |
327 } |
357 } |
328 |
358 |
329 // --------------------------------------------------------------------------- |
359 // --------------------------------------------------------------------------- |
330 // CThumbAGAudioObserver::ReconnectCallBack() |
360 // CThumbAGAudioObserver::ReconnectCallBack() |
331 // --------------------------------------------------------------------------- |
361 // --------------------------------------------------------------------------- |
332 // |
362 // |
333 TInt CThumbAGAudioObserver::ReconnectCallBack(TAny* aAny) |
363 TInt CThumbAGAudioObserver::ReconnectCallBack(TAny* aAny) |
334 { |
364 { |
335 TN_DEBUG1( "CThumbAGAudioObserver::ReconnectCallBack() - reinitialize"); |
365 TN_DEBUG1( "CThumbAGAudioObserver::ReconnectCallBack() - reinitialize"); |
|
366 OstTrace0( TRACE_FATAL, CTHUMBAGAUDIOOBSERVER_RECONNECTCALLBACK, "CThumbAGAudioObserver::ReconnectCallBack - reinitialize" ); |
336 |
367 |
337 CThumbAGAudioObserver* self = static_cast<CThumbAGAudioObserver*>( aAny ); |
368 CThumbAGAudioObserver* self = static_cast<CThumbAGAudioObserver*>( aAny ); |
338 |
369 |
339 self->iReconnect->Cancel(); |
370 self->iReconnect->Cancel(); |
340 |
371 |
341 // reconnect to MDS |
372 // reconnect to MDS |
342 TRAP_IGNORE( self->InitializeL() ); |
373 TRAP_IGNORE( self->InitializeL() ); |
343 |
374 |
344 TN_DEBUG1( "CThumbAGAudioObserver::ReconnectCallBack() - done"); |
375 TN_DEBUG1( "CThumbAGAudioObserver::ReconnectCallBack() - done"); |
|
376 OstTrace0( TRACE_FATAL, DUP1_CTHUMBAGAUDIOOBSERVER_RECONNECTCALLBACK, "CThumbAGAudioObserver::ReconnectCallBack - done" ); |
345 |
377 |
346 return KErrNone; |
378 return KErrNone; |
347 } |
379 } |
348 |
380 |
349 |
381 |