73 |
73 |
74 #include <EPos_MPosModulesObserver.h> |
74 #include <EPos_MPosModulesObserver.h> |
75 #include <EPos_CPosModuleIdList.h> |
75 #include <EPos_CPosModuleIdList.h> |
76 #include <EPos_CPosModules.h> |
76 #include <EPos_CPosModules.h> |
77 #include <EPos_CPosModuleUpdate.h> // CPosModuleUpdate |
77 #include <EPos_CPosModuleUpdate.h> // CPosModuleUpdate |
|
78 |
|
79 #include <MProEngEngine.h> |
|
80 #include <Profile.hrh> |
78 // EXTERNAL DATA STRUCTURES |
81 // EXTERNAL DATA STRUCTURES |
79 //extern ?external_data; |
82 //extern ?external_data; |
80 |
83 |
81 // EXTERNAL FUNCTION PROTOTYPES |
84 // EXTERNAL FUNCTION PROTOTYPES |
82 //extern ?external_function( ?arg_type,?arg_type ); |
85 //extern ?external_function( ?arg_type,?arg_type ); |
194 TPosition position; |
197 TPosition position; |
195 positionInfo.GetPosition( position ); |
198 positionInfo.GetPosition( position ); |
196 aCoordinate.SetCoordinate( position.Latitude(),position.Longitude(),position.Altitude() ); |
199 aCoordinate.SetCoordinate( position.Latitude(),position.Longitude(),position.Altitude() ); |
197 CleanupStack::Pop( notifier ); // notifier |
200 CleanupStack::Pop( notifier ); // notifier |
198 delete notifier; |
201 delete notifier; |
|
202 } |
|
203 |
|
204 // ----------------------------------------------------------------------------- |
|
205 // CAdvancedTriggerSupervision::SetProfileToOfflineL |
|
206 // ----------------------------------------------------------------------------- |
|
207 void CAdvancedTriggerSupervision::SetProfileToOfflineL() |
|
208 { |
|
209 // Store current profile id. |
|
210 iCurrentProfile = iProEngine->ActiveProfileId(); |
|
211 // Change the active profile to Off-line |
|
212 iProEngine->SetActiveProfileL( EProfileOffLineId ); |
|
213 } |
|
214 // ----------------------------------------------------------------------------- |
|
215 // CAdvancedTriggerSupervision::RestoreProfileL |
|
216 // ----------------------------------------------------------------------------- |
|
217 void CAdvancedTriggerSupervision::RestoreProfileL() |
|
218 { |
|
219 iProEngine->SetActiveProfileL( iCurrentProfile ); |
199 } |
220 } |
200 |
221 |
201 // ----------------------------------------------------------------------------- |
222 // ----------------------------------------------------------------------------- |
202 // CAdvancedTriggerSupervision::RunMethodL |
223 // CAdvancedTriggerSupervision::RunMethodL |
203 // Run specified method. Contains also table of test mothods and their names. |
224 // Run specified method. Contains also table of test mothods and their names. |
268 CleanupClosePushL( lbtserver ); |
289 CleanupClosePushL( lbtserver ); |
269 iLog->Log(_L("Connection to RLbtServer Passed ")); |
290 iLog->Log(_L("Connection to RLbtServer Passed ")); |
270 User::LeaveIfError( lbt.Open(lbtserver)); |
291 User::LeaveIfError( lbt.Open(lbtserver)); |
271 iLog->Log(_L("Subsession opened ")); |
292 iLog->Log(_L("Subsession opened ")); |
272 CleanupClosePushL( lbt ); |
293 CleanupClosePushL( lbt ); |
|
294 |
|
295 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
296 // trigger firing. |
|
297 SetProfileToOfflineL(); |
|
298 |
273 //Enable only simpsy |
299 //Enable only simpsy |
274 EnableSimPSYL(); |
300 EnableSimPSYL(); |
275 //Clear all triggers |
301 //Clear all triggers |
276 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
302 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
277 |
303 |
340 FireInfo = notifier->GetFiredTrigger(); |
366 FireInfo = notifier->GetFiredTrigger(); |
341 iLog->Log(_L("GFT")); |
367 iLog->Log(_L("GFT")); |
342 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
368 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
343 iLog->Log(_L("GP")); |
369 iLog->Log(_L("GP")); |
344 firePosition.Distance(coordinate,trigDistance); |
370 firePosition.Distance(coordinate,trigDistance); |
345 |
371 RestoreProfileL(); |
346 if( FireInfo.iTriggerId==trigId ) |
372 if( FireInfo.iTriggerId==trigId ) |
347 { |
373 { |
348 |
374 |
349 CleanupStack::PopAndDestroy( notifier ); |
375 CleanupStack::PopAndDestroy( notifier ); |
350 CleanupStack::PopAndDestroy( trig ); |
376 CleanupStack::PopAndDestroy( trig ); |
388 CleanupClosePushL( lbtserver ); |
414 CleanupClosePushL( lbtserver ); |
389 iLog->Log(_L("Connection to RLbtServer Passed ")); |
415 iLog->Log(_L("Connection to RLbtServer Passed ")); |
390 User::LeaveIfError( lbt.Open(lbtserver)); |
416 User::LeaveIfError( lbt.Open(lbtserver)); |
391 iLog->Log(_L("Subsession opened ")); |
417 iLog->Log(_L("Subsession opened ")); |
392 CleanupClosePushL( lbt ); |
418 CleanupClosePushL( lbt ); |
|
419 |
|
420 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
421 // trigger firing. |
|
422 SetProfileToOfflineL(); |
|
423 |
393 //Enable only simpsy |
424 //Enable only simpsy |
394 EnableSimPSYL(); |
425 EnableSimPSYL(); |
395 //Clear all triggers |
426 //Clear all triggers |
396 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
427 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
397 |
428 |
460 TReal32 trigDistance; |
491 TReal32 trigDistance; |
461 TPosition firePosition; |
492 TPosition firePosition; |
462 FireInfo = notifier->GetFiredTrigger(); |
493 FireInfo = notifier->GetFiredTrigger(); |
463 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
494 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
464 firePosition.Distance(coordinate,trigDistance); |
495 firePosition.Distance(coordinate,trigDistance); |
465 |
496 RestoreProfileL(); |
466 if( FireInfo.iTriggerId==trigId) |
497 if( FireInfo.iTriggerId==trigId) |
467 { |
498 { |
468 |
499 |
469 CleanupStack::PopAndDestroy( notifier ); |
500 CleanupStack::PopAndDestroy( notifier ); |
470 CleanupStack::PopAndDestroy( trig ); |
501 CleanupStack::PopAndDestroy( trig ); |
509 CleanupClosePushL( lbtserver ); |
540 CleanupClosePushL( lbtserver ); |
510 iLog->Log(_L("Connection to RLbtServer Passed ")); |
541 iLog->Log(_L("Connection to RLbtServer Passed ")); |
511 User::LeaveIfError( lbt.Open(lbtserver)); |
542 User::LeaveIfError( lbt.Open(lbtserver)); |
512 iLog->Log(_L("Subsession opened ")); |
543 iLog->Log(_L("Subsession opened ")); |
513 CleanupClosePushL( lbt ); |
544 CleanupClosePushL( lbt ); |
|
545 |
|
546 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
547 // trigger firing. |
|
548 SetProfileToOfflineL(); |
|
549 |
514 //Enable only simpsy |
550 //Enable only simpsy |
515 EnableSimPSYL(); |
551 EnableSimPSYL(); |
516 //Clear all triggers |
552 //Clear all triggers |
517 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
553 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
518 |
554 |
581 TReal32 trigDistance; |
617 TReal32 trigDistance; |
582 TPosition firePosition; |
618 TPosition firePosition; |
583 FireInfo = notifier->GetFiredTrigger(); |
619 FireInfo = notifier->GetFiredTrigger(); |
584 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
620 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
585 firePosition.Distance(coordinate,trigDistance); |
621 firePosition.Distance(coordinate,trigDistance); |
586 |
622 RestoreProfileL(); |
587 if( FireInfo.iTriggerId==trigId) |
623 if( FireInfo.iTriggerId==trigId) |
588 { |
624 { |
589 |
625 |
590 CleanupStack::PopAndDestroy( notifier ); |
626 CleanupStack::PopAndDestroy( notifier ); |
591 CleanupStack::PopAndDestroy( trig ); |
627 CleanupStack::PopAndDestroy( trig ); |
629 CleanupClosePushL( lbtserver ); |
665 CleanupClosePushL( lbtserver ); |
630 iLog->Log(_L("Connection to RLbtServer Passed ")); |
666 iLog->Log(_L("Connection to RLbtServer Passed ")); |
631 User::LeaveIfError( lbt.Open(lbtserver)); |
667 User::LeaveIfError( lbt.Open(lbtserver)); |
632 iLog->Log(_L("Subsession opened ")); |
668 iLog->Log(_L("Subsession opened ")); |
633 CleanupClosePushL( lbt ); |
669 CleanupClosePushL( lbt ); |
|
670 |
|
671 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
672 // trigger firing. |
|
673 SetProfileToOfflineL(); |
|
674 |
634 //Enable only simpsy |
675 //Enable only simpsy |
635 EnableSimPSYL(); |
676 EnableSimPSYL(); |
636 //Clear all triggers |
677 //Clear all triggers |
637 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
678 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
638 |
679 |
699 TReal32 trigDistance; |
740 TReal32 trigDistance; |
700 TPosition firePosition; |
741 TPosition firePosition; |
701 FireInfo = notifier->GetFiredTrigger(); |
742 FireInfo = notifier->GetFiredTrigger(); |
702 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
743 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
703 firePosition.Distance(coordinate,trigDistance); |
744 firePosition.Distance(coordinate,trigDistance); |
704 |
745 RestoreProfileL(); |
705 if( FireInfo.iTriggerId==trigId) |
746 if( FireInfo.iTriggerId==trigId) |
706 { |
747 { |
707 |
748 |
708 CleanupStack::PopAndDestroy( notifier ); |
749 CleanupStack::PopAndDestroy( notifier ); |
709 CleanupStack::PopAndDestroy( trig ); |
750 CleanupStack::PopAndDestroy( trig ); |
748 CleanupClosePushL( lbtserver ); |
789 CleanupClosePushL( lbtserver ); |
749 iLog->Log(_L("Connection to RLbtServer Passed ")); |
790 iLog->Log(_L("Connection to RLbtServer Passed ")); |
750 User::LeaveIfError( lbt.Open(lbtserver)); |
791 User::LeaveIfError( lbt.Open(lbtserver)); |
751 iLog->Log(_L("Subsession opened ")); |
792 iLog->Log(_L("Subsession opened ")); |
752 CleanupClosePushL( lbt ); |
793 CleanupClosePushL( lbt ); |
|
794 |
|
795 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
796 // trigger firing. |
|
797 SetProfileToOfflineL(); |
|
798 |
753 //Enable only simpsy |
799 //Enable only simpsy |
754 EnableSimPSYL(); |
800 EnableSimPSYL(); |
755 //Clear all triggers |
801 //Clear all triggers |
756 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
802 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
757 |
803 |
820 TReal32 trigDistance; |
866 TReal32 trigDistance; |
821 TPosition firePosition; |
867 TPosition firePosition; |
822 FireInfo = notifier->GetFiredTrigger(); |
868 FireInfo = notifier->GetFiredTrigger(); |
823 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
869 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
824 firePosition.Distance(coordinate,trigDistance); |
870 firePosition.Distance(coordinate,trigDistance); |
825 |
871 |
|
872 RestoreProfileL(); |
826 if( FireInfo.iTriggerId==trigId) |
873 if( FireInfo.iTriggerId==trigId) |
827 { |
874 { |
828 |
875 |
829 CleanupStack::PopAndDestroy( notifier ); |
876 CleanupStack::PopAndDestroy( notifier ); |
830 CleanupStack::PopAndDestroy( trig ); |
877 CleanupStack::PopAndDestroy( trig ); |
869 CleanupClosePushL( lbtserver ); |
916 CleanupClosePushL( lbtserver ); |
870 iLog->Log(_L("Connection to RLbtServer Passed ")); |
917 iLog->Log(_L("Connection to RLbtServer Passed ")); |
871 User::LeaveIfError( lbt.Open(lbtserver)); |
918 User::LeaveIfError( lbt.Open(lbtserver)); |
872 iLog->Log(_L("Subsession opened ")); |
919 iLog->Log(_L("Subsession opened ")); |
873 CleanupClosePushL( lbt ); |
920 CleanupClosePushL( lbt ); |
|
921 |
|
922 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
923 // trigger firing. |
|
924 SetProfileToOfflineL(); |
|
925 |
874 //Enable only simpsy |
926 //Enable only simpsy |
875 EnableSimPSYL(); |
927 EnableSimPSYL(); |
876 //Clear all triggers |
928 //Clear all triggers |
877 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
929 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
878 |
930 |
941 TReal32 trigDistance; |
993 TReal32 trigDistance; |
942 TPosition firePosition; |
994 TPosition firePosition; |
943 FireInfo = notifier->GetFiredTrigger(); |
995 FireInfo = notifier->GetFiredTrigger(); |
944 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
996 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
945 firePosition.Distance(coordinate,trigDistance); |
997 firePosition.Distance(coordinate,trigDistance); |
946 |
998 |
|
999 RestoreProfileL(); |
947 if( FireInfo.iTriggerId==trigId) |
1000 if( FireInfo.iTriggerId==trigId) |
948 { |
1001 { |
949 |
1002 |
950 CleanupStack::PopAndDestroy( notifier ); |
1003 CleanupStack::PopAndDestroy( notifier ); |
951 CleanupStack::PopAndDestroy( trig ); |
1004 CleanupStack::PopAndDestroy( trig ); |
992 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1045 iLog->Log(_L("Connection to RLbtServer Passed ")); |
993 User::LeaveIfError( lbt.Open(lbtserver)); |
1046 User::LeaveIfError( lbt.Open(lbtserver)); |
994 iLog->Log(_L("Subsession opened ")); |
1047 iLog->Log(_L("Subsession opened ")); |
995 CleanupClosePushL( lbt ); |
1048 CleanupClosePushL( lbt ); |
996 |
1049 |
|
1050 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1051 // trigger firing. |
|
1052 SetProfileToOfflineL(); |
|
1053 |
997 //Enable only simpsy |
1054 //Enable only simpsy |
998 EnableSimPSYL(); |
1055 EnableSimPSYL(); |
999 //Clear all triggers |
1056 //Clear all triggers |
1000 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1057 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1001 CRepository* repository = CRepository::NewLC(KCRUidSimulationPSY); |
1058 CRepository* repository = CRepository::NewLC(KCRUidSimulationPSY); |
1069 notifier->StartNotification( wait ); |
1126 notifier->StartNotification( wait ); |
1070 wait->Start( ); |
1127 wait->Start( ); |
1071 wait->Start( ); |
1128 wait->Start( ); |
1072 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1129 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1073 lbt.GetFiredTriggersL(Firedtriggers); |
1130 lbt.GetFiredTriggersL(Firedtriggers); |
|
1131 RestoreProfileL(); |
1074 if(Firedtriggers.Count()==2) |
1132 if(Firedtriggers.Count()==2) |
1075 { |
1133 { |
1076 CleanupStack::PopAndDestroy( notifier ); |
1134 CleanupStack::PopAndDestroy( notifier ); |
1077 CleanupStack::PopAndDestroy( trig ); |
1135 CleanupStack::PopAndDestroy( trig ); |
1078 CleanupStack::Pop( &lbt ); |
1136 CleanupStack::Pop( &lbt ); |
1115 CleanupClosePushL( lbtserver ); |
1173 CleanupClosePushL( lbtserver ); |
1116 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1174 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1117 User::LeaveIfError( lbt.Open(lbtserver)); |
1175 User::LeaveIfError( lbt.Open(lbtserver)); |
1118 iLog->Log(_L("Subsession opened ")); |
1176 iLog->Log(_L("Subsession opened ")); |
1119 CleanupClosePushL( lbt ); |
1177 CleanupClosePushL( lbt ); |
|
1178 |
|
1179 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1180 // trigger firing. |
|
1181 SetProfileToOfflineL(); |
1120 |
1182 |
1121 //Enable only simpsy |
1183 //Enable only simpsy |
1122 EnableSimPSYL(); |
1184 EnableSimPSYL(); |
1123 //Clear all triggers |
1185 //Clear all triggers |
1124 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1186 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1193 notifier->StartNotification( wait ); |
1255 notifier->StartNotification( wait ); |
1194 wait->Start( ); |
1256 wait->Start( ); |
1195 wait->Start( ); |
1257 wait->Start( ); |
1196 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1258 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1197 lbt.GetFiredTriggersL(Firedtriggers); |
1259 lbt.GetFiredTriggersL(Firedtriggers); |
|
1260 RestoreProfileL(); |
1198 if(Firedtriggers.Count()==2) |
1261 if(Firedtriggers.Count()==2) |
1199 { |
1262 { |
1200 CleanupStack::PopAndDestroy( notifier ); |
1263 CleanupStack::PopAndDestroy( notifier ); |
1201 CleanupStack::PopAndDestroy( trig ); |
1264 CleanupStack::PopAndDestroy( trig ); |
1202 CleanupStack::Pop( &lbt ); |
1265 CleanupStack::Pop( &lbt ); |
1240 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1303 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1241 User::LeaveIfError( lbt.Open(lbtserver)); |
1304 User::LeaveIfError( lbt.Open(lbtserver)); |
1242 iLog->Log(_L("Subsession opened ")); |
1305 iLog->Log(_L("Subsession opened ")); |
1243 CleanupClosePushL( lbt ); |
1306 CleanupClosePushL( lbt ); |
1244 |
1307 |
|
1308 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1309 // trigger firing. |
|
1310 SetProfileToOfflineL(); |
|
1311 |
1245 //Enable only simpsy |
1312 //Enable only simpsy |
1246 EnableSimPSYL(); |
1313 EnableSimPSYL(); |
1247 //Clear all triggers |
1314 //Clear all triggers |
1248 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1315 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1249 CRepository* repository = CRepository::NewLC(KCRUidSimulationPSY); |
1316 CRepository* repository = CRepository::NewLC(KCRUidSimulationPSY); |
1322 CleanupStack::PopAndDestroy( notifier ); |
1389 CleanupStack::PopAndDestroy( notifier ); |
1323 CleanupStack::PopAndDestroy( trig ); |
1390 CleanupStack::PopAndDestroy( trig ); |
1324 CleanupStack::Pop( &lbt ); |
1391 CleanupStack::Pop( &lbt ); |
1325 CleanupStack::PopAndDestroy( &lbtserver ); |
1392 CleanupStack::PopAndDestroy( &lbtserver ); |
1326 //delete wait; |
1393 //delete wait; |
|
1394 RestoreProfileL(); |
1327 if(Firedtriggers.Count()==2) |
1395 if(Firedtriggers.Count()==2) |
1328 { |
1396 { |
1329 return KErrNone; |
1397 return KErrNone; |
1330 } |
1398 } |
1331 else |
1399 else |
1358 CleanupClosePushL( lbtserver ); |
1426 CleanupClosePushL( lbtserver ); |
1359 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1427 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1360 User::LeaveIfError( lbt.Open(lbtserver)); |
1428 User::LeaveIfError( lbt.Open(lbtserver)); |
1361 iLog->Log(_L("Subsession opened ")); |
1429 iLog->Log(_L("Subsession opened ")); |
1362 CleanupClosePushL( lbt ); |
1430 CleanupClosePushL( lbt ); |
|
1431 |
|
1432 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1433 // trigger firing. |
|
1434 SetProfileToOfflineL(); |
|
1435 |
1363 //Enable only simpsy |
1436 //Enable only simpsy |
1364 EnableSimPSYL(); |
1437 EnableSimPSYL(); |
1365 //Clear all triggers |
1438 //Clear all triggers |
1366 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1439 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1367 |
1440 |
1437 notifier->StartNotification( wait ); |
1510 notifier->StartNotification( wait ); |
1438 wait->Start( ); |
1511 wait->Start( ); |
1439 wait->Start( ); |
1512 wait->Start( ); |
1440 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1513 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1441 lbt.GetFiredTriggersL(Firedtriggers); |
1514 lbt.GetFiredTriggersL(Firedtriggers); |
|
1515 RestoreProfileL(); |
1442 if(Firedtriggers.Count()==2) |
1516 if(Firedtriggers.Count()==2) |
1443 { |
1517 { |
1444 CleanupStack::PopAndDestroy( notifier ); |
1518 CleanupStack::PopAndDestroy( notifier ); |
1445 CleanupStack::PopAndDestroy( trig ); |
1519 CleanupStack::PopAndDestroy( trig ); |
1446 CleanupStack::Pop( &lbt ); |
1520 CleanupStack::Pop( &lbt ); |
1483 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1557 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1484 User::LeaveIfError( lbt.Open(lbtserver)); |
1558 User::LeaveIfError( lbt.Open(lbtserver)); |
1485 iLog->Log(_L("Subsession opened ")); |
1559 iLog->Log(_L("Subsession opened ")); |
1486 CleanupClosePushL( lbt ); |
1560 CleanupClosePushL( lbt ); |
1487 |
1561 |
|
1562 |
|
1563 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1564 // trigger firing. |
|
1565 SetProfileToOfflineL(); |
|
1566 |
1488 //Enable only simpsy |
1567 //Enable only simpsy |
1489 EnableSimPSYL(); |
1568 EnableSimPSYL(); |
1490 //Clear all triggers |
1569 //Clear all triggers |
1491 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1570 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1492 |
1571 |
1565 wait->Start( ); |
1644 wait->Start( ); |
1566 |
1645 |
1567 iLog->Log(_L("Trigger Fired")); |
1646 iLog->Log(_L("Trigger Fired")); |
1568 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1647 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1569 lbt.GetFiredTriggersL(Firedtriggers); |
1648 lbt.GetFiredTriggersL(Firedtriggers); |
|
1649 RestoreProfileL(); |
1570 if(Firedtriggers.Count()==2) |
1650 if(Firedtriggers.Count()==2) |
1571 { |
1651 { |
1572 CleanupStack::PopAndDestroy( notifier ); |
1652 CleanupStack::PopAndDestroy( notifier ); |
1573 CleanupStack::PopAndDestroy( trig ); |
1653 CleanupStack::PopAndDestroy( trig ); |
1574 CleanupStack::Pop( &lbt ); |
1654 CleanupStack::Pop( &lbt ); |
1608 CleanupClosePushL( lbtserver ); |
1688 CleanupClosePushL( lbtserver ); |
1609 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1689 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1610 User::LeaveIfError( lbt.Open(lbtserver)); |
1690 User::LeaveIfError( lbt.Open(lbtserver)); |
1611 iLog->Log(_L("Subsession opened ")); |
1691 iLog->Log(_L("Subsession opened ")); |
1612 CleanupClosePushL( lbt ); |
1692 CleanupClosePushL( lbt ); |
|
1693 |
|
1694 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1695 // trigger firing. |
|
1696 SetProfileToOfflineL(); |
1613 |
1697 |
1614 //Enable only simpsy |
1698 //Enable only simpsy |
1615 EnableSimPSYL(); |
1699 EnableSimPSYL(); |
1616 //Clear all triggers |
1700 //Clear all triggers |
1617 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1701 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1717 wait->Start( ); |
1801 wait->Start( ); |
1718 |
1802 |
1719 |
1803 |
1720 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1804 RArray<TLbtTriggerFireInfo> Firedtriggers; |
1721 lbt.GetFiredTriggersL(Firedtriggers); |
1805 lbt.GetFiredTriggersL(Firedtriggers); |
|
1806 RestoreProfileL(); |
1722 if(Firedtriggers.Count()==4) |
1807 if(Firedtriggers.Count()==4) |
1723 { |
1808 { |
1724 CleanupStack::PopAndDestroy( notifier ); |
1809 CleanupStack::PopAndDestroy( notifier ); |
1725 CleanupStack::PopAndDestroy( trig ); |
1810 CleanupStack::PopAndDestroy( trig ); |
1726 CleanupStack::Pop( &lbt ); |
1811 CleanupStack::Pop( &lbt ); |
1760 CleanupClosePushL( lbtserver ); |
1845 CleanupClosePushL( lbtserver ); |
1761 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1846 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1762 User::LeaveIfError( lbt.Open(lbtserver)); |
1847 User::LeaveIfError( lbt.Open(lbtserver)); |
1763 iLog->Log(_L("Subsession opened ")); |
1848 iLog->Log(_L("Subsession opened ")); |
1764 CleanupClosePushL( lbt ); |
1849 CleanupClosePushL( lbt ); |
|
1850 |
|
1851 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1852 // trigger firing. |
|
1853 SetProfileToOfflineL(); |
|
1854 |
1765 //Enable only simpsy |
1855 //Enable only simpsy |
1766 EnableSimPSYL(); |
1856 EnableSimPSYL(); |
1767 //Clear all triggers |
1857 //Clear all triggers |
1768 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1858 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1769 |
1859 |
1830 TReal32 trigDistance; |
1920 TReal32 trigDistance; |
1831 TPosition firePosition; |
1921 TPosition firePosition; |
1832 FireInfo = notifier->GetFiredTrigger(); |
1922 FireInfo = notifier->GetFiredTrigger(); |
1833 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
1923 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
1834 firePosition.Distance(coordinate,trigDistance); |
1924 firePosition.Distance(coordinate,trigDistance); |
1835 |
1925 RestoreProfileL(); |
1836 if( FireInfo.iTriggerId==trigId) |
1926 if( FireInfo.iTriggerId==trigId) |
1837 { |
1927 { |
1838 |
1928 |
1839 CleanupStack::PopAndDestroy( notifier ); |
1929 CleanupStack::PopAndDestroy( notifier ); |
1840 CleanupStack::PopAndDestroy( trig ); |
1930 CleanupStack::PopAndDestroy( trig ); |
1880 CleanupClosePushL( lbtserver ); |
1970 CleanupClosePushL( lbtserver ); |
1881 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1971 iLog->Log(_L("Connection to RLbtServer Passed ")); |
1882 User::LeaveIfError( lbt.Open(lbtserver)); |
1972 User::LeaveIfError( lbt.Open(lbtserver)); |
1883 iLog->Log(_L("Subsession opened ")); |
1973 iLog->Log(_L("Subsession opened ")); |
1884 CleanupClosePushL( lbt ); |
1974 CleanupClosePushL( lbt ); |
|
1975 |
|
1976 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
1977 // trigger firing. |
|
1978 SetProfileToOfflineL(); |
|
1979 |
1885 //Enable only simpsy |
1980 //Enable only simpsy |
1886 EnableSimPSYL(); |
1981 EnableSimPSYL(); |
1887 //Clear all triggers |
1982 //Clear all triggers |
1888 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1983 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
1889 |
1984 |
1962 iLog->Log(_L("Trigger Fired")); |
2057 iLog->Log(_L("Trigger Fired")); |
1963 TLbtTriggerFireInfo FireInfo; |
2058 TLbtTriggerFireInfo FireInfo; |
1964 TReal32 trigDistance; |
2059 TReal32 trigDistance; |
1965 TPosition firePosition; |
2060 TPosition firePosition; |
1966 FireInfo = notifier->GetFiredTrigger(); |
2061 FireInfo = notifier->GetFiredTrigger(); |
|
2062 RestoreProfileL(); |
1967 if(FireInfo.iTriggerId!=trigId) |
2063 if(FireInfo.iTriggerId!=trigId) |
1968 { |
2064 { |
1969 // notifier->StartNotification( wait ); |
2065 // notifier->StartNotification( wait ); |
1970 wait->Start( ); |
2066 wait->Start( ); |
1971 } |
2067 } |
2024 CleanupClosePushL( lbtserver ); |
2120 CleanupClosePushL( lbtserver ); |
2025 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2121 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2026 User::LeaveIfError( lbt.Open(lbtserver)); |
2122 User::LeaveIfError( lbt.Open(lbtserver)); |
2027 iLog->Log(_L("Subsession opened ")); |
2123 iLog->Log(_L("Subsession opened ")); |
2028 CleanupClosePushL( lbt ); |
2124 CleanupClosePushL( lbt ); |
|
2125 |
|
2126 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
2127 // trigger firing. |
|
2128 SetProfileToOfflineL(); |
|
2129 |
2029 //Enable only simpsy |
2130 //Enable only simpsy |
2030 EnableSimPSYL(); |
2131 EnableSimPSYL(); |
2031 //Clear all triggers |
2132 //Clear all triggers |
2032 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2133 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2033 |
2134 |
2125 TReal32 trigDistance; |
2226 TReal32 trigDistance; |
2126 TPosition firePosition; |
2227 TPosition firePosition; |
2127 FireInfo = notifier->GetFiredTrigger(); |
2228 FireInfo = notifier->GetFiredTrigger(); |
2128 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2229 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2129 firePosition.Distance(coordinate,trigDistance); |
2230 firePosition.Distance(coordinate,trigDistance); |
|
2231 RestoreProfileL(); |
2130 if(FireInfo.iTriggerId ==trigIdtochange) |
2232 if(FireInfo.iTriggerId ==trigIdtochange) |
2131 { |
2233 { |
2132 |
2234 |
2133 CleanupStack::PopAndDestroy( notifier ); |
2235 CleanupStack::PopAndDestroy( notifier ); |
2134 CleanupStack::PopAndDestroy( trig ); |
2236 CleanupStack::PopAndDestroy( trig ); |
2176 iLog->Log(_L("Subsession opened ")); |
2278 iLog->Log(_L("Subsession opened ")); |
2177 CleanupClosePushL( lbt ); |
2279 CleanupClosePushL( lbt ); |
2178 User::LeaveIfError( lbt1.Open(lbtserver)); |
2280 User::LeaveIfError( lbt1.Open(lbtserver)); |
2179 iLog->Log(_L("Subsession opened ")); |
2281 iLog->Log(_L("Subsession opened ")); |
2180 CleanupClosePushL( lbt1 ); |
2282 CleanupClosePushL( lbt1 ); |
|
2283 |
|
2284 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
2285 // trigger firing. |
|
2286 SetProfileToOfflineL(); |
|
2287 |
2181 //Enable only simpsy |
2288 //Enable only simpsy |
2182 EnableSimPSYL(); |
2289 EnableSimPSYL(); |
2183 //Clear all triggers |
2290 //Clear all triggers |
2184 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2291 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2185 |
2292 |
2279 TReal32 trigDistance; |
2386 TReal32 trigDistance; |
2280 TPosition firePosition; |
2387 TPosition firePosition; |
2281 FireInfo = notifier->GetFiredTrigger(); |
2388 FireInfo = notifier->GetFiredTrigger(); |
2282 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2389 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2283 firePosition.Distance(coordinate,trigDistance); |
2390 firePosition.Distance(coordinate,trigDistance); |
2284 |
2391 RestoreProfileL(); |
2285 if(FireInfo.iTriggerId ==trigIdtochange) |
2392 if(FireInfo.iTriggerId ==trigIdtochange) |
2286 { |
2393 { |
2287 CleanupStack::PopAndDestroy( notifier ); |
2394 CleanupStack::PopAndDestroy( notifier ); |
2288 CleanupStack::PopAndDestroy( trig ); |
2395 CleanupStack::PopAndDestroy( trig ); |
2289 CleanupStack::Pop( &lbt1 ); |
2396 CleanupStack::Pop( &lbt1 ); |
2330 CleanupClosePushL( lbtserver ); |
2437 CleanupClosePushL( lbtserver ); |
2331 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2438 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2332 User::LeaveIfError( lbt.Open(lbtserver)); |
2439 User::LeaveIfError( lbt.Open(lbtserver)); |
2333 iLog->Log(_L("Subsession opened ")); |
2440 iLog->Log(_L("Subsession opened ")); |
2334 CleanupClosePushL( lbt ); |
2441 CleanupClosePushL( lbt ); |
|
2442 |
|
2443 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
2444 // trigger firing. |
|
2445 SetProfileToOfflineL(); |
|
2446 |
2335 //Enable only simpsy |
2447 //Enable only simpsy |
2336 EnableSimPSYL(); |
2448 EnableSimPSYL(); |
2337 //Clear all triggers |
2449 //Clear all triggers |
2338 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2450 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2339 |
2451 |
2430 TReal32 trigDistance; |
2542 TReal32 trigDistance; |
2431 TPosition firePosition; |
2543 TPosition firePosition; |
2432 FireInfo = notifier->GetFiredTrigger(); |
2544 FireInfo = notifier->GetFiredTrigger(); |
2433 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2545 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2434 firePosition.Distance(coordinate,trigDistance); |
2546 firePosition.Distance(coordinate,trigDistance); |
|
2547 RestoreProfileL(); |
2435 if(FireInfo.iTriggerId ==trigIdtochange) |
2548 if(FireInfo.iTriggerId ==trigIdtochange) |
2436 { |
2549 { |
2437 CleanupStack::PopAndDestroy( notifier ); |
2550 CleanupStack::PopAndDestroy( notifier ); |
2438 CleanupStack::PopAndDestroy( trig ); |
2551 CleanupStack::PopAndDestroy( trig ); |
2439 CleanupStack::Pop( &lbt ); |
2552 CleanupStack::Pop( &lbt ); |
2478 CleanupClosePushL( lbtserver ); |
2591 CleanupClosePushL( lbtserver ); |
2479 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2592 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2480 User::LeaveIfError( lbt.Open(lbtserver)); |
2593 User::LeaveIfError( lbt.Open(lbtserver)); |
2481 iLog->Log(_L("Subsession opened ")); |
2594 iLog->Log(_L("Subsession opened ")); |
2482 CleanupClosePushL( lbt ); |
2595 CleanupClosePushL( lbt ); |
|
2596 |
|
2597 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
2598 // trigger firing. |
|
2599 SetProfileToOfflineL(); |
|
2600 |
2483 //Enable only simpsy |
2601 //Enable only simpsy |
2484 EnableSimPSYL(); |
2602 EnableSimPSYL(); |
2485 //Clear all triggers |
2603 //Clear all triggers |
2486 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2604 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2487 |
2605 |
2581 TReal32 trigDistance; |
2699 TReal32 trigDistance; |
2582 TPosition firePosition; |
2700 TPosition firePosition; |
2583 FireInfo = notifier->GetFiredTrigger(); |
2701 FireInfo = notifier->GetFiredTrigger(); |
2584 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2702 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2585 firePosition.Distance(coordinate,trigDistance); |
2703 firePosition.Distance(coordinate,trigDistance); |
|
2704 RestoreProfileL(); |
2586 if( trigDistance>=1000) |
2705 if( trigDistance>=1000) |
2587 { |
2706 { |
2588 _LIT(KProcessToSearch, "About"); |
2707 _LIT(KProcessToSearch, "About"); |
2589 //_LIT(KProcessToSearch, "TestServerStarter"); |
2708 //_LIT(KProcessToSearch, "TestServerStarter"); |
2590 TFullName fullName; |
2709 TFullName fullName; |
2646 CleanupClosePushL( lbtserver ); |
2765 CleanupClosePushL( lbtserver ); |
2647 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2766 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2648 User::LeaveIfError( lbt.Open( lbtserver ) ); |
2767 User::LeaveIfError( lbt.Open( lbtserver ) ); |
2649 iLog->Log(_L("Subsession opened ")); |
2768 iLog->Log(_L("Subsession opened ")); |
2650 CleanupClosePushL( lbt ); |
2769 CleanupClosePushL( lbt ); |
|
2770 |
|
2771 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
2772 // trigger firing. |
|
2773 SetProfileToOfflineL(); |
|
2774 |
2651 //Enable only simpsy |
2775 //Enable only simpsy |
2652 EnableSimPSYL(); |
2776 EnableSimPSYL(); |
2653 //Clear all triggers |
2777 //Clear all triggers |
2654 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2778 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2655 |
2779 |
2730 TReal32 trigDistance; |
2854 TReal32 trigDistance; |
2731 TPosition firePosition; |
2855 TPosition firePosition; |
2732 FireInfo = notifier->GetFiredTrigger(); |
2856 FireInfo = notifier->GetFiredTrigger(); |
2733 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2857 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2734 firePosition.Distance(coordinate,trigDistance); |
2858 firePosition.Distance(coordinate,trigDistance); |
|
2859 RestoreProfileL(); |
2735 if( trigDistance<=1000 &¬ifier->iTriggerFireCount ==2) |
2860 if( trigDistance<=1000 &¬ifier->iTriggerFireCount ==2) |
2736 { |
2861 { |
2737 CleanupStack::PopAndDestroy( notifier ); |
2862 CleanupStack::PopAndDestroy( notifier ); |
2738 CleanupStack::PopAndDestroy( trig ); |
2863 CleanupStack::PopAndDestroy( trig ); |
2739 CleanupStack::Pop( &lbt ); |
2864 CleanupStack::Pop( &lbt ); |
2774 CleanupClosePushL( lbtserver ); |
2899 CleanupClosePushL( lbtserver ); |
2775 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2900 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2776 User::LeaveIfError( lbt.Open( lbtserver ) ); |
2901 User::LeaveIfError( lbt.Open( lbtserver ) ); |
2777 iLog->Log(_L("Subsession opened ")); |
2902 iLog->Log(_L("Subsession opened ")); |
2778 CleanupClosePushL( lbt ); |
2903 CleanupClosePushL( lbt ); |
|
2904 |
|
2905 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
2906 // trigger firing. |
|
2907 SetProfileToOfflineL(); |
|
2908 |
2779 //Enable only simpsy |
2909 //Enable only simpsy |
2780 EnableSimPSYL(); |
2910 EnableSimPSYL(); |
2781 //Clear all triggers |
2911 //Clear all triggers |
2782 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2912 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2783 |
2913 |
2854 TReal32 trigDistance; |
2984 TReal32 trigDistance; |
2855 TPosition firePosition; |
2985 TPosition firePosition; |
2856 FireInfo = notifier->GetFiredTrigger(); |
2986 FireInfo = notifier->GetFiredTrigger(); |
2857 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2987 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2858 firePosition.Distance(coordinate,trigDistance); |
2988 firePosition.Distance(coordinate,trigDistance); |
|
2989 RestoreProfileL(); |
2859 if( trigDistance>=1000 &¬ifier->iTriggerFireCount ==2) |
2990 if( trigDistance>=1000 &¬ifier->iTriggerFireCount ==2) |
2860 { |
2991 { |
2861 CleanupStack::PopAndDestroy( notifier ); |
2992 CleanupStack::PopAndDestroy( notifier ); |
2862 CleanupStack::PopAndDestroy( trig ); |
2993 CleanupStack::PopAndDestroy( trig ); |
2863 CleanupStack::Pop( &lbt ); |
2994 CleanupStack::Pop( &lbt ); |
2897 CleanupClosePushL( lbtserver ); |
3028 CleanupClosePushL( lbtserver ); |
2898 iLog->Log(_L("Connection to RLbtServer Passed ")); |
3029 iLog->Log(_L("Connection to RLbtServer Passed ")); |
2899 User::LeaveIfError( lbt.Open( lbtserver ) ); |
3030 User::LeaveIfError( lbt.Open( lbtserver ) ); |
2900 iLog->Log(_L("Subsession opened ")); |
3031 iLog->Log(_L("Subsession opened ")); |
2901 CleanupClosePushL( lbt ); |
3032 CleanupClosePushL( lbt ); |
|
3033 |
|
3034 // Set profile to offline mode.This is required to avoid movement detection blocking the |
|
3035 // trigger firing. |
|
3036 SetProfileToOfflineL(); |
|
3037 |
2902 //Enable only simpsy |
3038 //Enable only simpsy |
2903 EnableSimPSYL(); |
3039 EnableSimPSYL(); |
2904 //Clear all triggers |
3040 //Clear all triggers |
2905 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
3041 TRAP_IGNORE(lbt.DeleteTriggersL()) ; |
2906 |
3042 |
2976 TReal32 trigDistance; |
3112 TReal32 trigDistance; |
2977 TPosition firePosition; |
3113 TPosition firePosition; |
2978 FireInfo = notifier->GetFiredTrigger(); |
3114 FireInfo = notifier->GetFiredTrigger(); |
2979 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
3115 FireInfo.iFiredPositionInfo.GetPosition(firePosition); |
2980 firePosition.Distance(coordinate,trigDistance); |
3116 firePosition.Distance(coordinate,trigDistance); |
|
3117 RestoreProfileL(); |
2981 if( trigDistance<=1000 &¬ifier->iTriggerFireCount ==2) |
3118 if( trigDistance<=1000 &¬ifier->iTriggerFireCount ==2) |
2982 { |
3119 { |
2983 CleanupStack::PopAndDestroy( notifier ); |
3120 CleanupStack::PopAndDestroy( notifier ); |
2984 CleanupStack::PopAndDestroy( trig ); |
3121 CleanupStack::PopAndDestroy( trig ); |
2985 CleanupStack::Pop( &lbt ); |
3122 CleanupStack::Pop( &lbt ); |