multimediacommscontroller/mmccsubcontroller/src/mccrtpkeepalivecontainer.cpp
branchRCL_3
changeset 18 817c922b90eb
parent 0 1bce908db942
equal deleted inserted replaced
17:b9d283c5c7b5 18:817c922b90eb
   176 // ---------------------------------------------------------------------------
   176 // ---------------------------------------------------------------------------
   177 // CMccRtpKeepaliveContainer::UpdateParamsL
   177 // CMccRtpKeepaliveContainer::UpdateParamsL
   178 // ---------------------------------------------------------------------------
   178 // ---------------------------------------------------------------------------
   179 //  
   179 //  
   180 void CMccRtpKeepaliveContainer::UpdateParamsL( MMccRtpInterface& aUser,
   180 void CMccRtpKeepaliveContainer::UpdateParamsL( MMccRtpInterface& aUser,
   181     const TMccCodecInfo& aCodecInfo )
   181     const TMccCodecInfo& aCodecInfo, CMccRtpMediaClock& aRtpMediaClock )
   182     {
   182     {
   183     __SUBCONTROLLER( "CMccRtpKeepaliveContainer::UpdateParamsL(), Entry" )
   183     __SUBCONTROLLER( "CMccRtpKeepaliveContainer::UpdateParamsL(), Entry" )
   184     
   184     
   185     CMccRtpKeepalive* handler = 
   185     CMccRtpKeepalive* handler = 
   186         FindKeepaliveHandler( aCodecInfo.iKeepalivePT, aUser );
   186         FindKeepaliveHandler( aCodecInfo.iKeepalivePT, aUser );
   189         {
   189         {
   190         // Deactivate handler because update invalidates references to the
   190         // Deactivate handler because update invalidates references to the
   191         // previous keep-alive data.
   191         // previous keep-alive data.
   192         handler->Cancel();
   192         handler->Cancel();
   193         handler->UpdateParamsL( aCodecInfo.iKeepalivePT, 
   193         handler->UpdateParamsL( aCodecInfo.iKeepalivePT, 
   194             aCodecInfo.iKeepaliveInterval, aCodecInfo.iKeepaliveData );
   194             aCodecInfo.iKeepaliveInterval, aCodecInfo.iKeepaliveData, &aRtpMediaClock );
   195         
   195         
   196         if ( aCodecInfo.iKeepaliveInterval > 0 && !handler->IsActive() )
   196         if ( aCodecInfo.iKeepaliveInterval > 0 && !handler->IsActive() )
   197             {
   197             {
   198             handler->ResetKeepaliveTimer();
   198             handler->ResetKeepaliveTimer();
   199             }
   199             }
   200         }
   200         }
       
   201     else
       
   202     	{
       
   203     	TMccCodecInfo cInfo = aCodecInfo;
       
   204 		StartKeepaliveL( aUser, cInfo, aRtpMediaClock );
       
   205     	}
   201     
   206     
   202     __SUBCONTROLLER( "CMccRtpKeepaliveContainer::UpdateParamsL(), exit" )
   207     __SUBCONTROLLER( "CMccRtpKeepaliveContainer::UpdateParamsL(), exit" )
   203     }
   208     }
   204 
   209 
   205 // ---------------------------------------------------------------------------
   210 // ---------------------------------------------------------------------------