devsoundextensions/audiorouting/Output/AudioOutputProxy/src/AudioOutputProxy.cpp
changeset 13 efebd1779a59
parent 0 40261b775718
child 40 f429a0a2075b
child 54 b68f3e90dca1
equal deleted inserted replaced
0:40261b775718 13:efebd1779a59
    41 	iCustomInterfaceUtility(aCustomInterfaceUtility)
    41 	iCustomInterfaceUtility(aCustomInterfaceUtility)
    42     {
    42     {
    43     iOutput        = ENoPreference;
    43     iOutput        = ENoPreference;
    44     iDefaultOutput = ENoPreference;
    44     iDefaultOutput = ENoPreference;
    45     iSecureOutput  = EFalse;
    45     iSecureOutput  = EFalse;
       
    46     iRegistered = EFalse;
    46     }
    47     }
    47 
    48 
    48 // Two-phased constructor.
    49 // Two-phased constructor.
    49 EXPORT_C CAudioOutputProxy* CAudioOutputProxy::NewL(TMMFMessageDestinationPckg aMessageHandler, 
    50 EXPORT_C CAudioOutputProxy* CAudioOutputProxy::NewL(TMMFMessageDestinationPckg aMessageHandler, 
    50 							MCustomCommand& aCustomCommand,
    51 							MCustomCommand& aCustomCommand,
   138 // (other items were commented in a header).
   139 // (other items were commented in a header).
   139 // ---------------------------------------------------------
   140 // ---------------------------------------------------------
   140 //
   141 //
   141 void CAudioOutputProxy::RegisterObserverL(MAudioOutputObserver& aObserver)
   142 void CAudioOutputProxy::RegisterObserverL(MAudioOutputObserver& aObserver)
   142 	{
   143 	{
   143 	iRegistered = ETrue;
   144 	if(iRegistered)
   144 	iObserver = &aObserver;
   145 		{
   145 	delete iAsyncSender;
   146 	       iObserver = &aObserver;
   146 	iAsyncSender = NULL;
   147 	       iAsyncSender->SetObserver(aObserver);
   147 
   148 	       }
   148 	iAsyncSender = CAudioOutputProxyAO::NewL(this,aObserver,iCustomCommand);
   149 	else
   149 	iAsyncSender->SetRegisterFlag(ETrue);
   150 		{
   150 	iAsyncSender->SendAsyncMessage(iMessageHandler,EAofRegisterObserver);
   151 		iRegistered = ETrue;
       
   152 		iObserver = &aObserver;
       
   153 		delete iAsyncSender;
       
   154 		iAsyncSender = NULL;
       
   155 
       
   156 		iAsyncSender = CAudioOutputProxyAO::NewL(this,aObserver,iCustomCommand);
       
   157 		iAsyncSender->SetRegisterFlag(ETrue);
       
   158 		iAsyncSender->SendAsyncMessage(iMessageHandler,EAofRegisterObserver);
       
   159 		}
   151 	}
   160 	}
   152 
   161 
   153 // ---------------------------------------------------------
   162 // ---------------------------------------------------------
   154 // CAudioOutput::SecureOutput
   163 // CAudioOutput::SecureOutput
   155 // ?implementation_description
   164 // ?implementation_description