multimediacommscontroller/tsrc/subcontrollerstub/src/CMccUlDlClient_Stub.cpp
changeset 0 1bce908db942
equal deleted inserted replaced
-1:000000000000 0:1bce908db942
       
     1 /*
       
     2 * Copyright (c) 2002-2004 Nokia Corporation and/or its subsidiary(-ies).
       
     3 * All rights reserved.
       
     4 * This component and the accompanying materials are made available
       
     5 * under the terms of "Eclipse Public License v1.0"
       
     6 * which accompanies this distribution, and is available
       
     7 * at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     8 *
       
     9 * Initial Contributors:
       
    10 * Nokia Corporation - initial contribution.
       
    11 *
       
    12 * Contributors:
       
    13 *
       
    14 * Description:    UL/DL Session abstraction for Mcc Subthread clients
       
    15 *
       
    16 */
       
    17 
       
    18 
       
    19 
       
    20 
       
    21 // INCLUDE FILES
       
    22 #include <e32math.h>
       
    23 
       
    24 #include "mcculdlclient.h"
       
    25 
       
    26 #include "mmccnetworksettings.h"
       
    27 #include "mccsymsubthreadclient.h"
       
    28 #include "mcccodecconfigurator.h"
       
    29 #include "mccsubcontrollerlogs.h"
       
    30 #include "mccrtpmediaclock.h"
       
    31 #include "mmccsecureinterface.h"
       
    32 #include "mmccEvents.h"
       
    33 #include "mccinternaldef.h"
       
    34 #include "mccinternalevents.h"
       
    35 
       
    36 
       
    37 // EXTERNAL DATA STRUCTURES
       
    38 
       
    39 // EXTERNAL FUNCTION PROTOTYPES  
       
    40 
       
    41 // CONSTANTS
       
    42 
       
    43 // MACROS
       
    44 
       
    45 // LOCAL CONSTANTS AND MACROS
       
    46 
       
    47 // MODULE DATA STRUCTURES
       
    48 
       
    49 // LOCAL FUNCTION PROTOTYPES
       
    50 
       
    51 // FORWARD DECLARATIONS
       
    52 
       
    53 // ============================= LOCAL FUNCTIONS ===============================
       
    54 
       
    55 // ============================ MEMBER FUNCTIONS ===============================
       
    56 
       
    57 // -----------------------------------------------------------------------------
       
    58 // CMccUlDlClient::CMccUlDlClient
       
    59 // C++ default constructor can NOT contain any code, that
       
    60 // might leave.
       
    61 // -----------------------------------------------------------------------------
       
    62 CMccUlDlClient::CMccUlDlClient( MMccEventHandler* aMccEventHandler,
       
    63                                 MMccResources* aMccResources,
       
    64                                 TUint32 aSessionId ) :
       
    65                                 iSessionId( aSessionId ),
       
    66                                 iMccEventHandler( aMccEventHandler ),
       
    67                                 iMccResources( aMccResources )
       
    68     {
       
    69     }
       
    70 
       
    71 // -----------------------------------------------------------------------------
       
    72 // CMccUlDlClient::ConstructL
       
    73 // Symbian 2nd phase constructor can leave.
       
    74 // -----------------------------------------------------------------------------
       
    75 void CMccUlDlClient::ConstructL()
       
    76     {
       
    77     //Create an event and send it directly
       
    78         {
       
    79             
       
    80         TMccEvent event( 1, 1, 1, 1, KMccEventCategoryStream, KMccInactivityEvent,
       
    81                              KErrNone, KNullDesC8 );
       
    82         iMccEventHandler->SendMccEventToClient( event );
       
    83         }
       
    84     
       
    85         {
       
    86             
       
    87         TMccRtcpEventData rtcpData;
       
    88         rtcpData.iRtcpPacketData.Copy( _L8("foofoo") );
       
    89         rtcpData.iRtcpPacketType = KRtcpAnyPacket;
       
    90         rtcpData.iSsrc = 2;
       
    91         
       
    92         TMccRtcpEventDataPackage rtcpDataPackage( rtcpData );
       
    93         
       
    94         //Create a media signal and send it 
       
    95         TMccEvent event( 1, 1, 1, 1, KMccEventCategoryRtcp, KMccRtcpReceived,
       
    96                              KErrNone, rtcpDataPackage );
       
    97         
       
    98         
       
    99         iMccEventHandler->SendMccEventToClient( event );
       
   100         
       
   101         }
       
   102         
       
   103         {  
       
   104         TMccEvent event( 1, 1, 1, 1, KMccEventCategoryStream, KMccStreamMMFEvent,
       
   105                              KErrDied, KNullDesC8 );
       
   106         iMccEventHandler->SendMccEventToClient( event );
       
   107         }
       
   108         
       
   109         {  
       
   110         TMccEvent event( 1, 1, 1, 1, KMccEventCategoryStreamControl, KMccStreamPaused,
       
   111                              KErrDied, KNullDesC8 );
       
   112         iMccEventHandler->SendMccEventToClient( event );
       
   113         
       
   114         event.iEventType = KMccStreamResumed;
       
   115         iMccEventHandler->SendMccEventToClient( event );
       
   116         
       
   117         event.iEventType = KMccStreamStopped;
       
   118         iMccEventHandler->SendMccEventToClient( event );
       
   119         }
       
   120         
       
   121     iMccEventHandler->StateChange( 0, 0 );
       
   122     iMccEventHandler->ErrorOccured( KErrNone, 0, 0, 0, 0 );    
       
   123     iMccEventHandler->ErrorOccured( KErrGeneral, 0, 0, 0, 0 );
       
   124     
       
   125     // go through DTMF event handling paths
       
   126     for ( TInt i = KMccDtmfManualStart; i <= KMccDtmfStopInDtmfString; i++ )
       
   127         {
       
   128         TMccDtmfEventData eventSignal;
       
   129         eventSignal.iDtmfEventType = TMccDtmfEventType( i );
       
   130         TMccDtmfEventDataPackage signalPkg( eventSignal );
       
   131         
       
   132         TMccEvent dtmfEvent( 1, 1, 1, 1, 
       
   133             KMccEventCategoryDtmf, KMccDtmfControl, KErrNone, signalPkg );
       
   134         iMccEventHandler->SendMccEventToClient( dtmfEvent );
       
   135         }
       
   136     };
       
   137 
       
   138 // -----------------------------------------------------------------------------
       
   139 // CMccUlDlClient::NewL
       
   140 // Static constructor.
       
   141 // -----------------------------------------------------------------------------
       
   142 EXPORT_C CMccUlDlClient* CMccUlDlClient::NewL( MMccEventHandler* aMccEventHandler,
       
   143                                                MMccResources* aMccResources,
       
   144                                                TUint32 aSessionId )
       
   145     {
       
   146     CMccUlDlClient* self = new ( ELeave ) CMccUlDlClient( aMccEventHandler,
       
   147                                                           aMccResources,
       
   148                                                           aSessionId );
       
   149     CleanupStack::PushL( self );
       
   150     self->ConstructL();
       
   151     CleanupStack::Pop( self );
       
   152 
       
   153     return self;
       
   154     }
       
   155 
       
   156 // -----------------------------------------------------------------------------
       
   157 // CMccUlDlClient::~CMccUlDlClient
       
   158 // Destructor
       
   159 // -----------------------------------------------------------------------------  
       
   160 EXPORT_C CMccUlDlClient::~CMccUlDlClient()
       
   161     {
       
   162 	__SUBCONTROLLER( "CMccUlDlClient::~CMccUlDlClient" )
       
   163 	__SUBCONTROLLER( "CMccUlDlClient::~CMccUlDlClient, exit" )
       
   164     }
       
   165 
       
   166 // -----------------------------------------------------------------------------
       
   167 // CMccUlDlClient::MaxGainL
       
   168 // Returns the maximum gain for uplink stream
       
   169 // -----------------------------------------------------------------------------
       
   170 //
       
   171 EXPORT_C void CMccUlDlClient::MaxGainL( const TUint32 aLinkId, 
       
   172 										const TUint32 aStreamId,
       
   173                                         TInt& aMaxGain )
       
   174     {
       
   175 	__SUBCONTROLLER( "CMccUlDlClient::MaxGainL" )
       
   176     }
       
   177 
       
   178 // -----------------------------------------------------------------------------
       
   179 // CMccUlDlClient::MaxVolumeL
       
   180 // Returns the mareximum volume for downlink stream
       
   181 // -----------------------------------------------------------------------------
       
   182 //
       
   183 EXPORT_C void CMccUlDlClient::MaxVolumeL( const TUint32 aLinkId,
       
   184 										  const TUint32 aStreamId,
       
   185                                           TInt& aMaxVolume )
       
   186     {
       
   187 	__SUBCONTROLLER( "CMccUlDlClient::MaxVolumeL" )
       
   188     }
       
   189 
       
   190 // -----------------------------------------------------------------------------
       
   191 // CMccUlDlClient::OpenL
       
   192 // Opens ul/dl clients
       
   193 // -----------------------------------------------------------------------------
       
   194 //
       
   195 EXPORT_C void CMccUlDlClient::OpenL( const TUint32 aLinkId,
       
   196                                      const TUint32 aStreamId,
       
   197                                      TInt aStreamType,
       
   198                                      TFourCC aFourCC,
       
   199                                      MDataSource* aDataSource, 
       
   200                                      MDataSink* aSink,
       
   201                                      TMMFPrioritySettings aSettings )
       
   202     {
       
   203 	__SUBCONTROLLER( "CMccUlDlClient::OpenL" )
       
   204     }    
       
   205 
       
   206 // -----------------------------------------------------------------------------
       
   207 // CMccUlDlClient::PrepareL
       
   208 // Prepare ul/dl client
       
   209 // -----------------------------------------------------------------------------
       
   210 //
       
   211 EXPORT_C void CMccUlDlClient::PrepareL( const TUint32 aLinkId,
       
   212                                         const TUint32 aStreamId,
       
   213                                         const TUint32 aEndpointId )
       
   214     {
       
   215 	__SUBCONTROLLER( "CMccUlDlClient::PrepareL" )
       
   216     }  
       
   217 
       
   218 // -----------------------------------------------------------------------------
       
   219 // CMccUlDlClient::PlayL
       
   220 // Plays ul/dl stream
       
   221 // -----------------------------------------------------------------------------
       
   222 //
       
   223 EXPORT_C void CMccUlDlClient::PlayL( const TUint32 aLinkId,
       
   224                                      const TUint32 aStreamId,
       
   225                                      const TUint32 aEndpointId,
       
   226                                      TBool aStreamPaused,
       
   227                                      TBool aEnableRTCP )
       
   228     {
       
   229 	__SUBCONTROLLER( "CMccUlDlClient::PlayL" )
       
   230     }
       
   231 
       
   232 // -----------------------------------------------------------------------------
       
   233 // CMccUlDlClient::PauseL
       
   234 // Pauses ul/dl stream
       
   235 // -----------------------------------------------------------------------------
       
   236 //
       
   237 EXPORT_C void CMccUlDlClient::PauseL( const TUint32 aLinkId,
       
   238                                       const TUint32 aStreamId,
       
   239                                       const TUint32 aEndpointId,
       
   240                                       TBool aEnableRTCP )
       
   241     {
       
   242 	__SUBCONTROLLER( "CMccUlDlClient::PauseL" )
       
   243     }
       
   244 
       
   245 // -----------------------------------------------------------------------------
       
   246 // CMccUlDlClient::StopL
       
   247 // Stops ul/dl stream
       
   248 // -----------------------------------------------------------------------------
       
   249 //
       
   250 EXPORT_C void CMccUlDlClient::StopL( const TUint32 aLinkId,
       
   251                                      const TUint32 aStreamId,
       
   252                                      const TUint32 aEndpointId )
       
   253     {
       
   254 	__SUBCONTROLLER( "CMccUlDlClient::StopL" )
       
   255     }
       
   256 
       
   257 // -----------------------------------------------------------------------------
       
   258 // CMccUlDlClient::CloseL
       
   259 // Closes ul/dl client
       
   260 // -----------------------------------------------------------------------------
       
   261 //
       
   262 EXPORT_C void CMccUlDlClient::CloseL( const TUint32 aLinkId,
       
   263                                       const TUint32 aStreamId )    
       
   264     {
       
   265 	__SUBCONTROLLER( "CMccUlDlClient::CloseL" )
       
   266     }
       
   267 
       
   268 // -----------------------------------------------------------------------------
       
   269 // CMccUlDlClient::ResumeL
       
   270 // Resumes ul/dl stream
       
   271 // -----------------------------------------------------------------------------
       
   272 //
       
   273 EXPORT_C void CMccUlDlClient::ResumeL( const TUint32 aLinkId,
       
   274                                        const TUint32 aStreamId,
       
   275                                        const TUint32 aEndpointId,
       
   276                                        TBool aEnableRTCP )
       
   277     {
       
   278 	__SUBCONTROLLER( "CMccUlDlClient::ResumeL" )
       
   279     }    
       
   280 
       
   281 // -----------------------------------------------------------------------------
       
   282 // CMccUlDlClient::ResumeL
       
   283 // Resumes ul/dl stream
       
   284 // -----------------------------------------------------------------------------
       
   285 //
       
   286 EXPORT_C TBool CMccUlDlClient::StreamsExistsL( const TUint32 aLinkId )
       
   287     {
       
   288 	__SUBCONTROLLER( "CMccUlDlClient::StreamsExistsL" )
       
   289 	return EFalse;
       
   290     }    
       
   291 
       
   292 
       
   293 // -----------------------------------------------------------------------------
       
   294 // CMccUlDlClient::GetGainL
       
   295 // Get the current ul gain
       
   296 // -----------------------------------------------------------------------------
       
   297 //
       
   298 EXPORT_C TInt CMccUlDlClient::GetGainL( const TUint32 aLinkId,
       
   299                                         const TUint32 aStreamId,
       
   300                                         TInt& aGain )
       
   301     {
       
   302 	__SUBCONTROLLER( "CMccUlDlClient::GetGainL" )
       
   303     return KErrNone;
       
   304     }
       
   305 
       
   306 // -----------------------------------------------------------------------------
       
   307 // CMccUlDlClient::GetCodecL
       
   308 // Get current codec
       
   309 // -----------------------------------------------------------------------------
       
   310 //
       
   311 EXPORT_C void CMccUlDlClient::GetCodecL( const TUint32 aLinkId,
       
   312                                          const TUint32 aStreamId,
       
   313                                          TMccCodecInfo& aCodec )
       
   314     {
       
   315 	__SUBCONTROLLER( "CMccUlDlClient::GetCodecL" )
       
   316     }
       
   317 
       
   318 // -----------------------------------------------------------------------------
       
   319 // CMccUlDlClient::GetFmtpAttrL
       
   320 // Get current codec
       
   321 // -----------------------------------------------------------------------------
       
   322 //
       
   323 EXPORT_C void CMccUlDlClient::GetFmtpAttrL( const TUint32 aLinkId,
       
   324                                               const TUint32 aStreamId,
       
   325                                               TDes8& aFmtp )
       
   326     {
       
   327 	__SUBCONTROLLER( "CMccUlDlClient::GetFmtpAttrL" )
       
   328 	aFmtp.Format( _L8( "foo42" ) );
       
   329     }
       
   330 
       
   331 // -----------------------------------------------------------------------------
       
   332 // CMccUlDlClient::GetPlayBalanceL
       
   333 // Returns the play balance of dl client 
       
   334 // -----------------------------------------------------------------------------
       
   335 //
       
   336 EXPORT_C TInt CMccUlDlClient::GetPlayBalanceL( const TUint32 aLinkId,
       
   337                                                const TUint32 aStreamId,
       
   338                                                TInt& aLeftBalance,
       
   339                                                TInt& aRightBalance )
       
   340     {
       
   341 	__SUBCONTROLLER( "CMccUlDlClient::GetPlayBalanceL" )
       
   342     return KErrNone;
       
   343     }
       
   344 
       
   345 // -----------------------------------------------------------------------------
       
   346 // CMccUlDlClient::GetRecordBalanceL
       
   347 // Returns the record balance of ul client
       
   348 // -----------------------------------------------------------------------------
       
   349 //
       
   350 EXPORT_C TInt CMccUlDlClient::GetRecordBalanceL( const TUint32 aLinkId,
       
   351                                                  const TUint32 aStreamId,
       
   352                                                  TInt& aLeftBalance,
       
   353                                                  TInt& aRightBalance )
       
   354     {
       
   355 	__SUBCONTROLLER( "CMccUlDlClient::GetRecordBalanceL" )
       
   356     return KErrNone;
       
   357     }
       
   358 
       
   359 // -----------------------------------------------------------------------------
       
   360 // CMccUlDlClient::SetPriorityL
       
   361 // Sets the link priority
       
   362 // -----------------------------------------------------------------------------
       
   363 //
       
   364 EXPORT_C TInt CMccUlDlClient::SetPriorityL( const TUint32 aLinkId,
       
   365                                             const TUint32 aStreamId,
       
   366                                             TMMFPrioritySettings aPrioritySettings )
       
   367     {
       
   368 	__SUBCONTROLLER( "CMccUlDlClient::SetPriorityL" )
       
   369     return KErrNone;
       
   370     }   
       
   371 
       
   372 
       
   373 // -----------------------------------------------------------------------------
       
   374 // CMccUlDlClient::SetVolumeL
       
   375 // Sets the volume for downlink stream
       
   376 // -----------------------------------------------------------------------------
       
   377 //
       
   378 EXPORT_C TInt CMccUlDlClient::SetVolumeL( TInt aVolume )
       
   379     {
       
   380 	__SUBCONTROLLER( "CMccUlDlClient::GetRecordBalanceL" )
       
   381     return KErrNone;
       
   382     }
       
   383 
       
   384 // -----------------------------------------------------------------------------
       
   385 // CMccUlDlClient::SetGainL
       
   386 // Sets the gain for uplink stream
       
   387 // -----------------------------------------------------------------------------
       
   388 //
       
   389 EXPORT_C TInt CMccUlDlClient::SetGainL( TInt aGain )
       
   390     {
       
   391 	__SUBCONTROLLER( "CMccUlDlClient::SetGainL" )
       
   392     return KErrNone;
       
   393     }
       
   394 
       
   395 // -----------------------------------------------------------------------------
       
   396 // CMccUlDlClient::SetRecordBalanceL
       
   397 // Set the record balance for uplink stream
       
   398 // -----------------------------------------------------------------------------
       
   399 //
       
   400 EXPORT_C void CMccUlDlClient::SetRecordBalanceL( const TUint32 aLinkId,
       
   401                                                  const TUint32 aStreamId, 
       
   402                                                  TInt aLeftBalance, 
       
   403                                                  TInt aRightBalance )
       
   404     {
       
   405 	__SUBCONTROLLER( "CMccUlDlClient::SetRecordBalanceL" )
       
   406     }
       
   407 
       
   408 // -----------------------------------------------------------------------------
       
   409 // CMccUlDlClient::SetPlayBalanceL
       
   410 // Set the record balance for downlink stream
       
   411 // -----------------------------------------------------------------------------
       
   412 //
       
   413 EXPORT_C void CMccUlDlClient::SetPlayBalanceL( const TUint32 aLinkId, 
       
   414                                                const TUint32 aStreamId, 
       
   415                                                TInt aLeftBalance, 
       
   416                                                TInt aRightBalance )
       
   417     {
       
   418 	__SUBCONTROLLER( "CMccUlDlClient::SetPlayBalanceL" )
       
   419     }
       
   420 
       
   421 // -----------------------------------------------------------------------------
       
   422 // CMccUlDlClient::CreateLinkL
       
   423 // Creates link, 1st step in link creation
       
   424 // -----------------------------------------------------------------------------
       
   425 //
       
   426 EXPORT_C void CMccUlDlClient::CreateLinkL( TUint32& aLinkId,
       
   427                                            TInt aType )
       
   428     {
       
   429 	__SUBCONTROLLER( "CMccUlDlClient::CreateLinkL" )
       
   430 	aLinkId = 1;
       
   431     }
       
   432 
       
   433 // -----------------------------------------------------------------------------
       
   434 // CMccUlDlClient::InitializeLinkL
       
   435 // Initializes ul and dl links, 2nd step in link creation
       
   436 // -----------------------------------------------------------------------------
       
   437 //
       
   438 EXPORT_C void CMccUlDlClient::InitializeLinkL( TRequestStatus& aStatus,
       
   439                                                TUint32 aLinkId,
       
   440                                                TInt aIapId )
       
   441     {
       
   442 	__SUBCONTROLLER( "CMccUlDlClient::InitializeLinkL" )
       
   443 	
       
   444 	TRequestStatus* status = &aStatus;
       
   445 	User::RequestComplete( status, KErrNone );
       
   446     }
       
   447 
       
   448 // -----------------------------------------------------------------------------
       
   449 // CMccUlDlClient::CreateRtpSessionL
       
   450 // Creates RTP session, 3rd step in link creation
       
   451 // -----------------------------------------------------------------------------
       
   452 //
       
   453 EXPORT_C void CMccUlDlClient::CreateRtpSessionL( TUint32 aLinkId,
       
   454                                                  TUint aPort,
       
   455                                                  TInt aIpTOS,
       
   456                                                  TInt /*aMediaSignaling*/ )  
       
   457     {
       
   458     __SUBCONTROLLER( "CMccUlDlClient::CreateRtpSessionL" )
       
   459     }
       
   460 
       
   461 // -----------------------------------------------------------------------------
       
   462 // CMccUlDlClient::CloseLinkL
       
   463 // Closes ul/dl client
       
   464 // -----------------------------------------------------------------------------
       
   465 //
       
   466 EXPORT_C TInt CMccUlDlClient::CloseLinkL( TUint32 aLinkId )    
       
   467     {
       
   468 	__SUBCONTROLLER( "CMccUlDlClient::CloseLinkL" )
       
   469     return KErrNone;
       
   470     }
       
   471 
       
   472 // -----------------------------------------------------------------------------
       
   473 // CMccUlSubThreadClient::SetRemoteAddressL
       
   474 // Sets the remote address for uplink stream
       
   475 // -----------------------------------------------------------------------------
       
   476 EXPORT_C void CMccUlDlClient::SetRemoteAddressL( TInetAddr aRemAddr,
       
   477                                                  TUint32 aLinkId ) 
       
   478     {
       
   479 	__SUBCONTROLLER( "CMccUlDlClient::SetRemoteAddressL" )
       
   480     }
       
   481     
       
   482 // -----------------------------------------------------------------------------
       
   483 // CMccUlSubThreadClient::SetRemoteRtcpAddrL
       
   484 // Sets the remote address for uplink stream
       
   485 // -----------------------------------------------------------------------------
       
   486 EXPORT_C void CMccUlDlClient::SetRemoteRtcpAddrL( TInetAddr aRemAddr,
       
   487                                                  TUint32 aLinkId ) 
       
   488     {
       
   489 	__SUBCONTROLLER( "CMccUlDlClient::SetRemoteRtcpAddressL" )
       
   490     }
       
   491     
       
   492 
       
   493 // -----------------------------------------------------------------------------
       
   494 // CMccUlDlClient::GetCodecDefaultsL
       
   495 // Get default codec values
       
   496 // -----------------------------------------------------------------------------
       
   497 //
       
   498 EXPORT_C void CMccUlDlClient::GetCodecDefaultsL(
       
   499 	const TUid aType, TDes8& aParam, TMccCodecInfo& aCodec )
       
   500     {
       
   501 	__SUBCONTROLLER( "CMccUlDlClient::GetCodecDefaultsL" )
       
   502 	}
       
   503 
       
   504 // -----------------------------------------------------------------------------
       
   505 // CMccUlDlClient::GetSessionId()
       
   506 // returns the session id
       
   507 // -----------------------------------------------------------------------------
       
   508 //
       
   509 EXPORT_C TUint32 CMccUlDlClient::GetSessionId()
       
   510     {
       
   511 	__SUBCONTROLLER_INT1( "CMccUlDlClient::GetSessionId, id ", iSessionId )
       
   512     return iSessionId;
       
   513     }
       
   514 
       
   515 // -----------------------------------------------------------------------------
       
   516 // CMccUlDlClient::SendMediaSignalL
       
   517 // Send media signal to given stream
       
   518 // -----------------------------------------------------------------------------
       
   519 //
       
   520 EXPORT_C void CMccUlDlClient::SendMediaSignalL( const TMccEvent& aEvent )
       
   521     {
       
   522 	__SUBCONTROLLER( "CMccUlDlClient::SendMediaSignalL" )
       
   523     }
       
   524 
       
   525 // -----------------------------------------------------------------------------
       
   526 // CMccUlDlClient::SetCodecInformationL
       
   527 // Set the codec information for the stream
       
   528 // -----------------------------------------------------------------------------
       
   529 //
       
   530 EXPORT_C void CMccUlDlClient::SetCodecInformationL( const TUint32 aLinkId, 
       
   531                                                     const TUint32 aStreamId,
       
   532                                                     const TMccCodecInfo& aCodecInfo,
       
   533                                                     const TDesC8& aFmtp )
       
   534     {
       
   535 	__SUBCONTROLLER( "CMccUlDlClient::SetCodecInformationL" )
       
   536     }
       
   537  
       
   538 // -----------------------------------------------------------------------------
       
   539 // CMccUlDlClient::GetSupportedBitratesL
       
   540 // Get the supported bitrates from the codec of the specified stream
       
   541 // -----------------------------------------------------------------------------
       
   542 //
       
   543 EXPORT_C void CMccUlDlClient::GetSupportedBitratesL( const TUint32 aLinkId, 
       
   544                                   const TUint32 /*aStreamId*/,
       
   545                                   RArray<TUint>& aBitrates )
       
   546     {
       
   547 	__SUBCONTROLLER( "CMccUlDlClient::GetSupportedBitratesL" )
       
   548 	User::LeaveIfError(aBitrates.Append(1000));
       
   549     }
       
   550 
       
   551 // -----------------------------------------------------------------------------
       
   552 // CMccUlDlClient::GetSSRCL
       
   553 // Get syncronization source for the specified stream
       
   554 // -----------------------------------------------------------------------------
       
   555 //
       
   556 EXPORT_C void CMccUlDlClient::GetSSRCL( const TUint32 aLinkId, 
       
   557                        					const TUint32 aStreamId, 
       
   558                         				TUint32&      aSSRCValue)
       
   559 	{
       
   560 	__SUBCONTROLLER( "CMccUlDlClient::GetSSRCL" )
       
   561 	aSSRCValue = 1;
       
   562 	}
       
   563 
       
   564 // -----------------------------------------------------------------------------
       
   565 // CMccUlDlClient::SendRTCPReceiverReportL
       
   566 // Sends a RTCP receiver report
       
   567 // -----------------------------------------------------------------------------
       
   568 // 
       
   569 EXPORT_C void CMccUlDlClient::SendRTCPReceiverReportL( const TUint32 aLinkId, 
       
   570                                                        const TUint32 aStreamId )
       
   571     {
       
   572 	__SUBCONTROLLER( "CMccUlDlClient::SendRTCPReceiverReportL" )
       
   573     }
       
   574 
       
   575 // -----------------------------------------------------------------------------
       
   576 // CMccUlDlClient::SendRTCPSenderReportL
       
   577 // Sends a RTCP sender report
       
   578 // -----------------------------------------------------------------------------
       
   579 //
       
   580 EXPORT_C void CMccUlDlClient::SendRTCPSenderReportL( const TUint32 aLinkId,
       
   581                                                      const TUint32 aStreamId )
       
   582     {
       
   583 	__SUBCONTROLLER( "CMccUlDlClient::SendRTCPSenderReportL" )
       
   584     }
       
   585 
       
   586 // -----------------------------------------------------------------------------
       
   587 // CMccUlDlClient::SendRTCPSenderReportL
       
   588 // Sends a RTCP sender report
       
   589 // -----------------------------------------------------------------------------
       
   590 //
       
   591 EXPORT_C void CMccUlDlClient::SendRTCPDataL( const TUint32 aLinkId,
       
   592                                              const TUint32 aStreamId,
       
   593                                              const TDesC8& aData )
       
   594     {
       
   595 	__SUBCONTROLLER( "CMccUlDlClient::SendRTCPDataL" )
       
   596     }
       
   597 
       
   598 // -----------------------------------------------------------------------------
       
   599 // CMccUlDlClient::StartInactivityTimer
       
   600 // Starts inactivity timer for a stream in a given link.
       
   601 // -----------------------------------------------------------------------------
       
   602 //
       
   603 EXPORT_C void CMccUlDlClient::StartInactivityTimerL( const TUint32 aLinkId, 
       
   604                                                      const TUint32 aStreamId,
       
   605                                                      TUint32 aTimeoutTime )
       
   606     {
       
   607 	__SUBCONTROLLER( "CMccUlDlClient::StartInactivityTimerL" )
       
   608     }                                           
       
   609 
       
   610 // -----------------------------------------------------------------------------
       
   611 // CMccUlDlClient::StopInactivityTimer
       
   612 // Stops inactivity timer for a stream in a given link.
       
   613 // -----------------------------------------------------------------------------
       
   614 //
       
   615 EXPORT_C void CMccUlDlClient::StopInactivityTimerL( const TUint32 aLinkId,
       
   616                                                     const TUint32 aStreamId )
       
   617     {
       
   618 	__SUBCONTROLLER( "CMccUlDlClient::StopInactivityTimerL" )
       
   619     }
       
   620 
       
   621 // -----------------------------------------------------------------------------
       
   622 // CMccUlDlClient::SetAudioRouteL
       
   623 // -----------------------------------------------------------------------------
       
   624 //    
       
   625 EXPORT_C void CMccUlDlClient::SetAudioRouteL( 
       
   626     TUint32 aLinkId, 
       
   627     TUint32 aStreamId,
       
   628     TUint32 aRoutingDestination )
       
   629     {
       
   630     __SUBCONTROLLER( "CMccUlDlClient::SetAudioRouteL" )
       
   631     }
       
   632 
       
   633 // -----------------------------------------------------------------------------
       
   634 // CMccUlDlClient::GetAudioRouteL
       
   635 // -----------------------------------------------------------------------------
       
   636 //
       
   637 EXPORT_C void CMccUlDlClient::GetAudioRouteL( 
       
   638     TUint32 aLinkId, 
       
   639     TUint32 aStreamId,
       
   640     TUint32& aRoutingDestination )
       
   641     {
       
   642     __SUBCONTROLLER( "CMccUlDlClient::SetAudioRouteL" )
       
   643     }
       
   644       
       
   645 // -----------------------------------------------------------------------------
       
   646 // CMccUlDlClient::GenerateStreamId
       
   647 // Generates a new stream identifier
       
   648 // -----------------------------------------------------------------------------
       
   649 //
       
   650 EXPORT_C TUint32 CMccUlDlClient::GenerateStreamId()
       
   651     {
       
   652 	__SUBCONTROLLER( "CMccUlDlClient::GenerateStreamId" )
       
   653     TUint32 streamId = ++iErrorCode;
       
   654     return streamId;
       
   655     }   
       
   656 
       
   657 // -----------------------------------------------------------------------------
       
   658 // CMccUlDlClient::UnuseL
       
   659 // Ususes stream
       
   660 // -----------------------------------------------------------------------------
       
   661 //   
       
   662 EXPORT_C void CMccUlDlClient::UnuseL( 
       
   663     const TUint32 aLinkId,
       
   664     const TUint32 aStreamId )
       
   665     {
       
   666     __SUBCONTROLLER( "CMccUlDlClient::UnuseL" )
       
   667     }
       
   668     
       
   669 
       
   670 // -----------------------------------------------------------------------------
       
   671 // CMccUlDlClient::GetLocalIpAddressesL()
       
   672 // -----------------------------------------------------------------------------
       
   673 //     
       
   674 EXPORT_C void CMccUlDlClient::GetLocalIpAddressesL( TMccCreateLink& /*aClientData*/ )
       
   675     {
       
   676     }
       
   677     
       
   678 // -----------------------------------------------------------------------------
       
   679 // CMccUlDlClient::SendMccEventToClient
       
   680 // -----------------------------------------------------------------------------
       
   681 //
       
   682 TInt CMccUlDlClient::SendMccEventToClient( TMccEvent& aEvent )
       
   683     {
       
   684 	__SUBCONTROLLER( "CMccUlDlClient::SendMccEventToClient" )
       
   685 	return KErrNone;
       
   686     }
       
   687 
       
   688 // -----------------------------------------------------------------------------
       
   689 // CMccUlDlClient::StateChange
       
   690 // -----------------------------------------------------------------------------
       
   691 //
       
   692 void CMccUlDlClient::StateChange( TInt aState, TUint32 aLinkId )
       
   693 	{	
       
   694 	__SUBCONTROLLER( "CMccUlDlClient::StateChange" )	
       
   695 	}
       
   696 	
       
   697 // -----------------------------------------------------------------------------
       
   698 // CMccUlDlClient::ErrorOccured
       
   699 // -----------------------------------------------------------------------------
       
   700 //
       
   701 void CMccUlDlClient::ErrorOccured( 
       
   702     TInt aError, 
       
   703     TUint32 /*aSessionId*/, 
       
   704     TUint32 aLinkId,
       
   705 	TUint32 aStreamId, 
       
   706 	TUint32 aEndpointId )
       
   707 	{	
       
   708 	__SUBCONTROLLER( "CMccUlDlClient::ErrorOccured" )
       
   709 	}
       
   710                                           
       
   711 // -----------------------------------------------------------------------------
       
   712 // CMccUlDlClient::FindLinkL
       
   713 // finds correct link to handle
       
   714 // -----------------------------------------------------------------------------
       
   715 //
       
   716 TInt CMccUlDlClient::FindLinkL( const TUint32 aLinkId )
       
   717     {
       
   718 	__SUBCONTROLLER_INT1( "CMccUlDlClient::FindLinkL, linkid", aLinkId )
       
   719 
       
   720     return KErrNone;
       
   721     }
       
   722 
       
   723 // -----------------------------------------------------------------------------
       
   724 // CMccUlDlClient::StoreDlStream()
       
   725 // stores the pointer to ul/dl stream
       
   726 // -----------------------------------------------------------------------------
       
   727 //
       
   728 TInt CMccUlDlClient::StoreLink( CMccSubThreadClientBase* aClient )
       
   729     {
       
   730 	__SUBCONTROLLER( "CMccUlDlClient::StoreLink" )
       
   731     return KErrNone;
       
   732     }
       
   733 
       
   734 // -----------------------------------------------------------------------------
       
   735 // CMccUlDlClient::BindContextIntoStreamL()
       
   736 // -----------------------------------------------------------------------------
       
   737 //        
       
   738 EXPORT_C void CMccUlDlClient::BindContextIntoStreamL( TUint32 aLinkId,
       
   739                                                       TUint32 aStreamId,
       
   740                                                       TUint32 aEndpointId,
       
   741                                                       const TMccCryptoContext& aCryptoContext )
       
   742     {
       
   743     __SUBCONTROLLER( "CMccUlDlClient::BindContextIntoStreamL, IN ")
       
   744     }
       
   745 
       
   746 // -----------------------------------------------------------------------------
       
   747 // CMccUlDlClient::RemoveContextL()
       
   748 // -----------------------------------------------------------------------------
       
   749 //        
       
   750 EXPORT_C void CMccUlDlClient::RemoveContextL( TUint32 aLinkId,
       
   751                                               TUint32 aStreamId,
       
   752                                               TUint32 aEndpointId )
       
   753     {
       
   754     __SUBCONTROLLER( "CMccUlDlClient::RemoveContextL, IN ")
       
   755 
       
   756     }
       
   757 
       
   758 // -----------------------------------------------------------------------------
       
   759 // CMccUlDlClient::SetParameterL()
       
   760 // -----------------------------------------------------------------------------
       
   761 //        
       
   762 EXPORT_C void CMccUlDlClient::SetParameterL( TUint32 /*aParam*/,
       
   763                                      TUint32 /*aLinkId*/,
       
   764                                      TUint32 /*aStreamId*/,
       
   765                                      TUint32 /*aEndpointId*/,
       
   766                                      const TDesC8& /*aVal*/ )
       
   767     {
       
   768     }
       
   769          
       
   770 // -----------------------------------------------------------------------------
       
   771 // CMccUlDlClient::GetParameterL()
       
   772 // -----------------------------------------------------------------------------
       
   773 //        
       
   774 EXPORT_C void CMccUlDlClient::GetParameterL( TUint32 /*aParam*/,
       
   775                                      TUint32 /*aLinkId*/,
       
   776                                      TUint32 /*aStreamId*/,
       
   777                                      TUint32 /*aEndpointId*/,
       
   778                                      TDesC8& /*aVal*/ )
       
   779     {
       
   780     }
       
   781        
       
   782 // ========================== OTHER EXPORTED FUNCTIONS =========================
       
   783 
       
   784 //  End of File