telephonyserverplugins/ctsydispatchlayer/src/cctsydispatchercallback.cpp
changeset 0 3553901f7fa8
child 24 6638e7f4bd8f
child 42 3adadc800673
equal deleted inserted replaced
-1:000000000000 0:3553901f7fa8
       
     1 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #include <etelsat.h>
       
    17 #include <in_sock.h>
       
    18 #include "ccallcontroldispatcher.h"
       
    19 #include "ccallcontrolmultipartydispatcher.h"
       
    20 #include "ccellbroadcastdispatcher.h"
       
    21 #include <ctsy/ltsy/cctsydispatchercallback.h>
       
    22 #include "cpacketservicesdispatcher.h"
       
    23 #include "cphonedispatcher.h"
       
    24 #include "cphonebookdispatcher.h"
       
    25 #include "cphonebookendispatcher.h"
       
    26 #include "cphonebookondispatcher.h"
       
    27 #include "csatdispatcher.h"
       
    28 #include "csecuritydispatcher.h"
       
    29 #include "csimdispatcher.h"
       
    30 #include "csmsdispatcher.h"
       
    31 #include "csupplementaryservicesdispatcher.h"
       
    32 #include "ctsydispatcherpanic.h"
       
    33 #include <ctsy/ltsy/ltsylogger.h>
       
    34 #include "tdispatcherholder.h"
       
    35 
       
    36 CCtsyDispatcherCallback::CCtsyDispatcherCallback()
       
    37 	{
       
    38 	}
       
    39 
       
    40 CCtsyDispatcherCallback::~CCtsyDispatcherCallback()
       
    41 	{
       
    42 	}
       
    43 
       
    44 CCtsyDispatcherCallback* CCtsyDispatcherCallback::NewLC()
       
    45 	{
       
    46 	CCtsyDispatcherCallback* self = new (ELeave) CCtsyDispatcherCallback();
       
    47 	CleanupStack::PushL(self);
       
    48 	self->ConstructL();
       
    49 	return self;
       
    50 	}
       
    51 
       
    52 CCtsyDispatcherCallback* CCtsyDispatcherCallback::NewL()
       
    53 	{
       
    54 	CCtsyDispatcherCallback* self=CCtsyDispatcherCallback::NewLC();
       
    55 	CleanupStack::Pop(self);
       
    56 	return self;
       
    57 	}
       
    58 
       
    59 void CCtsyDispatcherCallback::ConstructL()
       
    60 	{
       
    61 	}
       
    62 
       
    63 void CCtsyDispatcherCallback::SetDispatcherHolder(TDispatcherHolder& aDispatcherHolder)
       
    64 /**
       
    65  * Set the dispatcher holder.
       
    66  *
       
    67  * @param aDispatcherHolder Reference to dispatcher holder.
       
    68  */
       
    69 	{
       
    70 	TSYLOGENTRYEXIT;
       
    71 
       
    72 	iDispatcherHolder = &aDispatcherHolder;
       
    73 	} // CCtsyDispatcherCallback::SetDispatcherHolder
       
    74 
       
    75 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd(
       
    76 	TInt aCauseCode, TInt aCallId, RMobileCall::TMobileCallStatus aMobileCallStatus)
       
    77 /**
       
    78  * Used by an LTSY to indicate to the CTSY that there has been a change in the
       
    79  * status of a call. For example, if the CTSY has previously made a dial request
       
    80  * to make a voice call, the LTSY can call this API to notify the CTSY
       
    81  * of progress of the call through the dialling, connecting and connected states.
       
    82  *
       
    83  * The aCauseCode parameter should be used to indicate the reason for the change
       
    84  * in status of a call.
       
    85  *
       
    86  * In the case of a call going idle (aMobileCallStatus = RMobileCall::EStatusIdle)
       
    87  * specific cause codes need to be returned to the Common TSY to indicate
       
    88  * specific causes of status changes:
       
    89  *
       
    90  *  - To indicate that an active call has been released normally by either party,
       
    91  *  set aCauseCode = KErrGsmCCNormalCallClearing.
       
    92  *
       
    93  *  - To indicate that a mobile originated call that is being dialled has gone
       
    94  * idle because the remote party has rejected the call, set
       
    95  * aCauseCode = KErrGsmCCCallRejected or another error code (which is != KErrNone)
       
    96  * to indicate the reason for rejection.
       
    97  *
       
    98  * - If a mobile originated call is being dialled and the user cancels dialling,
       
    99  * causing the call to go idle, set aCauseCode = KErrGsmCCNormalCallClearing.
       
   100  *
       
   101  * - When an incoming call goes idle because the client has rejected it
       
   102  * (done using RCall::HangUp() on the ringing call), set
       
   103  * aCauseCode = KErrGsmCCUserBusy.
       
   104  *
       
   105  * @param aCauseCode The cause of the change in call status.
       
   106  *
       
   107  * @param aCallId The Call ID of the call whose status has changed.
       
   108  *
       
   109  * @param aMobileCallStatus The new status of the call refered to by aCallId.
       
   110  *
       
   111  * @see RMobileCall::NotifyMobileCallStatusChange()
       
   112  */
       
   113 	{
       
   114 	TSYLOGENTRYEXITARGS(_L8("aCauseCode=%d, aCallId=%d, aMobileCallStatus=%d"), aCauseCode, aCallId, aMobileCallStatus);
       
   115 
       
   116 	// Forward completion to correct dispatcher object to handle
       
   117 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   118 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyCallStatusChange(aCauseCode, aCallId, aMobileCallStatus);
       
   119 
       
   120 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd
       
   121 
       
   122 
       
   123 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlReceiveUuiInd(
       
   124 	TInt aError, TInt aCallId, const TDesC& aCallUui)
       
   125 /**
       
   126  * Indicates to the CTSY that the LTSY has received a User-to-User
       
   127  * Information notification. The User-to-User Supplementary Service
       
   128  * is detailed in 3GPP TS 24.087.
       
   129  *
       
   130  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   131  * @param aCallId The Call ID of the call to which the information is being sent.
       
   132  * @param aCallUui The User-to-User Information that has been received.
       
   133  * This should be a descriptor of length RMobileCall::KMaxUUISize
       
   134  *
       
   135  * @see RMobileCall:ReceiveUUI()
       
   136  */
       
   137 	{
       
   138 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   139 
       
   140 	// Forward completion to correct dispatcher object to handle
       
   141 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   142 	iDispatcherHolder->GetCallControlDispatcher().CallbackReceiveUui(aError, aCallId, aCallUui);
       
   143 
       
   144 	} // CCtsyDispatcherCallback::CallbackCallControlReceiveUuiInd
       
   145 
       
   146 
       
   147 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyDataCallCapsChangeInd(
       
   148 	TInt aError, TInt aCallId, const RMobileCall::TMobileCallDataCapsV1& aMobileCallDataCaps)
       
   149 /**
       
   150  * Sends a notification to the Common TSY about a change in the data call
       
   151  * capabilities.
       
   152  *
       
   153  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   154  *
       
   155  * @param aCallId The Call ID of the call whose capabilities have changed.
       
   156  *
       
   157  * @param aMobileCallDataCaps The new capabilities of the data call.
       
   158  *
       
   159  * @see RMobileCall::NotifyMobileDataCallCapsChange()
       
   160  */
       
   161 	{
       
   162 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   163 
       
   164 	// Forward completion to correct dispatcher object to handle
       
   165 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   166 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyDataCallCapsChange(aError, aCallId, aMobileCallDataCaps);
       
   167 
       
   168 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyDataCallCapsChangeInd
       
   169 
       
   170 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyIncomingCallInd(
       
   171 	TInt aError, const RMobileCall::TMobileCallInfoV1& aCallInfo)
       
   172 /**
       
   173  * Notify the Common TSY about an incoming call to the phone.
       
   174  *
       
   175  * The aCallInfo parameter is used to provide the Common TSY with details about
       
   176  * the incoming call.
       
   177  *
       
   178  * The field RMobileCall::TMobileCallInfoV1::iCallId is mandatory and should be
       
   179  * populated with a unique Call ID allocated by the LTSY. For more details about
       
   180  * how to set a valid Call ID, see the documentation on the aCallId parameter
       
   181  * in CCtsyDispatcherCallback::CallbackCallControlDialVoiceComp().
       
   182  *
       
   183  * The field RMobileCall::TMobileCallInfoV1::iService in the aCallInfo parameter
       
   184  * is mandatory
       
   185  * must be populated by the LTSY to indicate to the Common TSY the type of the
       
   186  * incoming call.
       
   187  *
       
   188  * 	- If there is an incoming voice call on the primary voice line,
       
   189  * this field should be set to RMobilePhone::EVoiceService.
       
   190  *
       
   191  *  - If the incoming voice call is on the auxiliary
       
   192  * voice line, this parameter should be set to RMobilePhone::EAuxVoiceService.
       
   193  *
       
   194  *  - If the incoming call is a data call, this parameter should be set to
       
   195  * RMobilePhone::ECircuitDataService.
       
   196  *
       
   197  * The remainder of the fields in the aCallInfo parameter can be used to
       
   198  * indicate other details about the incoming call. See the documentation for
       
   199  * RMobileCall::TMobileCallInfoV1 for more details.
       
   200  *
       
   201  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   202  * @param aCallInfo Information about the incoming call.
       
   203  *
       
   204  * @see RLine::NotifyIncomingCall()
       
   205  */
       
   206 	{
       
   207 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallInfo.iService=%d, aCallInfo.iCallId=%d"), aError, aCallInfo.iService, aCallInfo.iCallId);
       
   208 
       
   209 	// Forward completion to correct dispatcher object to handle
       
   210 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   211 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyIncomingCall(aError, aCallInfo);
       
   212 
       
   213 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyIncomingCallInd
       
   214 
       
   215 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyHscsdInfoChangeInd(
       
   216 	TInt aError, TInt aCallId, const RMobileCall::TMobileCallHscsdInfoV8& aCallParams,
       
   217 	const RMobileCall::TMobileCallDataCapsV1& aCallCaps)
       
   218 /**
       
   219  * Notify the Common TSY about a change in the parameters of other information
       
   220  * about the specified HSCSD call.
       
   221  *
       
   222  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   223  *
       
   224  * @param aCallId The Call ID of the data call whose parameters / information has changed.
       
   225  *
       
   226  * @param aCallParams The new call parameters.  The fields of this
       
   227  * RMobileCall::TMobileCallHscsdInfoV8 parameter are returned to the client if
       
   228  * the client has requested to be notified of a change in the HSCSD information
       
   229  * of the call via RMobileCall::NotifyHscsdInfoChange()
       
   230  *
       
   231  * @param aCallCaps The new call capabilities.  The fields of this
       
   232  * RMobileCall::TMobileCallDataCapsV1 parameter are returned to the client if
       
   233  * the client has requested to be notified of a change in the HSCSD capabilities
       
   234  * of the call via RMobileCall::NotifyMobileDataCallCapsChange() if any of the
       
   235  * following fields have changed their value:
       
   236  * RMobileCall::TMobileCallDataCapsV1::iMaxRxTimeSlots ,
       
   237  * RMobileCall::TMobileCallDataCapsV1::iMaxTxTimeSlots ,
       
   238  * RMobileCall::TMobileCallDataCapsV1::iHscsdSupport ,
       
   239  * RMobileCall::TMobileCallDataCapsV1::iSpeedCaps ,
       
   240  *
       
   241  * @see RMobileCall::NotifyMobileDataCallCapsChange()
       
   242  * @see RMobileCall::NotifyHscsdInfoChange()
       
   243  */
       
   244 	{
       
   245 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   246 
       
   247 	// Forward completion to correct dispatcher object to handle
       
   248 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   249 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyHscsdInfoChange(aError,
       
   250 			aCallId, aCallParams, aCallCaps);
       
   251 
       
   252 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyHscsdInfoChangeInd
       
   253 
       
   254 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyCallEventInd(
       
   255 	TInt aError, TInt aCallId, RMobileCall::TMobileCallEvent aCallEvent)
       
   256 /**
       
   257  * Notify the Common TSY about a remote call event that has occurred, for example,
       
   258  * the remote party has put the call on hold.
       
   259  *
       
   260  * @param aError The error code associated with this notification.
       
   261  * KErrNone if there is no error.
       
   262  *
       
   263  * @param aCallId The Call ID of the call that this call event relates to.
       
   264  *
       
   265  * @param aCallEvent The event that has occurred to the call specified in aCallId.
       
   266  * Current valid values supported by the Common TSY are RMobileCall::ERemoteHold,
       
   267  * RMobileCall::ERemoteResume, RMobileCall::ERemoteTerminated and
       
   268  * RMobileCall::ERemoteConferenceCreate
       
   269  *
       
   270  * @see RMobileCall::NotifyCallEvent()
       
   271  */
       
   272 	{
       
   273 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d, aCallEvent=%d"), aError, aCallId, aCallEvent);
       
   274 
       
   275 	// Forward completion to correct dispatcher object to handle
       
   276 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   277 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyCallEvent(aError, aCallId, aCallEvent);
       
   278 
       
   279 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyCallEventInd
       
   280 
       
   281 
       
   282 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyCallInfoChangeInd(
       
   283 	TInt aError, const RMobileCall::TMobileCallInfoV1& aMobileCallInfo)
       
   284 /**
       
   285  * This function should be used by the LTSY to supply information about a call
       
   286  * to the Common TSY.  For example, details about the remote party and whether
       
   287  * the call has been forwarded. See RMobileCall::TMobileCallInfoV1 for more
       
   288  * details on what information about the call can be returned to the CTSY.
       
   289  *
       
   290  * In aMobileCallInfo, RMobileCall::TMobileCallInfoV1::iCallId must be populated
       
   291  * with the Call ID of the call the aMobileCallInfo parameter is referring to.
       
   292  *
       
   293  * @param aError The error code associated with this notification.
       
   294  * KErrNone if there is no error.
       
   295  *
       
   296  * @param aMobileCallInfo The call information relating to the call identified
       
   297  * by aCallId.
       
   298  *
       
   299  * @see RMobileCall::GetMobileCallInfo()
       
   300  * @see RMobileCall::NotifyRemotePartyInfoChange()
       
   301  */
       
   302 	{
       
   303 	TSYLOGENTRYEXITARGS(_L8("aError=%d, callId=%d, callMode=%d"), aError, aMobileCallInfo.iCallId, aMobileCallInfo.iService);
       
   304 
       
   305 	// Forward completion to correct dispatcher object to handle
       
   306 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   307 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyCallInfoChange(aError, aMobileCallInfo);
       
   308 
       
   309 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyCallInfoChangeInd
       
   310 
       
   311 
       
   312 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlRemoteAlertingToneChangeInd(
       
   313 	TInt aError, RMmCustomAPI::TRemoteAlertingToneStatus aRemoteAlertingTone)
       
   314 /**
       
   315  * This function should be used by the LTSY to indicate to the CTSY that the remote alerting tone had
       
   316  * been set or changed.
       
   317  *
       
   318  * @param aError The error code associated with this notification.
       
   319  * KErrNone if there is no error.
       
   320  *
       
   321  * @param aRemoteAlertingTone The new remote alerting status (either RMmCustomAPI::EUiRbtTone
       
   322  *                            when it is a ringback tone or RMmCustomAPI::EUiStopTone when it's a stop tone)
       
   323  *
       
   324  * @see RMmCustomAPI::GetRemoteAlertingToneStatus()
       
   325  * @see RMmCustomAPI::NotifyRemoteAlertingToneStatusChange()
       
   326  */
       
   327 	{
       
   328 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRemoteAlertingTone=%d"), aError, aRemoteAlertingTone);
       
   329 
       
   330 	// Forward completion to correct dispatcher object to handle
       
   331 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   332 	iDispatcherHolder->GetCallControlDispatcher().CallbackRemoteAlertingToneChange(aError, aRemoteAlertingTone);
       
   333 
       
   334 	} // CCtsyDispatcherCallback::CallbackCallControlRemoteAlertingToneChangeInd
       
   335 
       
   336 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlAnswerComp(TInt aError, TInt aCallId)
       
   337 /**
       
   338  * Callback function to be used by the Licensee LTSY to complete a pending
       
   339  * MLtsyDispatchCallControlAnswer::HandleAnswerReqL()
       
   340  *
       
   341  * Used to indicate to the Common TSY the outcome of the request to answer an
       
   342  * incoming call.
       
   343  *
       
   344  * @param aError The error code to be returned to the CTSY by the LTSY
       
   345  * indicating the outcome of the attempt to answer the requested call.  This should
       
   346  * be KErrNone if the dialling process could be started successfully.  Otherwise
       
   347  * another error code to indicate the failure should be returned.
       
   348  *
       
   349  * @param aCallId The Call ID which could not be answered.
       
   350  *
       
   351  * @see RCall::AnswerIncomingCall()
       
   352  * @see RCall::AnswerIncomingCallISV()
       
   353  * @see CTelephony::AnswerIncomingCall()
       
   354  */
       
   355 	{
       
   356 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   357 
       
   358 	// Forward completion to correct dispatcher object to handle
       
   359 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   360 	iDispatcherHolder->GetCallControlDispatcher().CallbackAnswer(aError, aCallId);
       
   361 
       
   362 	} // CCtsyDispatcherCallback::CallbackCallControlAnswerComp
       
   363 
       
   364 
       
   365 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlHoldComp(
       
   366 	TInt aError, TInt aCallId)
       
   367 /**
       
   368  *
       
   369  * Callback function to be used by the Licensee LTSY to complete a pending
       
   370  * MLtsyDispatchCallControlHold::HandleHoldReqL()
       
   371  *
       
   372  * The result of the hold request on the call specified in aCallId is passed back
       
   373  * to the Common TSY.
       
   374  *
       
   375  * @param aError The error code to be returned to the CTSY by the LTSY
       
   376  * indicating the outcome of the attempt to hold the requested call.  This should
       
   377  * be KErrNone if the hold process could be started successfully.  Otherwise
       
   378  * another error code to indicate the failure should be returned.
       
   379  *
       
   380  * @param aCallId The Call ID of the call which was requested to be held.
       
   381  *
       
   382  * @see RMobileCall::Hold()
       
   383  */
       
   384 	{
       
   385 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   386 
       
   387 	// Forward completion to correct dispatcher object to handle
       
   388 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   389 	iDispatcherHolder->GetCallControlDispatcher().CallbackHold(aError, aCallId);
       
   390 
       
   391 	} // CCtsyDispatcherCallback::CallbackCallControlHoldComp
       
   392 
       
   393 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlDialEmergencyComp(
       
   394 	TInt aError, TInt aCallId)
       
   395 /**
       
   396  *
       
   397  * Callback function to be used by the Licensee LTSY to complete a pending
       
   398  * MLtsyDispatchCallControlDialEmergency::HandleDialEmergencyReqL()
       
   399  *
       
   400  * This callback is used to inform the CTSY of the outcome of the request to
       
   401  * initiate the dialling process to dial an emergency call.
       
   402  *
       
   403  * This callback is similar to CCtsyDispatcherCallback::CallbackCallControlDialVoiceComp()
       
   404  * but refers specifically to the dialling of an emergency call.
       
   405  *
       
   406  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   407  * @param aCallId The call ID of the call that the dial attempt refers to which
       
   408  * has been allocated by the LTSY. The call ID needs to be unique across all
       
   409  * calls and modes(emergency and non-emergency included). See the documentation for
       
   410  * CCtsyDispatcherCallback::CallbackCallControlDialVoiceComp for precise details
       
   411  * on how to allocate a valid call ID.
       
   412  *
       
   413  * @see RMobileCall::DialEmergencyCall()
       
   414  */
       
   415 	{
       
   416 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   417 
       
   418 	// Forward completion to correct dispatcher object to handle
       
   419 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   420 	iDispatcherHolder->GetCallControlDispatcher().CallbackDialEmergency(aError, aCallId);
       
   421 
       
   422 	} // CCtsyDispatcherCallback::CallbackCallControlDialEmergencyComp
       
   423 
       
   424 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlStopDtmfToneComp(TInt aError)
       
   425 /**
       
   426  *
       
   427  * Callback function to be used by the Licensee LTSY to complete a pending
       
   428  * MLtsyDispatchCallControlStopDtmfTone::HandleStopDtmfToneReqL()
       
   429  *
       
   430  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   431  *
       
   432  * @see RMobilePhone::StopDTMFTone()
       
   433  */
       
   434 	{
       
   435 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   436 
       
   437 	// Forward completion to correct dispatcher object to handle
       
   438 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   439 	iDispatcherHolder->GetCallControlDispatcher().CallbackStopDtmfTone(aError);
       
   440 
       
   441 	} // CCtsyDispatcherCallback::CallbackCallControlStopDtmfToneComp
       
   442 
       
   443 
       
   444 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlSetActiveAlsLineComp(TInt aError)
       
   445 /**
       
   446  *
       
   447  * Callback function to be used by the Licensee LTSY to complete a pending
       
   448  * MLtsyDispatchCallControlSetActiveAlsLine::HandleSetActiveAlsLineReqL()
       
   449  *
       
   450  * This callback indicates the outcome of the request to set the active ALS line.
       
   451  *
       
   452  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   453  *
       
   454  * @see RMobilePhone::SetALSLine()
       
   455  */
       
   456 	{
       
   457 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   458 
       
   459 	// Forward completion to correct dispatcher object to handle
       
   460 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   461 	iDispatcherHolder->GetCallControlDispatcher().CallbackSetActiveAlsLine(aError);
       
   462 
       
   463 	} // CCtsyDispatcherCallback::CallbackCallControlSetActiveAlsLineComp
       
   464 
       
   465 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlSendDtmfTonesCancelComp(TInt aError)
       
   466 /**
       
   467  *
       
   468  * Callback function to be used by the Licensee LTSY to complete a pending
       
   469  * MLtsyDispatchCallControlSendDtmfTonesCancel::HandleSendDtmfTonesCancelReqL()
       
   470  *
       
   471  *
       
   472  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   473  *
       
   474  * @see RMobilePhone::SendDTMFTones()
       
   475  */
       
   476 	{
       
   477 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   478 
       
   479 	// Forward completion to correct dispatcher object to handle
       
   480 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   481 	iDispatcherHolder->GetCallControlDispatcher().CallbackSendDtmfTonesCancel(aError);
       
   482 
       
   483 	} // CCtsyDispatcherCallback::CallbackCallControlSendDtmfTonesCancelComp
       
   484 
       
   485 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlHangUpComp(
       
   486 	TInt aError, TInt aCallId)
       
   487 /**
       
   488  *
       
   489  * Callback function to be used by the Licensee LTSY to complete a pending
       
   490  * MLtsyDispatchCallControlHangUp::HandleHangUpReqL()
       
   491  *
       
   492  * @param aError The error code to return to the CTSY relating to the request to
       
   493  * hang up.  This should be KErrNone on success or another error code to indicate
       
   494  * the failure otherwise.
       
   495  *
       
   496  * @param aCallId The Call ID of the call which has just been hung up.
       
   497  *
       
   498  * @see RCall::HangUp()
       
   499  */
       
   500 	{
       
   501 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   502 
       
   503 	// Forward completion to correct dispatcher object to handle
       
   504 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   505 	iDispatcherHolder->GetCallControlDispatcher().CallbackHangUp(aError, aCallId);
       
   506 
       
   507 	} // CCtsyDispatcherCallback::CallbackCallControlHangUpComp
       
   508 
       
   509 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlResumeComp(
       
   510 	TInt aError, TInt aCallId)
       
   511 /**
       
   512  *
       
   513  * Callback function to be used by the Licensee LTSY to complete a pending
       
   514  * MLtsyDispatchCallControlResume::HandleResumeReqL()
       
   515  *
       
   516  * The result of the pending resume request on the call specified in aCallId is
       
   517  * passed back to the Common TSY.
       
   518  *
       
   519  * @param aError The error code to be returned to the CTSY by the LTSY
       
   520  * indicating the outcome of the attempt to resume the held call.  This should
       
   521  * be KErrNone if the resume process could be started successfully.  Otherwise
       
   522  * another error code to indicate the failure should be returned.
       
   523  *
       
   524  * @param aCallId The Call ID of the call which has been requested to be resumed.
       
   525  *
       
   526  * @see RMobileCall::Resume()
       
   527  */
       
   528 	{
       
   529 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   530 
       
   531 	// Forward completion to correct dispatcher object to handle
       
   532 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   533 	iDispatcherHolder->GetCallControlDispatcher().CallbackResume(aError, aCallId);
       
   534 
       
   535 	} // CCtsyDispatcherCallback::CallbackCallControlResumeComp
       
   536 
       
   537 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlSetDynamicHscsdParamsComp(
       
   538 	TInt aError, TInt aCallId)
       
   539 /**
       
   540  *
       
   541  * Callback function to be used by the Licensee LTSY to complete a pending
       
   542  * MLtsyDispatchCallControlSetDynamicHscsdParams::HandleSetDynamicHscsdParamsReqL()
       
   543  *
       
   544  * This callback indicates that the request to set the dynamic HSCSD parameters
       
   545  * has been made (successfully or unsuccessfully). To notify the CTSY of a change
       
   546  * in the HSCSD information of the call, see the API
       
   547  * CCtsyDispatcherCallback::CallbackCallControlNotifyHscsdInfoChangeInd()
       
   548  *
       
   549  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   550  *
       
   551  * @see RMobileCall::SetDynamicHscsdParams()
       
   552  */
       
   553 	{
       
   554 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   555 
       
   556 	// Forward completion to correct dispatcher object to handle
       
   557 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   558 	iDispatcherHolder->GetCallControlDispatcher().CallbackSetDynamicHscsdParams(aError, aCallId);
       
   559 
       
   560 	} // CCtsyDispatcherCallback::CallbackCallControlSetDynamicHscsdParamsComp
       
   561 
       
   562 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlDialVoiceComp(
       
   563 	TInt aError, TInt aCallId)
       
   564 /**
       
   565  * Callback function to be used by the Licensee LTSY to complete a pending
       
   566  * MLtsyDispatchCallControlDialVoice::HandleDialVoiceReqL()
       
   567  *
       
   568  * This callback is used to inform the CTSY of the outcome of the request to
       
   569  * initiate the dialling process. To indicate progress of the call as it becomes
       
   570  * connected, use
       
   571  * CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd().
       
   572  *
       
   573  * When a dial attempt is made via the above mentioned interface, the LTSY has the
       
   574  * responsibility of allocating a unique Call ID to the call.  For more
       
   575  * information, see the documentation on aCallId below.
       
   576  *
       
   577  * @param aError The error code to be returned to the CTSY by the LTSY
       
   578  * indicating the outcome of the attempt to dial the requested call.  This should
       
   579  * be KErrNone if the dialling process could be started successfully.  Otherwise
       
   580  * another error code to indicate the failure should be returned.
       
   581  *
       
   582  * @param aCallId The call ID of the call that the dial attempt refers to which
       
   583  * has been allocated by the LTSY.  This should be a number between 1 and
       
   584  * KMaxCallIdValue and should be unique across all call modes (voice, data etc.
       
   585  * including emergency calls). For example, if a request for a voice call is made
       
   586  * and the LTSY allocates
       
   587  * this call an ID of 1 and a request for a data call is requested, the LTSY
       
   588  * should allocate a Call ID which is not the same as that already allocated for
       
   589  * the first voice call.
       
   590  *
       
   591  * @see RCall::Dial()
       
   592  */
       
   593 	{
       
   594 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
   595 
       
   596 	// Forward completion to correct dispatcher object to handle
       
   597 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   598 	iDispatcherHolder->GetCallControlDispatcher().CallbackDialVoice(aError, aCallId);
       
   599 
       
   600 	} // CCtsyDispatcherCallback::CallbackCallControlDialVoiceComp
       
   601 
       
   602 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlTransferComp(TInt aError)
       
   603 /**
       
   604  *
       
   605  * Callback function to be used by the Licensee LTSY to complete a pending
       
   606  * MLtsyDispatchCallControlTransfer::HandleTransferReqL()
       
   607  *
       
   608  * Informs the CTSY of the outcome of initiating the transfer process.
       
   609  *
       
   610  * Successful completion of the transfer process is indicated by a change
       
   611  * in the call status of the calls which were transferred.
       
   612  *
       
   613  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   614  *
       
   615  * @see RMobileCall::Transfer()
       
   616  */
       
   617 	{
       
   618 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   619 
       
   620 	// Forward completion to correct dispatcher object to handle
       
   621 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   622 	iDispatcherHolder->GetCallControlDispatcher().CallbackTransfer(aError);
       
   623 
       
   624 	} // CCtsyDispatcherCallback::CallbackCallControlTransferComp
       
   625 
       
   626 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlSendDtmfTonesComp(
       
   627 		TInt aError)
       
   628 /**
       
   629  *
       
   630  * Callback function to be used by the Licensee LTSY to complete a pending
       
   631  * MLtsyDispatchCallControlSendDtmfTones::HandleSendDtmfTonesReqL()
       
   632  *
       
   633  * This callback indicates that the DTMF string has been sent.
       
   634  *
       
   635  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   636  *
       
   637  * @see RMobilePhone::SendDTMFTones()
       
   638  */
       
   639 	{
       
   640 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   641 
       
   642 	// Forward completion to correct dispatcher object to handle
       
   643 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   644 	iDispatcherHolder->GetCallControlDispatcher().CallbackSendDtmfTones(aError);
       
   645 
       
   646 	} // CCtsyDispatcherCallback::CallbackCallControlSendDtmfTonesComp
       
   647 
       
   648 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetIdentityServiceStatusComp(
       
   649 	TInt aError, RMobilePhone::TMobilePhoneIdServiceStatus aIdentityServiceStatus)
       
   650 /**
       
   651  *
       
   652  * Callback function to be used by the Licensee LTSY to complete a pending
       
   653  * MLtsyDispatchCallControlGetIdentityServiceStatus::HandleGetIdentityServiceStatusReqL()
       
   654  *
       
   655  *
       
   656  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   657  *
       
   658  * @param aIdentityServiceStatus The status of the service requested in
       
   659  * MLtsyDispatchCallControlGetIdentityServiceStatus::HandleGetIdentityServiceStatusReqL()
       
   660  *
       
   661  * @see RMobilePhone::GetIdentityServiceStatus()
       
   662  */
       
   663 	{
       
   664 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIdentityServiceStatus=%d"), aError, aIdentityServiceStatus);
       
   665 
       
   666 	// Forward completion to correct dispatcher object to handle
       
   667 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   668 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetIdentityServiceStatus(aError, aIdentityServiceStatus);
       
   669 
       
   670 	} // CCtsyDispatcherCallback::CallbackCallControlGetIdentityServiceStatusComp
       
   671 
       
   672 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlSwapComp(
       
   673 	TInt aError)
       
   674 /**
       
   675  *
       
   676  * Callback function to be used by the Licensee LTSY to complete a pending
       
   677  * MLtsyDispatchCallControlSwap::HandleSwapReqL()
       
   678  *
       
   679  *
       
   680  * @param aError The error code to be returned to the CTSY Dispatcher by the LTSY
       
   681  * indicating the outcome of the attempt to swap the requested calls.  This should
       
   682  * be KErrNone if the swap process could be started successfully.  Otherwise
       
   683  * another error code to indicate the failure should be returned.
       
   684  *
       
   685  * @see RMobileCall::Swap()
       
   686  */
       
   687 	{
       
   688 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   689 
       
   690 	// Forward completion to correct dispatcher object to handle
       
   691 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   692 	iDispatcherHolder->GetCallControlDispatcher().CallbackSwap(aError);
       
   693 
       
   694 	} // CCtsyDispatcherCallback::CallbackCallControlSwapComp
       
   695 
       
   696 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlStartDtmfToneComp(TInt aError)
       
   697 /**
       
   698  *
       
   699  * Callback function to be used by the Licensee LTSY to complete a pending
       
   700  * MLtsyDispatchCallControlStartDtmfTone::HandleStartDtmfToneReqL()
       
   701  *
       
   702  * @param aError The error code to be returned to the CTSY Dispatcher by the LTSY
       
   703  * indicating the outcome of the request to send the DTMF tone.
       
   704  *
       
   705  * @see RMobilePhone::StartDTMFTone()
       
   706  */
       
   707 	{
       
   708 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   709 
       
   710 	// Forward completion to correct dispatcher object to handle
       
   711 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   712 	iDispatcherHolder->GetCallControlDispatcher().CallbackStartDtmfTone(aError);
       
   713 
       
   714 	} // CCtsyDispatcherCallback::CallbackCallControlStartDtmfToneComp
       
   715 
       
   716 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlNotifyIccCallForwardingStatusChangeInd(
       
   717 	TInt aError, const RMobilePhone::TMobileAddress& aCallForwardingNo,
       
   718 	RMobilePhone::TCFUIndicatorStatusFlags aCallForwardingStatusFlags,
       
   719 	RMmCustomAPI::TMultipleSubscriberProfileID aMultipleSubscriberProfileId
       
   720 	)
       
   721 /**
       
   722  * Callback function to be used to indicate a change in ICC Call Forwarding.
       
   723  *
       
   724  * @param aError The error code to be returned to the CTSY Dispatcher.
       
   725  * @param aCallForwardingNo the number that is being forwarded.
       
   726  * @param aCallForwardingStatusFlags flags defined in RMobilePhone::TCFUIndicatorStatus.
       
   727  * @param aMultipleSubscriberProfileId in case of Multiple Subscriber (SIM) the Profile ID.
       
   728  * @see RMmCustomApi::NotifyIccCallForwardingStatusChange()
       
   729  */
       
   730 	{
       
   731 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aCFSFlags=%x,aMSPId=%d"), 
       
   732 			aError,aCallForwardingStatusFlags,static_cast<TUint32>(aMultipleSubscriberProfileId));
       
   733 
       
   734 	// Forward completion to correct dispatcher object to handle
       
   735 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   736 	iDispatcherHolder->GetCallControlDispatcher().CallbackNotifyIccCallForwardingStatusChange(aError, 
       
   737 			aCallForwardingNo, aCallForwardingStatusFlags, aMultipleSubscriberProfileId);
       
   738 
       
   739 	} // CCtsyDispatcherCallback::CallbackCallControlNotifyIccCallForwardingStatusChangeInd
       
   740 
       
   741 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetFdnStatusComp(
       
   742 		TInt aError,
       
   743 		RMobilePhone::TMobilePhoneFdnStatus aFdnStatus)
       
   744 /**
       
   745  * Callback function to be used by the Licensee LTSY to complete a pending
       
   746  * MLtsyDispatchPhoneGetFdnStatus::HandleGetFdnStatusReqL()
       
   747  * back to the CTSY Dispatcher.
       
   748  *
       
   749  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   750  * @param aFdnStatus The FDN status to be returned to the CTSY Dispatcher.
       
   751  *
       
   752  * @see RMobilePhone::GetFdnStatus()
       
   753  */
       
   754 	{
       
   755 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aFdnStatus=%d"), aError, aFdnStatus);
       
   756 
       
   757 	// Forward completion to correct dispatcher object to handle
       
   758 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   759 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetFdnStatus(aError, aFdnStatus);
       
   760 
       
   761 	} // CCtsyDispatcherCallback::CallbackPhoneGetFdnStatusComp
       
   762 
       
   763 
       
   764 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetNetworkRegistrationStatusComp(
       
   765 	TInt aError, RMobilePhone::TMobilePhoneRegistrationStatus aRegStatus)
       
   766 /**
       
   767  * Callback function to be used by the Licensee LTSY to complete a pending
       
   768  * MLtsyDispatchPhoneGetNetworkRegistrationStatus::HandleGetNetworkRegistrationStatusReqL()
       
   769  * back to the CTSY Dispatcher.
       
   770  *
       
   771  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   772  * @param aRegStatus Current network registration status.
       
   773  *
       
   774  * @see RMobilePhone::GetNetworkRegistrationStatus()
       
   775  */
       
   776 	{
       
   777 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRegStatus=%d"), aError, aRegStatus);
       
   778 
       
   779 	// Forward completion to correct dispatcher object to handle
       
   780 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   781 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetNetworkRegistrationStatus(aError, aRegStatus);
       
   782 
       
   783 	} // CCtsyDispatcherCallback::CallbackPhoneGetNetworkRegistrationStatusComp
       
   784 
       
   785 EXPORT_C void CCtsyDispatcherCallback::CallbackSatUssdControlSupportedChangeInd(
       
   786 	TInt aError, TBool aSupported)
       
   787 /**
       
   788  *
       
   789  * This indicator is used by the LTSY to inform the CTSY as to whether USSD TLV
       
   790  * are supported by the NAA for control.
       
   791  *
       
   792  *
       
   793  * @param aError The error code to be returned to the CTSY Dispatcher.
       
   794  * @param aSupported ETrue if USSD control TLV is supported, EFalse otherwise.
       
   795  * @see RSat::NotifyCallControlRequest()
       
   796  */
       
   797 	{
       
   798 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aSupported=%d"), aError, aSupported);
       
   799 
       
   800 	// Forward completion to correct dispatcher object to handle
       
   801 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   802 	iDispatcherHolder->GetSatDispatcher().CallbackUssdControlSupported(aError, aSupported);
       
   803 
       
   804 	} // CCtsyDispatcherCallback::CallbackSatUssdControlSupportedChangeInd
       
   805 
       
   806 
       
   807 
       
   808 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneBootNotifyModemStatusReadyComp(TInt aError, TRfStateInfo aRfStatus)
       
   809 /**
       
   810  * Callback function to be used by the Licensee LTSY to complete a pending
       
   811  * MLtsyDispatchPhoneBootNotifyModemStatusReady::HandleBootNotifyModemStatusReadyReqL()
       
   812  * back to the CTSY Dispatcher.
       
   813  *
       
   814  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   815  * @param aRfStatus The current RF status. See TRfStateInfo.
       
   816  */
       
   817 	{
       
   818 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRfStatus=%d"), aError, aRfStatus);
       
   819 
       
   820 	// Forward completion to correct dispatcher object to handle
       
   821 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   822 	iDispatcherHolder->GetPhoneDispatcher().CallbackBootNotifyModemStatusReady(aError, aRfStatus);
       
   823 
       
   824 	} // CCtsyDispatcherCallback::CallbackPhoneBootNotifyModemStatusReady
       
   825 
       
   826 
       
   827 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneBootNotifySimStatusReadyComp(TInt aError)
       
   828 /**
       
   829  * Callback function to be used by the Licensee LTSY to complete a pending
       
   830  * MLtsyDispatchPhoneBootNotifySimStatusReady::HandleBootNotifySimStatusReadyReqL()
       
   831  * back to the CTSY Dispatcher.
       
   832  *
       
   833  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   834  */
       
   835 	{
       
   836 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   837 
       
   838 	// Forward completion to correct dispatcher object to handle
       
   839 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   840 	iDispatcherHolder->GetPhoneDispatcher().CallbackBootNotifySimStatusReady(aError);
       
   841 
       
   842 	} // CCtsyDispatcherCallback::CallbackPhoneBootNotifySimStatusReadyComp
       
   843 
       
   844 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetHomeNetworkComp(TInt aError,
       
   845 		const RMobilePhone::TMobilePhoneNetworkInfoV5& aNetworkInfo)
       
   846 /**
       
   847  * Callback function to be used by the Licensee LTSY to complete a pending
       
   848  * MLtsyDispatchPhoneGetHomeNetwork::HandleGetHomeNetworkReqL()
       
   849  * back to the CTSY Dispatcher.
       
   850  *
       
   851  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   852  * @param aNetworkInfo Contains home network information.
       
   853  * request.
       
   854  *
       
   855  * @see RMobilePhone::GetHomeNetwork()
       
   856  */
       
   857 	{
       
   858 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   859 
       
   860 	// Forward completion to correct dispatcher object to handle
       
   861 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   862 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetHomeNetwork(aError, aNetworkInfo);
       
   863 
       
   864 	} // CCtsyDispatcherCallback::CallbackPhoneGetHomeNetworkComp
       
   865 
       
   866 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetActiveAlsLineComp(
       
   867 	TInt aError, RMobilePhone::TMobilePhoneALSLine aAlsLine)
       
   868 /**
       
   869  * Callback function to be used by the Licensee LTSY to complete a pending
       
   870  * MLtsyDispatchCallControlGetActiveAlsLine::HandleGetActiveAlsLineReqL()
       
   871  * back to the CTSY Dispatcher.
       
   872  *
       
   873  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   874  * @param aAlsLine The current active ALS line.
       
   875  *
       
   876  * @see RMobilePhone::GetALSLine()
       
   877  */
       
   878 	{
       
   879 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAlsLine=%d"), aError, aAlsLine);
       
   880 
       
   881 	// Forward completion to correct dispatcher object to handle
       
   882 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   883 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetActiveAlsLine(aError, aAlsLine);
       
   884 
       
   885 	} // CCtsyDispatcherCallback::CallbackPhoneGetActiveAlsLineComp
       
   886 
       
   887 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetIccMessageWaitingIndicatorsComp(
       
   888 	TInt aError, const RMobilePhone::TMobilePhoneMessageWaitingV1& aMessageWaiting)
       
   889 /**
       
   890  * Callback function to be used by the Licensee LTSY to complete a pending
       
   891  * MLtsyDispatchPhoneGetIccMessageWaitingIndicators::HandleGetIccMessageWaitingIndicatorsReqL()
       
   892  * back to the CTSY Dispatcher.
       
   893  *
       
   894  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   895  * @param aMessageWaiting The message waiting indicators to return.
       
   896  *
       
   897  * @see RMobilePhone::GetIccMessageWaitingIndicators()
       
   898  */
       
   899 	{
       
   900 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   901 
       
   902 	// Forward completion to correct dispatcher object to handle
       
   903 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   904 	iDispatcherHolder->GetSimDispatcher().CallbackGetIccMessageWaitingIndicators(aError, aMessageWaiting);
       
   905 
       
   906 	} // CCtsyDispatcherCallback::CallbackPhoneGetIccMessageWaitingIndicatorsComp
       
   907 
       
   908 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetServiceTableComp(
       
   909 	TInt aError, const RMobilePhone::TMobilePhoneServiceTableV1& aServiceTable)
       
   910 /**
       
   911  * Callback function to be used by the Licensee LTSY to complete a pending
       
   912  * MLtsyDispatchSimGetServiceTable::HandleGetServiceTableReqL()
       
   913  * back to the CTSY Dispatcher.
       
   914  *
       
   915  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   916  * @param aServiceTable The service table to return.
       
   917  *
       
   918  * @see RMobilePhone::GetServiceTable()
       
   919  */
       
   920 	{
       
   921 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
   922 
       
   923 	// Forward completion to correct dispatcher object to handle
       
   924 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   925 	iDispatcherHolder->GetSimDispatcher().CallbackGetServiceTable(aError, aServiceTable);
       
   926 
       
   927 	} // CCtsyDispatcherCallback::CallbackSimGetServiceTable
       
   928 
       
   929 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkModeChangeInd(
       
   930 	TInt aError,
       
   931 	RMobilePhone::TMobilePhoneNetworkMode aNetworkMode)
       
   932 /**
       
   933  *
       
   934  * Callback function to be used by the Licensee LTSY to indicate changes to the current network mode
       
   935  *
       
   936  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   937  * @param aNetworkMode The network mode to be sent to the CTSY Dispatcher.
       
   938  */
       
   939 	{
       
   940 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aNetworkMode=%d"), aError, aNetworkMode);
       
   941 
       
   942 	// Forward completion to correct dispatcher object to handle
       
   943 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   944 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyNetworkModeChange(aError, aNetworkMode);
       
   945 
       
   946 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkModeChangeInd
       
   947 
       
   948 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyEgprsInfoChangeInd(
       
   949 	TInt aError,
       
   950 	TBool aEdgeSupported)
       
   951 /**
       
   952  *
       
   953  * Callback function to be used by the Licensee LTSY to indicate an EGPRS/GPRS information change.
       
   954  *
       
   955  *
       
   956  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   957  * @param aEdgeSupported If EGPRS is supported on the current cell.
       
   958  */
       
   959 	{
       
   960 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aEdgeSupported=%d"), aError, aEdgeSupported);
       
   961 
       
   962 	// Forward completion to correct dispatcher object to handle
       
   963 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   964 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyEgprsInfoChange(aError, aEdgeSupported);
       
   965 
       
   966 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyEgprsInfoChangeInd
       
   967 
       
   968 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifySignalStrengthChangeInd(
       
   969 	TInt aError,
       
   970 	TInt32 aSignalStrength,
       
   971 	TInt8 aBar)
       
   972 /**
       
   973  *
       
   974  * Callback function to be used by the Licensee LTSY to indicate change to signal strength.
       
   975  *
       
   976  *
       
   977  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
   978  * @param aSignalStrength The signal strength to be sent to the CTSY Dispatcher
       
   979  * @param aBar The number of bars to display.
       
   980  *
       
   981  * @see RMobilePhone::NotifySignalStrengthChange()
       
   982  * @see RMobilePhone::GetSignalStrength()
       
   983  */
       
   984 	{
       
   985 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSignalStrength=%d, aBar=%d"), aError, aSignalStrength, aBar);
       
   986 
       
   987 	// Forward completion to correct dispatcher object to handle
       
   988 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
   989 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifySignalStrengthChange(aError, aSignalStrength, aBar);
       
   990 
       
   991 	} // CCtsyDispatcherCallback::CallbackPhoneNotifySignalStrengthChangeInd
       
   992 
       
   993 
       
   994 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkRegistrationStatusChangeInd(
       
   995 	TInt aError,
       
   996 	RMobilePhone::TMobilePhoneRegistrationStatus aRegStatus)
       
   997 /**
       
   998  * Callback function to be used by the Licensee LTSY to indicate a change in the
       
   999  * network registration status.
       
  1000  *
       
  1001  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1002  * @param aRegStatus Current network registration status.
       
  1003  *
       
  1004  * @see RMobilePhone::NotifyNetworkRegistrationStatusChange()
       
  1005  */
       
  1006 	{
       
  1007 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRegStatus=%d"), aError, aRegStatus);
       
  1008 
       
  1009 	// Forward completion to correct dispatcher object to handle
       
  1010 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1011 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyNetworkRegistrationStatusChange(aError, aRegStatus);
       
  1012 
       
  1013 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkRegistrationStatusChangeInd
       
  1014 
       
  1015 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyNitzInfoChangeInd(
       
  1016 	TInt aError,
       
  1017 	const RMobilePhone::TMobilePhoneNITZ& aNitzInfo)
       
  1018 /**
       
  1019  *
       
  1020  * Callback function to be used by the Licensee LTSY to indicate a change in the current
       
  1021  * Network Information and Time Zone (NITZ).
       
  1022  *
       
  1023  *  - The RMobilePhone::TMobilePhoneNITZ::iNitzFieldsUsed field in the
       
  1024  *  aNitzInfo parameter should be used to reflect which of the data fields are present.
       
  1025  *  The fields RMobilePhone::TMobilePhoneNITZ::iShortNetworkId and
       
  1026  *  RMobilePhone::TMobilePhoneNITZ::iLongNetworkId may be left
       
  1027  *  blank if not known at this time.
       
  1028  *
       
  1029  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1030  *
       
  1031  * @param aNitzInfo The current NITZ information to be sent to the CTSY Dispatcher.
       
  1032  *
       
  1033  * @see RMobilePhone::NotifyNITZInfoChange()
       
  1034  */
       
  1035 	{
       
  1036 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1037 
       
  1038 	// Forward completion to correct dispatcher object to handle
       
  1039 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1040 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyNitzInfoChange(aError, aNitzInfo);
       
  1041 
       
  1042 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyNitzInfoChangeInd
       
  1043 
       
  1044 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyBatteryInfoChangeInd(
       
  1045 	TInt aError,
       
  1046 	const RMobilePhone::TMobilePhoneBatteryInfoV1& aBatteryInfo)
       
  1047 /**
       
  1048  *
       
  1049  * Callback function to be used by the Licensee LTSY to indicate any changes
       
  1050  * in the battery information.
       
  1051  *
       
  1052  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1053  * @param aBatteryInfo The battery information to be sent to the CTSY Dispatcher.
       
  1054  *
       
  1055  * @see RMobilePhone::GetBatteryInfo()
       
  1056  * @see RMobilePhone::NotifyBatteryInfoChange()
       
  1057  */
       
  1058 	{
       
  1059 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1060 
       
  1061 	// Forward completion to correct dispatcher object to handle
       
  1062 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1063 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyBatteryInfoChange(aError, aBatteryInfo);
       
  1064 
       
  1065 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyBatteryInfoChangeInd
       
  1066 
       
  1067 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyCurrentNetworkChangeInd(
       
  1068 	TInt aError,
       
  1069 	const RMobilePhone::TMobilePhoneNetworkInfoV5& aNetworkInfo,
       
  1070 	const RMobilePhone::TMobilePhoneLocationAreaV1& aLocationArea)
       
  1071 /**
       
  1072  *
       
  1073  * Callback function to be used by the Licensee LTSY to indicate any changes in the current network.
       
  1074  *
       
  1075  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1076  * @param aNetworkInfo The network information to be sent to the CTSY Dispatcher.
       
  1077  * @param aLocationArea The mobile phone location area
       
  1078  *
       
  1079  * @see RMobilePhone::NotifyCurrentNetworkChange()
       
  1080  * @see RMobilePhone::GetCurrentNetwork()
       
  1081  */
       
  1082 	{
       
  1083 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1084 
       
  1085 	// Forward completion to correct dispatcher object to handle
       
  1086 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1087 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyCurrentNetworkChange(aError, aNetworkInfo, aLocationArea);
       
  1088 
       
  1089 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyCurrentNetworkChangeInd
       
  1090 
       
  1091 
       
  1092 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetCurrentNetworkInfoComp(
       
  1093 	TInt aError,
       
  1094 	const RMobilePhone::TMobilePhoneNetworkInfoV5& aNetworkInfo,
       
  1095 	const RMobilePhone::TMobilePhoneLocationAreaV1& aLocationArea)
       
  1096 /**
       
  1097  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1098  * MLtsyDispatchPhoneGetCurrentNetworkInfo::HandleGetCurrentNetworkInfoReqL()
       
  1099  * back to the CTSY Dispatcher.
       
  1100  *
       
  1101  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1102  * @param aNetworkInfo The network information to be returned to the CTSY Dispatcher.
       
  1103  * @param aLocationArea The mobile phone location area.
       
  1104  *
       
  1105  * @see RMobilePhone::NotifyCurrentNetworkChange()
       
  1106  * @see RMobilePhone::GetCurrentNetwork()
       
  1107  */
       
  1108 	{
       
  1109 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1110 
       
  1111 	// Forward completion to correct dispatcher object to handle
       
  1112 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1113 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetCurrentNetworkInfo(aError, aNetworkInfo, aLocationArea);
       
  1114 
       
  1115 	} // CCtsyDispatcherCallback::CallbackPhoneGetCurrentNetworkInfoComp
       
  1116 
       
  1117 
       
  1118 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetNetworkModeComp(
       
  1119 	TInt aError,
       
  1120 	RMobilePhone::TMobilePhoneNetworkMode aNetworkMode)
       
  1121 /**
       
  1122  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1123  * MLtsyDispatchPhoneGetNetworkMode::HandleGetNetworkModeReqL()
       
  1124  * back to the CTSY Dispatcher.
       
  1125  *
       
  1126  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1127  * @param aNetworkMode The network mode to be sent to the CTSY Dispatcher.
       
  1128  *
       
  1129  * @see RMobilePhone::GetCurrentMode()
       
  1130  */
       
  1131 	{
       
  1132 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aNetworkMode=%d"), aError, aNetworkMode);
       
  1133 
       
  1134 	// Forward completion to correct dispatcher object to handle
       
  1135 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1136 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetNetworkMode(aError, aNetworkMode);
       
  1137 
       
  1138 	} // CCtsyDispatcherCallback::CallbackPhoneGetNetworkModeComp
       
  1139 
       
  1140 
       
  1141 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetNitzInfoComp(
       
  1142 	TInt aError,
       
  1143 	const RMobilePhone::TMobilePhoneNITZ& aNitzInfo)
       
  1144 /**
       
  1145  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1146  * MLtsyDispatchPhoneGetNetworkMode::HandleGetNitzInfoReqL()
       
  1147  * back to the CTSY Dispatcher.
       
  1148  *
       
  1149  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1150  * @param aNitzInfo The NITZ information to be sent to the CTSY Dispatcher.
       
  1151  *
       
  1152  * @see RMobilePhone::GetNITZInfo()
       
  1153  * @see RMobilePhone::NotifyNITZInfoChange()
       
  1154  */
       
  1155 	{
       
  1156 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1157 
       
  1158 	// Forward completion to correct dispatcher object to handle
       
  1159 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1160 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetNitzInfo(aError, aNitzInfo);
       
  1161 
       
  1162 	} // CCtsyDispatcherCallback::CallbackPhoneGetNitzInfoComp
       
  1163 
       
  1164 
       
  1165 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetSignalStrengthComp(
       
  1166 	TInt aError,
       
  1167 	TInt32 aSignalStrength,
       
  1168 	TInt8 aBar)
       
  1169 /**
       
  1170  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1171  * MLtsyDispatchPhoneGetSignalStrength::HandleGetSignalStrengthReqL()
       
  1172  * back to the CTSY Dispatcher.
       
  1173  *
       
  1174  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1175  * @param aSignalStrength The signal strength to be sent to the CTSY Dispatcher.
       
  1176  * @param aBar The number of bars to display.
       
  1177  *
       
  1178  * @see RMobilePhone::GetSignalStrength()
       
  1179  * @see RMobilePhone::NotifySignalStrengthChange()
       
  1180  */
       
  1181 	{
       
  1182 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSignalStrength=%d, aBar=%d"), aError, aSignalStrength, aBar);
       
  1183 
       
  1184 	// Forward completion to correct dispatcher object to handle
       
  1185 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1186 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetSignalStrength(aError, aSignalStrength, aBar);
       
  1187 
       
  1188 	} // CCtsyDispatcherCallback::CallbackPhoneGetSignalStrengthComp
       
  1189 
       
  1190 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetBatteryInfoComp(
       
  1191 	TInt aError,
       
  1192 	const RMobilePhone::TMobilePhoneBatteryInfoV1& aBatteryInfo)
       
  1193 /**
       
  1194  *
       
  1195  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1196  * MLtsyDispatchPhoneGetBatteryInfo::HandleGetBatteryInfoReqL()
       
  1197  * back to the CTSY Dispatcher.
       
  1198  *
       
  1199  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1200  * @param aBatteryInfo The battery information to be sent to the CTSY Dispatcher.
       
  1201  *
       
  1202  * @see RMobilePhone::GetBatteryInfo()
       
  1203  * @see RMobilePhone::NotifyBatteryInfoChange()
       
  1204  */
       
  1205 	{
       
  1206 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1207 
       
  1208 	// Forward completion to correct dispatcher object to handle
       
  1209 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1210 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetBatteryInfo(aError, aBatteryInfo);
       
  1211 
       
  1212 	} // CCtsyDispatcherCallback::CallbackPhoneGetBatteryInfoComp
       
  1213 
       
  1214 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNspsWakeupComp(
       
  1215 	TInt aError)
       
  1216 /**
       
  1217  *
       
  1218  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1219  * MLtsyDispatchPhoneNspsWakeup::HandleNspsWakeupReqL()
       
  1220  * back to the CTSY Dispatcher.
       
  1221  *
       
  1222  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1223  *
       
  1224  * @see RMmCustomAPI::NetWakeup()
       
  1225  */
       
  1226 	{
       
  1227 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1228 
       
  1229 	// Forward completion to correct dispatcher object to handle
       
  1230 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1231 	iDispatcherHolder->GetPhoneDispatcher().CallbackNspsWakeup(aError);
       
  1232 
       
  1233 	} // CCtsyDispatcherCallback::CallbackPhoneNspsWakeupComp
       
  1234 
       
  1235 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSetSystemNetworkModeComp(
       
  1236 	TInt aError)
       
  1237 /**
       
  1238  *
       
  1239  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1240  * MLtsyDispatchPhoneSetSystemNetworkMode::HandleSetSystemNetworkModeReqL()
       
  1241  * back to the CTSY Dispatcher.
       
  1242  *
       
  1243  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1244  *
       
  1245  * @see RMmCustomAPI::SetSystemNetworkMode()
       
  1246  */
       
  1247 	{
       
  1248 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1249 
       
  1250 	// Forward completion to correct dispatcher object to handle
       
  1251 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1252 	iDispatcherHolder->GetPhoneDispatcher().CallbackSetSystemNetworkMode(aError);
       
  1253 
       
  1254 	} // CCtsyDispatcherCallback::CallbackPhoneSetSystemNetworkModeComp
       
  1255 
       
  1256 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetCurrentSystemNetworkModesComp(
       
  1257 	TInt aError, TUint32 aCurrentSystemNetworkModes)
       
  1258 /**
       
  1259  *
       
  1260  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1261  * MLtsyDispatchPhoneGetCurrentSystemNetworkModes::HandleGetCurrentSystemNetworkModesReqL()
       
  1262  * back to the CTSY Dispatcher.
       
  1263  *
       
  1264  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1265  * @param aCurrentSystemNetworkModes A bit mask that represent the current
       
  1266  *                                     network modes with values from RMmCustomAPI::TNetworkModeCaps.
       
  1267  *
       
  1268  * @see RMmCustomAPI::GetCurrentSystemNetworkModes()
       
  1269  */
       
  1270 	{
       
  1271 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCurrentSystemNetworkModes=%d"), aError, aCurrentSystemNetworkModes);
       
  1272 
       
  1273 	// Forward completion to correct dispatcher object to handle
       
  1274 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1275 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetCurrentSystemNetworkModes(aError, aCurrentSystemNetworkModes);
       
  1276 
       
  1277 	} // CCtsyDispatcherCallback::CallbackPhoneGetCurrentSystemNetworkModesComp
       
  1278 
       
  1279 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneResetNetServerComp(
       
  1280 	TInt aError)
       
  1281 /**
       
  1282  *
       
  1283  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1284  * MLtsyDispatchPhoneResetNetServer::HandleResetNetServerReqL()
       
  1285  * back to the CTSY Dispatcher.
       
  1286  *
       
  1287  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1288  *
       
  1289  * @see RMmCustomAPI::ResetNetServer()
       
  1290  */
       
  1291 	{
       
  1292 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1293 
       
  1294 	// Forward completion to correct dispatcher object to handle
       
  1295 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1296 	iDispatcherHolder->GetPhoneDispatcher().CallbackResetNetServer(aError);
       
  1297 
       
  1298 	} // CCtsyDispatcherCallback::CallbackPhoneResetNetServerComp
       
  1299 
       
  1300 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSetAlwaysOnModeComp(
       
  1301 	TInt aError)
       
  1302 /**
       
  1303  *
       
  1304  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1305  * MLtsyDispatchPhoneSetAlwaysOnMode::HandleSetAlwaysOnModeReqL()
       
  1306  * back to the CTSY Dispatcher.
       
  1307  *
       
  1308  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1309  *
       
  1310  * @see RMmCustomAPI::SetAlwaysOn()
       
  1311  */
       
  1312 	{
       
  1313 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1314 
       
  1315 	// Forward completion to correct dispatcher object to handle
       
  1316 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1317 	iDispatcherHolder->GetPhoneDispatcher().CallbackSetAlwaysOnMode(aError);
       
  1318 
       
  1319 	} // CCtsyDispatcherCallback::CallbackPhoneSetAlwaysOnModeComp
       
  1320 
       
  1321 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSetDriveModeComp(
       
  1322 	TInt aError)
       
  1323 /**
       
  1324  *
       
  1325  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1326  * MLtsyDispatchPhoneSetDriveMode::HandleSetDriveModeReqL()
       
  1327  * back to the CTSY Dispatcher.
       
  1328  *
       
  1329  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1330  *
       
  1331  * @see RMmCustomAPI::SetDriveMode()
       
  1332  */
       
  1333 	{
       
  1334 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1335 
       
  1336 	// Forward completion to correct dispatcher object to handle
       
  1337 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1338 	iDispatcherHolder->GetPhoneDispatcher().CallbackSetDriveMode(aError);
       
  1339 
       
  1340 	} // CCtsyDispatcherCallback::CallbackPhoneSetDriveModeComp
       
  1341 
       
  1342 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetServiceProviderNameComp(
       
  1343 	TInt aError, const RMobilePhone::TMobilePhoneServiceProviderNameV2& aServiceProvider)
       
  1344 /**
       
  1345  *
       
  1346  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1347  * MLtsyDispatchPhoneGetServiceProviderName::HandleGetServiceProviderNameReqL()
       
  1348  *
       
  1349  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1350  * @param aServiceProvider The service provider information.
       
  1351  *
       
  1352  * @see RMobilePhone::GetServiceProviderName()
       
  1353  */
       
  1354 	{
       
  1355 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1356 
       
  1357 	// Forward completion to correct dispatcher object to handle
       
  1358 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1359 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetServiceProviderName(aError, aServiceProvider);
       
  1360 
       
  1361 	} // CCtsyDispatcherCallback::CallbackPhoneGetServiceProviderNameComp
       
  1362 
       
  1363 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetPhoneIdComp(
       
  1364 	TInt aError, const RMobilePhone::TMobilePhoneIdentityV1& aPhoneId)
       
  1365 /**
       
  1366  *
       
  1367  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1368  * MLtsyDispatchPhoneGetPhoneId::HandleGetPhoneIdReqL()
       
  1369  *
       
  1370  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1371  * @param aPhoneId The mobile phone identity returned by the LTSY.
       
  1372  *
       
  1373  * @see RMobilePhone::GetPhoneId()
       
  1374  */
       
  1375 	{
       
  1376 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1377 
       
  1378 	// Forward completion to correct dispatcher object to handle
       
  1379 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1380 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetPhoneId(aError, aPhoneId);
       
  1381 
       
  1382 	} // CCtsyDispatcherCallback::CallbackPhoneGetPhoneIdComp
       
  1383 
       
  1384 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetDetectedNetworksComp(
       
  1385 	TInt aError, const CMobilePhoneNetworkListV2& aPhoneNetworkList)
       
  1386 /**
       
  1387  *
       
  1388  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1389  * MLtsyDispatchPhoneGetDetectedNetworks::HandleGetDetectedNetworksReqL()
       
  1390  *
       
  1391  *
       
  1392  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1393  * @param aPhoneNetworkList A list of the detected networks
       
  1394  *
       
  1395  * @see CRetrieveMobilePhoneDetectedNetworks::StartV2()
       
  1396  */
       
  1397 	{
       
  1398 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1399 
       
  1400 	// Forward completion to correct dispatcher object to handle
       
  1401 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1402 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetDetectedNetworks(aError,aPhoneNetworkList);
       
  1403 
       
  1404 	} // CCtsyDispatcherCallback::CallbackPhoneGetDetectedNetworksComp
       
  1405 
       
  1406 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetDetectedNetworksCancelComp(TInt aError)
       
  1407 /**
       
  1408  *
       
  1409  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1410  * MLtsyDispatchPhoneGetDetectedNetworksCancel::HandleGetDetectedNetworksCancelReqL()
       
  1411  *
       
  1412  *
       
  1413  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1414  *
       
  1415  * @see CRetrieveMobilePhoneDetectedNetworks::StartV2()
       
  1416  */
       
  1417 	{
       
  1418 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1419 
       
  1420 	// Forward completion to correct dispatcher object to handle
       
  1421 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1422 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetDetectedNetworksCancel(aError);
       
  1423 
       
  1424 	} // CCtsyDispatcherCallback::CallbackPhoneGetDetectedNetworksCancelComp
       
  1425 
       
  1426 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSelectNetworkComp(TInt aError)
       
  1427 /**
       
  1428  *
       
  1429  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1430  * MLtsyDispatchPhoneSelectNetwork::HandleSelectNetworkReqL()
       
  1431  *
       
  1432  *
       
  1433  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1434  *
       
  1435  * @see RMobilePhone::SelectNetwork()
       
  1436  */
       
  1437 	{
       
  1438 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1439 
       
  1440 	// Forward completion to correct dispatcher object to handle
       
  1441 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1442 	iDispatcherHolder->GetPhoneDispatcher().CallbackSelectNetwork(aError);
       
  1443 
       
  1444 	} // CCtsyDispatcherCallback::CallbackPhoneSelectNetworkComp
       
  1445 
       
  1446 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSelectNetworkCancelComp(TInt aError)
       
  1447 /**
       
  1448  *
       
  1449  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1450  * MLtsyDispatchPhoneSelectNetworkCancel::HandleSelectNetworkCancelReqL()
       
  1451  *
       
  1452  *
       
  1453  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1454  *
       
  1455  * @see RMobilePhone::SelectNetwork()
       
  1456  */
       
  1457 	{
       
  1458 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1459 
       
  1460 	// Forward completion to correct dispatcher object to handle
       
  1461 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1462 	iDispatcherHolder->GetPhoneDispatcher().CallbackSelectNetworkCancel(aError);
       
  1463 
       
  1464 	} // CCtsyDispatcherCallback::CallbackPhoneSelectNetworkCancelComp
       
  1465 
       
  1466 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSetNetworkSelectionSettingComp(
       
  1467 		TInt aError, RMobilePhone::TMobilePhoneSelectionMethod aSelectionMethod)
       
  1468 /**
       
  1469  *
       
  1470  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1471  * MLtsyDispatchPhoneSetNetworkSelectionSetting::HandleSetNetworkSelectionSettingReqL()
       
  1472  *
       
  1473  *
       
  1474  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1475  * @param aSelectionMethod The new network selection method.
       
  1476  *
       
  1477  * @see RMobilePhone::SetNetworkSelectionSetting()
       
  1478  * @see RMobilePhone::NotifyNetworkSelectionSettingChange()
       
  1479  */
       
  1480 	{
       
  1481 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aSelectionMethod=%d"), aError, aSelectionMethod);
       
  1482 
       
  1483 	// Forward completion to correct dispatcher object to handle
       
  1484 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1485 	iDispatcherHolder->GetPhoneDispatcher().CallbackSetNetworkSelectionSetting(aError,aSelectionMethod);
       
  1486 
       
  1487 	} // CCtsyDispatcherCallback::CallbackPhoneSetNetworkSelectionSettingComp
       
  1488 
       
  1489 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSimRefreshRegisterComp(TInt aError)
       
  1490 /**
       
  1491  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1492  * MLtsyDispatchPhoneSimRefreshRegister::HandleSimRefreshRegisterReqL()
       
  1493  *
       
  1494  *
       
  1495  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1496 
       
  1497  */
       
  1498 	{
       
  1499 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1500 
       
  1501 	// Forward completion to correct dispatcher object to handle
       
  1502 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1503 	iDispatcherHolder->GetPhoneDispatcher().CallbackSimRefreshRegister(aError);
       
  1504 	} // CCtsyDispatcherCallback::CallbackPhoneSimRefreshRegisterComp
       
  1505 
       
  1506 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyNspsStatusChangeInd(TInt aError, TBool aEnabled)
       
  1507 /**
       
  1508  * Callback function to be used by the Licensee LTSY to indicate any changes
       
  1509  * in the No Signal Power Save status.
       
  1510  *
       
  1511  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1512  * @param aEnabled The No Signal Power Save status
       
  1513  *
       
  1514  * @see RMmCustomAPI::NotifyNSPSStatus()
       
  1515  */
       
  1516 	{
       
  1517 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aEnabled=%d"), aError, aEnabled);
       
  1518 
       
  1519 	// Forward completion to correct dispatcher object to handle
       
  1520 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1521 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyNspsStatusChange(aError,aEnabled);
       
  1522 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyNspsStatusChangeInd
       
  1523 
       
  1524 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkSelectionSettingChangeInd(TInt aError, RMobilePhone::TMobilePhoneSelectionMethod aSelectionMethod)
       
  1525 /**
       
  1526  * Callback function to be used by the Licensee LTSY to indicate any changes
       
  1527  * in the Network Selection.
       
  1528  *
       
  1529  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1530  * @param aSelectionMethod The new network selection method.
       
  1531  *
       
  1532  * @see RMobilePhone::NotifyNetworkSelectionSettingChange()
       
  1533  */
       
  1534 	{
       
  1535 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aSelectionMethod=%d"), aError, aSelectionMethod);
       
  1536 
       
  1537 	// Forward completion to correct dispatcher object to handle
       
  1538 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1539 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyNetworkSelectionSettingChange(aError,aSelectionMethod);
       
  1540 	
       
  1541 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkSelectionSettingChangeInd
       
  1542 
       
  1543 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyRauEventInd(TInt aError, RMmCustomAPI::TRauEventStatus aRauEvent)
       
  1544 /**
       
  1545  * Callback function to be used by the Licensee LTSY to indicate any RAU (Routing Area Update) event.
       
  1546  *
       
  1547  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1548  * @param aRauEvent The RAU (Routing Area Update) event to be notified (Active or Resumed).
       
  1549  *
       
  1550  * @see RMmCustomAPI::NotifyRauEvent()
       
  1551  */
       
  1552 	{
       
  1553 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aRauEvent=%d"), aError, aRauEvent);
       
  1554 
       
  1555 	// Forward completion to correct dispatcher object to handle
       
  1556 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1557 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyRauEvent(aError,aRauEvent);
       
  1558 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyRauEventInd
       
  1559 
       
  1560 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangedInd(TInt aError)
       
  1561 /**
       
  1562  * Callback function to be used by the Licensee LTSY to indicate a change of the cell information to an unknown mode.
       
  1563  *
       
  1564  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1565  *
       
  1566  * @see RMmCustomAPI::NotifyCellInfoChange()
       
  1567  */
       
  1568 	{
       
  1569 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1570 
       
  1571 	// Forward completion to correct dispatcher object to handle
       
  1572 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1573 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyCellInfoChanged(aError);
       
  1574 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangedInd
       
  1575 
       
  1576 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangedInd(TInt aError, const RMmCustomAPI::TMmCellInfo::TGSMCellInfo& aInfo)
       
  1577 /**
       
  1578  * Callback function to be used by the Licensee LTSY to indicate a change of the cell information when the cell is a GSM cell.
       
  1579  *
       
  1580  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1581  * @param aInfo The new GSM cell information.
       
  1582  *
       
  1583  * @see RMmCustomAPI::NotifyCellInfoChange()
       
  1584  */
       
  1585 	{
       
  1586 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1587 
       
  1588 	// Forward completion to correct dispatcher object to handle
       
  1589 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1590 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyCellInfoChanged(aError, aInfo);
       
  1591 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangedInd
       
  1592 
       
  1593 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangedInd(TInt aError, const RMmCustomAPI::TMmCellInfo::TWCDMACellInfo& aInfo)
       
  1594 /**
       
  1595  * Callback function to be used by the Licensee LTSY to indicate a change of the cell information when the cell is a WCDMA cell.
       
  1596  *
       
  1597  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1598  * @param aInfo The new WCDMA cell information.
       
  1599  *
       
  1600  * @see RMmCustomAPI::NotifyCellInfoChange()
       
  1601  */
       
  1602 	{
       
  1603 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1604 
       
  1605 	// Forward completion to correct dispatcher object to handle
       
  1606 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1607 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyCellInfoChanged(aError, aInfo);
       
  1608 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangedInd
       
  1609 
       
  1610 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyNetworkConnectionFailureInd(TInt aError)
       
  1611 /**
       
  1612  * Callback function to be used by the Licensee LTSY to indicate a network connection failure that
       
  1613  * is so severe that the only way to recover is to restart the phone. 
       
  1614  *
       
  1615  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1616  *
       
  1617  * @see RMmCustomAPI::NotifyNetworkConnectionFailure()
       
  1618  */
       
  1619 	{
       
  1620 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1621 
       
  1622 	// Forward completion to correct dispatcher object to handle
       
  1623 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1624 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyNetworkConnectionFailure(aError);
       
  1625 	}
       
  1626 
       
  1627 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyDtmfEventInd(TInt aError, RMmCustomAPI::TDtmfEventType aType,
       
  1628                                                                        RMmCustomAPI::TDtmfEvent aEvent, TChar aTone)
       
  1629 /**
       
  1630  * Callback function to be used by the Licensee LTSY to indicate a DTMF (Dual Tone Multiple Frequency) event.
       
  1631  *
       
  1632  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1633  * @param aType The DTMF event type.
       
  1634  * @param aEvent 	The DTMF event to be notified.
       
  1635  * @param aTone The event tone.
       
  1636  *
       
  1637  * @see RMmCustomAPI::NotifyDtmfEvent()
       
  1638  */
       
  1639 	{
       
  1640 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d, aEvent=%d, aTone=%d"), aError, aType, aEvent, (TInt)aTone);
       
  1641 
       
  1642 	// Forward completion to correct dispatcher object to handle
       
  1643 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1644 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyDtmfEvent(aError, aType, aEvent, aTone);
       
  1645 	}
       
  1646 
       
  1647 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyDtmfEventInd(
       
  1648 											TInt aError, RMobilePhone::TMobilePhoneDTMFEvent aEventType)
       
  1649 /**
       
  1650  * Callback function to be used by the Licensee LTSY to indicate a DTMF (Dual Tone Multiple Frequency) event.
       
  1651  *
       
  1652  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1653  * @param aEventType The DTMF event type. Either EStartDtmfTone or EStopDtmfTone
       
  1654  *
       
  1655  * @see RMobilePhone::NotifyDtmfEvent()
       
  1656  */
       
  1657 	{
       
  1658 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aEventType=%d"), aEventType);
       
  1659 
       
  1660 	// Forward completion to correct dispatcher object to handle
       
  1661 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1662 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyDtmfEvent(aError, aEventType);
       
  1663 	}
       
  1664 
       
  1665 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetHspaStatusComp(
       
  1666 	TInt aError, RMmCustomAPI::THSxPAStatus aStatus)
       
  1667 /**
       
  1668  *
       
  1669  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1670  * MLtsyDispatchPhoneGetHspaStatus::HandleGetHspaStatusReqL()
       
  1671  * back to the CTSY Dispatcher.
       
  1672  *
       
  1673  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1674  * @param aStatus The HSxPA status (enabled or disabled).
       
  1675  *
       
  1676  * @see RMmCustomAPI::ReadHSxPAStatus()
       
  1677  */
       
  1678 	{
       
  1679 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aStatus=%d"), aError, aStatus);
       
  1680 
       
  1681 	// Forward completion to correct dispatcher object to handle
       
  1682 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1683 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetHspaStatus(aError, aStatus);
       
  1684 
       
  1685 	} // CCtsyDispatcherCallback::CallbackPhoneGetHspaStatusComp
       
  1686 
       
  1687 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSetHspaStatusComp(
       
  1688 	TInt aError)
       
  1689 /**
       
  1690  *
       
  1691  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1692  * MLtsyDispatchPhoneSetHspaStatus::HandleSetHspaStatusReqL()
       
  1693  * back to the CTSY Dispatcher.
       
  1694  *
       
  1695  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1696  *
       
  1697  * @see RMmCustomAPI::WriteHSxPAStatus()
       
  1698  */
       
  1699 	{
       
  1700 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1701 
       
  1702 	// Forward completion to correct dispatcher object to handle
       
  1703 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1704 	iDispatcherHolder->GetPhoneDispatcher().CallbackSetHspaStatus(aError);
       
  1705 
       
  1706 	} // CCtsyDispatcherCallback::CallbackPhoneSetHspaStatusComp
       
  1707 
       
  1708 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyHspaStatusChangedInd(TInt aError, RMmCustomAPI::THSxPAStatus aStatus)
       
  1709 /**
       
  1710  * Callback function to be used by the Licensee LTSY to indicate any change to the phone high speed channel status.
       
  1711  *
       
  1712  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1713  * @param aStatus The new HSxPA status (enable or disable).
       
  1714  *
       
  1715  * @see RMmCustomAPI::NotifyHSxPAStatus()
       
  1716  */
       
  1717 	{
       
  1718 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aStatus=%d"), aError, aStatus);
       
  1719 
       
  1720 	// Forward completion to correct dispatcher object to handle
       
  1721 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1722 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyHspaStatusChanged(aError, aStatus);
       
  1723 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyHspaStatusChangedInd
       
  1724 
       
  1725 
       
  1726 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetNetworkProviderNameComp(
       
  1727 	TInt aError, const TDesC& aName)
       
  1728 /**
       
  1729  *
       
  1730  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1731  * MLtsyDispatchPhoneGetNetworkProviderName::HandleGetNetworkProviderNameReqL()
       
  1732  * back to the CTSY Dispatcher.
       
  1733  *
       
  1734  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1735  * @param aName The nmae of the current network provider.
       
  1736  *
       
  1737  * @see RMmCustomAPI::GetNetworkProviderName()
       
  1738  */
       
  1739 	{
       
  1740 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1741 
       
  1742 	// Forward completion to correct dispatcher object to handle
       
  1743 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1744 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetNetworkProviderName(aError, aName);
       
  1745 
       
  1746 	} // CCtsyDispatcherCallback::CallbackPhoneGetNetworkProviderNameComp
       
  1747 
       
  1748 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetOperatorNameComp(
       
  1749 	TInt aError, RMmCustomAPI::TOperatorNameType aType, const TDesC& aName)
       
  1750 /**
       
  1751  *
       
  1752  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1753  * MLtsyDispatchPhoneGetOperatorName::HandleGetOperatorNameReqL()
       
  1754  * back to the CTSY Dispatcher.
       
  1755  *
       
  1756  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1757  * @param aType The type of the operator name.
       
  1758  * @param aName The name of the current operator.
       
  1759  *
       
  1760  * @see RMmCustomAPI::GetOperatorName()
       
  1761  */
       
  1762 	{
       
  1763 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d"), aError, aType);
       
  1764 
       
  1765 	// Forward completion to correct dispatcher object to handle
       
  1766 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1767 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetOperatorName(aError, aType, aName);
       
  1768 
       
  1769 	} // CCtsyDispatcherCallback::CallbackPhoneGetOperatorNameComp
       
  1770 
       
  1771 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetCellInfoComp(
       
  1772 	TInt aError)
       
  1773 /**
       
  1774  *
       
  1775  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1776  * MLtsyDispatchPhoneGetCellInfo::HandleGetCellInfoReqL()
       
  1777  * back to the CTSY Dispatcher.
       
  1778  *
       
  1779  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1780  *
       
  1781  * @see RMmCustomAPI::GetCellInfo()
       
  1782  */
       
  1783 	{
       
  1784 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1785 
       
  1786 	// Forward completion to correct dispatcher object to handle
       
  1787 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1788 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetCellInfo(aError);
       
  1789 
       
  1790 	} // CCtsyDispatcherCallback::CallbackPhoneGetCellInfoComp
       
  1791 
       
  1792 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetCellInfoComp(
       
  1793 	TInt aError, const RMmCustomAPI::TMmCellInfo::TGSMCellInfo& aInfo)
       
  1794 /**
       
  1795  *
       
  1796  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1797  * MLtsyDispatchPhoneGetCellInfo::HandleGetCellInfoReqL()
       
  1798  * back to the CTSY Dispatcher.
       
  1799  *
       
  1800  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1801  * @param aInfo The GSM cell information.
       
  1802  *
       
  1803  * @see RMmCustomAPI::GetCellInfo()
       
  1804  */
       
  1805 	{
       
  1806 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1807 
       
  1808 	// Forward completion to correct dispatcher object to handle
       
  1809 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1810 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetCellInfo(aError,aInfo);
       
  1811 
       
  1812 	} // CCtsyDispatcherCallback::CallbackPhoneGetCellInfoComp
       
  1813 
       
  1814 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetCellInfoComp(
       
  1815 	TInt aError, const RMmCustomAPI::TMmCellInfo::TWCDMACellInfo& aInfo)
       
  1816 /**
       
  1817  *
       
  1818  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1819  * MLtsyDispatchPhoneGetCellInfo::HandleGetCellInfoReqL()
       
  1820  * back to the CTSY Dispatcher.
       
  1821  *
       
  1822  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1823  * @param aInfo The WCDMA cell information.
       
  1824  *
       
  1825  * @see RMmCustomAPI::GetCellInfo()
       
  1826  */
       
  1827 	{
       
  1828 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1829 
       
  1830 	// Forward completion to correct dispatcher object to handle
       
  1831 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1832 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetCellInfo(aError,aInfo);
       
  1833 
       
  1834 	} // CCtsyDispatcherCallback::CallbackPhoneGetCellInfoComp
       
  1835 
       
  1836 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneRegisterCellInfoChangeNotificationComp(TInt aError)
       
  1837 /**
       
  1838  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1839  * MLtsyDispatchPhoneRegisterCellInfoChangeNotification::HandleRegisterCellInfoChangeNotificationReqL()
       
  1840  *
       
  1841  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1842  * 
       
  1843  * @see RMobilePhone::NotifyCellInfoChange()
       
  1844  */
       
  1845 	{
       
  1846 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1847 	
       
  1848 	// Forward completion to correct dispatcher object to handle
       
  1849 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1850 	iDispatcherHolder->GetPhoneDispatcher().CallbackRegisterCellInfoChangeNotification(aError);
       
  1851 	} //CCtsyDispatcherCallback::CallbackPhoneRegisterCellInfoChangeNotificationComp
       
  1852 
       
  1853 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetPhoneCellInfoComp(TInt aError, const RMobilePhone::TMobilePhoneCellInfoV9& aCellInfo)
       
  1854 /**
       
  1855  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1856  * MLtsyDispatchPhoneGetPhoneCellInfo::HandleGetPhoneCellInfoReqL()
       
  1857  *
       
  1858  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1859  * @param aCellInfo The cell information to be cached in the CTSY and returned to the client
       
  1860  * 
       
  1861  * @see RMobilePhone::GetCellInfo()
       
  1862  * @see RMobilePhone::NotifyCellInfoChange()
       
  1863  */
       
  1864 	{
       
  1865 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1866 	
       
  1867 	// Forward completion to correct dispatcher object to handle
       
  1868 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1869 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetPhoneCellInfo(aError, aCellInfo);
       
  1870 	} //CCtsyDispatcherCallback::CallbackPhoneGetPhoneCellInfoComp
       
  1871 
       
  1872 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangeInd(TInt aError, const RMobilePhone::TMobilePhoneCellInfoV9& aCellInfo)
       
  1873 /**
       
  1874  * Callback function to be used by the Licensee LTSY to indicate any changes
       
  1875  * in the cell information.
       
  1876  *
       
  1877  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1878  * @param aCellInfo The cell information to be cached in the CTSY and returned to the client
       
  1879  * 
       
  1880  * @see RMobilePhone::NotifyCellInfoChange()
       
  1881  */
       
  1882 	{
       
  1883 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1884 		
       
  1885 	// Forward completion to correct dispatcher object to handle
       
  1886 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1887 	
       
  1888 	//this indicator is the same IPC as GetPhoneCellInfoComp, for interface consistency
       
  1889 	//the GetPhoneCellInfoReq should be completed with the GetPhoneCellInfoComp and unsolicited
       
  1890 	//cell info changes calls on this indicator.
       
  1891 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetPhoneCellInfo(aError, aCellInfo);
       
  1892 	} //CCtsyDispatcherCallback::CallbackPhoneNotifyCellInfoChangeInd
       
  1893 
       
  1894 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetUsimServiceSupportComp(TInt aError, TInt aApplicationNumber, TBool aSupported)
       
  1895 /**
       
  1896  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1897  * MLtsyDispatchPhoneGetUsimServiceSupport::HandleGetGetUsimServiceSupportReqL()
       
  1898  *
       
  1899  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1900  * @param aApplicationNumber The application number to which the support status is related to.
       
  1901  * @param aSupported The service supported state (True / False)
       
  1902  * 
       
  1903  * @see RMmCustomAPI::GetUSIMServiceSupport()
       
  1904  */
       
  1905 	{
       
  1906 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aApplicationNumber=%d, aSupported=%d"), aError, aApplicationNumber, aSupported);
       
  1907 	
       
  1908 	// Forward completion to correct dispatcher object to handle
       
  1909 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1910 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetUsimServiceSupport(aError, aApplicationNumber, aSupported);
       
  1911 	} //CCtsyDispatcherCallback::CallbackPhoneGetUsimServiceSupportComp
       
  1912 
       
  1913 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetCurrentActiveUsimApplicationComp(TInt aError, const TDesC8& aAid)
       
  1914 /**
       
  1915  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1916  * MLtsyDispatchPhoneGetCurrentActiveUsimApplication::HandleGetCurrentActiveUsimApplicationReqL()
       
  1917  *
       
  1918  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1919  * @param aAid The AID of the currently active USIM Application, this should be no longer than RMobilePhone::KAIDSize.
       
  1920  * 
       
  1921  * @see RMmCustomAPI::GetCurrentActiveUSimApplication()
       
  1922  */
       
  1923 	{
       
  1924 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAid=%S"), aError, &aAid);
       
  1925 	
       
  1926 	// Forward completion to correct dispatcher object to handle
       
  1927 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1928 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetCurrentActiveUsimApplication(aError, aAid);
       
  1929 	} //CCtsyDispatcherCallback::CallbackPhoneGetCurrentActiveUsimApplicationComp
       
  1930 
       
  1931 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneTerminateAllCallsComp(TInt aError)
       
  1932 /**
       
  1933  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1934  * MLtsyDispatchPhoneTermianteAllCalls::HandleTerminateAllCallsReqL()
       
  1935  *
       
  1936  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1937  * 
       
  1938  * @see RMobilePhone::TerminateAllCalls()
       
  1939  */
       
  1940 	{
       
  1941 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1942 	
       
  1943 	// Forward completion to correct dispatcher object to handle
       
  1944 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1945 	iDispatcherHolder->GetPhoneDispatcher().CallbackTerminateAllCalls(aError);
       
  1946 	} //CCtsyDispatcherCallback::CallbackPhoneTerminateAllCallsComp
       
  1947 
       
  1948 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneGetSystemNetworkBandComp(TInt aError, 
       
  1949 		RMmCustomAPI::TBandSelection aBand, RMmCustomAPI::TNetworkModeCaps aMode)
       
  1950 /**
       
  1951  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1952  * MLtsyDispatchPhoneTermianteAllCalls::HandleGetSystemNetworkBandReqL()
       
  1953  *
       
  1954  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1955  * @param aBand the current network band
       
  1956  * @param aMode the current network mode
       
  1957  * 
       
  1958  * @see RMmCustomAPI::GetSystemNetworkBand()
       
  1959  */
       
  1960 	{
       
  1961 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1962 	
       
  1963 	// Forward completion to correct dispatcher object to handle
       
  1964 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1965 	iDispatcherHolder->GetPhoneDispatcher().CallbackGetSystemNetworkBand(aError, aBand, aMode);
       
  1966 	} //CCtsyDispatcherCallback::CallbackPhoneGetSystemNetworkBandComp
       
  1967 
       
  1968 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneSetSystemNetworkBandComp(TInt aError)
       
  1969 /**
       
  1970  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1971  * MLtsyDispatchPhoneTermianteAllCalls::HandleSetSystemNetworkBandReqL()
       
  1972  *
       
  1973  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  1974  * 
       
  1975  * @see RMobilePhone::SetSystemNetworkBand()
       
  1976  */
       
  1977 	{
       
  1978 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  1979 	
       
  1980 	// Forward completion to correct dispatcher object to handle
       
  1981 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  1982 	iDispatcherHolder->GetPhoneDispatcher().CallbackSetSystemNetworkBand(aError);
       
  1983 	} //CCtsyDispatcherCallback::CallbackPhoneSetSystemNetworkBandComp
       
  1984 
       
  1985 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityGetPin1DisableSupportedComp(
       
  1986 	TInt aError, TBool aIsSupported)
       
  1987 /**
       
  1988  * Callback function to be used by the Licensee LTSY to complete a pending
       
  1989  * MLtsyDispatchSecurityGetPin1DisableSupported::HandleGetPin1DisableSupportedReqL()
       
  1990  * back to the CTSY Dispatcher.
       
  1991  *
       
  1992  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  1993  * @param aIsSupported ETrue if PIN1 disable is supported, EFalse otherwise.
       
  1994  *
       
  1995  */
       
  1996 	{
       
  1997 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIsSupported=%d"), aError, aIsSupported);
       
  1998 
       
  1999 	// Forward completion to correct dispatcher object to handle
       
  2000 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2001 	iDispatcherHolder->GetSecurityDispatcher().CallbackGetPin1DisableSupported(aError, aIsSupported);
       
  2002 
       
  2003 	} // CCtsyDispatcherCallback::CallbackSecurityGetPin1DisableSupportedComp
       
  2004 
       
  2005 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityBootNotifySecurityReadyInd(
       
  2006 	TInt aError)
       
  2007 /**
       
  2008  *
       
  2009  * Callback function to be used by the Licensee LTSY to indicate that the security functionality
       
  2010  * is in a booted and ready state.
       
  2011  * 
       
  2012  *
       
  2013  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2014  *
       
  2015  */
       
  2016 	{
       
  2017 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2018 
       
  2019 	// Forward completion to correct dispatcher object to handle
       
  2020 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2021 	iDispatcherHolder->GetSecurityDispatcher().CallbackBootNotifySecurityReady(aError);
       
  2022 
       
  2023 	} // CCtsyDispatcherCallback::CallbackSecurityBootNotifySecurityReadyInd
       
  2024 
       
  2025 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityNotifySecurityEventInd(TInt aError, RMobilePhone::TMobilePhoneSecurityEvent aSecEvent)	
       
  2026 /**
       
  2027  *
       
  2028  * Completion routine to provide security event identifier back to the CTSY.
       
  2029  *
       
  2030  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2031  * @param aSecEvent Notify security event.
       
  2032  *
       
  2033  * @see RMobilePhone::NotifySecurityEvent()
       
  2034  */
       
  2035 	{
       
  2036 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSecEvent=%d"), aError, aSecEvent);
       
  2037 
       
  2038 	// Forward completion to correct dispatcher object to handle
       
  2039 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2040 	iDispatcherHolder->GetSecurityDispatcher().CallbackNotifySecurityEvent(aError, aSecEvent);
       
  2041 
       
  2042 	} // CCtsyDispatcherCallback::CallbackSecurityNotifySecurityEventInd
       
  2043 
       
  2044 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityNotifyLockInfoChangeInd(
       
  2045 	TInt aError, RMobilePhone::TMobilePhoneLockStatus aStatus, RMobilePhone::TMobilePhoneLockSetting aSetting, RMobilePhone::TMobilePhoneLock aLock)
       
  2046 /**
       
  2047  *
       
  2048  * Completion routine to provide the status of a phone lock and lock information back to the CTSY
       
  2049  *
       
  2050  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2051  * @param aStatus Status of the lock (unknown, locked, unlocked or blocked).
       
  2052  * @param aSetting Lock setting (unknown, enabled, disabled or replaced).
       
  2053  * @param aLock Lock type.
       
  2054  *
       
  2055  * @see RMobilePhone::NotifyLockInfoChange()
       
  2056  */
       
  2057 	{
       
  2058 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aStatus=%d, aSetting=%d, aLock=%d"), aError, aStatus, aSetting, aLock);
       
  2059 
       
  2060 	// Forward completion to correct dispatcher object to handle
       
  2061 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2062 	iDispatcherHolder->GetSecurityDispatcher().CallbackNotifyLockInfoChange(aError, aStatus, aSetting, aLock);
       
  2063 
       
  2064 	} // CCtsyDispatcherCallback::CallbackSecurityNotifyLockInfoChangeInd
       
  2065 
       
  2066 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityGetSecurityCodeInfoComp(
       
  2067 	TInt aError, RMobilePhone::TMobilePhoneSecurityCode aSecCode, TInt aRemainingEntryAttempts)
       
  2068 /**
       
  2069  *
       
  2070  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2071  * MLtsyDispatchSecurityGetSecurityCodeInfo::HandleGetSecurityCodeInfoReqL()
       
  2072  *
       
  2073  * Completion routine to provide the current number or remaining entry attempts of a security code.
       
  2074  *
       
  2075  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2076  * @param aSecCode The security code whose information is to be retrieved.
       
  2077  * @param aRemainingEntryAttempts Number of remaining security code entry attempts before the corresponding lock gets blocked.
       
  2078  *
       
  2079  * @see RMobilePhone::GetSecurityCodeInfo()
       
  2080  */
       
  2081 	{
       
  2082 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSecCode=%d, aRemainingEntryAttempts=%d"), aError, aSecCode, aRemainingEntryAttempts);
       
  2083 
       
  2084 	// Forward completion to correct dispatcher object to handle
       
  2085 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2086 	iDispatcherHolder->GetSecurityDispatcher().CallbackGetSecurityCodeInfo(aError, aSecCode, aRemainingEntryAttempts);
       
  2087 
       
  2088 	} // CCtsyDispatcherCallback::CallbackSecurityGetSecurityCodeInfoComp
       
  2089 
       
  2090 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityGetLockInfoComp(
       
  2091 	TInt aError, RMobilePhone::TMobilePhoneLockStatus aLockStatus, RMobilePhone::TMobilePhoneLockSetting aLockSetting)
       
  2092 /**
       
  2093  *
       
  2094  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2095  * MLtsyDispatchSecurityGetLockInfo::HandleGetLockInfoReqL()
       
  2096  *
       
  2097  * Completion routine to provide lock setting and lock status
       
  2098  *
       
  2099  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2100  * @param aLockStatus Lock status (unknown, locked, unlocked or blocked).
       
  2101  * @param aLockSetting Lock setting (unknown, enabled, disabled or replaced).
       
  2102  *
       
  2103  * @see RMobilePhone::GetLockInfo()
       
  2104  */
       
  2105 	{
       
  2106 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aLockStatus=%d, aLockSetting=%d"), aError, aLockStatus, aLockSetting);
       
  2107 
       
  2108 	// Forward completion to correct dispatcher object to handle
       
  2109 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2110 	iDispatcherHolder->GetSecurityDispatcher().CallbackGetLockInfo(aError, aLockStatus, aLockSetting);
       
  2111 
       
  2112 	} // CCtsyDispatcherCallback::CallbackSecurityGetLockInfoComp
       
  2113 
       
  2114 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityAbortSecurityCodeComp(TInt aError)	
       
  2115 /**
       
  2116  *
       
  2117  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2118  * MLtsyDispatchSecurityAbortSecurityCode::HandleAbortSecurityCodeReqL()
       
  2119  *
       
  2120  * Completion to the request: user has cancelled an outstanding "get security code" or "verify security code" request. 
       
  2121  *
       
  2122  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2123  *
       
  2124  * @see RMobilePhone::AbortSecurityCode()
       
  2125  */
       
  2126 	{
       
  2127 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2128 
       
  2129 	// Forward completion to correct dispatcher object to handle
       
  2130 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2131 	iDispatcherHolder->GetSecurityDispatcher().CallbackAbortSecurityCode(aError);
       
  2132 
       
  2133 	} // CCtsyDispatcherCallback::CallbackSecurityAbortSecurityCodeComp
       
  2134 
       
  2135 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityGetCurrentActivePinComp(TInt aError, RMobilePhone::TMobilePhoneSecurityCode aSecCode)	
       
  2136 /**
       
  2137  *
       
  2138  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2139  * MLtsyDispatchSecurityGetCurrentActivePin::HandleGetCurrentActivePinReqL()
       
  2140  *
       
  2141  * This callback updates the information of the currently active PIN.
       
  2142  *
       
  2143  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2144  * @param aSecCode Security code information for current active pin.
       
  2145  *
       
  2146  * @see CMmCustomSecurityTsy::SetActivePin()
       
  2147  */
       
  2148 	{
       
  2149 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSecCode=%d"), aError, aSecCode);
       
  2150 
       
  2151 	// Forward completion to correct dispatcher object to handle
       
  2152 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2153 	iDispatcherHolder->GetSecurityDispatcher().CallbackGetCurrentActivePin(aError, aSecCode);
       
  2154 
       
  2155 	} // CCtsyDispatcherCallback::CallbackSecurityGetCurrentActivePinComp
       
  2156 
       
  2157 EXPORT_C void CCtsyDispatcherCallback::CallbackSecuritySetLockSettingComp(TInt aError)	
       
  2158 /**
       
  2159  *
       
  2160  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2161  * MLtsyDispatchSecuritySetLockSetting::HandleSetLockSettingReqL()
       
  2162  *
       
  2163  * LTSY notifies about current values for lock status and lock setting.
       
  2164  *
       
  2165  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2166  *
       
  2167  * @see RMobilePhone::SetLockSetting()
       
  2168  */
       
  2169 	{
       
  2170 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2171 
       
  2172 	// Forward completion to correct dispatcher object to handle
       
  2173 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2174 	iDispatcherHolder->GetSecurityDispatcher().CallbackSetLockSetting(aError);
       
  2175 
       
  2176 	} // CCtsyDispatcherCallback::CallbackSecuritySetLockSettingComp
       
  2177 
       
  2178 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityVerifySecurityCodeComp(
       
  2179 	TInt aError)
       
  2180 /**
       
  2181  *
       
  2182  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2183  * MLtsyDispatchSecurityVerifySecurityCode::HandleVerifySecurityCodeReqL()
       
  2184  *
       
  2185  * Completion to the routine sending a security code requiring verification to the phone
       
  2186  *
       
  2187  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2188  *
       
  2189  * @see RMobilePhone::VerifySecurityCode()
       
  2190  */
       
  2191 	{
       
  2192 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2193 
       
  2194 	// Forward completion to correct dispatcher object to handle
       
  2195 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2196 	iDispatcherHolder->GetSecurityDispatcher().CallbackVerifySecurityCode(aError);
       
  2197 
       
  2198 	} // CCtsyDispatcherCallback::CallbackSecurityVerifySecurityCodeComp
       
  2199 	
       
  2200 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityNotifyCipheringInfoChangeInd(TInt aError, const RMmCustomAPI::TCipheringInfo& aInfo)	
       
  2201 /** 
       
  2202  * Completes notify a client of ciphering info change
       
  2203  *
       
  2204  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  2205  * @param aInfo Ciphering information data structure: ciphering indicator and ciphering status.
       
  2206  * 
       
  2207  * @see RMmCustomAPI::NotifyCipheringInfoChange()
       
  2208  */
       
  2209 	{
       
  2210 	TSYLOGENTRYEXITARGS(_L8("aError=%d, indStatus=%d, ciphStatus=%d"), aError, aInfo.iIndStatus, aInfo.iCiphStatus);
       
  2211 
       
  2212 	// Forward completion to correct dispatcher object to handle
       
  2213 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2214 	iDispatcherHolder->GetSecurityDispatcher().CallbackNotifyCipheringInfoChange(aError, aInfo);
       
  2215 
       
  2216 	} // CCtsyDispatcherCallback::CallbackSecurityNotifyCipheringInfoChangeInd
       
  2217 
       
  2218 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityCheckSecurityCodeComp(TInt aError)	
       
  2219 /**
       
  2220  * 
       
  2221  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2222  * MLtsyDispatchSecurityCheckSecurityCode::HandleCheckSecurityCodeReqL()
       
  2223  * 
       
  2224  * This function completes sending the check security code request
       
  2225  * 
       
  2226  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  2227  * 
       
  2228  * @see RMmCustomAPI::CheckSecurityCode()
       
  2229  */
       
  2230 	{
       
  2231 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2232 
       
  2233 	// Forward completion to correct dispatcher object to handle
       
  2234 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2235 	iDispatcherHolder->GetSecurityDispatcher().CallbackCheckSecurityCode(aError);
       
  2236 
       
  2237 	} // CCtsyDispatcherCallback::CallbackSecurityCheckSecurityCodeComp
       
  2238 
       
  2239 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityDisablePhoneLockComp(TInt aError)	
       
  2240 /**
       
  2241  * 
       
  2242  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2243  * MLtsyDispatchSecurityDisablePhoneLock::HandleDisablePhoneLockReqL()
       
  2244  * 
       
  2245  * Completion of the routine, which disables phone lock.
       
  2246  *
       
  2247  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  2248  * 
       
  2249  * @see RMmCustomAPI::DisablePhoneLock()
       
  2250  */
       
  2251 	{
       
  2252 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2253 
       
  2254 	// Forward completion to correct dispatcher object to handle
       
  2255 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2256 	iDispatcherHolder->GetSecurityDispatcher().CallbackDisablePhoneLock(aError);
       
  2257 
       
  2258 	} // CCtsyDispatcherCallback::CallbackSecurityDisablePhoneLockComp
       
  2259 
       
  2260 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityGetCipheringInfoComp(TInt aError, TBool aIndStatus)
       
  2261 /**
       
  2262  * 
       
  2263  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2264  * MLtsyDispatchSecurityGetCipheringInfo::HandleGetCipheringInfoReqL()
       
  2265  * 
       
  2266  * Completion routine to get ciphering info request.
       
  2267  *
       
  2268  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  2269  * @param aIndStatus Ciphering indicator status on/off.
       
  2270  * 
       
  2271  * @see RMmCustomAPI::GetCipheringInfo()
       
  2272  */
       
  2273 	{
       
  2274 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIndStatus=%d"), aError, aIndStatus);
       
  2275 
       
  2276 	// Forward completion to correct dispatcher object to handle
       
  2277 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2278 	iDispatcherHolder->GetSecurityDispatcher().CallbackGetCipheringInfo(aError, aIndStatus);
       
  2279 
       
  2280 	} // CCtsyDispatcherCallback::CallbackSecurityGetCipheringInfoComp
       
  2281 
       
  2282 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityIsSecurityCodeBlockedComp(TInt aError, TBool aIsBlocked)	
       
  2283 /**
       
  2284  * 
       
  2285  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2286  * MLtsyDispatchSecurityIsSecurityCodeBlocked::HandleIsSecurityCodeBlockedReqL()
       
  2287  * 
       
  2288  * This function supports retrieving synchronously the information
       
  2289  * if the security code is blocked or not.
       
  2290  *
       
  2291  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  2292  * @param aIsBlocked Is security code blocked.
       
  2293  * 
       
  2294  * @see RMmCustomAPI::IsBlocked()
       
  2295  */
       
  2296 	{
       
  2297 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2298 
       
  2299 	// Forward completion to correct dispatcher object to handle
       
  2300 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2301 	iDispatcherHolder->GetSecurityDispatcher().CallbackIsSecurityCodeBlocked(aError, aIsBlocked);
       
  2302 
       
  2303 	} // CCtsyDispatcherCallback::CallbackSecurityIsSecurityCodeBlockedComp
       
  2304 
       
  2305 EXPORT_C void CCtsyDispatcherCallback::CallbackSecurityCheckSecurityCodeCancelComp(TInt aError)	
       
  2306 /**
       
  2307  * 
       
  2308  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2309  * MLtsyDispatchSecurityCheckSecurityCodeCancel::HandleCheckSecurityCodeCancelReqL()
       
  2310  * 
       
  2311  * Completion of the routine canceling an check security code request
       
  2312  *
       
  2313  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  2314  * 
       
  2315  * @see RMmCustomAPI::CheckSecurityCode()
       
  2316  */
       
  2317 	{
       
  2318 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2319 
       
  2320 	// Forward completion to correct dispatcher object to handle
       
  2321 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2322 	iDispatcherHolder->GetSecurityDispatcher().CallbackCheckSecurityCodeCancel(aError);
       
  2323 
       
  2324 	} // CCtsyDispatcherCallback::CallbackSecurityCheckSecurityCodeCancelComp
       
  2325 
       
  2326 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookEnStoreGetInfoComp(TInt aError, TInt aUsedEntries)
       
  2327 /**
       
  2328  *
       
  2329  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2330  * MLtsyDispatchPhonebookEnStoreGetInfo::HandleStoreGetInfoReqL()
       
  2331  *
       
  2332  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2333  * @param aUsedEntries The number of used entries in the EN storage.
       
  2334  *
       
  2335  * @see RMobileENStore::GetInfo()
       
  2336  */
       
  2337 	{
       
  2338 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aUsedEntries=%d"), aError, aUsedEntries);
       
  2339 
       
  2340 	// Forward completion to correct dispatcher object to handle
       
  2341 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2342 	iDispatcherHolder->GetPhonebookEnDispatcher().CallbackStoreGetInfo(aError, aUsedEntries);
       
  2343 
       
  2344 	} // CCtsyDispatcherCallback::CallbackPhonebookEnStoreGetInfoComp
       
  2345 
       
  2346 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookEnStoreReadAllComp(
       
  2347 		TInt aError, TInt aIndex, const TDesC& aNumber, TBool aMoreToCome)
       
  2348 /**
       
  2349  *
       
  2350  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2351  * MLtsyDispatchPhonebookEnStoreReadAll::HandleStoreReadAllReqL()
       
  2352  *
       
  2353  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2354  * @param aIndex The index of the entry.
       
  2355  * @param aNumber The number stored in the EN entry. The length of this should not be more than 6.
       
  2356  * @param aMoreToCome ETrue if there are more entries to be read, False otherwise.
       
  2357  *
       
  2358  * @see CRetrieveMobilePhoneENList::Start()
       
  2359  */
       
  2360 	{
       
  2361 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIndex=%d, aMoreToCome=%d"), aError, aIndex, aMoreToCome);
       
  2362 
       
  2363 	// Forward completion to correct dispatcher object to handle
       
  2364 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2365 	iDispatcherHolder->GetPhonebookEnDispatcher().CallbackStoreReadAll(aError, aIndex, aNumber, aMoreToCome);
       
  2366 
       
  2367 	} // CCtsyDispatcherCallback::CallbackPhonebookEnStoreReadAllComp
       
  2368 
       
  2369 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookEnStoreReadEntryComp(
       
  2370 	TInt aError, TInt aIndex, const TDesC& aNumber)
       
  2371 /**
       
  2372  *
       
  2373  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2374  * MLtsyDispatchPhonebookEnStoreReadEntry::HandleStoreReadEntryReqL()
       
  2375  *
       
  2376  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2377  * @param aIndex The index of the entry.
       
  2378  * @param aNumber The number stored in the EN entry. The length of this should not be more than 6.
       
  2379  *
       
  2380  * @see RMobileENStore::Read()
       
  2381  */
       
  2382 	{
       
  2383 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIndex=%d"), aError, aIndex);
       
  2384 
       
  2385 	// Forward completion to correct dispatcher object to handle
       
  2386 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2387 	iDispatcherHolder->GetPhonebookEnDispatcher().CallbackStoreReadEntry(aError, aIndex, aNumber);
       
  2388 
       
  2389 	} // CCtsyDispatcherCallback::CallbackPhonebookEnStoreReadEntryComp
       
  2390 
       
  2391 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastGsmBroadcastNotifyMessageReceivedInd(
       
  2392 	TInt aError, const TDesC8& aCbsMsg)
       
  2393 /**
       
  2394  *
       
  2395  * Function will be called by LTSY to pass GSM cell broadcast message. It may be used as a completion
       
  2396  * of ReceiveMessage() request or by usolicited completion.
       
  2397  *
       
  2398  * @param aError The error code to be returned to the CTSY Dispatcher
       
  2399  * @param aCbsMsg GSM cell broadcast message
       
  2400  *
       
  2401 
       
  2402  *
       
  2403  * @see RMobileBroadcastMessaging::ReceiveMessage()
       
  2404  */
       
  2405 	{
       
  2406 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2407 
       
  2408 	// Forward completion to correct dispatcher object to handle
       
  2409 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2410 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackGsmBroadcastNotifyMessageReceived(aError, aCbsMsg);
       
  2411 
       
  2412 	} // CCtsyDispatcherCallback::CallbackCellBroadcastGsmBroadcastNotifyMessageReceivedInd
       
  2413 
       
  2414 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastWcdmaBroadcastMessageReceivedInd(
       
  2415 	TInt aError, const TDesC8& aWcdmaCbsData, const DispatcherCellBroadcast::TWcdmaCbsMsgBase& aWcdmaCbsMsgBase, TBool aMoreToCome)
       
  2416 /**
       
  2417  *
       
  2418  * Function will be called by LTSY to pass array of WCDMA cell broadcast messages. It may be used as a completion
       
  2419  * of ReceiveMessage() request or by usolicited completion.
       
  2420  *
       
  2421  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2422  * @param aWcdmaCbsData Broadcast message WCDMA.
       
  2423  * @param aWcdmaCbsMsgBase base wcdma cbs data structure.
       
  2424  * @param aIsLast Is it the last WCDMA message to pass to CTSY.
       
  2425  *
       
  2426  * @see RMobileBroadcastMessaging::ReceiveMessage()
       
  2427  */
       
  2428 	{
       
  2429 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMoreToCome=%d"), aError, aMoreToCome);
       
  2430 
       
  2431 	// Forward completion to correct dispatcher object to handle
       
  2432 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2433 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackWcdmaBroadcastMessageReceived(aError, aWcdmaCbsData, aWcdmaCbsMsgBase, aMoreToCome);
       
  2434 
       
  2435 	} // CCtsyDispatcherCallback::CallbackCellBroadcastWcdmaBroadcastMessageReceivedInd
       
  2436 
       
  2437 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastStartSimCbTopicBrowsingComp(
       
  2438 	TInt aError, const CArrayFixFlat<RMmCustomAPI::TSimCbTopic>& aSimTopicArray )
       
  2439 /**
       
  2440  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2441  * MLtsyDispatchCellBroadcastStartSimCbTopicBrowsing::HandleStartSimCbTopicBrowsingReqL()
       
  2442  * 
       
  2443  *
       
  2444  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2445  * @param aSimTopicArray array of TSimCbTopic.
       
  2446  *
       
  2447  * @see RMmCustomAPI::StartSimCbTopicBrowsing()
       
  2448  */
       
  2449 	{
       
  2450 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSimTopicArray.Count()=%d"), aError, aSimTopicArray.Count());
       
  2451 
       
  2452 	// Forward completion to correct dispatcher object to handle
       
  2453 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2454 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackStartSimCbTopicBrowsing( aError, aSimTopicArray );
       
  2455 
       
  2456 	} // CCtsyDispatcherCallback::CallbackCellBroadcastStartSimCbTopicBrowsingComp
       
  2457 
       
  2458 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastDeleteSimCbTopicComp(TInt aError)
       
  2459 /**
       
  2460  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2461  * MLtsyDispatchCellBroadcastDeleteSimCbTopic::HandleDeleteSimCbTopicReqL()
       
  2462  *
       
  2463  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2464  *
       
  2465  * @see RMmCustomAPI::DeleteSimCbTopic()
       
  2466  */
       
  2467 	{
       
  2468 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2469 
       
  2470 	// Forward completion to correct dispatcher object to handle
       
  2471 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2472 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackDeleteSimCbTopic(aError);
       
  2473 
       
  2474 	} // CCtsyDispatcherCallback::CallbackCellBroadcastDeleteSimCbTopicComp
       
  2475 
       
  2476 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastSetBroadcastFilterSettingComp(
       
  2477 	TInt aError)
       
  2478 /**
       
  2479  *
       
  2480  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2481  * MLtsyDispatchCellBroadcastSetBroadcastFilterSetting::HandleSetBroadcastFilterSettingReqL()
       
  2482  *
       
  2483  *
       
  2484  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2485  *
       
  2486  * @see RMobileBroadcastMessaging::SetFilterSetting()
       
  2487  */
       
  2488 	{
       
  2489 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2490 
       
  2491 	// Forward completion to correct dispatcher object to handle
       
  2492 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2493 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackSetBroadcastFilterSetting(aError);
       
  2494 
       
  2495 	} // CCtsyDispatcherCallback::CallbackCellBroadcastSetBroadcastFilterSettingComp
       
  2496 
       
  2497 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastActivateBroadcastReceiveMessageComp(
       
  2498 	TInt aError)
       
  2499 /**
       
  2500  *
       
  2501  * Callback function to be used by the Licensee LTSY to complete a
       
  2502  * MLtsyDispatchCellBroadcastActivateBroadcastReceiveMessage::HandleActivateBroadcastReceiveMessageReqL()
       
  2503  *
       
  2504  *
       
  2505  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2506  *
       
  2507  * @see RMobileBroadcastMessaging::ReceiveMessage()
       
  2508  * @see CCtsyDispatcherCallback::CallbackCellBroadcastGsmBroadcastNotifyMessageReceivedInd()
       
  2509  * @see CCtsyDispatcherCallback::CallbackCellBroadcastWcdmaBroadcastMessageReceivedInd()
       
  2510  */
       
  2511 	{
       
  2512 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2513 
       
  2514 	// Forward completion to correct dispatcher object to handle
       
  2515 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2516 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackActivateBroadcastReceiveMessage(aError);
       
  2517 
       
  2518 	} // CCtsyDispatcherCallback::CallbackCellBroadcastActivateBroadcastReceiveMessageComp
       
  2519 
       
  2520 EXPORT_C void CCtsyDispatcherCallback::CallbackCellBroadcastReceiveMessageCancelComp(
       
  2521 	TInt aError)
       
  2522 /**
       
  2523  *
       
  2524  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2525  * MLtsyDispatchCellBroadcastReceiveMessageCancel::HandleReceiveMessageCancelReqL()
       
  2526  *
       
  2527  *
       
  2528  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2529  *
       
  2530  * @see RMobileBroadcastMessaging::ReceiveMessage()
       
  2531  * @see RMobileBroadcastMessaging::Close()
       
  2532  */
       
  2533 	{
       
  2534 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2535 
       
  2536 	// Forward completion to correct dispatcher object to handle
       
  2537 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2538 	iDispatcherHolder->GetCellBroadcastDispatcher().CallbackReceiveMessageCancel(aError);
       
  2539 
       
  2540 	} // CCtsyDispatcherCallback::CallbackCellBroadcastReceiveMessageCancelComp
       
  2541 
       
  2542 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreReadComp(
       
  2543 	TInt aError, TInt aIndex, const TDesC& aName, const TDesC& aNumber)
       
  2544 /**
       
  2545  *
       
  2546  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2547  * MLtsyDispatchPhonebookOnStoreRead::HandleStoreReadReqL()
       
  2548  *
       
  2549  *
       
  2550  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2551  * @param aIndex The index of the entry.
       
  2552  * @param aName The name stored in the entry. The length of this should not be more than 20.
       
  2553  * @param aNumber The number stored in the ON entry. The length of this should not be more than 100.
       
  2554  *
       
  2555  * @see RMobileONStore::Read()
       
  2556  */
       
  2557 	{
       
  2558 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIndex=%d"), aError, aIndex);
       
  2559 
       
  2560 	// Forward completion to correct dispatcher object to handle
       
  2561 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2562 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreRead(aError, aIndex, aName, aNumber);
       
  2563 
       
  2564 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreReadComp
       
  2565 
       
  2566 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreDeleteAllComp(TInt aError)
       
  2567 /**
       
  2568  *
       
  2569  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2570  * MLtsyDispatchPhonebookOnStoreDeleteAll::HandleStoreDeleteAllReqL()
       
  2571  *
       
  2572  *
       
  2573  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2574  *
       
  2575  * @see RMobileONStore::DeleteAll()
       
  2576  */
       
  2577 	{
       
  2578 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2579 
       
  2580 	// Forward completion to correct dispatcher object to handle
       
  2581 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2582 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreDeleteAll(aError);
       
  2583 
       
  2584 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreDeleteAllComp
       
  2585 
       
  2586 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreReadEntryComp(
       
  2587 	TInt aError, TInt aIndex, const TDesC& aName, const TDesC& aNumber)
       
  2588 /**
       
  2589  *
       
  2590  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2591  * MLtsyDispatchPhonebookOnStoreReadEntry::HandleStoreReadEntryReqL()
       
  2592  *
       
  2593  *
       
  2594  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2595  * @param aIndex The index of the entry.
       
  2596  * @param aName The name stored in the entry. The length of this should not be more than 20.
       
  2597  * @param aNumber The number stored in the ON entry. The length of this should not be more than 100.
       
  2598  *
       
  2599  * @see CRetrieveMobilePhoneONList::Start()
       
  2600  */
       
  2601 	{
       
  2602 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIndex=%d"), aError, aIndex);
       
  2603 
       
  2604 	// Forward completion to correct dispatcher object to handle
       
  2605 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2606 
       
  2607 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreReadEntry(aError, aIndex, aName, aNumber);
       
  2608 
       
  2609 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreReadEntryComp
       
  2610 
       
  2611 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreGetInfoComp(
       
  2612 		TInt aError, TInt aNumOfEntries, TInt aUsedEntries, TInt aMaxNameLength, TInt aMaxNumberLength)
       
  2613 /**
       
  2614  *
       
  2615  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2616  * MLtsyDispatchPhonebookOnStoreGetInfo::HandleStoreGetInfoReqL()
       
  2617  *
       
  2618  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2619  * @param aNumOfEntries The number of entries.
       
  2620  * @param aUsedEntries The number of used entries.
       
  2621  * @param aMaxNameLength The maximum length of name.
       
  2622  * @param aMaxNumberLength The maximum length of number.
       
  2623  *
       
  2624  * @see RMobileONStore::GetInfo()
       
  2625  */
       
  2626 	{
       
  2627 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aNumOfEntries=%d, aUsedEntries=%d, aMaxNameLength=%d, aMaxNumberLength=%d"), aError, aNumOfEntries, aUsedEntries, aMaxNameLength, aMaxNumberLength);
       
  2628 
       
  2629 	// Forward completion to correct dispatcher object to handle
       
  2630 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2631 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreGetInfo(aError, aNumOfEntries, aUsedEntries, aMaxNameLength, aMaxNumberLength);
       
  2632 
       
  2633 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreGetInfoComp
       
  2634 
       
  2635 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreGetReadStoreSizeComp(TInt aError, TInt aSize)
       
  2636 /**
       
  2637  *
       
  2638  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2639  * MLtsyDispatchPhonebookOnStoreGetReadStoreSize::HandleStoreGetReadStoreSizeReqL()
       
  2640  *
       
  2641  *
       
  2642  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2643  * @param aSize The number of entries stored in the storage.
       
  2644  *
       
  2645  * @see CRetrieveMobilePhoneONList::Start()
       
  2646  */
       
  2647 	{
       
  2648 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSize=%d"), aError, aSize);
       
  2649 
       
  2650 	// Forward completion to correct dispatcher object to handle
       
  2651 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2652 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreGetReadStoreSize(aError, aSize);
       
  2653 
       
  2654 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreGetReadStoreSizeComp
       
  2655 
       
  2656 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreDeleteEntryComp(TInt aError)
       
  2657 /**
       
  2658  *
       
  2659  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2660  * MLtsyDispatchPhonebookOnStoreDeleteEntry::HandleStoreDeleteEntryReqL()
       
  2661  *
       
  2662  *
       
  2663  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2664  *
       
  2665  * @see RMobileONStore::Delete()
       
  2666  */
       
  2667 	{
       
  2668 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2669 
       
  2670 	// Forward completion to correct dispatcher object to handle
       
  2671 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2672 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreDeleteEntry(aError);
       
  2673 
       
  2674 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreDeleteEntryComp
       
  2675 
       
  2676 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreWriteEntryComp(TInt aError)
       
  2677 /**
       
  2678  *
       
  2679  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2680  * MLtsyDispatchPhonebookOnStoreWriteEntry::HandleStoreWriteEntryReqL()
       
  2681  *
       
  2682  *
       
  2683  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2684  *
       
  2685  * @see RMobileONStore::StoreAllL()
       
  2686  */
       
  2687 	{
       
  2688 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2689 
       
  2690 	// Forward completion to correct dispatcher object to handle
       
  2691 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2692 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreWriteEntry(aError);
       
  2693 
       
  2694 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreWriteEntryComp
       
  2695 
       
  2696 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreWriteComp(TInt aError, TInt aLocation)
       
  2697 /**
       
  2698  *
       
  2699  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2700  * MLtsyDispatchPhonebookOnStoreWrite::HandleStoreWriteReqL()
       
  2701  *
       
  2702  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2703  * @param aLocation The location where the ON entry was stored.
       
  2704  * 
       
  2705  * @see RMobileONStore::Write()
       
  2706  */
       
  2707 	{
       
  2708 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aLocation=%d"), aError, aLocation);
       
  2709 
       
  2710 	// Forward completion to correct dispatcher object to handle
       
  2711 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2712 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreWrite(aError, aLocation);
       
  2713 
       
  2714 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreWriteComp
       
  2715 
       
  2716 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookOnStoreGetStoreSizeComp(
       
  2717 	TInt aError, TInt aSize)
       
  2718 /**
       
  2719  *
       
  2720  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2721  * MLtsyDispatchPhonebookOnStoreGetStoreSize::HandleStoreGetStoreSizeReqL()
       
  2722  *
       
  2723  *
       
  2724  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2725  * @param aSize The number of entries that can be stored in the storage.
       
  2726  *
       
  2727  * @see RMobileONStore::StoreAll()
       
  2728  */
       
  2729 	{
       
  2730 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSize=%d"), aError, aSize);
       
  2731 
       
  2732 	// Forward completion to correct dispatcher object to handle
       
  2733 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2734 	iDispatcherHolder->GetPhonebookOnDispatcher().CallbackStoreGetStoreSize(aError, aSize);
       
  2735 
       
  2736 	} // CCtsyDispatcherCallback::CallbackPhonebookOnStoreGetStoreSizeComp
       
  2737 
       
  2738 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreResetCacheInd(
       
  2739 	TInt aError, DispatcherPhonebook::TPhonebook aPhonebook)
       
  2740 /**
       
  2741  *
       
  2742  * This indicator resets the state of the cache status in the custom API to
       
  2743  * RMmCustomAPI::ECacheNotReady for the given phonebook.
       
  2744  *
       
  2745  * This is the state value which is read via the RMmCustomAPI::GetPndCacheStatus()
       
  2746  *
       
  2747  * This indicator has been left in for legacy reasons and is not expected to be used.
       
  2748  *
       
  2749  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2750  * @param aPhonebook The phonebook to reset the cache for.
       
  2751  *
       
  2752  * @see RMmCustomAPI::GetPndCacheStatus()
       
  2753  *
       
  2754  */
       
  2755 	{
       
  2756 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook);
       
  2757 
       
  2758 	// Forward completion to correct dispatcher object to handle
       
  2759 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2760 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreResetCache(aError,aPhonebook);
       
  2761 
       
  2762 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreResetCacheInd
       
  2763 
       
  2764 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreSetFdnPhonebookInfoInd(
       
  2765 		TInt aError, TInt aTotalEntries , TInt aMaxTextLength , TInt aMaxNumberLength)
       
  2766 /**
       
  2767  * This indicator can be used to set the FDN storage information in the case where
       
  2768  * phonebook initialisation has failed. The information is only updated in aError
       
  2769  * is KErrNone.
       
  2770  *
       
  2771  * This indicator has been left in for legacy reasons and is not expected to be used.
       
  2772  *
       
  2773  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2774  * @param aTotalEntries The total number of entries in the Fdn phonebook.
       
  2775  * @param aMaxTextLength The maximum text length in the Fdn phonebook.
       
  2776  * @param aMaxNumberLength The maximum number length in the Fdn phonebook.
       
  2777  *
       
  2778  */
       
  2779 	{
       
  2780 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aTotalEntries=%d,aMaxTextLength=%d,aMaxNumberLength=%d"),
       
  2781 							aError,aTotalEntries,aMaxTextLength,aMaxNumberLength);
       
  2782 
       
  2783 	// Forward completion to correct dispatcher object to handle
       
  2784 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2785 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreSetFdnPhonebookInfoInd(aError,aTotalEntries,aMaxTextLength,aMaxNumberLength);
       
  2786 
       
  2787 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreSetFdnPhonebookInfoInd
       
  2788 
       
  2789 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreReadEntryComp(
       
  2790 		TInt aError, DispatcherPhonebook::TPhonebook aPhonebook, const TDesC8& aPhonebookEntries)
       
  2791 /**
       
  2792  *
       
  2793  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2794  * MLtsyDispatchPhonebookStoreReadEntry::HandleStoreReadEntryReqL()
       
  2795  *
       
  2796  *
       
  2797  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2798  * @param aPhonebook The phonebook of which the read request was made and which the enties are for
       
  2799  * @param aPhonebookEntries The read entries from the phonebook encoded in a TLV, this can either be encoded directly
       
  2800  * 	via a CPhoneBookBuffer() or via the CPhoneBookEntry::ExternalizeToTlvEntry() utility.
       
  2801  *
       
  2802  * @see RMobilePhoneBookStore::Read()
       
  2803  * @see CPhoneBookBuffer()
       
  2804  * @see CPhoneBookEntry::ExternalizeToTlvEntry()
       
  2805  */
       
  2806 	{
       
  2807 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook);
       
  2808 
       
  2809 	// Forward completion to correct dispatcher object to handle
       
  2810 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2811 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreReadEntry(aError,aPhonebook,aPhonebookEntries);
       
  2812 
       
  2813 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreReadEntryComp
       
  2814 
       
  2815 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreDeleteEntryComp(
       
  2816 	TInt aError, DispatcherPhonebook::TPhonebook aPhonebook, TInt aMaxNumberLength)
       
  2817 /**
       
  2818  *
       
  2819  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2820  * MLtsyDispatchPhonebookStoreDeleteEntry::HandleStoreDeleteEntryReqL()
       
  2821  *
       
  2822  *
       
  2823  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2824  * @param aPhonebook The phonebook of which the delete request was made.
       
  2825  * @param aMaxNumberLength The new maximum number length possible in the phonebook, this field is
       
  2826  * only relevant to Fdn, Adn and Vmb phonebooks.
       
  2827  *
       
  2828  * @see RMobilePhoneBookStore::Delete()
       
  2829  */
       
  2830 	{
       
  2831 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d,aMaxNumberLength=%d"), aError, aPhonebook, aMaxNumberLength);
       
  2832 
       
  2833 	// Forward completion to correct dispatcher object to handle
       
  2834 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2835 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreDeleteEntry(aError,aPhonebook,aMaxNumberLength);
       
  2836 
       
  2837 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreDeleteEntryComp
       
  2838 
       
  2839 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreCacheComp(
       
  2840 		TInt aError, DispatcherPhonebook::TPhonebook aPhonebook, const TDesC8& aPhonebookEntries)
       
  2841 /**
       
  2842  *
       
  2843  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2844  * MLtsyDispatchPhonebookStoreCache::HandleStoreCacheReqL()
       
  2845  *
       
  2846  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2847  * @param aPhonebook The phonebook of which the cache entries are for (and the request was made from).
       
  2848  * @param aPhonebookEntries All entries from the phonebook encoded in a TLV, this can either be encoded directly
       
  2849  * 	via a CPhoneBookBuffer() or via the CPhoneBookEntry::ExternalizeToTlvEntry() utility.
       
  2850  *
       
  2851  * @see CPhoneBookBuffer()
       
  2852  * @see CPhoneBookEntry::ExternalizeToTlvEntry()
       
  2853  *
       
  2854  */
       
  2855 	{
       
  2856 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d"), aError, aPhonebook);
       
  2857 
       
  2858 	// Forward completion to correct dispatcher object to handle
       
  2859 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2860 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreCache(aError,aPhonebook,aPhonebookEntries);
       
  2861 
       
  2862 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreCacheComp
       
  2863 
       
  2864 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreGetPhonebookInfoComp(
       
  2865 		TInt aError, DispatcherPhonebook::TPhonebook aPhonebook, TInt aUsedEntries)
       
  2866 /**
       
  2867  *
       
  2868  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2869  * MLtsyDispatchPhonebookStoreGetPhonebookInfo::HandleStoreGetPhonebookInfoReqL()
       
  2870  *
       
  2871  *
       
  2872  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2873  * @param aPhonebook The phonebook name of which the phonebook information is for.
       
  2874  * @param aUsedEntries The number of used entries in the phonebook.
       
  2875  *
       
  2876  * @see RMobilePhoneBookStore::GetInfo()
       
  2877  */
       
  2878 	{
       
  2879 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d,aUsedEntries=%d"), aError, aUsedEntries, aPhonebook);
       
  2880 
       
  2881 	// Forward completion to correct dispatcher object to handle
       
  2882 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2883 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreGetPhonebookInfo(aError,aPhonebook,aUsedEntries);
       
  2884 
       
  2885 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreGetPhonebookInfoComp
       
  2886 
       
  2887 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreInitialiseComp(
       
  2888 		TInt aError, const DispatcherPhonebook::TPhonebookStoreInfoV1& aPhonebookStoreInfo)
       
  2889 /**
       
  2890  *
       
  2891  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2892  * MLtsyDispatchPhonebookStoreInitialise::HandleStoreInitialiseReqL()
       
  2893  *
       
  2894  *
       
  2895  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2896  * @param aPhonebookStoreInfo The information relating to the whole phonebook store.
       
  2897  *
       
  2898  */
       
  2899 	{
       
  2900 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  2901 
       
  2902 	// Forward completion to correct dispatcher object to handle
       
  2903 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2904 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreInitialise(aError, aPhonebookStoreInfo);
       
  2905 
       
  2906 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreInitialiseComp
       
  2907 
       
  2908 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreDeleteAllComp(
       
  2909 		TInt aError, DispatcherPhonebook::TPhonebook aPhonebook, TInt aMaxNumberLength)
       
  2910 /**
       
  2911  *
       
  2912  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2913  * MLtsyDispatchPhonebookStoreDeleteAll::HandleStoreDeleteAllReqL()
       
  2914  *
       
  2915  *
       
  2916  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2917  * @param aPhonebook The phonebook name for which the delete all request was made.
       
  2918  * @param aMaxNumberLength The new maximum number length possible in the phonebook, this field is
       
  2919  * only relevant to Fdn, Adn and Vmb phonebooks.
       
  2920  *
       
  2921  * @see RMobilePhoneBookStore::DeleteAll()
       
  2922  */
       
  2923 	{
       
  2924 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d,aMaxNumberLength=%d"), aError, aPhonebook, aMaxNumberLength);
       
  2925 
       
  2926 	// Forward completion to correct dispatcher object to handle
       
  2927 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2928 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreDeleteAll(aError,aPhonebook,aMaxNumberLength);
       
  2929 
       
  2930 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreDeleteAllComp
       
  2931 
       
  2932 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookSmsStoreReadAllComp(
       
  2933 		TInt aError, const DispatcherPhonebook::TSmsData& aSmsData, TInt aIndex, TBool aMoreToCome, TBool aReceivedClass2ToBeResent)
       
  2934 /**
       
  2935  *
       
  2936  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2937  * MLtsyDispatchPhonebookSmsStoreReadAll::HandleSmsStoreReadAllReqL()
       
  2938  *
       
  2939  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2940  * @param aSmsData SMS data. @see TSmsData.
       
  2941  * @param aIndex index of the SMS entry.
       
  2942  * @param aMoreToCome ETrue if there will be other SMS entries, EFalse otherwise.
       
  2943  * @param aReceivedClass2ToBeResent ETrue if received class is to be resent, else EFalse.
       
  2944  *
       
  2945  * @see CRetrieveMobilePhoneSmsList::Start()
       
  2946  */
       
  2947 	{
       
  2948 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIndex=%d"), aError, aIndex);
       
  2949 
       
  2950 	// Forward completion to correct dispatcher object to handle
       
  2951 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2952 	iDispatcherHolder->GetPhonebookDispatcher().CallbackSmsStoreReadAll(aError, aSmsData, aIndex, aMoreToCome, aReceivedClass2ToBeResent);
       
  2953 
       
  2954 	} // CCtsyDispatcherCallback::CallbackPhonebookSmsStoreReadAllComp
       
  2955 
       
  2956 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookStoreWriteEntryComp(
       
  2957 		TInt aError, DispatcherPhonebook::TPhonebook aPhonebook, TUint16 aIndex, TInt aMaxNumberLength)
       
  2958 /**
       
  2959  *
       
  2960  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2961  * MLtsyDispatchPhonebookStoreWriteEntry::HandleStoreWriteEntryReqL()
       
  2962  *
       
  2963  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2964  * KErrGsmSimServSneFull, KErrGsmSimServAnrFull, or KErrGsmSimServEmailFull indicates one of the
       
  2965  * services is full and the field of the entry (e.g. Email) could not be written.
       
  2966  * In the cache case the field (e.g. Email) is not written to the cache but the other
       
  2967  * fields are written, the request is then completed with the error code.  In the non-cache case
       
  2968  * the request is completed with the error code.
       
  2969  * @param aPhonebook The phonebook name for which the write request was made.
       
  2970  * @param aIndex The index to which the entry was written in the phonebook.
       
  2971  * @param aMaxNumberLength The new maximum number length possible in the phonebook, this field is
       
  2972  * only relevant to Fdn, Adn and Vmb phonebooks.
       
  2973  *
       
  2974  * @see RMobilePhoneBookStore::Write()
       
  2975  * */
       
  2976 	{
       
  2977 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPhonebook=%d,aIndex=%d,aMaxNumberLength=%d"), aError, aPhonebook, aIndex, aMaxNumberLength);
       
  2978 
       
  2979 	// Forward completion to correct dispatcher object to handle
       
  2980 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  2981 	iDispatcherHolder->GetPhonebookDispatcher().CallbackStoreWriteEntry(aError,aPhonebook,aIndex,aMaxNumberLength);
       
  2982 
       
  2983 	} // CCtsyDispatcherCallback::CallbackPhonebookStoreWriteEntryComp
       
  2984 
       
  2985 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookGetPhoneStoreInfoComp(
       
  2986 		TInt aError, const RMobilePhoneStore::TMobilePhoneStoreInfoV1& aPhoneStoreInfo)
       
  2987 /**
       
  2988  *
       
  2989  * Callback function to be used by the Licensee LTSY to complete a pending
       
  2990  * MLtsyDispatchPhonebookGetPhoneStoreInfo::HandleGetPhoneStoreInfoReqL()
       
  2991  *
       
  2992  *
       
  2993  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  2994  * @param aPhoneStoreInfo The phone store information.
       
  2995  *
       
  2996  * @see RMobilePhone::GetPhoneStoreInfo()
       
  2997  */
       
  2998 	{
       
  2999 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3000 
       
  3001 	// Forward completion to correct dispatcher object to handle
       
  3002 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3003 	iDispatcherHolder->GetPhonebookDispatcher().CallbackGetPhoneStoreInfo(aError,aPhoneStoreInfo);
       
  3004 
       
  3005 	} // CCtsyDispatcherCallback::CallbackPhonebookGetPhoneStoreInfoComp
       
  3006 
       
  3007 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookSmsStoreDeleteEntryComp(TInt aError)
       
  3008 /**
       
  3009  *
       
  3010  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3011  * MLtsyDispatchPhonebookSmsStoreDeleteEntry::HandleSmsStoreDeleteEntryReqL()
       
  3012  *
       
  3013  *
       
  3014  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3015  *
       
  3016  * @see RMobileSmsStore::Delete()
       
  3017  */
       
  3018 	{
       
  3019 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3020 
       
  3021 	// Forward completion to correct dispatcher object to handle
       
  3022 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3023 	iDispatcherHolder->GetPhonebookDispatcher().CallbackSmsStoreDeleteEntry(aError);
       
  3024 
       
  3025 	} // CCtsyDispatcherCallback::CallbackPhonebookSmsStoreDeleteEntryComp
       
  3026 
       
  3027 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookSmsStoreDeleteAllComp(TInt aError)
       
  3028 /**
       
  3029  *
       
  3030  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3031  * MLtsyDispatchPhonebookSmsStoreDeleteAll::HandleSmsStoreDeleteAllReqL()
       
  3032  *
       
  3033  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3034  *
       
  3035  * @see RMobileSmsStore::DeleteAll()
       
  3036  */
       
  3037 	{
       
  3038 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3039 
       
  3040 	// Forward completion to correct dispatcher object to handle
       
  3041 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3042 	iDispatcherHolder->GetPhonebookDispatcher().CallbackSmsStoreDeleteAll(aError);
       
  3043 
       
  3044 	} // CCtsyDispatcherCallback::CallbackPhonebookSmsStoreDeleteAllComp
       
  3045 
       
  3046 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookSmsStoreGetInfoComp(
       
  3047 	TInt aError, TInt aTotalEntries, TInt aUsedEntries)
       
  3048 /**
       
  3049  *
       
  3050  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3051  * MLtsyDispatchPhonebookSmsStoreGetInfo::HandleSmsStoreGetInfoReqL()
       
  3052  *
       
  3053  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3054  * @param aTotalEntries total number of entries in the SMS storage.
       
  3055  * @param aUsedEntries total number of used entries in the SMS storage.
       
  3056  *
       
  3057  * @see RMobileSmsStore::GetInfo()
       
  3058  */
       
  3059 	{
       
  3060 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aTotalEntries=%d, aUsedEntries=%d"), aError, aTotalEntries, aUsedEntries);
       
  3061 
       
  3062 	// Forward completion to correct dispatcher object to handle
       
  3063 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3064 	iDispatcherHolder->GetPhonebookDispatcher().CallbackSmsStoreGetInfo(aError, aTotalEntries, aUsedEntries);
       
  3065 
       
  3066 	} // CCtsyDispatcherCallback::CallbackPhonebookSmsStoreGetInfoComp
       
  3067 
       
  3068 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookSmsStoreReadEntryComp(
       
  3069 		TInt aError, const DispatcherPhonebook::TSmsData& aSmsData)
       
  3070 /**
       
  3071  *
       
  3072  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3073  * MLtsyDispatchPhonebookSmsStoreReadEntry::HandleSmsStoreReadEntryReqL()
       
  3074  *
       
  3075  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3076  * @param aSmsData SMS data. @see TSmsData.
       
  3077  *
       
  3078  * @see RMobileSmsStore::Read()
       
  3079  */
       
  3080 	{
       
  3081 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3082 
       
  3083 	// Forward completion to correct dispatcher object to handle
       
  3084 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3085 	iDispatcherHolder->GetPhonebookDispatcher().CallbackSmsStoreReadEntry(aError, aSmsData);
       
  3086 
       
  3087 	} // CCtsyDispatcherCallback::CallbackPhonebookSmsStoreReadEntryComp
       
  3088 
       
  3089 EXPORT_C void CCtsyDispatcherCallback::CallbackPhonebookSmsStoreWriteEntryComp(
       
  3090 		TInt aError, TInt aLocation, TBool aReceivedClass2ToBeResent)
       
  3091 /**
       
  3092  *
       
  3093  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3094  * MLtsyDispatchPhonebookSmsStoreWriteEntry::HandleSmsStoreWriteEntryReqL()
       
  3095  *
       
  3096  *
       
  3097  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3098  * @param aLocation location of the entry.
       
  3099  * @param aReceivedClass2ToBeResent ETrue if received class is present, else EFalse.
       
  3100  *
       
  3101  * @see RMobileSmsStore::Write()
       
  3102  */
       
  3103 	{
       
  3104 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aLocation=%d, aReceivedClass2ToBeResent=%d"), aError, aLocation, aReceivedClass2ToBeResent);
       
  3105 
       
  3106 	// Forward completion to correct dispatcher object to handle
       
  3107 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3108 	iDispatcherHolder->GetPhonebookDispatcher().CallbackSmsStoreWriteEntry(aError, aLocation, aReceivedClass2ToBeResent);
       
  3109 
       
  3110 	} // CCtsyDispatcherCallback::CallbackPhonebookSmsStoreWriteEntryComp
       
  3111 
       
  3112 EXPORT_C void CCtsyDispatcherCallback::CallbackSimRefreshSimFilesInd(TInt aError, TUint16 aRefreshFileList)
       
  3113 /**
       
  3114  *
       
  3115  * Callback function to be used by the Licensee LTSY to indicate that a refresh
       
  3116  * of specified cached files held in the CTSY should be done. Depending on the
       
  3117  * file list sent, the CTSY will begin the refresh.
       
  3118  *
       
  3119  * A refresh of the Subscriber Id will always be done independent of the file list sent.
       
  3120  *
       
  3121  *
       
  3122  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3123  * @param aRefreshFileList Bitmask containing list of files to refresh. The list of possible files is specified in TCacheFileTypes.
       
  3124  *
       
  3125  */
       
  3126 	{
       
  3127 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRefreshFileList=%d"), aError, aRefreshFileList);
       
  3128 
       
  3129 	// Forward completion to correct dispatcher object to handle
       
  3130 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3131 	iDispatcherHolder->GetSimDispatcher().CallbackRefreshSimFiles(aError,aRefreshFileList);
       
  3132 
       
  3133 	} // CCtsyDispatcherCallback::CallbackSimRefreshSimFilesInd
       
  3134 
       
  3135 EXPORT_C void CCtsyDispatcherCallback::CallbackSimNotifyIccMessageWaitingIndicatorsChangeInd(
       
  3136 	TInt aError,
       
  3137 	const RMobilePhone::TMobilePhoneMessageWaitingV1& aIndicators)
       
  3138 /**
       
  3139  *
       
  3140  * Callback function to be used by the Licensee LTSY to indicate that the  message waiting indicators 
       
  3141  * on the current ICC has changed.
       
  3142  *
       
  3143  *
       
  3144  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3145  * @param aIndicators The ICC message waiting indicators to return.
       
  3146  *
       
  3147  * @see RMobilePhone::NotifyIccMessageWaitingIndicatorsChange()
       
  3148  */
       
  3149 	{
       
  3150 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3151 
       
  3152 	// Forward completion to correct dispatcher object to handle
       
  3153 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3154 	iDispatcherHolder->GetSimDispatcher().CallbackNotifyIccMessageWaitingIndicatorsChange(aError, aIndicators);
       
  3155 
       
  3156 	} // CCtsyDispatcherCallback::CallbackSimNotifyIccMessageWaitingIndicatorsChangeInd
       
  3157 
       
  3158 EXPORT_C void CCtsyDispatcherCallback::CallbackSimNotifyApnListChangeInd(TInt aError)
       
  3159 /**
       
  3160  *
       
  3161  * Callback function to be used by the Licensee LTSY to indicate a change to the APN list.
       
  3162  *
       
  3163  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3164  *
       
  3165  * @see RMobilePhone::NotifyAPNListChanged()
       
  3166  */
       
  3167 	{
       
  3168 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3169 
       
  3170 	// Forward completion to correct dispatcher object to handle
       
  3171 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3172 	iDispatcherHolder->GetSimDispatcher().CallbackNotifyApnListChange(aError);
       
  3173 
       
  3174 	} // CCtsyDispatcherCallback::CallbackSimNotifyApnListChangeInd
       
  3175 
       
  3176 EXPORT_C void CCtsyDispatcherCallback::CallbackSimNotifyApnControlListServiceStatusChangeInd(
       
  3177 	TInt aError,
       
  3178 	RMobilePhone::TAPNControlListServiceStatus aStatus)
       
  3179 /**
       
  3180  *
       
  3181  * Callback function to be used by the Licensee LTSY to indicate a change to the APN Control List service status.
       
  3182  *
       
  3183  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3184  * @param aStatus The new service status to return.
       
  3185  *
       
  3186  * @see RMobilePhone::NotifyAPNControlListServiceStatusChange()
       
  3187  */
       
  3188 	{
       
  3189 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3190 
       
  3191 	// Forward completion to correct dispatcher object to handle
       
  3192 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3193 	iDispatcherHolder->GetSimDispatcher().CallbackNotifyApnControlListServiceStatusChange(aError, aStatus);
       
  3194 
       
  3195 	} // CCtsyDispatcherCallback::CallbackSimNotifyApnControlListServiceStatusChangeInd
       
  3196 
       
  3197 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetApnControlListServiceStatusComp(
       
  3198 	TInt aError,
       
  3199 	RMobilePhone::TAPNControlListServiceStatus aStatus)
       
  3200 /**
       
  3201  *
       
  3202  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3203  * MLtsyDispatchSimGetApnControlListServiceStatus::HandleGetApnControlListServiceStatusReqL()
       
  3204  *
       
  3205  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3206  * @param aStatus The APN Control List Service status stored on the USIM
       
  3207  *
       
  3208  * @see RMobilePhone::GetAPNControlListServiceStatus()
       
  3209  */
       
  3210 	{
       
  3211 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3212 
       
  3213 	// Forward completion to correct dispatcher object to handle
       
  3214 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3215 	iDispatcherHolder->GetSimDispatcher().CallbackGetApnControlListServiceStatus(aError, aStatus);
       
  3216 
       
  3217 	} // CCtsyDispatcherCallback::CallbackSimGetApnControlListServiceStatusComp
       
  3218 
       
  3219 EXPORT_C void CCtsyDispatcherCallback::CallbackSimDeleteApnNameComp(TInt aError)
       
  3220 /**
       
  3221  *
       
  3222  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3223  * MLtsyDispatchSimDeleteApnName::HandleDeleteApnNameReqL()
       
  3224  *
       
  3225  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3226  *
       
  3227  * @see RMobilePhone::DeleteAPNName()
       
  3228  */
       
  3229 	{
       
  3230 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3231 
       
  3232 	// Forward completion to correct dispatcher object to handle
       
  3233 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3234 	iDispatcherHolder->GetSimDispatcher().CallbackDeleteApnName(aError);
       
  3235 
       
  3236 	} // CCtsyDispatcherCallback::CallbackSimDeleteApnNameComp
       
  3237 
       
  3238 EXPORT_C void CCtsyDispatcherCallback::CallbackSimEnumerateApnEntriesComp(
       
  3239 	TInt aError,
       
  3240 	TUint32 aNumEntries)
       
  3241 /**
       
  3242  *
       
  3243  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3244  * MLtsyDispatchSimEnumerateApnEntries::HandleEnumerateApnEntriesReqL()
       
  3245  *
       
  3246  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3247  * @param aNumEntries The total number of available entries.
       
  3248  *
       
  3249  * @see RMobilePhone::EnumerateAPNEntries()
       
  3250  */
       
  3251 	{
       
  3252 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aNumEntries=%d"), aError, aNumEntries);
       
  3253 
       
  3254 	// Forward completion to correct dispatcher object to handle
       
  3255 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3256 	iDispatcherHolder->GetSimDispatcher().CallbackEnumerateApnEntries(aError, aNumEntries);
       
  3257 
       
  3258 	} // CCtsyDispatcherCallback::CallbackSimEnumerateApnEntriesComp
       
  3259 
       
  3260 EXPORT_C void CCtsyDispatcherCallback::CallbackSimChangeSecurityCodeComp(TInt aError)
       
  3261 /**
       
  3262  *
       
  3263  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3264  * MLtsyDispatchSimChangeSecurityCode::HandleChangeSecurityCodeReqL()
       
  3265  *
       
  3266  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3267  *
       
  3268  * @see RMobilePhone::ChangeSecurityCode()
       
  3269  */
       
  3270 	{
       
  3271 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3272 
       
  3273 	// Forward completion to correct dispatcher object to handle
       
  3274 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3275 	iDispatcherHolder->GetSimDispatcher().CallbackChangeSecurityCode(aError);
       
  3276 
       
  3277 	} // CCtsyDispatcherCallback::CallbackSimChangeSecurityCodeComp
       
  3278 
       
  3279 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSetFdnSettingComp(
       
  3280 	TInt aError)
       
  3281 /**
       
  3282  *
       
  3283  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3284  * MLtsyDispatchSimSetFdnSetting::HandleSetFdnSettingReqL()
       
  3285  *
       
  3286  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3287  *
       
  3288  * @see RMobilePhone::SetFdnSetting()
       
  3289  */
       
  3290 	{
       
  3291 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3292 
       
  3293 	// Forward completion to correct dispatcher object to handle
       
  3294 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3295 	iDispatcherHolder->GetSimDispatcher().CallbackSetFdnSetting(aError);
       
  3296 
       
  3297 	} // CCtsyDispatcherCallback::CallbackSimSetFdnSettingComp
       
  3298 
       
  3299 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetCustomerServiceProfileComp(
       
  3300 	TInt aError,
       
  3301 	const RMobilePhone::TMobilePhoneCspFileV1& aCsp)
       
  3302 /**
       
  3303  *
       
  3304  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3305  * MLtsyDispatchSimGetCustomerServiceProfile::HandleGetCustomerServiceProfileReqL()
       
  3306  *
       
  3307  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3308  * @param aCsp The Customer Service Profile file that is stored on the SIM
       
  3309  *
       
  3310  * @see RMobilePhone::GetCustomerServiceProfile()
       
  3311  */
       
  3312 	{
       
  3313 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3314 
       
  3315 	// Forward completion to correct dispatcher object to handle
       
  3316 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3317 	iDispatcherHolder->GetSimDispatcher().CallbackGetCustomerServiceProfile(aError, aCsp);
       
  3318 
       
  3319 	} // CCtsyDispatcherCallback::CallbackSimGetCustomerServiceProfileComp
       
  3320 
       
  3321 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetSubscriberIdComp(
       
  3322 	TInt aError,
       
  3323 	const TDesC8& aId)
       
  3324 /**
       
  3325  *
       
  3326  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3327  * MLtsyDispatchSimGetSubscriberId::HandleGetSubscriberIdReqL()
       
  3328  *
       
  3329  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3330  * @param aId The subscriber id to be returned.
       
  3331  *
       
  3332  * @see RMobilePhone::GetSubscriberId()
       
  3333  */
       
  3334 	{
       
  3335 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3336 
       
  3337 	// Forward completion to correct dispatcher object to handle
       
  3338 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3339 	iDispatcherHolder->GetSimDispatcher().CallbackGetSubscriberId(aError, aId);
       
  3340 
       
  3341 	} // CCtsyDispatcherCallback::CallbackSimGetSubscriberIdComp
       
  3342 
       
  3343 EXPORT_C void CCtsyDispatcherCallback::CallbackSimAppendApnNameComp(TInt aError)
       
  3344 /**
       
  3345  *
       
  3346  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3347  * MLtsyDispatchSimAppendApnName::HandleAppendApnNameReqL()
       
  3348  *
       
  3349  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3350  *
       
  3351  * @see RMobilePhone::AppendAPNName()
       
  3352  */
       
  3353 	{
       
  3354 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3355 
       
  3356 	// Forward completion to correct dispatcher object to handle
       
  3357 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3358 	iDispatcherHolder->GetSimDispatcher().CallbackAppendApnName(aError);
       
  3359 
       
  3360 	} // CCtsyDispatcherCallback::CallbackSimAppendApnNameComp
       
  3361 
       
  3362 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetActiveIccApplicationTypeComp(TInt aError, MLtsyDispatchSimGetActiveIccApplicationType::TIccType aIccType)
       
  3363 /**
       
  3364  *
       
  3365  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3366  * MLtsyDispatchSimGetActiveIccApplicationType::HandleGetActiveIccApplicationTypeReqL()
       
  3367  *
       
  3368  *
       
  3369  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3370  * @param aIccType Contains the active application type on ICC.
       
  3371  */
       
  3372 	{
       
  3373 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aIccType=%d"), aError, aIccType);
       
  3374 
       
  3375 	// Forward completion to correct dispatcher object to handle
       
  3376 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3377 	iDispatcherHolder->GetSimDispatcher().CallbackGetActiveIccApplicationType(aError, aIccType);
       
  3378 
       
  3379 	} // CCtsyDispatcherCallback::CallbackSimGetActiveIccApplicationTypeComp
       
  3380 
       
  3381 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSetIccMessageWaitingIndicatorsComp(
       
  3382 	TInt aError)
       
  3383 /**
       
  3384  *
       
  3385  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3386  * MLtsyDispatchSimSetIccMessageWaitingIndicators::HandleSetIccMessageWaitingIndicatorsReqL()
       
  3387  *
       
  3388  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3389  *
       
  3390  * @see RMobilePhone::SetIccMessageWaitingIndicators()
       
  3391  */
       
  3392 	{
       
  3393 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3394 
       
  3395 	// Forward completion to correct dispatcher object to handle
       
  3396 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3397 	iDispatcherHolder->GetSimDispatcher().CallbackSetIccMessageWaitingIndicators(aError);
       
  3398 
       
  3399 	} // CCtsyDispatcherCallback::CallbackSimSetIccMessageWaitingIndicatorsComp
       
  3400 
       
  3401 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSetApnControlListServiceStatusComp(
       
  3402 	TInt aError)
       
  3403 /**
       
  3404  *
       
  3405  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3406  * MLtsyDispatchSimSetApnControlListServiceStatus::HandleSetApnControlListServiceStatusReqL()
       
  3407  *
       
  3408  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3409  *
       
  3410  * @see RMobilePhone::SetAPNControlListServiceStatus()
       
  3411  */
       
  3412 	{
       
  3413 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3414 
       
  3415 	// Forward completion to correct dispatcher object to handle
       
  3416 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3417 	iDispatcherHolder->GetSimDispatcher().CallbackSetApnControlListServiceStatus(aError);
       
  3418 
       
  3419 	} // CCtsyDispatcherCallback::CallbackSimSetApnControlListServiceStatusComp
       
  3420 
       
  3421 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetApnNameComp(
       
  3422 	TInt aError,
       
  3423 	const RMobilePhone::TAPNEntryV3& aEntry)
       
  3424 /**
       
  3425  *
       
  3426  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3427  * MLtsyDispatchSimGetApnName::HandleGetApnNameReqL()
       
  3428  *
       
  3429  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3430  * @param aEntry The Access Point Name (APN) entry
       
  3431  *
       
  3432  * @see RMobilePhone::GetAPNname()
       
  3433  */
       
  3434 	{
       
  3435 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3436 
       
  3437 	// Forward completion to correct dispatcher object to handle
       
  3438 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3439 	iDispatcherHolder->GetSimDispatcher().CallbackGetApnName(aError, aEntry);
       
  3440 
       
  3441 	} // CCtsyDispatcherCallback::CallbackSimGetApnNameComp
       
  3442 
       
  3443 EXPORT_C void CCtsyDispatcherCallback::CallbackSimNotifySimCardStatusInd(
       
  3444 	TInt aError, RMmCustomAPI::TSIMCardStatus aSimCardStatus)
       
  3445 /**
       
  3446  * 
       
  3447  * This indicator is used to communicate changes to the status of the SIM
       
  3448  * card - i.e. whether it is inserted / readable etc. 
       
  3449  *
       
  3450  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3451  * @param aSimCardStatus Latest SIM card event.
       
  3452  * @see RMmCustomAPI::NotifySimCardStatus()
       
  3453  */
       
  3454 	{
       
  3455 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSimCardStatus=%d"), aError, aSimCardStatus);
       
  3456 
       
  3457 	// Forward completion to correct dispatcher object to handle
       
  3458 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3459 	iDispatcherHolder->GetSimDispatcher().CallbackNotifySimCardStatus(aError, aSimCardStatus);
       
  3460 
       
  3461 	} // CCtsyDispatcherCallback::CallbackSimNotifySimCardStatusInd
       
  3462 
       
  3463 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSimLockActivateComp(TInt aError)
       
  3464 /**
       
  3465 * 
       
  3466 * Callback function to be used by the Licensee LTSY to complete a pending
       
  3467 * MLtsyDispatchSimSimLockActivate::HandleSimLockActivateReqL()
       
  3468 * 
       
  3469 *
       
  3470 * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3471 * 
       
  3472 * @see RMmCustomAPI::ActivateSimLock()
       
  3473 */
       
  3474 	{
       
  3475 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3476 
       
  3477 	// Forward completion to correct dispatcher object to handle
       
  3478 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3479 	iDispatcherHolder->GetSimDispatcher().CallbackSimLockActivate(aError);
       
  3480 
       
  3481 	} // CCtsyDispatcherCallback::CallbackSimSimLockActivateComp
       
  3482 
       
  3483 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSimLockDeActivateComp(TInt aError)
       
  3484 /**
       
  3485  * 
       
  3486  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3487  * MLtsyDispatchSimSimLockDeActivate::HandleSimLockDeActivateReqL()
       
  3488  * 
       
  3489  *
       
  3490  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3491  * 
       
  3492  * @see RMmCustomAPI::DeActivateSimLock()
       
  3493  */
       
  3494 	{
       
  3495 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3496 
       
  3497 	// Forward completion to correct dispatcher object to handle
       
  3498 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3499 	iDispatcherHolder->GetSimDispatcher().CallbackSimLockDeActivate(aError);
       
  3500 
       
  3501 	} // CCtsyDispatcherCallback::CallbackSimSimLockDeActivateComp
       
  3502 
       
  3503 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetAnswerToResetComp(TInt aError, const TDesC8& aAnswerToReset)
       
  3504 /**
       
  3505  * 
       
  3506  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3507  * MLtsyDispatchSimGetAnswerToReset::HandleGetAnswerToResetReqL()
       
  3508  * 
       
  3509  *
       
  3510  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3511  * @param aAnswerToReset The answer to reset.
       
  3512  * 
       
  3513  * @see RMmCustomAPI::GetATR()
       
  3514  */
       
  3515 	{
       
  3516 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAnswerToReset=%S"), aError, &aAnswerToReset);
       
  3517 
       
  3518 	// Forward completion to correct dispatcher object to handle
       
  3519 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3520 	iDispatcherHolder->GetSimDispatcher().CallbackGetAnswerToReset(aError, aAnswerToReset);
       
  3521 
       
  3522 	} // CCtsyDispatcherCallback::CallbackSimGetAnswerToResetComp
       
  3523 
       
  3524 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetSimCardReaderStatusComp(TInt aError, TUint8 aSimCardReaderStatus)
       
  3525 /**
       
  3526  * 
       
  3527  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3528  * MLtsyDispatchSimGetSimCardReaderStatus::HandleGetSimCardReaderStatusReqL()
       
  3529  * 
       
  3530  *
       
  3531  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3532  * @param aSimCardReaderStatus The sim card reader's status.
       
  3533  * 							   Bits: 
       
  3534  *								1-3  Identity of card reader,
       
  3535  *								4    0=Card reader is not removable,
       
  3536  *								     1=Card reader is removable,
       
  3537  *								5    0=Card reader is not present,
       
  3538  * 									 1=Card reader is present,
       
  3539  *								6    0=Card reader present is not ID-1 size,
       
  3540  *									 1=Card reader present is ID-1 size,
       
  3541  *								7    0=No card present,
       
  3542  *									 1=Card is present in reader,
       
  3543  *								8    0=No card powered,
       
  3544  *									 1=Card in reader is powered.
       
  3545  * 
       
  3546  * 
       
  3547  * @see RMmCustomAPI::GetSimCardReaderStatus()
       
  3548  */
       
  3549 	{
       
  3550 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSimCardReaderStatus=%d"), aError, aSimCardReaderStatus);
       
  3551 
       
  3552 	// Forward completion to correct dispatcher object to handle
       
  3553 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3554 	iDispatcherHolder->GetSimDispatcher().CallbackGetSimCardReaderStatus(aError, aSimCardReaderStatus);
       
  3555 
       
  3556 	} // CCtsyDispatcherCallback::CallbackSimGetSimCardReaderStatusComp
       
  3557 
       
  3558 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetSimAuthenticationDataComp(
       
  3559 	TInt aError, const TDesC8& aSignedResponse, const TDesC8& aCipheringKey)
       
  3560 /**
       
  3561  * 
       
  3562  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3563  * MLtsyDispatchSimGetSimAuthenticationEapSimData::HandleGetSimAuthenticationEapSimDataReqL()
       
  3564  * 
       
  3565  *
       
  3566  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3567  * @param aSignedResponse The signed response. The length should not be greater than RMmCustomAPI::KMaxParametersLength.
       
  3568  * @param aCipheringKey The ciphering key. The length should not be greater than RMmCustomAPI::KMaxParametersLength.
       
  3569  * 
       
  3570  * @see RMmCustomAPI::GetWlanSimAuthenticationData()
       
  3571  */
       
  3572 	{
       
  3573 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aSignedResponse=%S, aCipheringKey=%S"), aError, &aSignedResponse, &aCipheringKey);
       
  3574 
       
  3575 	// Forward completion to correct dispatcher object to handle
       
  3576 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3577 	iDispatcherHolder->GetSimDispatcher().CallbackGetSimAuthenticationData(aError, aSignedResponse, aCipheringKey);
       
  3578 
       
  3579 	} // CCtsyDispatcherCallback::CallbackSimGetSimAuthenticationDataComp
       
  3580 
       
  3581 EXPORT_C void CCtsyDispatcherCallback::CallbackSimGetSimAuthenticationDataComp(
       
  3582 	TInt aError, const TDesC8& aResponse, const TDesC8& aCipheringKey, const TDesC8& aIntegrityKey, const TDesC8& aAUTS)
       
  3583 /**
       
  3584  * 
       
  3585  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3586  * MLtsyDispatchSimGetSimAuthenticationEapAkaData::HandleGetSimAuthenticationEapAkaDataReqL()
       
  3587  * 
       
  3588  *
       
  3589  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3590  * @param aResponse The response. The length should not be greater than RMmCustomAPI::KMaxParametersLength.
       
  3591  * @param aCipheringKey The ciphering key. The length should not be greater than RMmCustomAPI::KMaxParametersLength.
       
  3592  * @param aIntegrityKey The integrity key. The length should not be greater than RMmCustomAPI::KMaxParametersLength.
       
  3593  * @param aAUTS The AUTS value. A value generated by the peer upon experiencing a synchronization failure, 112 bits. 
       
  3594  * 		  This is needed only in error case. The length should not be greater than RMmCustomAPI::KMaxParametersLength.
       
  3595  * 
       
  3596  * @see RMmCustomAPI::GetWlanSimAuthenticationData()
       
  3597  */
       
  3598 	{
       
  3599 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aResponse=%S, aCipheringKey=%S, aIntegrityKey=%S, aAUTS=%S"), aError, &aResponse, &aCipheringKey, &aIntegrityKey, &aAUTS);
       
  3600 
       
  3601 	// Forward completion to correct dispatcher object to handle
       
  3602 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3603 	iDispatcherHolder->GetSimDispatcher().CallbackGetSimAuthenticationData(aError, aResponse, aCipheringKey, aIntegrityKey, aAUTS);
       
  3604 
       
  3605 	} // CCtsyDispatcherCallback::CallbackSimGetSimAuthenticationDataComp
       
  3606 
       
  3607 EXPORT_C void CCtsyDispatcherCallback::CallbackSimPowerSimOffComp(TInt aError)
       
  3608 /**
       
  3609  * 
       
  3610  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3611  * MLtsyDispatchSimPowerSimOff::HandlePowerSimOffReqL()
       
  3612  *
       
  3613  *  
       
  3614  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3615  * 
       
  3616  * @see RMmCustomAPI::PowerSimOff()
       
  3617  */
       
  3618 	{
       
  3619 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3620 
       
  3621 	// Forward completion to correct dispatcher object to handle
       
  3622 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3623 	iDispatcherHolder->GetSimDispatcher().CallbackPowerSimOff(aError);
       
  3624 
       
  3625 	} // CCtsyDispatcherCallback::CallbackSimPowerSimOffComp
       
  3626 
       
  3627 EXPORT_C void CCtsyDispatcherCallback::CallbackSimPowerSimOnComp(TInt aError)
       
  3628 /**
       
  3629  * 
       
  3630  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3631  * MLtsyDispatchSimPowerSimOn::HandlePowerSimOnReqL()
       
  3632  * 
       
  3633  *
       
  3634  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3635  * 
       
  3636  * @see RMmCustomAPI::PowerSimOn()
       
  3637  */
       
  3638 	{
       
  3639 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3640 
       
  3641 	// Forward completion to correct dispatcher object to handle
       
  3642 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3643 	iDispatcherHolder->GetSimDispatcher().CallbackPowerSimOn(aError);
       
  3644 
       
  3645 	} // CCtsyDispatcherCallback::CallbackSimPowerSimOnComp
       
  3646 
       
  3647 EXPORT_C void CCtsyDispatcherCallback::CallbackSimReadSimFileComp(TInt aError, const TDesC8& aResponseBytes)
       
  3648 /**
       
  3649  * 
       
  3650  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3651  * MLtsyDispatchSimReadSimFile::HandleReadSimFileReqL()
       
  3652  * 
       
  3653  *
       
  3654  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3655  * @param aResponseBytes The bytes read from the SIM.
       
  3656  * 
       
  3657  * @see RMmCustomAPI::ReadSimFile()
       
  3658  */
       
  3659 	{
       
  3660 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3661 
       
  3662 	// Forward completion to correct dispatcher object to handle
       
  3663 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3664 	iDispatcherHolder->GetSimDispatcher().CallbackReadSimFile(aError,aResponseBytes);
       
  3665 
       
  3666 	} // CCtsyDispatcherCallback::CallbackSimReadSimFileComp
       
  3667 
       
  3668 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSendApduRequestComp(
       
  3669 		TInt aError, TUint8 aServiceType, TUint8 aCardReaderNumber, TUint8 aApplicationType, const TDesC8& aResponseData)
       
  3670 /**
       
  3671  * 
       
  3672  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3673  * MLtsyDispatchSimSendApduRequest::HandleSimSendApduRequestReqL()
       
  3674  * 
       
  3675  *
       
  3676  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3677  * @param aServiceType The value for the service type of the request to be returned to the client.
       
  3678  * @param aCardReaderNumber The value for the card reader number of the request to be returned to the client.
       
  3679  * @param aApplicationType The value for the application type of the request to be returned to the client.
       
  3680  * @param aResponseData The transparent response data conveyed from the baseband to be returned to the client.
       
  3681  * 
       
  3682  * @see RMmCustomAPI::SendAPDUReq()
       
  3683  */
       
  3684 	{
       
  3685 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aServiceType=%d,aCardReaderNumber=%d,aApplicationType=%d"), aError, aServiceType, aCardReaderNumber, aApplicationType);
       
  3686 
       
  3687 	// Forward completion to correct dispatcher object to handle
       
  3688 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3689 	iDispatcherHolder->GetSimDispatcher().CallbackSendApduRequest(aError,aServiceType,aCardReaderNumber,aApplicationType,aResponseData);
       
  3690 
       
  3691 	} // CCtsyDispatcherCallback::CallbackSimSendApduRequestComp
       
  3692 
       
  3693 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSendApduRequestV2Comp(
       
  3694 		TInt aError, const TDesC8& aResponseData)
       
  3695 /**
       
  3696  * 
       
  3697  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3698  * MLtsyDispatchSimSendApduRequestV2::HandleSimSendApduRequestV2ReqL()
       
  3699  * 
       
  3700  *
       
  3701  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3702  * @param aResponseData The transparent response data conveyed from the baseband to be returned to the client.
       
  3703  * 
       
  3704  * @see RMmCustomAPI::SendAPDUReq()
       
  3705  */
       
  3706 	{
       
  3707 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3708 	
       
  3709 	// Forward completion to correct dispatcher object to handle
       
  3710 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3711 	iDispatcherHolder->GetSimDispatcher().CallbackSendApduRequestV2(aError, aResponseData);
       
  3712 
       
  3713 	} // CCtsyDispatcherCallback::CallbackSimSendApduRequestV2Comp
       
  3714 
       
  3715 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSimWarmResetComp(TInt aError)
       
  3716 /**
       
  3717  * 
       
  3718  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3719  * MLtsyDispatchSimSimWarmReset::HandleSimWarmResetReqL()
       
  3720  * 
       
  3721  *
       
  3722  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3723  * 
       
  3724  * @see RMmCustomAPI::SimWarmReset()
       
  3725  */
       
  3726 	{
       
  3727 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3728 
       
  3729 	// Forward completion to correct dispatcher object to handle
       
  3730 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3731 	iDispatcherHolder->GetSimDispatcher().CallbackSimWarmReset(aError);
       
  3732 
       
  3733 	} // CCtsyDispatcherCallback::CallbackSimSimWarmResetComp
       
  3734 
       
  3735 EXPORT_C void CCtsyDispatcherCallback::CallbackSimSetSimMessageStatusReadComp(TInt aError)
       
  3736 /**
       
  3737  * 
       
  3738  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3739  * MLtsyDispatchSimSetSimMessageStatusRead::HandleSimSetMessageStatusReadReqL()
       
  3740  * 
       
  3741  *
       
  3742  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3743  * 
       
  3744  * @see RMmCustomAPI::SetSimMessageStatusRead()
       
  3745  */
       
  3746 	{
       
  3747 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3748 
       
  3749 	// Forward completion to correct dispatcher object to handle
       
  3750 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3751 	iDispatcherHolder->GetSimDispatcher().CallbackSetSimMessageStatusRead(aError);
       
  3752 
       
  3753 	} // CCtsyDispatcherCallback::CallbackSimSetSimMessageStatusReadComp
       
  3754 
       
  3755 
       
  3756 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsNotifyReceiveSmsMessageInd(TInt aError, TBool aInd, const TSmsMsg& aSmsMessage)
       
  3757 /**
       
  3758  *
       
  3759  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3760  * RMobileSmsMessaging::ReceiveMessage() or as unsolicited completion
       
  3761  *
       
  3762  *
       
  3763  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3764  * @param aInd Set routing activity on/off.
       
  3765  * @param aSmsMessage Used to buffer incoming SMSes to the TSY.
       
  3766  *
       
  3767  * @see RMobileSmsMessaging::ReceiveMessage()
       
  3768  */
       
  3769 	{
       
  3770 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aInd=%d"), aError, aInd);
       
  3771 
       
  3772 	// Forward completion to correct dispatcher object to handle
       
  3773 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3774 	iDispatcherHolder->GetSmsDispatcher().CallbackNotifyReceiveSmsMessage(aError, aInd, aSmsMessage);
       
  3775 
       
  3776 	} // CCtsyDispatcherCallback::CallbackSmsNotifyReceiveSmsMessageInd
       
  3777 
       
  3778 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsSendSatSmsComp(TInt aError)
       
  3779 /**
       
  3780  *
       
  3781  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3782  * MLtsyDispatchSmsSendSatSms::HandleSendSatSmsReqL()
       
  3783  *
       
  3784  *
       
  3785  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3786  *
       
  3787  *
       
  3788  * @see RSat::SendMessageNoLogging()
       
  3789  * @see RSat::NotifySendSmPCmd()
       
  3790  * @see RSat::NotifyMoSmControlRequest()
       
  3791  */
       
  3792 	{
       
  3793 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3794 
       
  3795 	// Forward completion to correct dispatcher object to handle
       
  3796 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3797 	iDispatcherHolder->GetSmsDispatcher().CallbackSendSatSms(aError);
       
  3798 
       
  3799 	} // CCtsyDispatcherCallback::CallbackSmsSendSatSmsComp
       
  3800 
       
  3801 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsSendSmsMessageComp(
       
  3802 	TInt aError, TInt aMsgRef, const TDesC8& aSmsSubmitReport)
       
  3803 /**
       
  3804  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3805  * MLtsyDispatchSmsSendSmsMessage::HandleSendSmsMessageReqL()
       
  3806  *
       
  3807  *
       
  3808  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3809  * @param aMsgRef the message reference assigned to a sent message.
       
  3810  * @param aSmsSubmitReport The message string, which is expected to be a buffer with
       
  3811  *        a maximum size of RMobileSmsMessaging::KGsmTpduSize
       
  3812  * @see RMobileSmsMessaging::SendMessage()
       
  3813  */
       
  3814 	{
       
  3815 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3816 
       
  3817 	// Forward completion to correct dispatcher object to handle
       
  3818 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3819 	iDispatcherHolder->GetSmsDispatcher().CallbackSendSmsMessage(aError, aMsgRef, aSmsSubmitReport );
       
  3820 
       
  3821 	} // CCtsyDispatcherCallback::CallbackSmsSendSmsMessageComp
       
  3822 
       
  3823 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsGetSmsStoreInfoComp(
       
  3824 	TInt aError, TInt aTotalEntries, TInt aUsedEntries)
       
  3825 /**
       
  3826  *
       
  3827  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3828  * MLtsyDispatchSmsGetSmsStoreInfo::HandleGetSmsStoreInfoReqL()
       
  3829  *
       
  3830  *
       
  3831  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3832  * @param aTotalEntries Indicates the total number of entries that may be held in this store.
       
  3833  * @param aUsedEntries Indicates the current number of entries held in this store.
       
  3834  *
       
  3835  * @see RMobileSmsMessaging::GetMessageStoreInfo()
       
  3836  */
       
  3837 	{
       
  3838 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aTotalEntries=%d, aUsedEntries=%d"), aError, aTotalEntries, aUsedEntries);
       
  3839 
       
  3840 	// Forward completion to correct dispatcher object to handle
       
  3841 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3842 	iDispatcherHolder->GetSmsDispatcher().CallbackGetSmsStoreInfo(aError, aTotalEntries, aUsedEntries);
       
  3843 
       
  3844 	} // CCtsyDispatcherCallback::CallbackSmsGetSmsStoreInfoComp
       
  3845 
       
  3846 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsGetSmspListComp(TInt aError, const TDesC& aServiceCenterAddress, const TDesC& aDestinationAddress,
       
  3847                                        const TDesC& aAlphaTagData, const DispatcherSim::TSmsParameters& aSmsParameters, TBool aMoreToCome)
       
  3848 /**
       
  3849  *
       
  3850  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3851  * MLtsyDispatchSmsGetSmspList::HandleGetSmspListReqL()
       
  3852  *
       
  3853  * Sends the SMS parameter list to the CTSY.
       
  3854  *
       
  3855  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3856  * @param aServiceCenterAddress Service center address.
       
  3857  * @param aDestinationAddress Destination address.
       
  3858  * @param aAlphaTagData Alpha tag data.
       
  3859  * @param aSmsParameters Sms parametets.
       
  3860  * @param aMoreToCome Are more elements to come.
       
  3861  *
       
  3862  * @see CMobilePhoneSmspList()
       
  3863  * @see CRetrieveMobilePhoneSmspList()
       
  3864  */
       
  3865 	{
       
  3866 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMoreToCome=%d"), aError, aMoreToCome);
       
  3867 
       
  3868 	// Forward completion to correct dispatcher object to handle
       
  3869 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3870 	iDispatcherHolder->GetSmsDispatcher().CallbackGetSmspList(aError, aServiceCenterAddress, aDestinationAddress, aAlphaTagData, aSmsParameters, aMoreToCome);
       
  3871 
       
  3872 	} // CCtsyDispatcherCallback::CallbackSmsGetSmspListComp
       
  3873 
       
  3874 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsNackSmsStoredComp(TInt aError)
       
  3875 /**
       
  3876  *
       
  3877  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3878  * MLtsyDispatchSmsNackSmsStored::HandleNackSmsStoredReqL()
       
  3879  *
       
  3880  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3881  *
       
  3882  * @see RMobileSmsMessaging::NackSmsStored()
       
  3883  */
       
  3884 	{
       
  3885 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3886 
       
  3887 	// Forward completion to correct dispatcher object to handle
       
  3888 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3889 	iDispatcherHolder->GetSmsDispatcher().CallbackNackSmsStored(aError);
       
  3890 
       
  3891 	} // CCtsyDispatcherCallback::CallbackSmsNackSmsStoredComp
       
  3892 
       
  3893 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsAckSmsStoredComp(TInt aError)
       
  3894 /**
       
  3895  *
       
  3896  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3897  * MLtsyDispatchSmsAckSmsStored::HandleAckSmsStoredReqL()
       
  3898  *
       
  3899  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3900  *
       
  3901  * @see RMobileSmsMessaging::AckSmsStored()
       
  3902  */
       
  3903 	{
       
  3904 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3905 
       
  3906 	// Forward completion to correct dispatcher object to handle
       
  3907 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3908 	iDispatcherHolder->GetSmsDispatcher().CallbackAckSmsStored(aError);
       
  3909 
       
  3910 	} // CCtsyDispatcherCallback::CallbackSmsAckSmsStoredComp
       
  3911 
       
  3912 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsResumeSmsReceptionComp(TInt aError)
       
  3913 /**
       
  3914  *
       
  3915  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3916  * MLtsyDispatchSmsResumeSmsReception::HandleResumeSmsReceptionReqL()
       
  3917  * 
       
  3918  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3919  *
       
  3920  * @see RMobileSmsMessaging::ResumeSmsReception()
       
  3921  */
       
  3922 	{
       
  3923 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3924 
       
  3925 	// Forward completion to correct dispatcher object to handle
       
  3926 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3927 	iDispatcherHolder->GetSmsDispatcher().CallbackResumeSmsReception(aError);
       
  3928 
       
  3929 	} // CCtsyDispatcherCallback::CallbackSmsResumeSmsReceptionComp
       
  3930 
       
  3931 
       
  3932 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsSendSmsMessageNoFdnCheckComp(
       
  3933 		TInt aError, TInt aMsgRef, const TDesC8& aSmsSubmitReport)
       
  3934 /**
       
  3935  *
       
  3936  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3937  * MLtsyDispatchSmsSendSmsMessageNoFdnCheck::HandleSendSmsMessageNoFdnCheckReqL()
       
  3938  *
       
  3939  *
       
  3940  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3941  * @param aMsgRef The message reference assigned to a sent message.
       
  3942  * @param aSmsSubmitReport The message string, which is expected to be a buffer with a
       
  3943  *        maximum size of RMobileSmsMessaging::KGsmTpduSize
       
  3944  *
       
  3945  * @see RMobileSmsMessaging::SendMessageNoFdnCheck()
       
  3946  */
       
  3947 	{
       
  3948 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3949 
       
  3950 	// Forward completion to correct dispatcher object to handle
       
  3951 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3952 	iDispatcherHolder->GetSmsDispatcher().CallbackSendSmsMessageNoFdnCheck(aError, aMsgRef, aSmsSubmitReport);
       
  3953 
       
  3954 	} // CCtsyDispatcherCallback::CallbackSmsSendSmsMessageNoFdnCheckComp
       
  3955 
       
  3956 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsSetMoSmsBearerComp(TInt aError)
       
  3957 /**
       
  3958  *
       
  3959  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3960  * MLtsyDispatchSmsSetMoSmsBearer::HandleSetMoSmsBearerReqL()
       
  3961  *
       
  3962  *
       
  3963  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  3964  *
       
  3965  * @see RMobileSmsMessaging::SetMoSmsBearer()
       
  3966  */
       
  3967 	{
       
  3968 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3969 
       
  3970 	// Forward completion to correct dispatcher object to handle
       
  3971 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3972 	iDispatcherHolder->GetSmsDispatcher().CallbackSetMoSmsBearer(aError);
       
  3973 
       
  3974 	} // CCtsyDispatcherCallback::CallbackSmsSetMoSmsBearerComp
       
  3975 
       
  3976 EXPORT_C void CCtsyDispatcherCallback::CallbackSmsStoreSmspListEntryComp(TInt aError)
       
  3977 /**
       
  3978  *
       
  3979  * Callback function to be used by the Licensee LTSY to complete a pending
       
  3980  * MLtsyDispatchSmsStoreSmspList::HandleStoreSmspListEntryReqL()
       
  3981  *
       
  3982  *
       
  3983  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  3984  *
       
  3985  * @see RMobileSmsMessaging::StoreSmspListL()
       
  3986  */
       
  3987 	{
       
  3988 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  3989 
       
  3990 	// Forward completion to correct dispatcher object to handle
       
  3991 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  3992 	iDispatcherHolder->GetSmsDispatcher().CallbackStoreSmspListEntry(aError);
       
  3993 
       
  3994 	} // CCtsyDispatcherCallback::CallbackSmsStoreSmspListEntryComp
       
  3995 
       
  3996 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceHangUpComp(
       
  3997 	TInt aError)
       
  3998 /**
       
  3999  *
       
  4000  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4001  * MLtsyDispatchCallControlMultipartyConferenceHangUp::HandleConferenceHangUpReqL()
       
  4002  *
       
  4003  * This callback is used to inform the CTSY of the outcome of the request to
       
  4004  * initiate the hang up the conference call. The LTSY can inform the CTSY of
       
  4005  * successful completion of the hang up process via call status
       
  4006  * notifications as the calls disconnect and then become idle.
       
  4007  * See CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd()
       
  4008  *
       
  4009  * @param aError KErrNone if the create conference request was made to the baseband
       
  4010  * successfully; another error code indicating the error otherwise.
       
  4011  *
       
  4012  * @see RMobileConferenceCall::HangUp()
       
  4013  */
       
  4014 	{
       
  4015 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4016 
       
  4017 	// Forward completion to correct dispatcher object to handle
       
  4018 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4019 	iDispatcherHolder->GetCallControlMultipartyDispatcher().CallbackConferenceHangUp(aError);
       
  4020 
       
  4021 	} // CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceHangUpComp
       
  4022 
       
  4023 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceAddCallComp(TInt aError)
       
  4024 /**
       
  4025  *
       
  4026  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4027  * MLtsyDispatchCallControlMultipartyConferenceAddCall::HandleConferenceAddCallReqL()
       
  4028  *
       
  4029  * Indicates to the CTSY the outcome of the request to
       
  4030  * add a call to a conference call.  If the request was
       
  4031  * successful, subsequent notifications to indicate that the new call
       
  4032  * statuses (to RMobileCall::EStatusConnected) are made by completing call status
       
  4033  * notifications using
       
  4034  * CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd()
       
  4035  * for each call in the conference state.
       
  4036  *
       
  4037  * @param aError KErrNone if the request to add a call to the conference was
       
  4038  * successful. Another error code indicating the failure otherwise.
       
  4039  *
       
  4040  * @see RMobileConferenceCall::AddCall()
       
  4041  */
       
  4042 	{
       
  4043 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4044 
       
  4045 	// Forward completion to correct dispatcher object to handle
       
  4046 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4047 	iDispatcherHolder->GetCallControlMultipartyDispatcher().CallbackConferenceAddCall(aError);
       
  4048 
       
  4049 	} // CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceAddCallComp
       
  4050 
       
  4051 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlMultipartyCreateConferenceComp(TInt aError)
       
  4052 /**
       
  4053  *
       
  4054  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4055  * MLtsyDispatchCallControlMultipartyCreateConference::HandleCreateConferenceReqL()
       
  4056  *
       
  4057  * This callback is used to inform the CTSY of the outcome of the request to
       
  4058  * initiate the creation of a conference call.
       
  4059  *
       
  4060  * @param aError KErrNone if the create conference request was made to the baseband
       
  4061  * successfully; another error code indicating the error otherwise.
       
  4062  *
       
  4063  * @see RMobileConferenceCall::CreateConference()
       
  4064  */
       
  4065 	{
       
  4066 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4067 
       
  4068 	// Forward completion to correct dispatcher object to handle
       
  4069 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4070 	iDispatcherHolder->GetCallControlMultipartyDispatcher().CallbackCreateConference(aError);
       
  4071 
       
  4072 	} // CCtsyDispatcherCallback::CallbackCallControlMultipartyCreateConferenceComp
       
  4073 
       
  4074 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceSwapComp(TInt aError)
       
  4075 /**
       
  4076  *
       
  4077  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4078  * MLtsyDispatchCallControlMultipartyConferenceSwap::HandleConferenceSwapReqL()
       
  4079  *
       
  4080  * Informs the CTSY of the outcome of the request to swap the conference call
       
  4081  * with another connected / held call.
       
  4082  *
       
  4083  * The swap request is fully completed when the LTSY has completed the necessary
       
  4084  * call status notifications to indicate the new state of the calls inside and
       
  4085  * outside of the conference using
       
  4086  * CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd()
       
  4087  *
       
  4088  * @param aError KErrNone to indicate success, another error code indicating the error
       
  4089  * otherwise.
       
  4090  *
       
  4091  * @see RMobileConferenceCall::Swap()
       
  4092  */
       
  4093 	{
       
  4094 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4095 
       
  4096 	// Forward completion to correct dispatcher object to handle
       
  4097 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4098 	iDispatcherHolder->GetCallControlMultipartyDispatcher().CallbackConferenceSwap(aError);
       
  4099 
       
  4100 	} // CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceSwapComp
       
  4101 
       
  4102 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceGoOneToOneComp(TInt aError, TInt aCallId)
       
  4103 /**
       
  4104  *
       
  4105  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4106  * MLtsyDispatchCallControlMultipartyConferenceGoOneToOne::HandleConferenceGoOneToOneReqL()
       
  4107  *
       
  4108  * Informs the CTSY of the outcome of the request to initiate a private communication
       
  4109  * with one of the calls in the conference call.  The other call / calls are expected
       
  4110  * to go on hold whilst the specified call becomes connected. The LTSY informs the
       
  4111  * CTSY of these call status changes using
       
  4112  * CCtsyDispatcherCallback::CallbackCallControlNotifyCallStatusChangeInd()
       
  4113  *
       
  4114  * @param aError KErrNone on success, or another error code indicating the error
       
  4115  * otherwise.
       
  4116  *
       
  4117  * @param aCallId The Call ID to which the One-To-One request refers.
       
  4118  *
       
  4119  * @see RMobileCall::GoOneToOne()
       
  4120  */
       
  4121 	{
       
  4122 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
  4123 
       
  4124 	// Forward completion to correct dispatcher object to handle
       
  4125 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4126 	iDispatcherHolder->GetCallControlMultipartyDispatcher().CallbackConferenceGoOneToOne(aError, aCallId);
       
  4127 
       
  4128 	} // CCtsyDispatcherCallback::CallbackCallControlMultipartyConferenceGoOneToOneComp
       
  4129 
       
  4130 
       
  4131 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallBarringStatusChangeInd(
       
  4132 	TInt aError, RMobilePhone::TMobilePhoneCBCondition aCondition)
       
  4133 /**
       
  4134  *
       
  4135  * Callback function to be used by the Licensee LTSY to indicate a change to a call barring status.
       
  4136  * The Call Barring Supplementary Service is detailed in 3GPP TS 24.088.
       
  4137  *
       
  4138  *
       
  4139  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4140  * @param aCondition The call barring condition that have changed
       
  4141  *
       
  4142  * @see RMobilePhone::NotifyCallBarringStatusChange()
       
  4143  */
       
  4144 	{
       
  4145 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCondition=%d"), aError, aCondition);
       
  4146 
       
  4147 	// Forward completion to correct dispatcher object to handle
       
  4148 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4149 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyCallBarringStatusChange(aError, aCondition);
       
  4150 
       
  4151 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallBarringStatusChangeInd
       
  4152 
       
  4153 
       
  4154 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesReceiveUssdMessageInd(
       
  4155 	TInt aError, const TDesC8& aMessage, TUint8 aDcs,
       
  4156 	RMobileUssdMessaging::TMobileUssdMessageType aType,
       
  4157 	RMobileUssdMessaging::TMobileUssdDataFormat aFormat)
       
  4158 /**
       
  4159  * Callback function to be used by the Licensee LTSY to indicate that a
       
  4160  * USSD message was received from the network. The USSD Supplementary Service
       
  4161  * is detailed in 3GPP TS 24.090.
       
  4162  *
       
  4163  *
       
  4164  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4165  * @param aMessage The message that was received
       
  4166  * @param aDcs The Data Coding Scheme of the received USSD message
       
  4167  * @param aType The message type (depend on the invoke part of the message:
       
  4168  * 									UnstructuredSS-Notify - RMobileUssdMessaging::EUssdMTNotify;
       
  4169  * 									UnstructuredSS-Request - RMobileUssdMessaging::EUssdMTRequest;
       
  4170  * 									ProcessUnstructuredSS-Request - RMobileUssdMessaging::EUssdMTReply)
       
  4171  * @param aFormat The message format
       
  4172  *
       
  4173  * @see RMobileUssdMessaging::ReceiveMessage()
       
  4174  */
       
  4175 	{
       
  4176 	//TSYLOGENTRYEXITARGS(_L8("aError=%d, aDcs=%d, aType=%d, aFormat=%d"), aError, aDcs, aType, aFormat);
       
  4177 	//logging the regular method (above) cases the test to hange and enter the debug monitor on hardware.
       
  4178 	//initial invetigation shows a "ExitInfo 2,23,USER"  
       
  4179 	
       
  4180 	TSYLOGENTRYEXIT;
       
  4181 	LOG(_L8("aError=%d, aDcs=%d, aType=%d, aFormat=%d"),aError, aDcs, aType, aFormat)
       
  4182 		
       
  4183 	// Forward completion to correct dispatcher object to handle
       
  4184 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4185 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackReceiveUssdMessage(aError, aMessage, aDcs, aType, aFormat);
       
  4186 
       
  4187 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesReceiveUssdMessageInd
       
  4188 
       
  4189 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallWaitingStatusChangeInd(
       
  4190 	TInt aError,
       
  4191     RMobilePhone::TMobileService aServiceGroup,
       
  4192     RMobilePhone::TMobilePhoneCWStatus aStatus)
       
  4193 /**
       
  4194  *
       
  4195  * Callback function to be used by the Licensee LTSY to indicate a change to
       
  4196  * a call waiting status. The Call Waiting Supplementary Service
       
  4197  * is detailed in 3GPP TS 24.083.
       
  4198  *
       
  4199  *
       
  4200  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4201  * @param aServiceGroup The relevant service group
       
  4202  * @param aStatus The new call waiting status
       
  4203  *
       
  4204  * @see RMobilePhone::NotifyCallWaitingStatusChange()
       
  4205  */
       
  4206 	{
       
  4207 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aServiceGroup=%d, aStatus=%d"), aError, aServiceGroup, aStatus);
       
  4208 
       
  4209 	// Forward completion to correct dispatcher object to handle
       
  4210 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4211 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyCallWaitingStatusChange(aError, aServiceGroup, aStatus);
       
  4212 
       
  4213 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallWaitingStatusChangeInd
       
  4214 
       
  4215 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallForwardingStatusChangeInd(
       
  4216 	TInt aError, RMobilePhone::TMobilePhoneCFCondition aCallForwardingCondition)
       
  4217 /**
       
  4218  *
       
  4219  * Callback function to be used by the Licensee LTSY to indicate a Call Forwarding status changes.
       
  4220  * The Call Forwarding Supplementary Service is detailed in 3GPP TS 24.082.
       
  4221  *
       
  4222  *
       
  4223  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4224  * @param aCallForwardingCondition The call forwarding condition that changed status
       
  4225  *
       
  4226  * @see RMobilePhone::NotifyCallForwardingStatusChange()
       
  4227  */
       
  4228 	{
       
  4229 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallForwardingCondition=%d"), aError, aCallForwardingCondition);
       
  4230 
       
  4231 	// Forward completion to correct dispatcher object to handle
       
  4232 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4233 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyCallForwardingStatusChange(aError,aCallForwardingCondition);
       
  4234 
       
  4235 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallForwardingStatusChangeInd
       
  4236 
       
  4237 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallForwardingActiveInd(
       
  4238 	TInt aError, RMobilePhone::TMobileService aServiceGroup, RMobilePhone::TMobilePhoneCFActive aActiveType)
       
  4239 /**
       
  4240  *
       
  4241  * Callback function to be used by the Licensee LTSY to indicate
       
  4242  * when a call is made on a line and a call forwarding service is active
       
  4243  * on this line at the time. The Call Forwarding Supplementary Service is
       
  4244  * detailed in 3GPP TS 24.082.
       
  4245  *
       
  4246  *
       
  4247  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4248  * @param aServiceGroup The basic service group the call forwarding is active.
       
  4249  * @param aActiveType Specifies whether CF unconditional or one of the conditional CF services is active
       
  4250  *
       
  4251  * @see RMobilePhone::NotifyCallForwardingActive()
       
  4252  */
       
  4253 	{
       
  4254 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4255 
       
  4256 	// Forward completion to correct dispatcher object to handle
       
  4257 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4258 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyCallForwardingActive(aError, aServiceGroup, aActiveType);
       
  4259 
       
  4260 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyCallForwardingActiveInd
       
  4261 
       
  4262 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSendNetworkServiceRequestNoFdnCheckComp(
       
  4263 	TInt aError)
       
  4264 /**
       
  4265  *
       
  4266  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4267  * MLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheck::HandleSendNetworkServiceRequestNoFdnCheckReqL()
       
  4268  *
       
  4269  * Used to indicate to the Common TSY the outcome of sending a network service request without FDN check.
       
  4270  *
       
  4271  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4272  *
       
  4273  * @see RMobilePhone::SendNetworkServiceRequestNoFdnCheck()
       
  4274  */
       
  4275 	{
       
  4276 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4277 
       
  4278 	// Forward completion to correct dispatcher object to handle
       
  4279 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4280 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSendNetworkServiceRequestNoFdnCheck(aError);
       
  4281 
       
  4282 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSendNetworkServiceRequestNoFdnCheckComp
       
  4283 
       
  4284 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallWaitingStatusComp(
       
  4285 	TInt aError, const CMobilePhoneCWList& aCallWaitingList)
       
  4286 /**
       
  4287  *
       
  4288  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4289  * MLtsyDispatchSupplementaryServicesGetCallWaitingStatus::HandleGetCallWaitingStatusReqL()
       
  4290  *
       
  4291  * Used to return to the Common TSY the status of the call waiting service.
       
  4292  *
       
  4293  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4294  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4295  * @param aCallWaitingList The list of the waiting calls status
       
  4296  *
       
  4297  * @see CRetrieveMobilePhoneCWList::Start()
       
  4298  */
       
  4299 	{
       
  4300 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallWaitingList.Enumerate=%d"), aError, aCallWaitingList.Enumerate());
       
  4301 
       
  4302 	// Forward completion to correct dispatcher object to handle
       
  4303 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4304 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackGetCallWaitingStatus(aError, aCallWaitingList);
       
  4305 
       
  4306 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallWaitingStatusComp
       
  4307 
       
  4308 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSendNetworkServiceRequestComp(
       
  4309 	TInt aError)
       
  4310 /**
       
  4311  *
       
  4312  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4313  * MLtsyDispatchSupplementaryServicesSendNetworkServiceRequest::HandleSendNetworkServiceRequestReqL()
       
  4314  *
       
  4315  * Used to indicate to the Common TSY the outcome of sending a network service request with FDN check.
       
  4316  *
       
  4317  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4318  *
       
  4319  * @see RMobilePhone::SendNetworkServiceRequest()
       
  4320  */
       
  4321 	{
       
  4322 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4323 
       
  4324 	// Forward completion to correct dispatcher object to handle
       
  4325 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4326 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSendNetworkServiceRequest(aError);
       
  4327 
       
  4328 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSendNetworkServiceRequestComp
       
  4329 
       
  4330 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallBarringStatusComp(
       
  4331 	TInt aError, const CMobilePhoneCBList& aCallBarringList)
       
  4332 /**
       
  4333  *
       
  4334  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4335  * MLtsyDispatchSupplementaryServicesGetCallBarringStatus::HandleGetCallBarringStatusReqL()
       
  4336  *
       
  4337  * Used to return to the Common TSY the status of the call barring service.
       
  4338  *
       
  4339  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4340  * @param aCallBarringList the call barring list
       
  4341  *
       
  4342  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4343  *
       
  4344  * @see CRetrieveMobilePhoneCBList::Start()
       
  4345  */
       
  4346 	{
       
  4347 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallBarringList.Enumerate=%d"), aError, aCallBarringList.Enumerate());
       
  4348 
       
  4349 	// Forward completion to correct dispatcher object to handle
       
  4350 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4351 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackGetCallBarringStatus(aError, aCallBarringList);
       
  4352 
       
  4353 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallBarringStatusComp
       
  4354 
       
  4355 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallBarringStatusComp(TInt aError)
       
  4356 /**
       
  4357  *
       
  4358  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4359  * MLtsyDispatchSupplementaryServicesSetCallBarringStatus::HandleSetCallBarringStatusReqL()
       
  4360  *
       
  4361  * Used to indicate to the Common TSY the outcome of setting the call barring service.
       
  4362  *
       
  4363  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4364  *
       
  4365  * @see RMobilePhone::SetCallBarringStatus()
       
  4366  */
       
  4367 	{
       
  4368 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4369 
       
  4370 	// Forward completion to correct dispatcher object to handle
       
  4371 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4372 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSetCallBarringStatus(aError);
       
  4373 
       
  4374 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallBarringStatusComp
       
  4375 
       
  4376 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallForwardingStatusComp(
       
  4377 	TInt aError)
       
  4378 /**
       
  4379  *
       
  4380  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4381  * MLtsyDispatchSupplementaryServicesSetCallForwardingStatus::HandleSetCallForwardingStatusReqL()
       
  4382  *
       
  4383  * Used to indicate to the Common TSY the outcome of setting the call forwarding service.
       
  4384  *
       
  4385  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4386  *
       
  4387  * @see RMobilePhone::SetCallForwardingStatus()
       
  4388  */
       
  4389 	{
       
  4390 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4391 
       
  4392 	// Forward completion to correct dispatcher object to handle
       
  4393 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4394 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSetCallForwardingStatus(aError);
       
  4395 
       
  4396 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallForwardingStatusComp
       
  4397 
       
  4398 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallWaitingStatusComp(
       
  4399 	TInt aError)
       
  4400 /**
       
  4401  *
       
  4402  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4403  * MLtsyDispatchSupplementaryServicesSetCallWaitingStatus::HandleSetCallWaitingStatusReqL()
       
  4404  *
       
  4405  * Used to indicate to the Common TSY the outcome of setting the call waiting service.
       
  4406  *
       
  4407  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4408  *
       
  4409  * @see RMobilePhone::SetCallWaitingStatus()
       
  4410  */
       
  4411 	{
       
  4412 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4413 
       
  4414 	// Forward completion to correct dispatcher object to handle
       
  4415 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4416 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSetCallWaitingStatus(aError);
       
  4417 
       
  4418 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSetCallWaitingStatusComp
       
  4419 
       
  4420 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSetSsPasswordComp(TInt aError)
       
  4421 /**
       
  4422  *
       
  4423  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4424  * MLtsyDispatchSupplementaryServicesSetSsPassword::HandleSetSsPasswordReqL()
       
  4425  *
       
  4426  * Used to indicate to the Common TSY the outcome of setting the supplementary services password.
       
  4427  *
       
  4428  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4429  *
       
  4430  * @see RMobilePhone::SetSSPassword()
       
  4431  */
       
  4432 	{
       
  4433 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4434 
       
  4435 	// Forward completion to correct dispatcher object to handle
       
  4436 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4437 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSetSsPassword(aError);
       
  4438 
       
  4439 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSetSsPasswordComp
       
  4440 
       
  4441 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallForwardingStatusComp(
       
  4442 	TInt aError, const CMobilePhoneCFList& aCallForwardingList)
       
  4443 /**
       
  4444  *
       
  4445  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4446  * MLtsyDispatchSupplementaryServicesGetCallForwardingStatus::HandleGetCallForwardingStatusReqL()
       
  4447  *
       
  4448  * Used to return to the Common TSY the status of the call forwarding service.
       
  4449  *
       
  4450  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4451  * @param aCallForwardingList the call forwarding list
       
  4452  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4453  *
       
  4454  * @see CRetrieveMobilePhoneCFList::Start()
       
  4455  */
       
  4456 	{
       
  4457 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallForwardingList.Enumerate()=%d"), aError, aCallForwardingList.Enumerate());
       
  4458 
       
  4459 	// Forward completion to correct dispatcher object to handle
       
  4460 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4461 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackGetCallForwardingStatus(aError,aCallForwardingList);
       
  4462 
       
  4463 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesGetCallForwardingStatusComp
       
  4464 
       
  4465 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdMessageComp(TInt aError)
       
  4466 /**
       
  4467  *
       
  4468  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4469  * MLtsyDispatchSupplementaryServicesSendUssdMessage::HandleSendUssdMessageReqL()
       
  4470  *
       
  4471  * Used to indicate to the Common TSY the outcome of sending an USSD message.
       
  4472  *
       
  4473  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4474  *
       
  4475  * @see RMobileUssdMessaging::SendMessage()
       
  4476  */
       
  4477 	{
       
  4478 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4479 
       
  4480 	// Forward completion to correct dispatcher object to handle
       
  4481 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4482 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSendUssdMessage(aError);
       
  4483 
       
  4484 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdMessageComp
       
  4485 
       
  4486 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdMessageNoFdnCheckComp(TInt aError)
       
  4487 /**
       
  4488  *
       
  4489  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4490  * MLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheck::HandleSendUssdMessageNoFdnCheckReqL()
       
  4491  *
       
  4492  * Used to indicate to the Common TSY the outcome of sending an USSD message.
       
  4493  *
       
  4494  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4495  *
       
  4496  * @see RMobileUssdMessaging::SendMessageNoFdnCheck()
       
  4497  */
       
  4498 	{
       
  4499 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4500 
       
  4501 	// Forward completion to correct dispatcher object to handle
       
  4502 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4503 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSendUssdMessageNoFdnCheck(aError);
       
  4504 
       
  4505 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdMessageNoFdnCheckComp
       
  4506 
       
  4507 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdReleaseComp(
       
  4508 	TInt aError, TUint8 aOpCode, const TDesC& aAdditionalInfo)
       
  4509 /**
       
  4510  *
       
  4511  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4512  * MLtsyDispatchSupplementaryServicesSendUssdRelease::HandleSendUssdReleaseReqL()
       
  4513  *
       
  4514  * Used to indicate to the Common TSY the outcome of sending an USSD release.
       
  4515  *
       
  4516  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4517  * @param aOpCode The Operation Code.
       
  4518  * @param aAdditionalInfo Any additional information
       
  4519  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4520  *
       
  4521  * @see RMobileUssdMessaging::SendRelease()
       
  4522  */
       
  4523 	{
       
  4524 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aOpCode=%d"), aError, aOpCode);
       
  4525 
       
  4526 	// Forward completion to correct dispatcher object to handle
       
  4527 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4528 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackSendUssdRelease(aError, aOpCode, aAdditionalInfo);
       
  4529 
       
  4530 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesSendUssdReleaseComp
       
  4531 
       
  4532 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesClearBlacklistComp(TInt aError)
       
  4533 /**
       
  4534  *
       
  4535  * Callback function to be used by the Licensee LTSY to complete a pending
       
  4536  * MLtsyDispatchSupplementaryServicesClearBlacklist::HandleClearBlacklistL()
       
  4537  *
       
  4538  * Used to indicate to the Common TSY the outcome of clearing the blacklist.
       
  4539  *
       
  4540  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4541  *
       
  4542  * @see RMmCustomAPI::ClearCallBlackList()
       
  4543  * @see RMobilePhone::ClearBlacklist()
       
  4544  */
       
  4545 	{
       
  4546 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4547 
       
  4548 	// Forward completion to correct dispatcher object to handle
       
  4549 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4550 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackClearBlacklist(aError);
       
  4551 
       
  4552 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesClearBlacklistComp
       
  4553 
       
  4554 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesGetDiagnosticOctetsInd(
       
  4555 	TInt aError,  TInt aCallId, TUint8 aOctet)
       
  4556 /**
       
  4557  *
       
  4558  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4559  * the 5th octet of the cause information element for supplementary services
       
  4560  * The cause information element is detailed in 3GPP TS 24.008.
       
  4561  *
       
  4562  *
       
  4563  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4564  * @param aCallId The Call ID of the call whose cause is set.
       
  4565  * @param aOctet The octet to set.
       
  4566  *
       
  4567  * @see RMmCustomAPI::GetDiagnosticInfo()
       
  4568  */
       
  4569 	{
       
  4570 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d, aOctet=0x%x"), aError, aCallId, aOctet);
       
  4571 
       
  4572 	// Forward completion to correct dispatcher object to handle
       
  4573 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4574 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackGetDiagnosticOctets(aError, aCallId, aOctet);
       
  4575 
       
  4576 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesGetDiagnosticOctetsInd
       
  4577 
       
  4578 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventForwardModeInd(
       
  4579 	TInt aError, RMmCustomAPI::TSsType aType, RMmCustomAPI::TSsMode aMode, RMmCustomAPI::TSsForwMode aForwardMode)
       
  4580 /**
       
  4581  *
       
  4582  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4583  * an NotifySS message from the network about a call forward mode. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4584  * and the NotifySS usage for call forward mode change is detailed in 3GPP TS 24.082.
       
  4585  *
       
  4586  *
       
  4587  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4588  * @param aType The type of service.
       
  4589  * @param aMode The mode of the service.
       
  4590  * @param aForwardMode The forward mode (SS-Notification).
       
  4591  *
       
  4592  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4593  */
       
  4594 	{
       
  4595 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d, aMode=%d, aForwardMode=%d") ,
       
  4596       aError, aType, aMode, aForwardMode);
       
  4597 	// Forward completion to correct dispatcher object to handle
       
  4598 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4599 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventForwardMode(aError, aType, aMode, aForwardMode);
       
  4600 
       
  4601 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventForwardModeInd
       
  4602 
       
  4603 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventCallWaitingInd(
       
  4604 	TInt aError, RMmCustomAPI::TSsMode aMode, TBool aCallIsWaiting)
       
  4605 /**
       
  4606  *
       
  4607  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4608  * an NotifySS message from the network about a call waiting state. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4609  * and the NotifySS usage for waiting state is detailed in 3GPP TS 24.083.
       
  4610  *
       
  4611  *
       
  4612  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4613  * @param aMode The mode of the service.
       
  4614  * @param aCallIsWaiting An indicator of the call waiting state of the call (callIsWaiting-Indicator).
       
  4615  *
       
  4616  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4617  */
       
  4618 	{
       
  4619 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMode=%d, aCallIsWaiting=%d") ,
       
  4620       aError, aMode, aCallIsWaiting);
       
  4621 	// Forward completion to correct dispatcher object to handle
       
  4622 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4623 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventCallWaiting(aError, aMode, aCallIsWaiting);
       
  4624 
       
  4625 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventCallWaitingInd
       
  4626 
       
  4627 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventHoldModeInd(
       
  4628 		TInt aError, RMmCustomAPI::TSsType aType, RMmCustomAPI::TSsMode aMode, RMmCustomAPI::TSsHoldMode aHoldMode)
       
  4629 /**
       
  4630  *
       
  4631  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4632  * an NotifySS message from the network about the hold state of a call. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4633  * and the NotifySS usage for hold mode is detailed in 3GPP TS 24.083, 3GPP TS 24.084 and 3GPP TS 24.091.
       
  4634  *
       
  4635  *
       
  4636  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4637  * @param aType The type of service.
       
  4638  * @param aMode The mode of the service.
       
  4639  * @param aHoldMode The hold mode (callOnHold-Indicator).
       
  4640  *
       
  4641  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4642  */
       
  4643 	{
       
  4644 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d, aMode=%d, aHoldMode=%d") ,
       
  4645       aError, aType, aMode, aHoldMode);
       
  4646 	// Forward completion to correct dispatcher object to handle
       
  4647 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4648 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventHoldMode(aError, aType, aMode, aHoldMode);
       
  4649 
       
  4650 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventHoldModeInd
       
  4651 
       
  4652 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventConfrenceInd(
       
  4653 	TInt aError, RMmCustomAPI::TSsType aType, RMmCustomAPI::TSsMode aMode, TBool aConferenceIndicator)
       
  4654 /**
       
  4655  *
       
  4656  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4657  * an NotifySS message from the network about a confrence call. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4658  * and the NotifySS usage for confrence call is detailed in 3GPP TS 24.084.
       
  4659  *
       
  4660  *
       
  4661  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4662  * @param aType The type of service.
       
  4663  * @param aMode The mode of the service.
       
  4664  * @param aConferenceIndicator The confrence call indicator (mpty-Indicator).
       
  4665  *
       
  4666  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4667  */
       
  4668 	{
       
  4669 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d, aMode=%d, aConferenceIndicator=%d") ,
       
  4670       aError, aType, aMode, aConferenceIndicator);
       
  4671 	// Forward completion to correct dispatcher object to handle
       
  4672 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4673 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventConfrence(aError, aType, aMode, aConferenceIndicator);
       
  4674 
       
  4675 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventConfrenceInd
       
  4676 
       
  4677 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventCugInd(
       
  4678 	TInt aError, RMmCustomAPI::TSsType aType, RMmCustomAPI::TSsMode aMode, TUint16 aCugIndex)
       
  4679 /**
       
  4680  *
       
  4681  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4682  * an NotifySS message from the network about a closed user group (CUG) service. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4683  * and the NotifySS usage for CUG is detailed in 3GPP TS 24.085.
       
  4684  *
       
  4685  *
       
  4686  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4687  * @param aType The type of service.
       
  4688  * @param aMode The mode of the service.
       
  4689  * @param aCugIndex The Index associated with the invoked CUG (cug-Index).
       
  4690  *
       
  4691  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4692  */
       
  4693 	{
       
  4694 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d, aMode=%d, aCugIndex=%d") ,
       
  4695       aError, aType, aMode, aCugIndex);
       
  4696 	// Forward completion to correct dispatcher object to handle
       
  4697 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4698 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventCug(aError, aType, aMode, aCugIndex);
       
  4699 
       
  4700 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventCugInd
       
  4701 
       
  4702 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventClirSuppressionInd(
       
  4703 	TInt aError, RMmCustomAPI::TSsMode aMode, TBool aClirSuppressionRejected)
       
  4704 /**
       
  4705  *
       
  4706  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4707  * an NotifySS message from the network about a Calling Line Identification Restriction (CLIR) service. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4708  * and the NotifySS usage for CLIR is detailed in 3GPP TS 24.081.
       
  4709  *
       
  4710  *
       
  4711  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4712  * @param aMode The mode of the service.
       
  4713  * @param aClirSuppressionRejected An indicator that indicate if the CLIR override has not been performed (clirSuppressionRejected).
       
  4714  *
       
  4715  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4716  */
       
  4717 	{
       
  4718 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMode=%d, aClirSuppressionRejected=%d") ,
       
  4719       aError, aMode, aClirSuppressionRejected);
       
  4720 	// Forward completion to correct dispatcher object to handle
       
  4721 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4722 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventClirSuppression(aError, aMode, aClirSuppressionRejected);
       
  4723 
       
  4724 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventClirSuppressionInd
       
  4725 
       
  4726 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventEctCallStateInd(
       
  4727 	TInt aError, RMmCustomAPI::TSsType aType, RMmCustomAPI::TSsMode aMode,
       
  4728 	RMmCustomAPI::TSsEctState aEctCallState, RMmCustomAPI::TSsChoice aEctChoice, const TDesC& aRemotePartyNumber)
       
  4729 /**
       
  4730  *
       
  4731  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4732  * an NotifySS message from the network about a Explicit Call Transfer (ECT) service. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4733  * and the NotifySS usage for ECT is detailed in 3GPP TS 24.091.
       
  4734  *
       
  4735  *
       
  4736  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4737  * @param aType The type of service.
       
  4738  * @param aMode The mode of the service.
       
  4739  * @param aEctCallState The ECT state (ect-Indicator.ect-CallState).
       
  4740  * @param aEctChoice The ECT presentation (ect-Indicator.rdn).
       
  4741  * @param aRemotePartyNumber The remote party number (ect-Indicator.rdn).
       
  4742  *
       
  4743  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4744  */
       
  4745 	{
       
  4746 	TSYLOGENTRYEXITARGS(_L8("err=%d, type=%d ") ,
       
  4747       aError, aType);
       
  4748 	// Forward completion to correct dispatcher object to handle
       
  4749 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4750 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEventEctCallState(aError, aType, aMode, aEctCallState, aEctChoice, aRemotePartyNumber);
       
  4751 
       
  4752 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventEctCallStateInd
       
  4753 
       
  4754 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventInd(
       
  4755 	TInt aError, RMmCustomAPI::TSsType aType, RMmCustomAPI::TSsMode aMode)
       
  4756 /**
       
  4757  *
       
  4758  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4759  * an NotifySS message without another specific callback function from the network. The NotifySS coding is detailed in 3GPP TS 24.080,
       
  4760  * and the NotifySS usage is detailed in all the 3GPP supplementary services specs.
       
  4761  *
       
  4762  *
       
  4763  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4764  * @param aType The type of service.
       
  4765  * @param aMode The mode of the service.
       
  4766  *
       
  4767  * @see RMmCustomAPI::NotifySsNetworkEvent()
       
  4768  */
       
  4769 	{
       
  4770 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aType=%d, aMode=%d") ,
       
  4771       aError, aType, aMode);
       
  4772 	// Forward completion to correct dispatcher object to handle
       
  4773 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4774 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyNetworkEvent(aError, aType, aMode);
       
  4775 
       
  4776 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyNetworkEventInd
       
  4777 
       
  4778 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyAdditionalInfoInd(
       
  4779 	TInt aError, TUint8 aOperationCode, const TDesC8& aAdditionalInfo)
       
  4780 /**
       
  4781  *
       
  4782  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4783  * supplementary services additional info. The supplementary services coding are detailed in 3GPP TS 24.080
       
  4784  *
       
  4785  *
       
  4786  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4787  * @param aOperationCode The operational code.
       
  4788  * @param aAdditionalInfo Any additional information.
       
  4789  *
       
  4790  * @see RMmCustomAPI::SsAdditionalInfoNotification()
       
  4791  */
       
  4792 	{
       
  4793 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aOperationCode=%d"), aError, aOperationCode);
       
  4794 
       
  4795 	// Forward completion to correct dispatcher object to handle
       
  4796 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4797 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyAdditionalInfo(aError, aOperationCode, aAdditionalInfo);
       
  4798 
       
  4799 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyAdditionalInfoInd
       
  4800 
       
  4801 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyRequestCompleteInd(
       
  4802 	TInt aError, TInt aStatus)
       
  4803 /**
       
  4804  *
       
  4805  * Callback function to be used by the Licensee LTSY to inform the CTSY about
       
  4806  * a completion of a supplementary services request. The supplementary services coding are detailed in 3GPP TS 24.080
       
  4807  *
       
  4808  *
       
  4809  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4810  * @param aStatus The completion status.
       
  4811  *
       
  4812  * @see RMmCustomAPI::SsRequestCompleteNotification()
       
  4813  */
       
  4814 	{
       
  4815 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aStatus=%d"), aError, aStatus);
       
  4816 
       
  4817 	// Forward completion to correct dispatcher object to handle
       
  4818 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4819 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifyRequestComplete(aError, aStatus);
       
  4820 
       
  4821 	} // CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifyRequestCompleteInd
       
  4822 
       
  4823 EXPORT_C void CCtsyDispatcherCallback::CallbackSupplementaryServicesNotifySendNetworkServiceRequestInd(TInt aError, RMobilePhone::TMobilePhoneNotifySendSSOperation aOperationCode, const TDesC& aAdditionalInfo)
       
  4824 /**
       
  4825  * Callback function to be used by the Licensee LTSY to notify the client for send network service 
       
  4826  * request invocation and request completion events.
       
  4827  * 
       
  4828  *
       
  4829  * @param The Operation Code for a Send SS Invoke or Return result events, or the Error 
       
  4830  * or Problem Code for a Send SS Return Error or Reject events.
       
  4831  * @param The additional information (parameters) for a Send SS Invoke or Return result or Return Error events.
       
  4832  * This is not used for a Send SS Reject event
       
  4833  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4834  * 
       
  4835  * @see RMobilePhone::NotifySendNetworkServiceRequest()
       
  4836  */
       
  4837 	{
       
  4838 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aOperationCode=%d"), aError, aOperationCode);
       
  4839 		
       
  4840 	// Forward completion to correct dispatcher object to handle
       
  4841 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4842 	iDispatcherHolder->GetSupplementaryServicesDispatcher().CallbackNotifySendNetworkServiceRequest(aError, aOperationCode, aAdditionalInfo);
       
  4843 	} //CCtsyDispatcherCallback::CallbackPhoneNotifySendNetworkServiceRequestInd
       
  4844 
       
  4845 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketAttachModeChangeInd(TInt aError, RPacketService::TPreferredBearer aBearer)
       
  4846 /**
       
  4847  *
       
  4848  * Callback function to be used by the Licensee LTSY to notify change in the
       
  4849  * attach mode (IPC EPacketNotifyAttachModeChange).
       
  4850  *
       
  4851  *
       
  4852  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4853  * @param aBearer The new bearer.
       
  4854  * @see RPacketService::NotifyAttachModeChange()
       
  4855  */
       
  4856 	{
       
  4857 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aBearer=%d"), aError, aBearer);
       
  4858 
       
  4859 	// Forward completion to correct dispatcher object to handle
       
  4860 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4861 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPacketAttachModeChange(aError, aBearer);
       
  4862 
       
  4863 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketAttachModeChangeInd
       
  4864 
       
  4865 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyQosProfileChangedGPRSInd(
       
  4866 	TInt aError, const TDesC& aContextName,
       
  4867 	const RPacketQoS::TQoSGPRSNegotiated& aQoSGPRSNegotiated)
       
  4868 /**
       
  4869  *
       
  4870  * Callback function to be used by the Licensee LTSY to notify change in the GPRS
       
  4871  * QoS profile (IPCEPacketQoSNotifyProfileChanged).
       
  4872  *
       
  4873  *
       
  4874  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4875  * @param aContextName The context name.
       
  4876  * @param aQoSGPRSNegotiated Context negotiated GPRS QOS profile to be returned to the CTSY Dispatcher.
       
  4877  *
       
  4878  * @see RPacketQoS::NotifyProfileChanged()
       
  4879  *
       
  4880  */
       
  4881 	{
       
  4882 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  4883 
       
  4884 	// Forward completion to correct dispatcher object to handle
       
  4885 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4886 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyQosProfileChange(aError,
       
  4887 			aContextName, aQoSGPRSNegotiated);
       
  4888 
       
  4889 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyQosProfileChangedInd
       
  4890 
       
  4891 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyQosProfileChangedR99Ind(
       
  4892 	TInt aError, const TDesC& aContextName,
       
  4893 	const RPacketQoS::TQoSR99_R4Negotiated& aQoSR99_R4Negotiated)
       
  4894 /**
       
  4895  *
       
  4896  * Callback function to be used by the Licensee LTSY to notify change in the R99R4
       
  4897  * QoS profile (IPCEPacketQoSNotifyProfileChanged).
       
  4898  *
       
  4899  *
       
  4900  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  4901  * @param aContextName context name to be returned to the CTSY Dispatcher.
       
  4902  * @param aQoSR99_R4Negotiated context negotiated R99 QOS profile to be returned to the CTSY Dispatcher.
       
  4903  *
       
  4904  * @see RPacketQoS::NotifyProfileChanged()
       
  4905  *
       
  4906  */
       
  4907 	{
       
  4908 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  4909 
       
  4910 	// Forward completion to correct dispatcher object to handle
       
  4911 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4912 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyQosProfileChange(aError, aContextName, aQoSR99_R4Negotiated);
       
  4913 
       
  4914 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyQosProfileChangedInd
       
  4915 
       
  4916 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyQosProfileChangedR5Ind(
       
  4917 	TInt aError, const TDesC& aContextName,
       
  4918 	const RPacketQoS::TQoSR5Negotiated& aQoSR5Negotiated)
       
  4919 /**
       
  4920  *
       
  4921  * Callback function to be used by the Licensee LTSY to notify change in the R5 QoS
       
  4922  * profile (IPCEPacketQoSNotifyProfileChanged).
       
  4923  *
       
  4924  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4925  * @param aContextName context name to be returned to the CTSY Dispatcher.
       
  4926  * @param aQoSR99_R4Negotiated context negotiated R5 QOS profile to be returned to the CTSY Dispatcher.
       
  4927  *
       
  4928  * @see RPacketQoS::NotifyProfileChanged()
       
  4929  *
       
  4930  */
       
  4931 	{
       
  4932 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  4933 
       
  4934 	// Forward completion to correct dispatcher object to handle
       
  4935 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4936 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyQosProfileChange(aError, aContextName, aQoSR5Negotiated);
       
  4937 
       
  4938 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyQosProfileChangedInd
       
  4939 
       
  4940 
       
  4941 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyRatTransferCapsChangeInd(TInt aError, TDynamicTransferCapsFlags aCaps)
       
  4942 /**
       
  4943  *
       
  4944  *
       
  4945  * Callback function to be used by the Licensee LTSY to notify change in the transfer
       
  4946  * capabalites (EPacketNotifyTransferCapsIPC).
       
  4947  *
       
  4948  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  4949  * @param aCaps the capabilities flag
       
  4950  *
       
  4951  * @see RPacketContext::NotifyDynamicCapsChange()
       
  4952  */
       
  4953 	{
       
  4954 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4955 
       
  4956 	// Forward completion to correct dispatcher object to handle
       
  4957 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4958 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyRatTransferCapsChange(aError, aCaps);
       
  4959 
       
  4960 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyRatTransferCapsChangeInd
       
  4961 
       
  4962 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketMsClassChangeInd(
       
  4963 	TInt aError, RPacketService::TMSClass aMSClass)
       
  4964 /**
       
  4965  * Callback function to be used by the Licensee LTSY to notify change in
       
  4966  * the MS class (EPacketNotifyMSClassChange).
       
  4967  *
       
  4968  * @param aError The error code.
       
  4969  * @param aMSClass MS class to be returned to the CTSY Dispatcher.
       
  4970  *
       
  4971  * @see RPacketService::NotifyMSClassChange()
       
  4972  */
       
  4973 	{
       
  4974 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  4975 
       
  4976 	// Forward completion to correct dispatcher object to handle
       
  4977 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4978 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPacketMsClassChange(aError, aMSClass);
       
  4979 
       
  4980 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketMsClassChangeInd
       
  4981 
       
  4982 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketDynamicCapsChangeInd(
       
  4983 	TInt aError, TBool aGprsIsSupportedOnCell, TBool aCsServicesIsSupportedOnCell)
       
  4984 /**
       
  4985  * Callback function to be used by the Licensee LTSY to notify change in the
       
  4986  * Dynamic capabalites (EPacketNotifyDynamicCapsChange).
       
  4987  *
       
  4988  * @param aError The error code.
       
  4989  * @param aGprsIsSupportedOnCell Indication whether GPRS is supported and should be returned to the CTSY Dispatcher.
       
  4990  * @param aCsServicesIsSupportedOnCell Indication whether CS services are supported and should be returned to the CTSY Dispatcher.
       
  4991  *
       
  4992  * @see RPacketService::NotifyDynamicCapsChange()
       
  4993  */
       
  4994 	{
       
  4995 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aGprsIsSupportedOnCell=%d, aCsServicesIsSupportedOnCell=%d"), aError, aGprsIsSupportedOnCell, aCsServicesIsSupportedOnCell);
       
  4996 
       
  4997 	// Forward completion to correct dispatcher object to handle
       
  4998 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  4999 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPacketDynamicCapsChange(aError, aGprsIsSupportedOnCell, aCsServicesIsSupportedOnCell);
       
  5000 
       
  5001 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketDynamicCapsChangeInd
       
  5002 
       
  5003 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextAddedInd(TInt aError,
       
  5004 		const TDesC& aContextName)
       
  5005 /**
       
  5006  * Callback function to be used by the Licensee LTSY to notify an added
       
  5007  * context(EPacketNotifyContextAdded).
       
  5008  *
       
  5009  * @param aError The error code.
       
  5010  * @param aContextName PDP context name to be returned to the CTSY Dispatcher.
       
  5011  *
       
  5012  * @see RPacketService::NotifyContextAdded()
       
  5013  */
       
  5014 	{
       
  5015 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5016 
       
  5017 	// Forward completion to correct dispatcher object to handle
       
  5018 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5019 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPdpContextAdded(aError, aContextName);
       
  5020 
       
  5021 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextAddedInd
       
  5022 
       
  5023 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyNetworkInitiatedContextActivationRequestInd(
       
  5024 	TInt aError, const RPacketContext::TContextConfigGPRS& aContextConfigGPRS)
       
  5025 /**
       
  5026  *
       
  5027  * Callback function to be used by the Licensee LTSY to notify context
       
  5028  * activation requested (IPC EPacketNotifyContextActivationRequested)
       
  5029  *
       
  5030  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5031  * @param aContextConfigGPRS The GPRS context configuration to be returned to the CTSY Dispatcher.
       
  5032  */
       
  5033 	{
       
  5034 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPdpType=%d"), aError, aContextConfigGPRS.iPdpType);
       
  5035 
       
  5036 	// Forward completion to correct dispatcher object to handle
       
  5037 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5038 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyNetworkInitiatedContextActivationRequest(aError, aContextConfigGPRS);
       
  5039 
       
  5040 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyNetworkInitiatedContextActivationRequestInd
       
  5041 
       
  5042 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyNetworkInitiatedContextActivationRequestInd(
       
  5043 	TInt aError, const RPacketContext::TContextConfigR99_R4& aContextConfigR99_R4)
       
  5044 /**
       
  5045  *
       
  5046  * Callback function to be used by the Licensee LTSY to notify context
       
  5047  * activation requested (IPC EPacketNotifyContextActivationRequested)
       
  5048  *
       
  5049  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5050  * @param aContextConfigR99_R4 The release 99 or release 4 context configuration to be returned to the CTSY Dispatcher.
       
  5051  */
       
  5052 	{
       
  5053 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPdpType=%d"), aError, aContextConfigR99_R4.iPdpType);
       
  5054 
       
  5055 	// Forward completion to correct dispatcher object to handle
       
  5056 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5057 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyNetworkInitiatedContextActivationRequest(aError, aContextConfigR99_R4);
       
  5058 
       
  5059 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyNetworkInitiatedContextActivationRequestInd
       
  5060 
       
  5061 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyNetworkInitiatedContextActivationRequestInd(
       
  5062 	TInt aError, const RPacketContext::TContextConfig_R5& aContextConfig_R5)
       
  5063 /**
       
  5064  *
       
  5065  * Callback function to be used by the Licensee LTSY to notify context
       
  5066  * activation requested (IPC EPacketNotifyContextActivationRequested)
       
  5067  *
       
  5068  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5069  * @param aContextConfig_R5 The release 5 context configuration to be returned to the CTSY Dispatcher.
       
  5070  */
       
  5071 	{
       
  5072 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPdpType=%d"), aError, aContextConfig_R5.iPdpType);
       
  5073 
       
  5074 	// Forward completion to correct dispatcher object to handle
       
  5075 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5076 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyNetworkInitiatedContextActivationRequest(aError, aContextConfig_R5);
       
  5077 
       
  5078 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyNetworkInitiatedContextActivationRequestInd
       
  5079 
       
  5080 
       
  5081 
       
  5082 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextConfigChangedInd(
       
  5083 	TInt aError, const TDesC& aContextName, const TDesC8& aAccessPointName,
       
  5084 	const TDesC8& aPdpAddress, const TUint aPdpCompression, const TDesC8& aPcoBuffer)
       
  5085 /**
       
  5086  * Callback function to be used by the Licensee LTSY to notify change in the context
       
  5087  * configuration (IPC EPacketContextNotifyConfigChanged)
       
  5088  *
       
  5089  * @param aError The error code.
       
  5090  * @param aContextName The name of the context which the change in configuration refers to.
       
  5091  * @param aAccessPointName The name of the access point. This should be a descriptor of maximum length
       
  5092  * RPacketContext::KGSNNameLength such as a RPacketContext::TGSNAddress
       
  5093  * @param aPdpAddress The protocol address. This should be a descriptor of maximum length
       
  5094  * RPacketContext::KMaxPDPAddressLength such as a RPacketContext::TProtocolAddress
       
  5095  * @param aPdpCompression The PDP compression level.
       
  5096  * @param aPcoBuffer The PCO buffer.
       
  5097  *
       
  5098  * The purpose of the protocol configuration options (PCO) is to transfer external network protocol options
       
  5099  * associated with a PDP context activation, and transfer additional (protocol) data
       
  5100  * (e.g. configuration parameters, error codes or messages/events) associated with an external protocol
       
  5101  * or an application.
       
  5102  * The protocol configuration options (PCO) is a type 4 information element with a minimum length of 3
       
  5103  * octets and a maximum length of 253 octets
       
  5104  * In order to generate the PCO buffer a TTlvStruct object is being used. The TTlvStruct wraps the buffers
       
  5105  * inserted to the PCO and identifies the buffers with given IDs.
       
  5106  *
       
  5107  * RPacketContext::KMiscProtocolBufferLength such as a RPacketContext::TMiscProtocolBuffer
       
  5108  *
       
  5109  * @see RPacketContext::NotifyConfigChanged()
       
  5110  */
       
  5111 	{
       
  5112 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5113 
       
  5114 	// Forward completion to correct dispatcher object to handle
       
  5115 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5116 
       
  5117 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPdpContextConfigChanged(aError, aContextName,
       
  5118 			aAccessPointName, aPdpAddress, aPdpCompression, aPcoBuffer);
       
  5119 
       
  5120 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextConfigChangedInd
       
  5121 
       
  5122 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextStatusChangeInd(
       
  5123 	TInt aError, const TDesC& aContextName, const TContextMisc& aContextMisc)
       
  5124 /**
       
  5125  *
       
  5126  * Callback function to be used by the Licensee LTSY to notify context status
       
  5127  * change (IPC EPacketContextNotifyStatusChange).
       
  5128  *
       
  5129  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5130  * @param aContextName Context name, the maximum length of the descriptor should not exceed KMaxInfoName.
       
  5131  * @param aContextMisc Context miscellaneous information.
       
  5132  *
       
  5133  * @see RPacketContext::NotifyStatusChange()
       
  5134  */
       
  5135 	{
       
  5136 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5137 
       
  5138 	// Forward completion to correct dispatcher object to handle
       
  5139 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5140 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPdpContextStatusChange(aError, aContextName, aContextMisc);
       
  5141 
       
  5142 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextStatusChangeInd
       
  5143 
       
  5144 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextConnectionSpeedChangeInd(
       
  5145 	TInt aError, const TDesC& aContextName, TUint aConnectionSpeed)
       
  5146 /**
       
  5147  *
       
  5148  * Callback function to be used by the Licensee LTSY to notify context connection speed
       
  5149  * change (IPC EPacketContextNotifyConnectionSpeedChange).
       
  5150  *
       
  5151  * @param aError The error code to be returned.
       
  5152  * @param aContextName context name.
       
  5153  * @param aConnectionSpeed context connection speed in bits per second.
       
  5154  */
       
  5155 	{
       
  5156 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, aConnectionSpeed=%d"), aError, &aContextName, aConnectionSpeed);
       
  5157 
       
  5158 	// Forward completion to correct dispatcher object to handle
       
  5159 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5160 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPdpContextConnectionSpeedChange(aError, aContextName, aConnectionSpeed);
       
  5161 
       
  5162 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPdpContextConnectionSpeedChangeInd
       
  5163 
       
  5164 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketNetworkRegistrationStatusInd(
       
  5165 	TInt aError, RPacketService::TRegistrationStatus aRegistrationStatus)
       
  5166 /**
       
  5167  * Callback function to be used by the Licensee LTSY to notify change in the status of the
       
  5168  * packet network registration (IPC EPacketNotifyChangeOfNtwkRegStatus).
       
  5169  *
       
  5170  * @param aError The error code.
       
  5171  * @param aRegistrationStatus Network registration status.
       
  5172  *
       
  5173  * @see RPacketService::NotifyChangeOfNtwkRegStatus()
       
  5174  */
       
  5175 	{
       
  5176 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRegistrationStatus=%d"), aError, aRegistrationStatus);
       
  5177 
       
  5178 	// Forward completion to correct dispatcher object to handle
       
  5179 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5180 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyPacketNetworkRegistrationStatus(aError, aRegistrationStatus);
       
  5181 
       
  5182 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketNetworkRegistrationStatusInd
       
  5183 
       
  5184 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyMbmsContextConfigChangedInd(
       
  5185 		TInt aError, const TDesC& aContextName, const RPacketMbmsContext::TContextConfigMbmsV1& aContextConfigMbms)
       
  5186 /**
       
  5187  *
       
  5188  * Callback function to be used by the Licensee LTSY to notify the Mbms configuration has
       
  5189  * changed on a given context. (IPC ECtsyPacketMbmsContextNotifyConfigChanged).
       
  5190  * 
       
  5191  * Pending client side RPacketMbmsContext::NotifyConfigChanged() will be completed with the new
       
  5192  * configuration data.
       
  5193  *
       
  5194  * @param aError The error code to be returned.
       
  5195  * @param aContextName The context name.
       
  5196  * @param aContextConfigMbms The context configuration data.
       
  5197  * 
       
  5198  * @see RPacketMbmsContext::NotifyConfigChanged()
       
  5199  */
       
  5200 	{
       
  5201 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, sId=%d, mcc=%d, mnc=%d, ab=%d, sp=%d, sm=%d, sf=%d"), 
       
  5202 			aError, 
       
  5203 			&aContextName, 
       
  5204 			aContextConfigMbms.iTmgi.GetServiceId(),  
       
  5205 			aContextConfigMbms.iTmgi.GetMCC(),
       
  5206 			aContextConfigMbms.iTmgi.GetMNC(),
       
  5207 			aContextConfigMbms.iMbmsAccessBearer,
       
  5208 			aContextConfigMbms.iMbmsServicePriority,
       
  5209 			aContextConfigMbms.iMbmsServiceMode,
       
  5210 			aContextConfigMbms.iMbmsSessionFlag);
       
  5211 
       
  5212 	// Forward completion to correct dispatcher object to handle
       
  5213 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5214 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyMbmsContextConfigChanged(aError, aContextName, aContextConfigMbms);
       
  5215 
       
  5216 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyPacketNetworkRegistrationStatusInd
       
  5217 
       
  5218 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyMbmsNetworkServiceStatusChangeInd(
       
  5219 		TInt aError, TMbmsNetworkServiceStatus aMbmsNetworkServiceStatus)
       
  5220 /**
       
  5221  * 
       
  5222  * Callback function to be used by the Licensee LTSY to update the CTSY's cache of the current
       
  5223  * Mbms network service state (IPC EPacketNotifyMbmsNetworkServiceStatusChange).
       
  5224  * 
       
  5225  * This will result in the completion on a pending client side RPacketService::NotifyMbmsNetworkServiceStatusChange()
       
  5226  *
       
  5227  * @param aError The error code to be returned.
       
  5228  * @param aMbmsNetworkServiceStatus The network service status.
       
  5229  * 
       
  5230  * @see RPacketService::NotifyMbmsNetworkServiceStatusChange()
       
  5231  * @see RPacketService::GetMbmsNetworkServiceStatus()
       
  5232  */
       
  5233 	{
       
  5234 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMbmsNetworkServiceStatus=%d"), aError, aMbmsNetworkServiceStatus);
       
  5235 
       
  5236 	// Forward completion to correct dispatcher object to handle
       
  5237 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5238 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyMbmsNetworkServiceStatusChange(aError, aMbmsNetworkServiceStatus);
       
  5239 
       
  5240 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyMbmsNetworkServiceStatusChangeInd
       
  5241 
       
  5242 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyMbmsServiceAvailabilityChangeInd(
       
  5243 		TInt aError, const RArray<TUint>& aAvailableServiceIds)
       
  5244 /**
       
  5245  * 
       
  5246  * Callback function to be used by the Licensee LTSY to update the CTSYs MBMS monitor service list availabilty state
       
  5247  * (IPC EPacketNotifyMbmsServiceAvailabilityChange).
       
  5248  * 
       
  5249  * Services in the supplied list will be marked as available in the CTSYs MBMS monitor service list, services not in
       
  5250  * the list will be marked as un-available.
       
  5251  * 
       
  5252  * This will result in the completion on a pending client side RPacketService::NotifyMbmsServiceAvailabilityChange()
       
  5253  *
       
  5254  * @param aError The error code to be returned.
       
  5255  * @param aAvailableServiceIds The list of Service Ids which are currently available.
       
  5256  * 
       
  5257  * @see RPacketService::NotifyMbmsServiceAvailabilityChange()
       
  5258  * @see CRetrievePcktMbmsMonitoredServices()
       
  5259  */
       
  5260 	{
       
  5261 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAvailableServiceIds.Count()=%d"), aError,  aAvailableServiceIds.Count());
       
  5262 
       
  5263 	// Forward completion to correct dispatcher object to handle
       
  5264 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5265 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyMbmsServiceAvailabilityChange(aError, aAvailableServiceIds);
       
  5266 
       
  5267 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyMbmsServiceAvailabilityChangeInd
       
  5268 
       
  5269 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesNotifyConnectionInfoChangeInd(
       
  5270 		TInt aError, const TDesC& aContextName, const RPacketContext::TConnectionInfoV1& aConnectionInfo)
       
  5271 /**
       
  5272  * 
       
  5273  * Callback function to be used by the Licensee LTSY to update the packet context connection info.
       
  5274  * 
       
  5275  * Updated connection information will be returned to the client as a result of this indication
       
  5276  * 
       
  5277  * This will result in the completion on a pending client side RPacketService::NotifyConnectionInfoChange()
       
  5278  *
       
  5279  * @param aError The error code to be returned.
       
  5280  * @param aContextName The context name, the maximum length of the descriptor should not exceed KMaxInfoName.
       
  5281  * @param aConnectionInfo The details of the connection, including HSDPA Category and HSUPA Category
       
  5282  * 
       
  5283  * @see RPacketService::NotifyConnectionInfoChange()
       
  5284  */
       
  5285 	{
       
  5286 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, iHSDPACategory=%d, iHSUPACategory=%d"), 
       
  5287 	    aError, &aContextName, aConnectionInfo.iHSDPACategory, aConnectionInfo.iHSUPACategory);
       
  5288 
       
  5289 	// Forward completion to correct dispatcher object to handle
       
  5290 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5291 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackNotifyConnectionInfoChange(aError, aContextName, aConnectionInfo);
       
  5292 
       
  5293 	} // CCtsyDispatcherCallback::CallbackPacketServicesNotifyConnectionInfoChangeInd
       
  5294 
       
  5295 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesPacketAttachComp(TInt aError)
       
  5296 /**
       
  5297  *
       
  5298  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5299  * MLtsyDispatchPacketServicesPacketAttach::HandlePacketAttachReqL()
       
  5300  *
       
  5301  * Informs the CTSY of the whether the request to attach to the packet service
       
  5302  * was successful.
       
  5303  *
       
  5304  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5305  *
       
  5306  * @see RPacketService::Attach()
       
  5307  */
       
  5308 	{
       
  5309 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  5310 
       
  5311 	// Forward completion to correct dispatcher object to handle
       
  5312 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5313 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackPacketAttach(aError);
       
  5314 
       
  5315 	} // CCtsyDispatcherCallback::CallbackPacketServicesPacketAttachComp
       
  5316 
       
  5317 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetPacketAttachModeComp(
       
  5318 	TInt aError, RPacketService::TAttachMode aAttachMode)
       
  5319 /**
       
  5320  *
       
  5321  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5322  * MLtsyDispatchPacketServicesGetPacketAttachMode::HandleGetPacketAttachModeReqL()
       
  5323  *
       
  5324  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5325  * @param aAttachMode The packet service attach mode.
       
  5326  *
       
  5327 
       
  5328  *
       
  5329  * @see RPacketService::GetAttachMode()
       
  5330  */
       
  5331 	{
       
  5332 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAttachMode=%d"), aError, aAttachMode);
       
  5333 
       
  5334 	// Forward completion to correct dispatcher object to handle
       
  5335 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5336 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetPacketAttachMode(aError, aAttachMode);
       
  5337 
       
  5338 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetPacketAttachModeComp
       
  5339 
       
  5340 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetPacketNetworkRegistrationStatusComp(
       
  5341 	TInt aError, RPacketService::TRegistrationStatus aRegistrationStatus)
       
  5342 /**
       
  5343  *
       
  5344  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5345  * MLtsyDispatchPacketServicesGetPacketNetworkRegistrationStatus::HandleGetPacketNetworkRegistrationStatusReqL()
       
  5346  *
       
  5347  * Returns the current registration status of the packet network.
       
  5348  *
       
  5349  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5350  * @param aRegistrationStatus The current network registration status.
       
  5351  *
       
  5352  * @see RPacketService::GetNtwkRegStatus()
       
  5353  */
       
  5354 	{
       
  5355 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aRegistrationStatus=%d"), aError, aRegistrationStatus);
       
  5356 
       
  5357 	// Forward completion to correct dispatcher object to handle
       
  5358 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5359 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetPacketNetworkRegistrationStatus(aError, aRegistrationStatus);
       
  5360 
       
  5361 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetPacketNetworkRegistrationStatusComp
       
  5362 
       
  5363 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesPacketDetachComp(
       
  5364 	TInt aError)
       
  5365 /**
       
  5366  *
       
  5367  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5368  * MLtsyDispatchPacketServicesPacketDetach::HandlePacketDetachReqL()
       
  5369  *
       
  5370  *
       
  5371  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5372  *
       
  5373  * @see RPacketService::Detach()
       
  5374  */
       
  5375 	{
       
  5376 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  5377 
       
  5378 	// Forward completion to correct dispatcher object to handle
       
  5379 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5380 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackPacketDetach(aError);
       
  5381 
       
  5382 	} // CCtsyDispatcherCallback::CallbackPacketServicesPacketDetachComp
       
  5383 
       
  5384 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesSetPdpContextConfigComp(TInt aError,
       
  5385 		const TDesC& aContextName)
       
  5386 /**
       
  5387  *
       
  5388  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5389  * MLtsyDispatchPacketServicesSetPdpContextConfig::HandleSetPdpContextConfigReqL()
       
  5390  *
       
  5391  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5392  * @param aContextName The context name, the maximum length of the descriptor should not exceed KMaxInfoName.
       
  5393  *
       
  5394  * @see RPacketContext::SetConfig()
       
  5395  */
       
  5396 	{
       
  5397 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5398 
       
  5399 	// Forward completion to correct dispatcher object to handle
       
  5400 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5401 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackSetPdpContextConfig(aError, aContextName);
       
  5402 
       
  5403 	} // CCtsyDispatcherCallback::CallbackPacketServicesSetPdpContextConfigComp
       
  5404 
       
  5405 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesModifyActivePdpContextComp(
       
  5406 		TInt aError, const TDesC& aContextName, TInt8 aRejectionCode)
       
  5407 /**
       
  5408  *
       
  5409  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5410  * MLtsyDispatchPacketServicesModifyActivePdpContext::HandleModifyActivePdpContextReqL()
       
  5411  *
       
  5412  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5413  * @param aContextName The context name that has been modified.
       
  5414  * @param aRejectionCode The reason code for any failure of modification.
       
  5415  *
       
  5416  * @see RPacketContext::ModifyActiveContext()
       
  5417  */
       
  5418 	{
       
  5419 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, aRejectionCode=%d"), aError, &aContextName, aRejectionCode);
       
  5420 
       
  5421 	// Forward completion to correct dispatcher object to handle
       
  5422 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5423 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackModifyActivePdpContext(aError, aContextName, aRejectionCode);
       
  5424 
       
  5425 	} // CCtsyDispatcherCallback::CallbackPacketServicesModifyActivePdpContextComp
       
  5426 
       
  5427 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesInitialisePdpContextComp(
       
  5428 		TInt aError, const TDesC& aContextName, const TDesC& aChannelId)
       
  5429 /**
       
  5430  *
       
  5431  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5432  * MLtsyDispatchPacketServicesInitialisePdpContext::HandleInitialisePdpContextReqL()
       
  5433  *
       
  5434  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5435  * @param aContextName The name of the current context, the descriptor should be TBuf<10>
       
  5436  * @param aChannelId The current channelId descriptor, the descriptor should be a TName
       
  5437  * @see RPacketServise::InitialiseContext()
       
  5438  */
       
  5439 	{
       
  5440 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, aChannelId=%S"), aError, &aContextName, &aChannelId);
       
  5441 
       
  5442 	// Forward completion to correct dispatcher object to handle
       
  5443 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5444 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackInitialisePdpContext(aError, aContextName, aChannelId);
       
  5445 
       
  5446 	} // CCtsyDispatcherCallback::CallbackPacketServicesInitialisePdpContextComp
       
  5447 
       
  5448 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesDeletePdpContextComp(
       
  5449 	TInt aError, const TDesC& aContextName)
       
  5450 /**
       
  5451  *
       
  5452  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5453  * MLtsyDispatchPacketServicesDeletePdpContext::HandleDeletePdpContextReqL()
       
  5454  *
       
  5455  *
       
  5456  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5457  * @param aContextName The context name.
       
  5458  *
       
  5459  * @see RPacketContext::Delete()
       
  5460  */
       
  5461 
       
  5462 	{	
       
  5463 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5464 
       
  5465 	// Forward completion to correct dispatcher object to handle
       
  5466 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5467 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackDeletePdpContext(aError, aContextName);
       
  5468 
       
  5469 	} // CCtsyDispatcherCallback::CallbackPacketServicesDeletePdpContextComp
       
  5470 
       
  5471 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesSetPacketAttachModeComp(TInt aError)
       
  5472 /**
       
  5473  *
       
  5474  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5475  * MLtsyDispatchPacketServicesSetPacketAttachMode::HandleSetPacketAttachModeReqL()
       
  5476  *
       
  5477   * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5478  *
       
  5479  * @see RPacketService::SetAttachMode()
       
  5480  */
       
  5481 	{
       
  5482 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  5483 
       
  5484 	// Forward completion to correct dispatcher object to handle
       
  5485 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5486 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackSetPacketAttachMode(aError);
       
  5487 
       
  5488 	} // CCtsyDispatcherCallback::CallbackPacketServicesSetPacketAttachModeComp
       
  5489 
       
  5490 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesSetDefaultPdpContextParamsComp(
       
  5491 	TInt aError)
       
  5492 /**
       
  5493  *
       
  5494  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5495  * MLtsyDispatchPacketServicesSetDefaultPdpContextParams::HandleSetDefaultPdpContextParamsReqL()
       
  5496  *
       
  5497  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5498  *
       
  5499  * @see RPacketContext::SetDefaultContextParams()
       
  5500  */
       
  5501 	{
       
  5502 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  5503 
       
  5504 	// Forward completion to correct dispatcher object to handle
       
  5505 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5506 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackSetDefaultPdpContextParams(aError);
       
  5507 
       
  5508 	} // CCtsyDispatcherCallback::CallbackPacketServicesSetDefaultPdpContextParamsComp
       
  5509 
       
  5510 
       
  5511 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesActivatePdpContextComp(
       
  5512 	TInt aError, const TDesC& aContextName,
       
  5513 	const TDesC8& aAccessPointName,
       
  5514 	RPacketContext::TProtocolType aPdpType)
       
  5515 /**
       
  5516  *
       
  5517  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5518  * MLtsyDispatchPacketServicesActivatePdpContext::HandleActivatePdpContextReqL()
       
  5519  *
       
  5520  * Returns the result of the request to activate a packet context and returns
       
  5521  * details about the activated context to the CTSY.
       
  5522  *
       
  5523  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5524  * @param aContextName The name of the context that has been activated.
       
  5525  * @param aAccessPointName The name of the access point that has been activated.
       
  5526  * This should be a descriptor of maximum length RPacketContext::KGSNNameLength such as RPacketContext::TGSNAddress
       
  5527  * @param aPdpType The protocol used to connect to the packet data gateway.
       
  5528  * 
       
  5529  *
       
  5530  * @see RPacketContext:Activate()
       
  5531  */
       
  5532 	{
       
  5533 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, aAccessPointName=%S, aPdpType=%d"), aError, &aContextName, &aAccessPointName, aPdpType);
       
  5534 
       
  5535 	// Forward completion to correct dispatcher object to handle
       
  5536 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5537 
       
  5538 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackActivatePdpContext(aError,
       
  5539 			aContextName, aAccessPointName, aPdpType);
       
  5540 
       
  5541 	} // CCtsyDispatcherCallback::CallbackPacketServicesActivatePdpContextComp
       
  5542 
       
  5543 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesSetPdpContextQosComp(
       
  5544 		TInt aError, const TDesC& aContextName)
       
  5545 /**
       
  5546  *
       
  5547  * Callback function to be used by the Licensee LTSY to complete one of the following pending
       
  5548  * MLtsyDispatchPacketServicesSetPdpContextQosGprs::HandleSetPdpContextQosReqL()
       
  5549  * MLtsyDispatchPacketServicesSetPdpContextQosR99R4::HandleSetPdpContextQosReqL()
       
  5550  * MLtsyDispatchPacketServicesSetPdpContextQosR5::HandleSetPdpContextQosReqL()
       
  5551  *
       
  5552  *
       
  5553  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5554  * @param aContextName The context name, the maximum length of the descriptor should not exceed KMaxInfoName.
       
  5555  *
       
  5556  * @see RPacketQoS::SetProfileParameters()
       
  5557  */
       
  5558 	{
       
  5559 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5560 
       
  5561 	// Forward completion to correct dispatcher object to handle
       
  5562 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5563 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackSetPdpContextQos(aError, aContextName);
       
  5564 
       
  5565 	} // CCtsyDispatcherCallback::CallbackPacketServicesSetPdpContextQosComp
       
  5566 
       
  5567 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesRejectNetworkInitiatedContextActivationRequestComp(
       
  5568 	TInt aError)
       
  5569 /**
       
  5570  *
       
  5571  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5572  * MLtsyDispatchPacketServicesRejectNetworkInitiatedContextActivationRequest::HandleRejectNetworkInitiatedContextActivationRequestReqL()
       
  5573  *
       
  5574  *
       
  5575  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5576  *
       
  5577  * @see RPacketContext::RejectActivationRequest()
       
  5578  */
       
  5579 	{
       
  5580 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  5581 
       
  5582 	// Forward completion to correct dispatcher object to handle
       
  5583 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5584 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackRejectNetworkInitiatedContextActivationRequest(aError);
       
  5585 
       
  5586 	} // CCtsyDispatcherCallback::CallbackPacketServicesRejectNetworkInitiatedContextActivationRequestComp
       
  5587 
       
  5588 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesDeactivatePdpContextComp(
       
  5589 		TInt aError, const TDesC& aContextName)
       
  5590 /**
       
  5591  *
       
  5592  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5593  * MLtsyDispatchPacketServicesDeactivatePdpContext::HandleDeactivatePdpContextReqL()
       
  5594  *
       
  5595  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5596  * @param aContextName The context name that has been deactivated,
       
  5597  * the maximum length of the descriptor should not exceed KMaxInfoName.
       
  5598  *
       
  5599  * @see RPacketContext::Deactivate()
       
  5600  */
       
  5601 	{
       
  5602 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5603 
       
  5604 	// Forward completion to correct dispatcher object to handle
       
  5605 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5606 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackDeactivatePdpContext(aError, aContextName);
       
  5607 
       
  5608 	} // CCtsyDispatcherCallback::CallbackPacketServicesDeactivatePdpContextComp
       
  5609 
       
  5610 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetStatusComp(
       
  5611 	TInt aError, RPacketService::TStatus aPacketStatus, TBool aIsResumed)
       
  5612 /**
       
  5613  *
       
  5614  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5615  * MLtsyDispatchPacketServicesGetStatus::HandleGetStatusReqL()
       
  5616  *
       
  5617  * Returns the status of the packet service to the C-TSY.
       
  5618  *
       
  5619  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5620  * @param aPacketStatus The packet status as return from the ltsy.
       
  5621  * @param aIsResumed Flag indicating whether packet service has been resumed from suspended state.
       
  5622  *
       
  5623  * @see RPacketService::GetStatus()
       
  5624  */
       
  5625 	{
       
  5626 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aPacketStatus=%d, aIsResumed=%d"), aError, aPacketStatus, aIsResumed);
       
  5627 
       
  5628 	// Forward completion to correct dispatcher object to handle
       
  5629 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5630 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetStatus(aError, aPacketStatus, aIsResumed);
       
  5631 
       
  5632 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetStatusComp
       
  5633 
       
  5634 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetStaticCapabilitiesComp(
       
  5635 	TInt aError, TUint aStaticCapabilities)
       
  5636 /**
       
  5637  *
       
  5638  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5639  * MLtsyDispatchPacketServicesGetStaticCapabilities::HandleGetStaticCapabilitiesReqL()
       
  5640  *
       
  5641  * Returns the static capabilities of the packet service to the C-TSY.
       
  5642  * 
       
  5643  * E-Tel Packet calls to RPacketService::GetStaticCaps() will then return this set
       
  5644  * of static capabilities.
       
  5645  *
       
  5646  * @param aError The error code.
       
  5647  * @param aStaticCapabilities A bit field containing the static capabilities to be returned to the CTSY.
       
  5648  * This can be created from a bit-wise OR (|) of values from RPacketService::TStaticMiscCaps.
       
  5649  * 
       
  5650  * @see RPacketService::TStaticMiscCaps
       
  5651  * @see RPacketService::GetStaticCaps()
       
  5652  */
       
  5653 	{
       
  5654 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aStaticCapabilities=%d"), aError, aStaticCapabilities);
       
  5655 
       
  5656 	// Forward completion to correct dispatcher object to handle
       
  5657 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5658 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetStaticCapabilities(aError, aStaticCapabilities);
       
  5659 
       
  5660 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetStaticCapabilitiesComp
       
  5661 
       
  5662 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetMaxNoMonitoredServiceListsComp(
       
  5663 	TInt aError, TInt aMaxNoMonitoredServiceLists)
       
  5664 /**
       
  5665  *
       
  5666  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5667  * MLtsyDispatchPacketServicesGetMaxNoMonitoredServiceLists::HandleGetMaxNoMonitoredServiceListsReqL()
       
  5668  * 
       
  5669  * Returns the maximum number of monitored service lists to the C-TSY.
       
  5670  *
       
  5671  * Calls to RPacketService::EnumerateMbmsMonitorServiceList() will then return the 
       
  5672  * maximum number of monitored service lists in the aMaxAllowed field.
       
  5673  * 
       
  5674  * @param aError The error code.
       
  5675  * @param aMaxNoMonitoredServiceLists The maximum number of monitored service lists.
       
  5676  * 
       
  5677  * @see RPacketService::EnumerateMbmsMonitorServiceList()
       
  5678  */
       
  5679 	{
       
  5680 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMaxNoMonitoredServiceLists=%d"), aError, aMaxNoMonitoredServiceLists);
       
  5681 
       
  5682 	// Forward completion to correct dispatcher object to handle
       
  5683 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5684 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetMaxNoMonitoredServiceLists(aError, aMaxNoMonitoredServiceLists);
       
  5685 
       
  5686 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetMaxNoMonitoredServiceListsComp
       
  5687 
       
  5688 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetMaxNoActiveServicesComp(
       
  5689 		TInt aError, TInt aMaxNoActiveServices)
       
  5690 /**
       
  5691  *
       
  5692  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5693  * MLtsyDispatchPacketServicesGetMaxNoActiveServices::HandleGetMaxNoActiveServicesReqL()
       
  5694  * 
       
  5695  * Returns the maximum number of active services allowed to the C-TSY.
       
  5696  *
       
  5697  * @param aError The error code.
       
  5698  * @param aMaxNoActiveServices The maximum number of active services allowed (hence the maximum number of contexts allowed).
       
  5699  * 
       
  5700  */
       
  5701 	{
       
  5702 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMaxNoActiveServices=%d"), aError, aMaxNoActiveServices);
       
  5703 
       
  5704 	// Forward completion to correct dispatcher object to handle
       
  5705 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5706 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetMaxNoActiveServices(aError,aMaxNoActiveServices);
       
  5707 
       
  5708 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetMaxNoActiveServicesComp
       
  5709 
       
  5710 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesInitialiseMbmsContextComp(
       
  5711 		TInt aError, const TDesC& aContextName, const TDesC& aChannelId)
       
  5712 /**
       
  5713  *
       
  5714  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5715  * MLtsyDispatchPacketServicesInitialiseMbmsContext::HandleInitialiseMbmsContextReqL()
       
  5716  * 
       
  5717  * Returns the MBMS data to the CTSY.
       
  5718  *
       
  5719  * @param aError The error code.
       
  5720  * @param aContextName The name of the current context, the descriptor should be a maximum length of KMaxInfoName.
       
  5721  * @param aChannelId The current channelId descriptor, the descriptor should be a maximum length of KMaxName.
       
  5722  * 
       
  5723  * @see RPacketMbmsContext::InitialiseContext()
       
  5724  * 
       
  5725  */
       
  5726 	{
       
  5727 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S, aChannelId=%S"), aError, &aContextName, &aChannelId);
       
  5728 
       
  5729 	// Forward completion to correct dispatcher object to handle
       
  5730 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5731 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackInitialiseMbmsContext(aError, aContextName, aChannelId);
       
  5732 
       
  5733 	} // CCtsyDispatcherCallback::CallbackPacketServicesInitialiseMbmsContextComp
       
  5734 
       
  5735 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesGetMbmsNetworkServiceStatusComp(
       
  5736 		TInt aError, TMbmsNetworkServiceStatus aMbmsNetworkServiceStatus)
       
  5737 /**
       
  5738  *
       
  5739  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5740  * MLtsyDispatchPacketServicesGetMbmsNetworkServiceStatus::HandleGetMbmsNetworkServiceStatusReqL()
       
  5741  * 
       
  5742  * The CTSYs cache of the network service state will be updated and a pending client side 
       
  5743  * RPacketService::GetMbmsNetworkServiceStatus() will be completed.
       
  5744  * 
       
  5745  * @param aError The error code to be returned.
       
  5746  * @param aMbmsNetworkServiceStatus The network service status.
       
  5747  * 
       
  5748  * @see RPacketService::GetMbmsNetworkServiceStatus()
       
  5749  * 
       
  5750  */
       
  5751 	{
       
  5752 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aMbmsNetworkServiceStatus=%d"), aError, aMbmsNetworkServiceStatus);
       
  5753 
       
  5754 	// Forward completion to correct dispatcher object to handle
       
  5755 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5756 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackGetMbmsNetworkServiceStatus(aError, aMbmsNetworkServiceStatus);
       
  5757 
       
  5758 	} // CCtsyDispatcherCallback::CallbackPacketServicesGetMbmsNetworkServiceStatusComp
       
  5759 
       
  5760 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesUpdateMbmsMonitorServiceListComp(TInt aError)
       
  5761 /**
       
  5762  *
       
  5763  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5764  * MLtsyDispatchPacketServicesUpdateMbmsMonitorServiceList::HandleUpdateMbmsMonitorServiceListsReqL()
       
  5765  * 
       
  5766  * This callback is for the success case. The CTSYs monitor service list will be updated as via the 
       
  5767  * change list and action.
       
  5768  * 
       
  5769  * The pending client side RPacketService::NotifyMbmsServiceAvailabilityChange() will be completed with
       
  5770  * KErrNone.
       
  5771  * 
       
  5772  * @param aError The error code to be returned.
       
  5773  * 
       
  5774  * @see RPacketService::UpdateMbmsMonitorServiceListL()
       
  5775  * @see RPacketService::NotifyMbmsServiceAvailabilityChange()
       
  5776  * @see CRetrievePcktMbmsMonitoredServices()
       
  5777  * 
       
  5778  */
       
  5779 	{
       
  5780 	TSYLOGENTRYEXIT;
       
  5781 
       
  5782 	// Forward completion to correct dispatcher object to handle
       
  5783 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5784 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackUpdateMbmsMonitorServiceList(aError);
       
  5785 
       
  5786 	} // CCtsyDispatcherCallback::CallbackPacketServicesUpdateMbmsMonitorServiceListComp
       
  5787 
       
  5788 
       
  5789 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesUpdateMbmsMonitorServiceListComp(TInt aError, const RArray<TUint>& aFailedServiceIds)
       
  5790 /**
       
  5791  *
       
  5792  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5793  * MLtsyDispatchPacketServicesUpdateMbmsMonitorServiceList::HandleUpdateMbmsMonitorServiceListsReqL()
       
  5794  * 
       
  5795  * This callback is for the error case. The CTSYs monitor service list will be updated as via the 
       
  5796  * change list and action. The failed service Ids list contains the service Id that cannot be
       
  5797  * removed / added.
       
  5798  * 
       
  5799  * The pending client side RPacketService::NotifyMbmsServiceAvailabilityChange() will be completed with
       
  5800  * KErrMbmsImpreciseServiceEntries.
       
  5801  * 
       
  5802  * @param aError The error code to be returned.
       
  5803  * @param aFailedServiceIds A list containing the service Id which cannot be updated via the action (e.g. Id of
       
  5804  * a service that could not be added)
       
  5805  * 
       
  5806  * @see RPacketService::UpdateMbmsMonitorServiceListL()
       
  5807  * @see RPacketService::NotifyMbmsServiceAvailabilityChange()
       
  5808  * @see CRetrievePcktMbmsMonitoredServices()
       
  5809  * 
       
  5810  */
       
  5811 	{
       
  5812 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aFailedServiceIds.Count()=%d"), aError, aFailedServiceIds.Count());
       
  5813 
       
  5814 	// Forward completion to correct dispatcher object to handle
       
  5815 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5816 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackUpdateMbmsMonitorServiceList(aError, aFailedServiceIds);
       
  5817 
       
  5818 	} // CCtsyDispatcherCallback::CallbackPacketServicesUpdateMbmsMonitorServiceListComp
       
  5819 
       
  5820 EXPORT_C void CCtsyDispatcherCallback::CallbackPacketServicesUpdateMbmsSessionListComp(TInt aError, const TDesC& aContextName)
       
  5821 /**
       
  5822  *
       
  5823  * Callback function to be used by the Licensee LTSY to complete a pending
       
  5824  * MLtsyDispatchPacketServicesUpdateMbmsSessionList::HandleUpdateMbmsSessionListReqL()
       
  5825  * 
       
  5826  * This will complete a pending client side RPacketService::UpdateMbmsSessionList(), if an error
       
  5827  * has occurred the CTSYs MBMS services table will not be altered.
       
  5828  * 
       
  5829  * @param aError The error code to be returned.
       
  5830  * @param aContextName The name of the MBMS context, the descriptor should be a maximum length of KMaxInfoName.
       
  5831  * 
       
  5832  * @see RPacketService::UpdateMbmsSessionList()
       
  5833  * @see CRetrievePcktMbmsSessionList()
       
  5834  * 
       
  5835  */
       
  5836 	{
       
  5837 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aContextName=%S"), aError, &aContextName);
       
  5838 	
       
  5839 	// Forward completion to correct dispatcher object to handle
       
  5840 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5841 	iDispatcherHolder->GetPacketServicesDispatcher().CallbackUpdateMbmsSessionList(aError, aContextName);
       
  5842 	} // CCtsyDispatcherCallback::CallbackPacketServicesUpdateMbmsSessionListComp
       
  5843 
       
  5844 EXPORT_C void CCtsyDispatcherCallback::CallbackSatPcmdInd(
       
  5845 	TInt aError, const TDesC8& aData)
       
  5846 /**
       
  5847  *
       
  5848  * Proactive commands from the UICC are passed via this indicator function
       
  5849  * to the Common TSY.
       
  5850  * If proactive commands are received for which notifications have not been set up
       
  5851  * then a Terminal Response containing the return code "KMeUnableToProcessCmd"
       
  5852  * will be sent back to the UICC.
       
  5853  *
       
  5854  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5855  * @param aData TLV data received from the SIM that contains the proactive command.
       
  5856  *
       
  5857  * @see RSat::TerminalRsp()
       
  5858  */
       
  5859 	{
       
  5860 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  5861 
       
  5862 	// Forward completion to correct dispatcher object to handle
       
  5863 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5864 	iDispatcherHolder->GetSatDispatcher().CallbackPcmd(aError, aData);
       
  5865 
       
  5866 	} // CCtsyDispatcherCallback::CallbackSatPcmdInd
       
  5867 
       
  5868 EXPORT_C void CCtsyDispatcherCallback::CallbackSatNotifyProactiveSimSessionEndInd(
       
  5869 	TInt aError, TUint8 aStatusWord1, TUint8 aStatusWord2)
       
  5870 /**
       
  5871  *
       
  5872  * This indicator if called with both status words as a normal ending (sw1 = 0x90, sw2 =0x00)
       
  5873  * completes an outstanding RSat::NotifyProactiveSimSessionEnd() notifier.
       
  5874  *
       
  5875  * The LTSY should call this when a proactive SIM session ends.
       
  5876  *
       
  5877  * (Note: RSat::NotifyProactiveSimSessionEnd() Introduced in version 6.1, marked as
       
  5878  *	"no longer needed when using the ETelSat API" from version 8.2, thus kept in the
       
  5879  *  dispatcher layer for legacy reasons only)
       
  5880  *
       
  5881  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5882  * @param aStatusWord1 The Status Word 1
       
  5883  * @param aStatusWord2 The Status Word 2
       
  5884  *
       
  5885  * @see RSat::NotifyProactiveSimSessionEnd()
       
  5886  */
       
  5887 	{
       
  5888 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aStatusWord1=%d,aStatusWord2=%d"), aError, aStatusWord1, aStatusWord2);
       
  5889 
       
  5890 	// Forward completion to correct dispatcher object to handle
       
  5891 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5892 	iDispatcherHolder->GetSatDispatcher().CallbackNotifyProactiveSimSessionEnd(aError,aStatusWord1,aStatusWord2);
       
  5893 
       
  5894 	} // CCtsyDispatcherCallback::CallbackSatNotifyProactiveSimSessionEndInd
       
  5895 
       
  5896 EXPORT_C void CCtsyDispatcherCallback::CallbackSatTimeZoneChangeInd(TInt aError, TUint8 aTimeZone)
       
  5897 /**
       
  5898  *
       
  5899  * This indicator is used by the LTSY to communicate a new Time Zone to the Common TSY.
       
  5900  * The Common TSY caches this value and uses it for PROVIDE LOCAL INFO proactive commands
       
  5901  *
       
  5902  * The LTSY should call this indicator when the time zone changes. If this indicator is not
       
  5903  * called at least once before any PROVIDE LOCAL INFO (timezone) proactive commands are issued
       
  5904  * by the SIM application, then the timezone provided to the application will be 0xff (not known).
       
  5905  * Therefore the LTSY should send this up to the CTSY as soon as it knows the timezone (as well as
       
  5906  * when it changes).
       
  5907  *
       
  5908  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  5909  * @param aTimeZone The new time zone coded as defined in "ETSI TS 123 040" "TP-Service-Centre-Time-Stamp"
       
  5910  *
       
  5911  * @see RSat::NotifyLocalInfoPCmd()
       
  5912  */
       
  5913 	{
       
  5914 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aTimeZone=%d"), aError, aTimeZone);
       
  5915 
       
  5916 	// Forward completion to correct dispatcher object to handle
       
  5917 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5918 	iDispatcherHolder->GetSatDispatcher().CallbackTimeZoneChange(aError,aTimeZone);
       
  5919 
       
  5920 	} // CCtsyDispatcherCallback::CallbackSatTimeZoneChangeInd
       
  5921 
       
  5922 EXPORT_C void CCtsyDispatcherCallback::CallbackSatAccessTechnologyChangeInd(TInt aError, TUint8 aCurrentAccessTechnology)
       
  5923 /**
       
  5924  *
       
  5925  * This indicator from the LTSY,
       
  5926  *
       
  5927  * 1) Updates the CTSYs cache of the current access technology which is used when the CTSY
       
  5928  * creates local information terminal responses.
       
  5929  * 2) If the Access Technology Change is part of the current event list, the CTSY sends down
       
  5930  * an event download ENVELOPE command (Access Technology Change) to the LTSY constructed from the below
       
  5931  * parameters
       
  5932  *
       
  5933  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5934  * @param aCurrentAccessTechnology The current access technology being used by the terminal
       
  5935  * See "ETSI TS 102 223" "ENVELOPE commands" "Access technology"
       
  5936  *
       
  5937  * @see RSat::NotifySetUpEventListPCmd()
       
  5938  * @see RSat::EventDownload()
       
  5939  *
       
  5940  */
       
  5941 	{
       
  5942 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCurrentAccessTechnology=%d"), aError, aCurrentAccessTechnology);
       
  5943 
       
  5944 	// Forward completion to correct dispatcher object to handle
       
  5945 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5946 
       
  5947 	iDispatcherHolder->GetSatDispatcher().CallbackAccessTechnologyChange(aError,aCurrentAccessTechnology);
       
  5948 	} // CCtsyDispatcherCallback::CallbackSatAccessTechnologyChangeInd
       
  5949 
       
  5950 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCallConnectedInd(TInt aError, TUint8 aTransactionId, TBool aNearEnd)
       
  5951 /**
       
  5952  *
       
  5953  * This indicator from the LTSY notifies the CTSY that a call connected message has been sent or received
       
  5954  * (i.e. the terminal receives an incoming call connect message (in the case of an MT call),
       
  5955  * or the terminal sends an outgoing call connect message (in the case of an MO call))
       
  5956  *
       
  5957  * If the call connected event is part of the current event list, the CTSY sends down
       
  5958  * an event download ENVELOPE command (Call Connected) to the LTSY constructed from the below
       
  5959  * parameters
       
  5960  *
       
  5961  * In the case of a call initiated through a SET UP CALL proactive command while the call connected event is part of the
       
  5962  * current event list, the terminal shall send both the TERMINAL RESPONSE related to the proactive command, and the
       
  5963  * EVENT DOWNLOAD command, in the order TERMINAL RESPONSE first, ENVELOPE (EVENT DOWNLOAD - call connected) second.
       
  5964  *
       
  5965  * See "ETSI TS 102 223" "ENVELOPE commands" "Call connected event"
       
  5966  *
       
  5967  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  5968  * @param aTransactionId The Transaction Identifier in the call connect message.
       
  5969  * @param aIsNearEnd If True, the case of connecting is at the near end (an MT call), (i.e. source = terminal, destination = UICC)
       
  5970  * 					 If False (i.e. far end), the case of connecting is at the far end (an MO call), (i.e. source = network, destination = UICC)
       
  5971  *
       
  5972  * @see RSat::NotifySetUpEventListPCmd()
       
  5973  * @see RSat::EventDownload()
       
  5974  */
       
  5975 	{
       
  5976 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aTransactionId=%d, aNearEnd=%d"),aError,aTransactionId,aNearEnd);
       
  5977 
       
  5978 	// Forward completion to correct dispatcher object to handle
       
  5979 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  5980 	iDispatcherHolder->GetSatDispatcher().CallbackCallConnected(aError,aTransactionId,aNearEnd);
       
  5981 
       
  5982 	} // CCtsyDispatcherCallback::CallbackSatCallConnectedInd
       
  5983 
       
  5984 EXPORT_C void CCtsyDispatcherCallback::CallbackSatSsChangeInd(
       
  5985 	TInt aError, DispatcherSat::TSsStatus aStatus)
       
  5986 /**
       
  5987  *
       
  5988  * The LTSY should communicate the current availability of SS/USSD using this
       
  5989  * indicator. Their state is used for the processing of the LAUNCH BROWSER
       
  5990  * Proactive Command.
       
  5991  *
       
  5992  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  5993  * @param aStatus whether or not SS/USSD is busy
       
  5994  *
       
  5995  * @see RSat::NotifyLaunchBrowserPCmd()
       
  5996  */
       
  5997 	{
       
  5998 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aStatus=%d"), aError, aStatus);
       
  5999 
       
  6000 	// Forward completion to correct dispatcher object to handle
       
  6001 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6002 	iDispatcherHolder->GetSatDispatcher().CallbackSsChange(aError, aStatus);
       
  6003 
       
  6004 	} // CCtsyDispatcherCallback::CallbackSatSsChangeInd
       
  6005 
       
  6006 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCallDisconnectedInd(
       
  6007 		TInt aError, TUint8 aTransactionId, TBool aNearEnd, const TDesC8& aCause)
       
  6008 /**
       
  6009  *
       
  6010  * This indicator from the LTSY notifies the CTSY that a call has become disconnected.
       
  6011  *
       
  6012  * If the call disconnected event is part of the current event list, the CTSY sends down
       
  6013  * an event download ENVELOPE command (Call Disconnected) to the LTSY constructed from the below
       
  6014  * paramenters.
       
  6015  *
       
  6016  * If the terminal initiates the disconnection, or in the case of radio link failure, this is considered a "near end"
       
  6017  * disconnection, whereas a "far end" disconnection is defined as when the network initiates the disconnection.
       
  6018  *
       
  6019  * The technology specific toolkit specification will define the appropriate disconnect cause messages.
       
  6020  *
       
  6021  * See "ETSI TS 102 223" "ENVELOPE commands" "Call disconnected event"
       
  6022  *
       
  6023  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6024  * @param aTransactionId The Transaction Identifier of the call being disconnected.
       
  6025  * @param aIsNearEnd If True, the case of disconnection is at the near end, (i.e. source = terminal, destination = UICC)
       
  6026  * 					If False (i.e. far end), the case of disconnection is at the far end, (i.e. source = network, destination = UICC)
       
  6027  * @param aCause 	The cause value is defined in the appropriate access technology specification.
       
  6028  * 					Radio Link Timeout is indicated by the cause having zero length, the maximum length is defined in KMaxCauseLength
       
  6029  * 					See "ETSI TS 102 223" "COMPREHENSION-TLV data objects" "Cause"
       
  6030  *
       
  6031  * @see RSat::NotifySetUpEventListPCmd()
       
  6032  * @see RSat::EventDownload()
       
  6033  */
       
  6034 	{
       
  6035 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aTransactionId=%d,aNearEnd=%d"), aError,aTransactionId,aNearEnd);
       
  6036 
       
  6037 	// Forward completion to correct dispatcher object to handle
       
  6038 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6039 	iDispatcherHolder->GetSatDispatcher().CallbackCallDisconnected(aError,aTransactionId,aNearEnd,aCause);
       
  6040 
       
  6041 	} // CCtsyDispatcherCallback::CallbackSatCallDisconnectedInd
       
  6042 
       
  6043 EXPORT_C void CCtsyDispatcherCallback::CallbackSatMtCallInd(
       
  6044 	TInt aError, TUint8 aTransactionId, const TDesC8& aAddress, const TDesC8& aSubAddress)
       
  6045 /**
       
  6046  *
       
  6047  * This indicator from the LTSY notifies the CTSY that the terminal has received an
       
  6048  * incoming call setup message.
       
  6049  *
       
  6050  * If the MT call event is part of the current event list, the CTSY sends down
       
  6051  * an event download ENVELOPE command (MT call) to the LTSY constructed from the paramenters.
       
  6052  *
       
  6053  * The Dialling Number (part of the address) is the Calling Party number received by the
       
  6054  * terminal in the call setup message. Being of length zero the address will not be included in the ENVELOPE command,
       
  6055  * the maximum length is defined in KNumberMaxLength.
       
  6056  *
       
  6057  * The Subaddress is the Calling Party Subaddress as received by the terminal in the call setup message. Being of length zero
       
  6058  * the subaddress will not be included in the ENVELOPE command
       
  6059  *
       
  6060  * See "ETSI TS 102 223" "ENVELOPE commands" "MT call event"
       
  6061  *
       
  6062  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6063  * @param aTransactionId The Transaction Identifier in the call setup message from the network.
       
  6064  * @param aAddress Holds the Calling Party number received by the terminal in the call setup message. If
       
  6065  * the Calling Party number is included in the call setup message, the Address shall be included, otherwise
       
  6066  * the address shall not be included  (zero length). See "ETSI TS 102 223" "COMPREHENSION-TLV data objects" "Address"
       
  6067  * @param aSubAddress Holds the Calling Party Subaddress as received by the terminal in the call setup
       
  6068  * message. If the Calling Party Subaddress is included in the call setup message, the Subaddress shall be included, otherwise
       
  6069  * the Subaddress shall not be included (zero length). See "ETSI TS 102 223" "COMPREHENSION-TLV data objects" "Subaddress"
       
  6070  *
       
  6071  * @see RSat::NotifySetUpEventListPCmd()
       
  6072  * @see RSat::EventDownload()
       
  6073  *
       
  6074  */
       
  6075 	{
       
  6076 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aTransactionId=%d"),aError,aTransactionId);
       
  6077 
       
  6078 	// Forward completion to correct dispatcher object to handle
       
  6079 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6080 	iDispatcherHolder->GetSatDispatcher().CallbackMtCall(aError,aTransactionId,aAddress,aSubAddress);
       
  6081 
       
  6082 	} // CCtsyDispatcherCallback::CallbackSatMtCallInd
       
  6083 
       
  6084 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCallControlEnvelopeResponseInd(
       
  6085 	TInt aError, const TDesC8& aResponseTlv)
       
  6086 /**
       
  6087  *
       
  6088  * This indicator is used as part of the call control procedures to return the response
       
  6089  * from an ENVELOPE (CALL CONTROL) to the CTSY.  The CTSY extracts an alpha identifier
       
  6090  * (if any) from the TLV data and displays it appropriately when the changed call occurs.
       
  6091  * The control result is used to generate the TERMINAL RESPONSE if a  SET UP CALL or SEND SS
       
  6092  * proactive command originated the request that lead to Call Control.
       
  6093  *
       
  6094  *
       
  6095  * When the LTSY receives a non-emergency call or SS request (such as via RCall::Dial() or
       
  6096  * RMobileCall::SendNetworkServiceRequest() )it must first checked with the FDN list, if enabled.
       
  6097  * USSD requests are not checked in the FDN list.
       
  6098  *
       
  6099  * If the call/SS request is allowed or it is a USSD request then the LTSY passes the details of the request
       
  6100  * to Call/SS/USSD Control, if enabled, by sending an ENVELOPE (CALL CONTROL) message to the UICC.
       
  6101  * The LTSY should use this indicator to pass the details of the request for which an ENVELOPE (CALL
       
  6102  * CONTROL) must be constructed to the CTSY.
       
  6103  *
       
  6104  * When the CTSY has constructed the ENVELOPE (CALL CONTROL) this will be passed down to the LTSY via
       
  6105  * CLtsySatHandler::HandleCallAndSmsControlEnvelopeReqL(). The response from the UICC is passed back to CTSY via
       
  6106  * CallbackSatCallControlEnvelopeResponseInd().
       
  6107  *
       
  6108  *
       
  6109  * For more information see ETSI TS 102 223 section 7.3.1
       
  6110  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  6111  * @param aResponseTlv The response from NAA to the ENVELOPE (CALL CONTROL) message. This will be
       
  6112  * parsed by the CTSY and if an alpha identifier exists in the data, it will be passed to the RSat client
       
  6113  * for display to the user. As per ETSI 102.223 section 7.3.1.6, this contains 1 byte containing the Call
       
  6114  * Control result, followed by a 1-2 byte length, then various optional fields depending on the outcome
       
  6115  * of the Call/SS/USSD Control. If the NAA application does not provide any response data then this is
       
  6116  * interpreted as "allowed, no modification", in this case the client is not notified.
       
  6117  *
       
  6118  *  @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6119  *
       
  6120  * @see RSat::NotifyCallControlRequest()
       
  6121  */
       
  6122 	{
       
  6123 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6124 
       
  6125 	// Forward completion to correct dispatcher object to handle
       
  6126 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6127 	iDispatcherHolder->GetSatDispatcher().CallbackCallControlEnvelopeResponse(aError,aResponseTlv);
       
  6128 
       
  6129 	} // CCtsyDispatcherCallback::CallbackSatCallControlEnvelopeResponseInd
       
  6130 
       
  6131 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCreateCallControlEnvelopeInd(
       
  6132 	TInt aError, TUint8 aTag, const TDesC8& aBcc1, const TDesC8& aBcc2, 
       
  6133 	const TDesC8& aAddress, TUint8 aTonNpi, TUint8 aDcs)
       
  6134 /**
       
  6135  *
       
  6136  * This indicator is used by the LTSY as part of the CALL/SS/USSD CONTROL functionality to construct
       
  6137  * the ENVELOPE (CALL CONTROL) that is sent to the UICC when MO calls or SS/USSD requests are initiated.
       
  6138  *
       
  6139  *
       
  6140  * When the LTSY receives a non-emergency call or SS request (such as via RCall::Dial() or
       
  6141  * RMobileCall::SendNetworkServiceRequest() )  it must first checked with the FDN list, if enabled.
       
  6142  * USSD requests are not checked in the FDN list.
       
  6143  *
       
  6144  * If the call/SS request is allowed or it is a USSD request then the LTSY passes the details of the request
       
  6145  * to Call/SS/USSD Control, if enabled, by sending an ENVELOPE (CALL CONTROL) message to the UICC.
       
  6146  * The LTSY should use this indicator to pass the details of the request for which an ENVELOPE (CALL
       
  6147  * CONTROL) must be constructed to the CTSY.
       
  6148  *
       
  6149  * When the CTSY has constructed the ENVELOPE (CALL CONTROL) this will be passed down to the LTSY via
       
  6150  * CLtsySatHandler::HandleCallAndSmsControlEnvelopeReqL(). The response from the UICC is passed back to CTSY via
       
  6151  * CallbackSatCallControlEnvelopeResponseInd().
       
  6152  *
       
  6153  *
       
  6154  * For more information see ETSI TS 102 223 section 7.3.1
       
  6155  *
       
  6156  *
       
  6157  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6158  * @param aTag Type of the address argument i.e. whether this is a call, SS or USSD request. 
       
  6159  * Valid values are KTlvAddressTag, KTlvSsStringTag or KTlvUssdStringTag
       
  6160  * @param aBcc1 Bearer capability 1. The maximum length is 16.
       
  6161  * @param aBcc2 Bearer capability 2. The maximum length is 16.
       
  6162  * @param aAddress the number or string being dialled. The maximum length is 255.
       
  6163  * @param aTonNpi the TON/NPI (Type of Numbering / Numbering Plan Indicator) byte
       
  6164  * @param aDcs Data Coding Scheme. Only applicable for USSD requests.
       
  6165  *
       
  6166  * @see RSat::NotifyCallControlRequest()
       
  6167  */
       
  6168 	{
       
  6169 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6170 
       
  6171 	// Forward completion to correct dispatcher object to handle
       
  6172 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6173 	iDispatcherHolder->GetSatDispatcher().CallbackCreateCallControlEnvelope(aError,aTag,aBcc1,aBcc2,aAddress,aTonNpi,aDcs);
       
  6174 
       
  6175 	} // CCtsyDispatcherCallback::CallbackSatCreateCallControlEnvelopeInd
       
  6176 
       
  6177 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCreateSmControlEnvelopeInd(TInt aError,
       
  6178 		const TDesC8& aRpDestinationAddress, const TDesC8& aTpDestinationAddress)
       
  6179 /**
       
  6180  *
       
  6181  * This indicator from the LTSY notifies the CTSY to create a MO Short Message Control ENVELOPE.
       
  6182  * The CTSY then sends the ENVELOPE to the LTSY, the LTSY receives this via the
       
  6183  * CLtsySatHandler::HandleCallAndSmsControlEnvelopeReqL()
       
  6184  *
       
  6185  * See 3GPP 11.14 Under "MO Short Message Control by SIM" for details of the Envelope created
       
  6186  * See "ETSI TS 102 223" "COMPREHENSION-TLV data objects" "Address" for address details
       
  6187  *
       
  6188  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6189  * @param aRpDestinationAddress RP Destination Address of the Service Center to which the ME is proposing to send the short message.
       
  6190  * @param aTpDestinationAddress TP Destination Address to which the ME is proposing to send the short message.
       
  6191  *
       
  6192  * @see RSat::NotifyMoSmControlRequest()
       
  6193  *
       
  6194  */
       
  6195 	{
       
  6196 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6197 
       
  6198 	// Forward completion to correct dispatcher object to handle
       
  6199 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6200 	iDispatcherHolder->GetSatDispatcher().CallbackCreateSmControlEnvelope(aError,aRpDestinationAddress,aTpDestinationAddress);
       
  6201 
       
  6202 	} // CCtsyDispatcherCallback::CallbackSatCreateSmControlEnvelopeInd
       
  6203 
       
  6204 EXPORT_C void CCtsyDispatcherCallback::CallbackSatImsiChangedInd(TInt aError)
       
  6205 /**
       
  6206  *
       
  6207  * This indicator is a notification that the Imsi has been changed. This should be called
       
  6208  * when a change has been detected.
       
  6209  *
       
  6210  * From 3GPP TS 11.14 Under "EFIMSI changing procedure"
       
  6211  * 
       
  6212  * When EFIMSI is changed via Data Download or a SIM Toolkit application and a REFRESH command 
       
  6213  * is issued by the SIM the following rules apply to the SIM Toolkit and ME:
       
  6214  * 
       
  6215  * -	SIM Initialization. This command shall not be used if EFIMSI is changed, as the behaviour 
       
  6216  * 		of the MS is unpredictable. 
       
  6217  * 
       
  6218  * -	File Change Notification. This command shall not be used if EFIMSI is changed, as the 
       
  6219  * 		behaviour of the MS is unpredictable.
       
  6220  * 
       
  6221  * -	SIM Initialization and File Change Notification. If EFIMSI is part of the file change notification, 
       
  6222  * 		the ME shall invoke the MM Restart procedure defined in 03.22 [28]. 
       
  6223  * 
       
  6224  * -	SIM Initialization and Full File Change Notification. The ME shall invoke the MM Restart procedure 
       
  6225  * 		defined in 03.22 [28]. 
       
  6226  * 
       
  6227  * -	SIM Reset. Normal SIM Reset procedure is carried out.
       
  6228  * 
       
  6229  * If EFIMSI is to be updated, neither EFIMSI nor EFLOCI shall be updated in the SIM before the phase request 
       
  6230  * procedure has been executed by the ME. 
       
  6231  *
       
  6232  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6233  *
       
  6234  * @see RSat::NotifyRefreshPCmd()
       
  6235  */
       
  6236 	{
       
  6237 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6238 
       
  6239 	// Forward completion to correct dispatcher object to handle
       
  6240 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6241 	iDispatcherHolder->GetSatDispatcher().CallbackImsiChanged(aError);
       
  6242 
       
  6243 	} // CCtsyDispatcherCallback::CallbackSatImsiChangedInd
       
  6244 
       
  6245 EXPORT_C void CCtsyDispatcherCallback::CallbackSatLocationStatusInd(
       
  6246 	TInt aError, TUint8 aLcnStatus, const TDesC8& aCountryCode,
       
  6247 	TUint16 aLcnAreaCode, TUint16 aCellId)
       
  6248 /**
       
  6249  *
       
  6250  * LTSY uses this indicator to notify the CTSY of changes of location status.
       
  6251  *
       
  6252  * If an appropriate SET UP EVENT LIST proactive command has previously been received,
       
  6253  * and if aLcnStatus indicates "normal service", then this function also constructs an
       
  6254  * appropriate ENVELOPE (EVENT DOWNLOAD) and sends to LTSY.
       
  6255  *
       
  6256  * According to ETSI 102.223 the location information that is provided in the
       
  6257  * ENVELOPE (EVENT DOWNLOAD) varies depending upon the access technology in use,
       
  6258  * however the CTSY supports only GSM location information.
       
  6259  *
       
  6260  * This callback is also used to cache the location information which is then used to construct
       
  6261  * the Call/USSD/SS control envelopes.
       
  6262  *
       
  6263  *
       
  6264  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6265  * @param aLcnStatus the current service state of the terminal -
       
  6266  * 			one of the values defined in ETSI 102.223 section 8.27
       
  6267  * @param aCountryCode 3 digit number uniquely identifying the country. Length of aCountryCode should
       
  6268  * not be greater than 3.
       
  6269  * @param aLcnAreaCode The Location Area Code uniquely identifies a Location Area
       
  6270  * 			with a network.
       
  6271  * @param aCellId The current cell.
       
  6272  *
       
  6273  * @see RSat::NotifyCallControlRequest()
       
  6274  * @see RSat::NotifySetUpEventListPCmd()
       
  6275  * @see RSat::EventDownload()
       
  6276  */
       
  6277 	{
       
  6278 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aLcnStatus=%d,aLcnAreaCode=%d,aCellId=%d"), aError,aLcnStatus,aLcnAreaCode,aCellId);
       
  6279 
       
  6280 	// Forward completion to correct dispatcher object to handle
       
  6281 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6282 	iDispatcherHolder->GetSatDispatcher().CallbackLocationStatus(aError, aLcnStatus, aCountryCode, aLcnAreaCode, aCellId);
       
  6283 
       
  6284 	} // CCtsyDispatcherCallback::CallbackSatLocationStatusInd
       
  6285 
       
  6286 EXPORT_C void CCtsyDispatcherCallback::CallbackSatRemoveEventListInd(TInt aError)
       
  6287 /**
       
  6288  *
       
  6289  * This indicator is used by the LTSY to communicate to the Common TSY to clear the current
       
  6290  * events list, thus the set of enabled events will be empty.
       
  6291  * 
       
  6292  * See ESTI 102.223 6.4.16 Under "SET UP EVENT LIST"
       
  6293  * 
       
  6294  * "The list of events provided by the UICC in the last SET UP EVENT LIST
       
  6295  * command shall be removed if the terminal is powered off or the UICC is removed or a reset is performed."
       
  6296  *
       
  6297  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  6298  * @see RSat::NotifySetUpEventListPCmd()
       
  6299  * @see RSat::EventDownload()
       
  6300  */
       
  6301 	{
       
  6302 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6303 
       
  6304 	// Forward completion to correct dispatcher object to handle
       
  6305 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6306 	iDispatcherHolder->GetSatDispatcher().CallbackRemoveEventList(aError);
       
  6307 
       
  6308 	} // CCtsyDispatcherCallback::CallbackSatRemoveEventListInd
       
  6309 
       
  6310 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCreateRefreshTerminalRspInd(
       
  6311 	TInt aError, RSat::TPCmdResult aGeneralResult, const TDesC& aResultAdditionalInfo)
       
  6312 /**
       
  6313  *
       
  6314  * This indicator is used to create a terminal response to a Refresh Pro active command initiated from the
       
  6315  * LTSY rather then the RSat client. For example in an error case when the client cannot be expected to
       
  6316  * create the terminal response with RSat::TerminalRsp(). The constructed terminal response is presented to the LTSY via
       
  6317  * the MLtsyDispatchSatTerminalRsp::HandleTerminalRspReqL()
       
  6318  *
       
  6319  * @see MLtsyDispatchSatTerminalRsp::HandleTerminalRspReqL()
       
  6320  *
       
  6321  *
       
  6322  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6323  * @param aGeneralResult The General result that specifies the result and indicates appropriate UICC action (to be included in the
       
  6324  * refresh terminal response result section, see ETSI 102 223 Under "Structure of TERMINAL RESPONSE" and Under "Result")
       
  6325  * @param aResultAdditionalInfo Additional information (to be included in the refresh terminal response result section,
       
  6326  * see ETSI 102 223 Under "Structure of TERMINAL RESPONSE" and Under "Result")
       
  6327  *
       
  6328  * @see RSat::NotifyRefreshPCmd()
       
  6329  */
       
  6330 	{
       
  6331 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aGeneralResult=%d"), aError, aGeneralResult);
       
  6332 
       
  6333 	// Forward completion to correct dispatcher object to handle
       
  6334 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6335 	iDispatcherHolder->GetSatDispatcher().CallbackCreateRefreshTerminalRsp(aError,aGeneralResult,aResultAdditionalInfo);
       
  6336 
       
  6337 	} // CCtsyDispatcherCallback::CallbackSatCreateRefreshTerminalRspInd
       
  6338 
       
  6339 EXPORT_C void CCtsyDispatcherCallback::CallbackSatSmControlEnvelopeResponseInd(TInt aError, const TDesC8& aResponseTlv)
       
  6340 /**
       
  6341  *
       
  6342  * This indicator is used by the LTSY to communicate to the Common TSY the Mo Short Message Control
       
  6343  * response from the SIM. The CTSY parses the data then completes any outstanding RSat::NotifyMoSmControlRequest() 
       
  6344  * then passes the parsed data down to the LTSY via the HandleSmControlResponseDataReqL().
       
  6345  *
       
  6346  *
       
  6347  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6348  * @param aResponseTlv Response data from the SIM encoded as defined in "3GPP 11.14 - MO Short Message Control by SIM"
       
  6349  *
       
  6350  * @see RSat::NotifyMoSmControlRequest()
       
  6351  */
       
  6352 	{
       
  6353 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6354 
       
  6355 	// Forward completion to correct dispatcher object to handle
       
  6356 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6357 	iDispatcherHolder->GetSatDispatcher().CallbackSmControlEnvelopeResponse(aError,aResponseTlv);
       
  6358 
       
  6359 	} // CCtsyDispatcherCallback::CallbackSatSmControlEnvelopeResponseInd
       
  6360 
       
  6361 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCreateSmsPpDownloadEnvelopeInd(
       
  6362 	TInt aError, const TDesC8& aRpOriginatingAddress, const TDesC8& aSmsDeliveryTpdu)
       
  6363 /**
       
  6364  *
       
  6365  * This indicator is used by the LTSY when the ME receives a short Message.
       
  6366  *
       
  6367  * If data download via SMS Point-to-point" is allocated and activated in the SIM Service Table the
       
  6368  * CTSY constructs the (SMS-PP DOWNLOAD) ENVELOPE to be sent to the SIM. This is received
       
  6369  * by the LTSY via the HandleSmsPpDownloadEnvelopeReqL()
       
  6370  *
       
  6371  * If data download via SMS Point-to-point" is NOT allocated and activated in the SIM Service Table
       
  6372  * the Sms parsed and if it is to be save a EF(Sms) (RMobileSmsStore::TMobileGsmSmsEntryV1)is constructed
       
  6373  * and received by the LTSY via the HandleSmsStoreReadEntryReqL()
       
  6374  *
       
  6375  * See "3GPP 11.14" Under "SMS-PP data download"
       
  6376  *
       
  6377  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6378  * @param aRpOriginatingAddress RP Originating Address of the Service Centre (TS Service-Centre-Address), as defined in 3GPP TS 24.011)
       
  6379  * @param aSmsDeliveryTpdu The SMS-DELIVER TPDU (See "3GPP 23.040" under "SMS DELIVER type")
       
  6380  *
       
  6381  * @see RSat::NotifySmsPpDownload()
       
  6382  */
       
  6383 	{
       
  6384 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6385 
       
  6386 	// Forward completion to correct dispatcher object to handle
       
  6387 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6388 	iDispatcherHolder->GetSatDispatcher().CallbackSatCreateSmsPpDownloadEnvelope(aError,aRpOriginatingAddress,aSmsDeliveryTpdu);
       
  6389 
       
  6390 	} // CCtsyDispatcherCallback::CallbackSatCreateSmsPpDownloadEnvelopeInd
       
  6391 
       
  6392 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCreateSmsDeliverReportInd(TInt aError)
       
  6393 /**
       
  6394  *
       
  6395  * This indicator is called once the writing of a SMS to EF(Sms) is completed. The CTSY
       
  6396  * then constructs a resulting SMS DELIVER REPORT (See "3GPP 23.040" Under "SMS DELIVER REPORT type")
       
  6397  *
       
  6398  * Also see "3GPP TS 23.038" Under "SMS Data Coding Scheme"
       
  6399  *
       
  6400  * "When a mobile terminated message is Class 2 ((U)SIM-specific),
       
  6401  * an  MS shall ensure that the message has been transferred to the
       
  6402  * SMS data field in the (U)SIM before sending an acknowledgement to the SC"
       
  6403  *
       
  6404  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  6405  */
       
  6406 	{
       
  6407 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6408 
       
  6409 	// Forward completion to correct dispatcher object to handle
       
  6410 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6411 	iDispatcherHolder->GetSatDispatcher().CallbackCreateSmsDeliverReport(aError);
       
  6412 
       
  6413 	} // CCtsyDispatcherCallback::CallbackSatCreateSmsDeliverReportInd
       
  6414 
       
  6415 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetAccessTechnologyComp(
       
  6416 	TInt aError, TUint8 aAccessTechnology)
       
  6417 /**
       
  6418  *
       
  6419  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6420  * MLtsyDispatchSatGetAccessTechnology::HandleGetAccessTechnologyReqL()
       
  6421  *
       
  6422  *
       
  6423  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6424  * @param aAccessTechnology the current access technology.
       
  6425  * See "ETSI TS 102 223" "ENVELOPE commands" "Access technology"
       
  6426  *
       
  6427  * @see RSat::NotifyLocalInfoPCmd()
       
  6428  */
       
  6429 	{
       
  6430 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aAccessTechnology=%d"), aError, aAccessTechnology);
       
  6431 
       
  6432 	// Forward completion to correct dispatcher object to handle
       
  6433 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6434 	iDispatcherHolder->GetSatDispatcher().CallbackGetAccessTechnology(aError, aAccessTechnology);
       
  6435 
       
  6436 	} // CCtsyDispatcherCallback::CallbackSatGetAccessTechnologyComp
       
  6437 
       
  6438 EXPORT_C void CCtsyDispatcherCallback::CallbackSatCreateCellBroadcastEnvelopeInd(TInt aError, const TDesC8& aCellBroadcastPage)
       
  6439 /**
       
  6440  * Once the ME receives a new Cell Broadcast message and the service, if "data download via SMS-CB" is
       
  6441  * allocated and activated in the SIM Service Table and if the message identifier of the Cell Broadcast
       
  6442  * is contained within the message identifiers of the EF(CBMID), the cell broadcast page is passed
       
  6443  * to the SIM using the ENVELOPE (CELL BROADCAST DOWNLOAD) command.
       
  6444  *
       
  6445  * This indicator is called to create a ENVELOPE (CELL BROADCAST DOWNLOAD) command using the
       
  6446  * parameters provided, The ENVELOPE can be received in HandleCellBroadcastEnvelopeReqL().
       
  6447  *
       
  6448  * See "3GPP TS 11.14" Under "Cell Broadcast data download"
       
  6449  *
       
  6450  *
       
  6451  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6452  * @param aCellBroadcastPage The Cell Broadcast page, formatted in the same way as described in 3GPP TS 23.041
       
  6453  *
       
  6454  * @see RSat::NotifyCbDownload()
       
  6455  */
       
  6456 	{
       
  6457 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6458 
       
  6459 	// Forward completion to correct dispatcher object to handle
       
  6460 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6461 	iDispatcherHolder->GetSatDispatcher().CallbackCreateCellBroadcastEnvelope(aError,aCellBroadcastPage);
       
  6462 
       
  6463 	} // CCtsyDispatcherCallback::CallbackSatCreateCellBroadcastEnvelopeInd
       
  6464 
       
  6465 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetImageInstanceComp(
       
  6466 	TInt aError, const TDesC8& aImageInstanceData, const TDesC8& aImageInstanceBody)
       
  6467 /**
       
  6468  *
       
  6469  *
       
  6470  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6471  * MLtsyDispatchSatGetImageInstance::HandleGetImageInstanceReqL()
       
  6472  *
       
  6473  * The aImageInstanceData with the aImageInstanceBody appended completes the EF(IIDF)
       
  6474  * (IIDF - Image instance data file)
       
  6475  *
       
  6476  * @param aError 				KErrNone on success, or another error code indicating the error otherwise.
       
  6477  * @param aImageInstanceData 	Descriptor containing the image instance coding scheme of the EF(IIDF),
       
  6478  * 								this must be of length 2 (KBasicIconDataLength) for basic
       
  6479  * 								or length 6 (KColourIconDataLength) for colour image instances.
       
  6480  * 								See ETSI TS 131 102 under "Annex B (normative) Image Coding Schemes (B.1 & B.2)"
       
  6481  * @param aImageInstanceBody	Descriptor containing the image instance body of the EF(IIDF)
       
  6482  * 								See ETSI TS 131 102 under "Annex B (normative) Image Coding Schemes"
       
  6483  *
       
  6484  * @see RSat::GetImageInstance()
       
  6485  */
       
  6486 	{
       
  6487 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6488 
       
  6489 	// Forward completion to correct dispatcher object to handle
       
  6490 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6491 	iDispatcherHolder->GetSatDispatcher().CallbackGetImageInstance(aError,aImageInstanceData,aImageInstanceBody);
       
  6492 
       
  6493 	} // CCtsyDispatcherCallback::CallbackSatGetImageInstanceComp
       
  6494 
       
  6495 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetIconDataComp(
       
  6496 	TInt aError, const TDesC8& aIconEfImgRecord)
       
  6497 /**
       
  6498  *
       
  6499  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6500  * MLtsyDispatchSatGetIconData::HandleGetIconDataReqL()
       
  6501  *
       
  6502  *
       
  6503  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6504  * @param aIconEfImgRecord 	The icon EF(Img) record retrieved from the UICC
       
  6505  * 							See ETSI TS 131 102 under "EFIMG (Image)"
       
  6506  *
       
  6507  * @see RSat::GetIcon()
       
  6508  */
       
  6509 	{
       
  6510 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6511 
       
  6512 	// Forward completion to correct dispatcher object to handle
       
  6513 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6514 	iDispatcherHolder->GetSatDispatcher().CallbackGetIconData(aError,aIconEfImgRecord);
       
  6515 
       
  6516 	} // CCtsyDispatcherCallback::CallbackSatGetIconDataComp
       
  6517 
       
  6518 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetClutComp(
       
  6519 	TInt aError, const TDesC8& aClut)
       
  6520 /**
       
  6521  *
       
  6522  *
       
  6523  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6524  * MLtsyDispatchSatGetClut::HandleGetClutReqL()
       
  6525  *
       
  6526  * @param aError 	KErrNone on success, or another error code indicating the error otherwise.
       
  6527  * @param aClut 	The requested CLUT (Colour look up table) for a given icon instance
       
  6528  * 					See ETSI TS 131 102 under "B.2 Colour Image Coding Scheme"
       
  6529  *
       
  6530  * @see RSat::GetClut()
       
  6531  */
       
  6532 	{
       
  6533 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6534 
       
  6535 	// Forward completion to correct dispatcher object to handle
       
  6536 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6537 	iDispatcherHolder->GetSatDispatcher().CallbackGetClut(aError,aClut);
       
  6538 
       
  6539 	} // CCtsyDispatcherCallback::CallbackSatGetClutComp
       
  6540 
       
  6541 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetDefaultBearerCapabilityComp(
       
  6542 	TInt aError, const TDesC8& aCapability)
       
  6543 /**
       
  6544  *
       
  6545  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6546  * MLtsyDispatchSatGetDefaultBearerCapability::HandleGetDefaultBearerCapabilityReqL()
       
  6547  *
       
  6548  *
       
  6549  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6550  * @param aCapability The default bearer capability configuration (coding as defined by the access technologies),
       
  6551  * this will be used by the CTSY when creating a Call Control ENVELOPE (the capability configuration parameters 1)
       
  6552  * if a zero length capability parameters is passed when creating the Envelope.
       
  6553  * Note the maximum length capability the CTSY can store is 248, and a maximum length of 16 will be used in the
       
  6554  * creation of the Call Control ENVELOPE
       
  6555  * See "ETSI TS 102 223" "Structure of ENVELOPE (CALL CONTROL)"
       
  6556  *
       
  6557  * @see RSat::NotifyCallControlRequest()
       
  6558  */
       
  6559 	{
       
  6560 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6561 
       
  6562 	// Forward completion to correct dispatcher object to handle
       
  6563 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6564 	iDispatcherHolder->GetSatDispatcher().CallbackGetDefaultBearerCapability(aError, aCapability);
       
  6565 
       
  6566 	} // CCtsyDispatcherCallback::CallbackSatGetDefaultBearerCapabilityComp
       
  6567 
       
  6568 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetSmsPpDownloadSupportedComp(
       
  6569 	TInt aError, TBool aSupported)
       
  6570 /**
       
  6571  *
       
  6572  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6573  * MLtsyDispatchSatGetSmsPpDownloadSupported::HandleGetSmsPpDownloadSupportedReqL()
       
  6574  *
       
  6575  *
       
  6576  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6577  * @param aSupported If the service "data download via SMS Point-to-point" is allocated and activated in the SIM Service Table
       
  6578  *
       
  6579  * @see RSat::NotifySmsPpDownload()
       
  6580  */
       
  6581 	{
       
  6582 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aSupported=%d"), aError, aSupported);
       
  6583 
       
  6584 	// Forward completion to correct dispatcher object to handle
       
  6585 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6586 	iDispatcherHolder->GetSatDispatcher().CallbackGetSmsPpDownloadSupported(aError, aSupported);
       
  6587 
       
  6588 	} // CCtsyDispatcherCallback::CallbackSatGetSmsPpDownloadSupportedComp
       
  6589 
       
  6590 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetSmsControlActivatedComp(
       
  6591 	TInt aError, TBool aActivated)
       
  6592 /**
       
  6593  *
       
  6594  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6595  * MLtsyDispatchSatGetSmsControlActivated::HandleGetSmsControlActivatedReqL()
       
  6596  *
       
  6597  *
       
  6598  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6599  * @param aActivated ETrue if MO-SMS Control by USIM (Service n°31) is currently activated
       
  6600  * in the USIM Service Table (EF-UST), EFalse otherwise. See 3GPP TS 31.102 section 4.2.8.
       
  6601  *
       
  6602  * @see RSat::NotifyMoSmControlRequest()
       
  6603  */
       
  6604 	{
       
  6605 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aActivated=%d"), aError, aActivated);
       
  6606 
       
  6607 	// Forward completion to correct dispatcher object to handle
       
  6608 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6609 	iDispatcherHolder->GetSatDispatcher().CallbackGetSmsControlActivated(aError, aActivated);
       
  6610 
       
  6611 	} // CCtsyDispatcherCallback::CallbackSatGetSmsControlActivatedComp
       
  6612 
       
  6613 
       
  6614 EXPORT_C void CCtsyDispatcherCallback::CallbackSatTimingAdvanceComp(
       
  6615 	TInt aError, TUint8 aTimingAdvance, TUint8 aMeStatus)
       
  6616 /**
       
  6617  *
       
  6618  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6619  * MLtsyDispatchSatTimingAdvance::HandleTimingAdvanceReqL()
       
  6620  *
       
  6621  * This information is used for the PROVIDE LOCAL INFORMATION proactive command.
       
  6622  *
       
  6623  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6624  * @param aTimingAdvance a value relating to the distance between the ME and the base station. The ME shall
       
  6625  * return the timing advance value that was received from the BTS during the last active dedicated connection
       
  6626  * (e.g. for call or SMS). Timing advance is defined in TS 04.08 [8].
       
  6627  * @param aMeStatus current status of ME (i.e. ME is in idle mode or not) - in order for the application to
       
  6628  * be aware of potential misinterpretation of the timing advance value.
       
  6629  *
       
  6630  * @see RSat::NotifyLocalInfoPCmd()
       
  6631  */
       
  6632 	{
       
  6633 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aTimingAdvance=%d,aMeStatus=%d"), aError,aTimingAdvance,aMeStatus);
       
  6634 
       
  6635 	// Forward completion to correct dispatcher object to handle
       
  6636 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6637 	iDispatcherHolder->GetSatDispatcher().CallbackTimingAdvance(aError, aTimingAdvance, aMeStatus);
       
  6638 
       
  6639 	} // CCtsyDispatcherCallback::CallbackSatTimingAdvanceComp
       
  6640 
       
  6641 
       
  6642 EXPORT_C void CCtsyDispatcherCallback::CallbackSatProvideLocationInfoComp(
       
  6643 	TInt aError, TUint16 aLocationAreaCode, TUint16 aCellId,
       
  6644 	const TDesC8& aOperatorCode)
       
  6645 /**
       
  6646  *
       
  6647  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6648  * MLtsyDispatchSatProvideLocationInfo::HandleProvideLocationInfoReqL()
       
  6649  *
       
  6650  * This completion must have been occurred before Call/USSD/SS control can
       
  6651  * be expected to work correctly.
       
  6652  *
       
  6653  *
       
  6654  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6655  * @param aLocationAreaCode the ID of the Location Area (grouping of multiple cells)
       
  6656  * that the mobile is in
       
  6657  * @param aCellId Id of the current GSM cell
       
  6658  * @param aOperatorCode Id of the current operator. This has a maximum length of 3.
       
  6659  *
       
  6660  * @see RSat::NotifyLocalInfoPCmd()
       
  6661  */
       
  6662 	{
       
  6663 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aLocationAreaCode=%d,aCellId=%d"), aError, aLocationAreaCode, aCellId);
       
  6664 
       
  6665 	// Forward completion to correct dispatcher object to handle
       
  6666 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6667 
       
  6668 	iDispatcherHolder->GetSatDispatcher().CallbackProvideLocationInfo(aError, aLocationAreaCode, aCellId, aOperatorCode);
       
  6669 
       
  6670 	} // CCtsyDispatcherCallback::CallbackSatProvideLocationInfoComp
       
  6671 
       
  6672 
       
  6673 EXPORT_C void CCtsyDispatcherCallback::CallbackSatSetPollingIntervalComp(
       
  6674 	TInt aError, TUint8 aPollingInterval)
       
  6675 /**
       
  6676  *
       
  6677  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6678  * MLtsyDispatchSatSetPollingInterval::HandleSetPollingIntervalReqL()
       
  6679  *
       
  6680  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6681  * @param aPollingInterval The polling interval in use by the LTSY (zero) indicate Polling is off.
       
  6682  *
       
  6683  * @see RSat::NotifyPollingIntervalPCmd()
       
  6684  */
       
  6685 	{
       
  6686 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aPollingInterval=%d"), aError, aPollingInterval);
       
  6687 
       
  6688 	// Forward completion to correct dispatcher object to handle
       
  6689 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6690 	iDispatcherHolder->GetSatDispatcher().CallbackSetPolling(aError,aPollingInterval);
       
  6691 
       
  6692 	} // CCtsyDispatcherCallback::CallbackSatSetPollingComp
       
  6693 
       
  6694 
       
  6695 EXPORT_C void CCtsyDispatcherCallback::CallbackSatLocalInformationNmrComp(
       
  6696 	TInt aError, const TDesC8& aNmr, const TDesC& aBcchList)
       
  6697 /**
       
  6698  *
       
  6699  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6700  * MLtsyDispatchSatLocalInformationNmr::HandleLocalInformationNmrReqL()
       
  6701  *
       
  6702  *
       
  6703  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6704  * @param aNmr Network Measurement Result (signal strength of BCCH of adjacent cells). Length of aNmr should 
       
  6705  * not be greater than 16.
       
  6706  * @param aBcchList Broadcast Control Channels of adjacent cells. Length of aBcchList should not be greater than 32.
       
  6707  *
       
  6708  * @see RSat::NotifyLocalInfoPCmd()
       
  6709  */
       
  6710 	{
       
  6711 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6712 	
       
  6713 
       
  6714 	// Forward completion to correct dispatcher object to handle
       
  6715 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6716 	iDispatcherHolder->GetSatDispatcher().CallbackLocalInformationNmr(aError, aNmr,aBcchList);
       
  6717 
       
  6718 	} // CCtsyDispatcherCallback::CallbackSatLocalInformationNmrComp
       
  6719 
       
  6720 EXPORT_C void CCtsyDispatcherCallback::CallbackSatGetUssdControlSupportedComp(TInt aError, TBool aSupported)
       
  6721 /**
       
  6722  *
       
  6723  * Callback function to indicate whether USSD TLVs are supported for control.
       
  6724  *
       
  6725  *
       
  6726  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6727  * @param aSupported ETrue if USSD control TLV is supported, EFalse otherwise.
       
  6728  *
       
  6729  * @see RSat::NotifyCallControlRequest()
       
  6730  */
       
  6731 	{
       
  6732 	TSYLOGENTRYEXITARGS(_L8("aError=%d,aSupported=%d"), aError,aSupported);
       
  6733 
       
  6734 	// Forward completion to correct dispatcher object to handle
       
  6735 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6736 	iDispatcherHolder->GetSatDispatcher().CallbackUssdControlSupported(aError, aSupported);
       
  6737 	} // CCtsyDispatcherCallback::CallbackSatGetUssdControlSupportedComp
       
  6738 
       
  6739 EXPORT_C void CCtsyDispatcherCallback::CallbackSatTerminalRspComp(TInt aError)
       
  6740 /**
       
  6741  *
       
  6742  * Callback function to be used by the Licensee LTSY to complete a
       
  6743  * MLtsyDispatchSatTerminalRsp::HandleTerminalRspReqL()
       
  6744  * back to the CTSY Dispatcher.
       
  6745  * 
       
  6746  * Successful completion of the callbak (i.e. KErrNone) allows timer expiration envelopes (if any)
       
  6747  * from the SIM ATK CTSY to be sent. No timer expiration envelopes can be sent while a 
       
  6748  * Pro-active command is currently on-going. 
       
  6749  *
       
  6750  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6751  *
       
  6752  * @see RSat::TerminalRsp()
       
  6753  * @see MLtsyDispatchSatTimerExpirationEnvelope::HandleTimerExpirationEnvelopeReqL()
       
  6754  */
       
  6755 	{
       
  6756 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6757 
       
  6758 	// Forward completion to correct dispatcher object to handle
       
  6759 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6760 	iDispatcherHolder->GetSatDispatcher().CallbackTerminalRsp(aError);
       
  6761 	}
       
  6762 
       
  6763 EXPORT_C void CCtsyDispatcherCallback::CallbackSatRefreshAllowedComp(TInt aError)
       
  6764 /**
       
  6765  *
       
  6766  * Callback function to be used by the Licensee LTSY to complete a
       
  6767  * MLtsyDispatchSatRefreshAllowed::HandleRefreshAllowedReqL()
       
  6768  * back to the CTSY Dispatcher.
       
  6769  *
       
  6770  *
       
  6771  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6772  * This error code will be what the client side outstanding RSat::NotifyRefreshPCmd() is 
       
  6773  * completed with.
       
  6774  *
       
  6775  * @see RSat::RefreshAllowed()
       
  6776  * @see RSat::NotifyRefreshPCmd()
       
  6777  * @see RSat::NotifyRefreshRequired()
       
  6778  * @see RMmCustomAPI::SatRefreshCompleteNotification()
       
  6779  */
       
  6780 	{
       
  6781 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6782 
       
  6783 	// Forward completion to correct dispatcher object to handle
       
  6784 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6785 	iDispatcherHolder->GetSatDispatcher().CallbackRefreshAllowed(aError);
       
  6786 	}
       
  6787 
       
  6788 EXPORT_C void CCtsyDispatcherCallback::CallbackSatReadyComp(TInt aError)
       
  6789 /**
       
  6790  *
       
  6791  * Callback function to be used by the Licensee LTSY to complete a
       
  6792  * MLtsyDispatchSatReady::HandleReadyReqL()
       
  6793  * back to the CTSY Dispatcher.
       
  6794  *
       
  6795  *
       
  6796  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6797  */
       
  6798 	{
       
  6799 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6800 
       
  6801 	// Forward completion to correct dispatcher object to handle
       
  6802 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6803 	iDispatcherHolder->GetSatDispatcher().CallbackReady(aError);
       
  6804 	}
       
  6805 
       
  6806 EXPORT_C void CCtsyDispatcherCallback::CallbackSatUssdControlEnvelopeErrorComp(TInt aError)
       
  6807 /**
       
  6808  * 
       
  6809  * Callback function to be used by the Licensee LTSY to complete a 
       
  6810  * MLtsyDispatchSatUssdControlEnvelopeError::HandleUssdControlEnvelopeErrorReqL()
       
  6811  * back to the CTSY Dispatcher.
       
  6812  * 
       
  6813  *
       
  6814  * @param aError The error code to be returned to the CTSY Dispatcher.
       
  6815  * 
       
  6816  * @see RSat::NotifyCallControlRequest()
       
  6817  */
       
  6818 	{
       
  6819 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6820 
       
  6821 	// Forward completion to correct dispatcher object to handle
       
  6822 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6823 	iDispatcherHolder->GetSatDispatcher().CallbackUssdControlEnvelopeError(aError);
       
  6824 	}
       
  6825 
       
  6826 EXPORT_C void CCtsyDispatcherCallback::CallbackPhoneNotifyRfStatusChangeInd(TInt aError, TRfStateInfo aRfStatus)
       
  6827 /**
       
  6828  *
       
  6829  * Callback function to indicate changes to the RF status.
       
  6830  * Status values defined by TRfStateInfo.
       
  6831  *
       
  6832  *
       
  6833  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6834  * @param aStatus RF status.  See TRfStateInfo.
       
  6835  */
       
  6836 	{
       
  6837 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6838 
       
  6839 	// Forward completion to correct dispatcher object to handle
       
  6840 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6841 	iDispatcherHolder->GetPhoneDispatcher().CallbackNotifyRfStatusChange(aError, aRfStatus);
       
  6842 	} // CCtsyDispatcherCallback::CallbackPhoneNotifyRfStatusChangeInd
       
  6843 
       
  6844 
       
  6845 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlDialDataComp(
       
  6846 	TInt aError, TInt aCallId)
       
  6847 /**
       
  6848  * Callback function to be used by the Licensee LTSY to complete a pending
       
  6849  * MLtsyDispatchCallControlDialData::HandleDialDataReqL()
       
  6850  *
       
  6851  * When a dial attempt is made via the above mentioned interface, the LTSY has the
       
  6852  * responsibility of allocating a unique Call ID to the call.  For more
       
  6853  * information, see the documentation on aCallId below.
       
  6854  *
       
  6855  * For dealing with voice calls, see
       
  6856  * CCtsyDispatcherCallback::CallbackCallControlDialVoiceComp()
       
  6857  *
       
  6858  * @param aError The error code to be returned to the CTSY Dispatcher by the LTSY
       
  6859  * indicating the outcome of the attempt to dial the requested call.  This should
       
  6860  * be KErrNone if the dialling process could be started successfully.  Otherwise
       
  6861  * another error code to indicate the failure should be returned.
       
  6862  *
       
  6863  * @param aCallId The call ID of the call that the dial attempt refers to which
       
  6864  * has been allocated by the LTSY.  This should be a number between 1 and
       
  6865  * KMaxCallIdValue and should be unique across all call modes (voice, data etc.).
       
  6866  * For example, if a request for a voice call is made and the LTSY allocates
       
  6867  * this call an ID of 1 and a request for a data call is requested, the LTSY
       
  6868  * should allocate a Call ID which is not the same as that already allocated for
       
  6869  * the first voice call.
       
  6870  *
       
  6871  * @see RCall::Dial()
       
  6872  *
       
  6873  */
       
  6874 	{
       
  6875 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aCallId=%d"), aError, aCallId);
       
  6876 
       
  6877 	// Forward completion to correct dispatcher object to handle
       
  6878 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6879 	iDispatcherHolder->GetCallControlDispatcher().CallbackDialData(aError, aCallId);
       
  6880 
       
  6881 	} // CCtsyDispatcherCallback::CallbackCallControlDialDataComp
       
  6882 
       
  6883 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetAlsPpSupportComp(
       
  6884 	TInt aError, RMmCustomAPI::TAlsSupport aAlsSupport)
       
  6885 /**
       
  6886  *
       
  6887  * Callback function to indicate whether the product profile support ALS (Alternate Line Service). 
       
  6888  *
       
  6889  *
       
  6890  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6891  * @param aAlsSupport RMmCustomAPI::EAlsSupportOn if ALS is supported, RMmCustomAPI::EAlsSupportOff if not.
       
  6892  *
       
  6893  * @see RMmCustomAPI::CheckAlsPpSupport()
       
  6894  */
       
  6895 	{
       
  6896 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAlsStatus=%d"), aError, aAlsSupport);
       
  6897 
       
  6898 	// Forward completion to correct dispatcher object to handle
       
  6899 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6900 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetAlsPpSupport(aError, aAlsSupport);
       
  6901 
       
  6902 	} // CCtsyDispatcherCallback::CallbackCallControlGetAlsPpSupportComp
       
  6903 
       
  6904 
       
  6905 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetAlsBlockedStatusComp(
       
  6906 		TInt aError, RMmCustomAPI::TGetAlsBlockStatus aAlsStatus)
       
  6907 /**
       
  6908  *
       
  6909  * Callback function to indicate the current ALS blocked status. 
       
  6910  *
       
  6911  *
       
  6912  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6913  * @param aAlsStatus The return value from the LTSY.
       
  6914  *
       
  6915  * @see RMmCustomAPI::GetAlsBlocked()
       
  6916  */
       
  6917 	{
       
  6918 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aAlsStatus=%d"), aError, aAlsStatus);
       
  6919 
       
  6920 	// Forward completion to correct dispatcher object to handle
       
  6921 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6922 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetAlsBlockedStatus(aError, aAlsStatus);
       
  6923 
       
  6924 	} // CCtsyDispatcherCallback::CallbackCallControlGetAlsBlockedStatusComp
       
  6925 
       
  6926 
       
  6927 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlSetAlsBlockedComp(
       
  6928 	TInt aError)
       
  6929 /**
       
  6930  *
       
  6931  * Callback function to indicate the current ALS blocked status change is complete. 
       
  6932  *
       
  6933  *
       
  6934  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6935  *
       
  6936  * @see RMmCustomAPI::SetAlsBlocked()
       
  6937  */
       
  6938 	{
       
  6939 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6940 
       
  6941 	// Forward completion to correct dispatcher object to handle
       
  6942 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6943 	iDispatcherHolder->GetCallControlDispatcher().CallbackSetAlsBlocked(aError);
       
  6944 
       
  6945 	} // CCtsyDispatcherCallback::CallbackCallControlSetAlsBlockedComp
       
  6946 
       
  6947 
       
  6948 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp(
       
  6949 	TInt aError)
       
  6950 /**
       
  6951  *
       
  6952  * Callback function to indicate a completion of a RMmCustomAPI::GetLifeTime() request in case
       
  6953  * the lifetime information is not available.
       
  6954  *
       
  6955  *
       
  6956  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6957  *
       
  6958  * @see RMmCustomAPI::GetLifeTime()
       
  6959  */
       
  6960 	{
       
  6961 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  6962 
       
  6963 	// Forward completion to correct dispatcher object to handle
       
  6964 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6965 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetLifeTime(aError);
       
  6966 
       
  6967 	} // CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp
       
  6968 
       
  6969 
       
  6970 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp(
       
  6971 	TInt aError, TUint32 aHours, TUint8 aMinutes)
       
  6972 /**
       
  6973  *
       
  6974  * Callback function to indicate the phone lifetime information when the lifetime information
       
  6975  * does not includes the phone manufacturing date but only the total amount of airtime use from the manufacturing date
       
  6976  * until the call to RMmCustomAPI::GetLifeTime().
       
  6977  *
       
  6978  *
       
  6979  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  6980  * @param aHours The amount of hours of airtime use since the manufacturing date. The range of the value should be 0-999999.
       
  6981  * @param aMinutes The amount of minutes in addition to the amount of hours represented by aHours. The range of the value is 0-59.
       
  6982  *
       
  6983  * @see RMmCustomAPI::GetLifeTime()
       
  6984  */
       
  6985 	{
       
  6986 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aHours=%d, aMinutes=%d"), aError, aHours, aMinutes);
       
  6987 
       
  6988 	// Forward completion to correct dispatcher object to handle
       
  6989 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  6990 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetLifeTime(aError, aHours, aMinutes);
       
  6991 
       
  6992 	} // CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp
       
  6993 
       
  6994 
       
  6995 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp(
       
  6996 	TInt aError, const TDateTime &aManufacturingDate)
       
  6997 /**
       
  6998  *
       
  6999  * Callback function to indicate the phone lifetime information when the lifetime information
       
  7000  * includes the phone manufacturing date but not the total amount of airtime use from the manufacturing date
       
  7001  * until the call to RMmCustomAPI::GetLifeTime().
       
  7002  *
       
  7003  *
       
  7004  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  7005  * @param aManufacturingDate The date of phone manufacturing. Only the Year, Month and day information is meaningful.
       
  7006  *
       
  7007  * @see RMmCustomAPI::GetLifeTime()
       
  7008  */
       
  7009 	{
       
  7010 	TSYLOGENTRYEXITARGS(_L8("aError=%d, Year()=%d, Month()=%d, Day()=%d"), aError,
       
  7011 			aManufacturingDate.Year(), aManufacturingDate.Month(), aManufacturingDate.Day());
       
  7012 
       
  7013 	// Forward completion to correct dispatcher object to handle
       
  7014 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  7015 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetLifeTime(aError, aManufacturingDate);
       
  7016 
       
  7017 	} // CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp
       
  7018 
       
  7019 
       
  7020 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp(
       
  7021 	TInt aError, const TDateTime &aManufacturingDate, TUint32 aHours, TUint8 aMinutes)
       
  7022 /**
       
  7023  *
       
  7024  * Callback function to indicate the phone lifetime information when the lifetime information
       
  7025  * includes the phone manufacturing date and the total amount of airtime use from the manufacturing date
       
  7026  * until the call to RMmCustomAPI::GetLifeTime().
       
  7027  *
       
  7028  *
       
  7029  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  7030  * @param aManufacturingDate The date of phone manufacturing. Only the Year, Month and day information is meaningful.
       
  7031  * @param aHours The amount of hours of airtime use since the manufacturing date. The range of the value should be 0-999999.
       
  7032  * @param aMinutes The amount of minutes in addition to the amount of hours represented by aHours. The range of the value is 0-59.
       
  7033  *
       
  7034  * @see RMmCustomAPI::GetLifeTime()
       
  7035  */
       
  7036 	{
       
  7037 	TSYLOGENTRYEXITARGS(_L8("aError=%d, aHours=%d, aMinutes=%d, Year()=%d, Month()=%d, Day()=%d"), aError, aHours, aMinutes,
       
  7038 			aManufacturingDate.Year(), aManufacturingDate.Month(), aManufacturingDate.Day());
       
  7039 	
       
  7040 	// Forward completion to correct dispatcher object to handle
       
  7041 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  7042 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetLifeTime(aError, aManufacturingDate, aHours, aMinutes);
       
  7043 
       
  7044 	} // CCtsyDispatcherCallback::CallbackCallControlGetLifeTimeComp
       
  7045 
       
  7046 
       
  7047 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlTerminateErrorCallComp(
       
  7048 	TInt aError)
       
  7049 /**
       
  7050  *
       
  7051  * Callback function to indicate that the request to terminate the call is complete.
       
  7052  *
       
  7053  *
       
  7054  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  7055  *
       
  7056  * @see RMmCustomAPI::TerminateCall()
       
  7057  */
       
  7058 	{
       
  7059 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  7060 
       
  7061 	// Forward completion to correct dispatcher object to handle
       
  7062 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  7063 	iDispatcherHolder->GetCallControlDispatcher().CallbackTerminateErrorCall(aError);
       
  7064 
       
  7065 	} // CCtsyDispatcherCallback::CallbackCallControlTerminateErrorCallComp
       
  7066 
       
  7067 
       
  7068 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlTerminateAllCallsComp(
       
  7069 	TInt aError)
       
  7070 /**
       
  7071  *
       
  7072  * Callback function to indicate that the request to terminate all the calls is complete.
       
  7073  *
       
  7074  *
       
  7075  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  7076  *
       
  7077  * @see RMmCustomAPI::TerminateCall()
       
  7078  */
       
  7079 	{
       
  7080 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  7081 
       
  7082 	// Forward completion to correct dispatcher object to handle
       
  7083 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  7084 	iDispatcherHolder->GetCallControlDispatcher().CallbackTerminateAllCalls(aError);
       
  7085 
       
  7086 	} // CCtsyDispatcherCallback::CallbackCallControlTerminateAllCallsComp
       
  7087 
       
  7088 
       
  7089 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlGetCallForwardingIndicatorComp(
       
  7090 	TInt aError, RMobilePhone::TMobileTON aTypeOfNumber,
       
  7091     RMobilePhone::TMobileNPI aMobilePlan,
       
  7092     const TDesC &aNumber,
       
  7093     RMobilePhone::TCFUIndicatorStatusFlags aCFUIndicatorStatusFlags,
       
  7094     RMobilePhone::TMultipleSubscriberProfileID aMultipleSubscriberProfileId)
       
  7095 /**
       
  7096  * Complete a MLtsyDispatchCallControlGetCallForwardingIndicator::HandleGetCallForwardingIndicatorL request by returning 
       
  7097  * to the CTSY the indicator parameters for unconditional call forwarding, with support
       
  7098  * for MPS (Multiple Subscriber Profile) and Call Forwarding Number. The MPS Supplementary Service
       
  7099  * is detailed in 3GPP TS 23.097, and the indicator data is detailed in 3GPP TS 31.102 (section 4.2.64 in version 8.2.0).
       
  7100  *
       
  7101  *
       
  7102  * @param aError KErrNone on success, or another error code indicating the error otherwise.
       
  7103  * @param aTypeOfNumber The call forwarding type of number.
       
  7104  * @param aMobilePlan The call forwarding mobile plan.
       
  7105  * @param aNumber The call forwarding telephone number.
       
  7106  * @param aCFUIndicatorStatusFlags The setting for indicator status. Can contain a number of flags from RMobilePhone::TCFUIndicatorStatus.
       
  7107  * @param aMultipleSubscriberProfileID The multiple subscriber profile ID (unknown, one, two, three or four).
       
  7108  *
       
  7109  * @see RMmCustomAPI::GetIccCallForwardingIndicatorStatus()
       
  7110  */
       
  7111 	{
       
  7112 	TSYLOGENTRYEXITARGS(_L8("aError=%d, Flags=%d, ProfileId=%d"), aError, aCFUIndicatorStatusFlags, aMultipleSubscriberProfileId);
       
  7113 
       
  7114 	// Forward completion to correct dispatcher object to handle
       
  7115 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  7116 	iDispatcherHolder->GetCallControlDispatcher().CallbackGetCallForwardingIndicator(aError, aTypeOfNumber, aMobilePlan, aNumber, aCFUIndicatorStatusFlags, aMultipleSubscriberProfileId);
       
  7117 
       
  7118 	} // CCtsyDispatcherCallback::CallbackCallControlGetCallForwardingIndicatorComp
       
  7119 
       
  7120 EXPORT_C void CCtsyDispatcherCallback::CallbackCallControlUpdateLifeTimerComp(
       
  7121 	TInt aError)
       
  7122 /**
       
  7123  * Callback function to be used by the Licensee LTSY to complete a pending
       
  7124  * MLtsyDispatchCallControlDialData::HandleUpdateLifeTimerReqL()
       
  7125  *
       
  7126  * This callback is invoked after the life timer has been updated.
       
  7127  *
       
  7128  * @param aError The error code to be returned to the CTSY Dispatcher. This should
       
  7129  * be KErrNone if the life timer was updated successfully, otherwise another error code 
       
  7130  * to indicate the failure should be returned.
       
  7131  *
       
  7132  *
       
  7133  */
       
  7134 	{
       
  7135 	TSYLOGENTRYEXITARGS(_L8("aError=%d"), aError);
       
  7136 
       
  7137 	// Forward completion to correct dispatcher object to handle
       
  7138 	__ASSERT_DEBUG(iDispatcherHolder, CtsyDispatcherPanic(EInvalidNullPtr));
       
  7139 	iDispatcherHolder->GetCallControlDispatcher().CallbackUpdateLifeTimer(aError);
       
  7140 
       
  7141 	} // CCtsyDispatcherCallback::CallbackCallControlUpdateLifeTimerComp
       
  7142