mmserv/radioutility/radioserver/Server/Src/RadioServer.cpp
branchRCL_3
changeset 17 3570217d8c21
parent 11 03a293c97d5c
child 18 2eb3b066cc7d
equal deleted inserted replaced
13:f5c5c82a163e 17:3570217d8c21
   489 void CRadioServer::TunerOnComplete(
   489 void CRadioServer::TunerOnComplete(
   490     TRadioServerError aError )
   490     TRadioServerError aError )
   491     {
   491     {
   492     RADIO_RDEBUG_INT3(_L("[RADIO-SVR] TunerOnComplete(%d) State[%d] Trigger[%d]"), aError, iState, iTunerOnTrigger);
   492     RADIO_RDEBUG_INT3(_L("[RADIO-SVR] TunerOnComplete(%d) State[%d] Trigger[%d]"), aError, iState, iTunerOnTrigger);
   493     TFourCC radioFourCC;
   493     TFourCC radioFourCC;
       
   494     // TBool antennaStatus = iSettings->IsAntennaAttached();
       
   495     
   494     switch ( iTunerOnTrigger )
   496     switch ( iTunerOnTrigger )
   495         {
   497         {
   496         case ETriggerTunerControl:
   498         case ETriggerTunerControl:
   497             if ( aError == KErrNone )
   499             if ( aError == KErrNone )
   498                 {
   500                 {
   557             break;
   559             break;
   558         case ETriggerAntenna:
   560         case ETriggerAntenna:
   559             if ( aError == KErrNone )
   561             if ( aError == KErrNone )
   560                 {
   562                 {
   561                 iState = EStateTunerOn;
   563                 iState = EStateTunerOn;
   562                 // AK - begin: to cause publishing (CPHU-73YTQW)
   564                 if ( iSettings->IsAntennaAttached() )
   563                 iSettings->SetAntennaStatus(EFalse, EFalse);
   565                     {
   564                 // - end
   566                     // AK - begin: to cause publishing (CPHU-73YTQW)
   565                 iSettings->SetAntennaStatus(ETrue);
   567                     iSettings->SetAntennaStatus(EFalse, EFalse);
       
   568                     // - end
       
   569                     iSettings->SetAntennaStatus(ETrue);
       
   570                     }
   566                 }
   571                 }
   567             // else
   572             // else
   568                 // Unable to turn the tuner back on. It's possible that after TunerOn request
   573                 // Unable to turn the tuner back on. It's possible that after TunerOn request
   569                 // has been sent that antenna has been disconnected or the offline mode has
   574                 // has been sent that antenna has been disconnected or the offline mode has
   570                 // been enabled again. Just remain here...
   575                 // been enabled again. Just remain here...
   591                 // has been sent that antenna has been disconnected or the offline mode has
   596                 // has been sent that antenna has been disconnected or the offline mode has
   592                 // been enabled again. Just remain here...
   597                 // been enabled again. Just remain here...
   593             break;
   598             break;
   594         default:
   599         default:
   595             break;
   600             break;
       
   601         }
       
   602     
       
   603     if ( iSettings->IsAntennaAttached() == EFalse )
       
   604         {
       
   605         // antenna removed during TunerOn sequence, request TunerOff
       
   606         // can not shutdown totally in TunerOffComplete thus set iState to EStateTunerOff
       
   607         iState = EStateTunerOff;
       
   608         iTunerControl->TunerOff();    
   596         }
   609         }
   597     }
   610     }
   598 
   611 
   599 // -----------------------------------------------------------------------------
   612 // -----------------------------------------------------------------------------
   600 // CRadioServer::TunerOffComplete (From MRadioServerFMTunerObserver)
   613 // CRadioServer::TunerOffComplete (From MRadioServerFMTunerObserver)
   646                 else
   659                 else
   647                     {
   660                     {
   648                     CompleteAsyncRequest(aError);
   661                     CompleteAsyncRequest(aError);
   649                     }
   662                     }
   650                 }
   663                 }
       
   664             else if( aError == KRadioServErrDuplicateRequest )
       
   665                 {
       
   666                 // tuner off and duplicate request going on, trace it out
       
   667                 RADIO_RDEBUG(_L("[RADIO-SVR] TunerOffComplete() - EStateTunerOff - KRadioServErrDuplicateRequest"));
       
   668                 }
   651             else
   669             else
   652                 {
   670                 {
   653                 if( aError == KRadioServErrDuplicateRequest )
   671                 RADIO_RDEBUG(_L("[RADIO-SVR] TunerOffComplete() - iState = EStateTunerOff;"));
   654                     {
       
   655                     // tuner off and duplicate request going on, trace it out
       
   656                     RADIO_RDEBUG(_L("[RADIO-SVR] TunerOffComplete() - EStateTunerOff - KRadioServErrDuplicateRequest"));
       
   657                     }
       
   658                 }
   672                 }
   659             break;
   673             break;
   660         default:
   674         default:
   661             // should never happen
   675             // should never happen
   662             break;
   676             break;