telephonyserverplugins/ctsydispatchlayer/test/ltsyskeleton_using_dispatcher/ltsyskeleton/src/cltsyfactoryv1.cpp
changeset 0 3553901f7fa8
child 14 7ef16719d8cb
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 <ctsy/ltsy/mltsydispatchinterface.h>
       
    17 #include <ctsy/ltsy/cctsydispatchercallback.h>
       
    18 
       
    19 #include "cltsyfactoryv1.h"
       
    20 #include "cltsycallcontrolhandler.h"
       
    21 #include "cltsyphonehandler.h"
       
    22 #include "cltsysecurityhandler.h"
       
    23 #include "cltsyphonebookenhandler.h"
       
    24 #include "cltsycellbroadcasthandler.h"
       
    25 #include "cltsyphonebookonhandler.h"
       
    26 #include "cltsyphonebookhandler.h"
       
    27 #include "cltsysimhandler.h"
       
    28 #include "cltsysmshandler.h"
       
    29 #include "cltsycallcontrolmultipartyhandler.h"
       
    30 #include "cltsysupplementaryserviceshandler.h"
       
    31 #include "cltsypacketserviceshandler.h"
       
    32 #include "cltsysathandler.h"
       
    33 #include "creceivethreadmanager.h"
       
    34 #include "cltsyreceivethreadeventstatehandler.h"
       
    35 
       
    36 
       
    37 // Can be removed in real LTSY implementation
       
    38 #include MTEST_INCLUDE_MOCKLTSYENGINE_HEADER
       
    39 
       
    40 CLtsyFactoryV1::CLtsyFactoryV1()
       
    41 	{
       
    42 	}
       
    43 
       
    44 CLtsyFactoryV1::~CLtsyFactoryV1()
       
    45 	{
       
    46 	TSYLOGENTRYEXIT;
       
    47 
       
    48 	delete iReceiveThreadManager;
       
    49 	delete iReceiveThreadEventStateHandler;
       
    50 
       
    51 	// Delete dispatch handlers
       
    52 	delete iLtsyDispatchCallControlHandler;
       
    53 	iLtsyDispatchCallControlHandler = NULL;
       
    54 
       
    55 	delete iLtsyDispatchPhoneHandler;
       
    56 	iLtsyDispatchPhoneHandler = NULL;
       
    57 
       
    58 	delete iLtsyDispatchSecurityHandler;
       
    59 	iLtsyDispatchSecurityHandler = NULL;
       
    60 
       
    61 	delete iLtsyDispatchPhonebookEnHandler;
       
    62 	iLtsyDispatchPhonebookEnHandler = NULL;
       
    63 
       
    64 	delete iLtsyDispatchCellBroadcastHandler;
       
    65 	iLtsyDispatchCellBroadcastHandler = NULL;
       
    66 
       
    67 	delete iLtsyDispatchPhonebookOnHandler;
       
    68 	iLtsyDispatchPhonebookOnHandler = NULL;
       
    69 
       
    70 	delete iLtsyDispatchPhonebookHandler;
       
    71 	iLtsyDispatchPhonebookHandler = NULL;
       
    72 
       
    73 	delete iLtsyDispatchSimHandler;
       
    74 	iLtsyDispatchSimHandler = NULL;
       
    75 
       
    76 	delete iLtsyDispatchSmsHandler;
       
    77 	iLtsyDispatchSmsHandler = NULL;
       
    78 
       
    79 	delete iLtsyDispatchCallControlMultipartyHandler;
       
    80 	iLtsyDispatchCallControlMultipartyHandler = NULL;
       
    81 
       
    82 	delete iLtsyDispatchSupplementaryServicesHandler;
       
    83 	iLtsyDispatchSupplementaryServicesHandler = NULL;
       
    84 
       
    85 	delete iLtsyDispatchPacketServicesHandler;
       
    86 	iLtsyDispatchPacketServicesHandler = NULL;
       
    87 
       
    88 	delete iLtsyDispatchSatHandler;
       
    89 	iLtsyDispatchSatHandler = NULL;
       
    90 
       
    91 
       
    92 	MTEST_DELETE_MOCKLTSYENGINE;
       
    93 
       
    94 	}
       
    95 
       
    96 MLtsyFactoryBase::TCtsyInterfaceVersion CLtsyFactoryV1::Version()
       
    97 	{
       
    98 	TSYLOGENTRYEXIT;
       
    99 	return EIfVersion1;
       
   100 	}
       
   101 
       
   102 void CLtsyFactoryV1::ConstructL(CCtsyDispatcherCallback& aCallback)
       
   103 /**
       
   104  * Second phase constructor. This function must be called explicitly
       
   105  * by the client to complete construction before any other functions in this
       
   106  * class are called.
       
   107  */
       
   108 	{
       
   109 	TSYLOGENTRYEXIT;
       
   110 
       
   111 	// Create the LTSY dispatch handlers
       
   112 	iLtsyDispatchCallControlHandler = CLtsyCallControlHandler::NewL(aCallback);
       
   113 	iLtsyDispatchPhoneHandler = CLtsyPhoneHandler::NewL(aCallback);
       
   114 	iLtsyDispatchSecurityHandler = CLtsySecurityHandler::NewL(aCallback);
       
   115 	iLtsyDispatchPhonebookEnHandler = CLtsyPhonebookEnHandler::NewL(aCallback);
       
   116 	iLtsyDispatchCellBroadcastHandler = CLtsyCellBroadcastHandler::NewL(aCallback);
       
   117 	iLtsyDispatchPhonebookOnHandler = CLtsyPhonebookOnHandler::NewL(aCallback);
       
   118 	iLtsyDispatchPhonebookHandler = CLtsyPhonebookHandler::NewL(aCallback);
       
   119 	iLtsyDispatchSimHandler = CLtsySimHandler::NewL(aCallback);
       
   120 	iLtsyDispatchSmsHandler = CLtsySmsHandler::NewL(aCallback);
       
   121 	iLtsyDispatchCallControlMultipartyHandler = CLtsyCallControlMultipartyHandler::NewL(aCallback);
       
   122 	iLtsyDispatchSupplementaryServicesHandler = CLtsySupplementaryServicesHandler::NewL(aCallback);
       
   123 	iLtsyDispatchPacketServicesHandler = CLtsyPacketServicesHandler::NewL(aCallback);
       
   124 	iLtsyDispatchSatHandler = CLtsySatHandler::NewL(aCallback);
       
   125 
       
   126 	/*
       
   127 	Sometimes baseband interfaces are such that the API to receive signal callbacks
       
   128 	from baseband is synchronous and is essentially a forever wait loop. In this situation
       
   129 	it is necessary to spawn a separate thread in which the wait loop will execute.
       
   130 	But on receiving a callback signal it is necessary to transfer the thread of execution
       
   131 	back the main ETEL thread that runs the LTSY/CTSY and ETEL.
       
   132 
       
   133 	This function will start a new thread to initiate the wait loop.
       
   134 
       
   135 	NOTE: If interface with baseband is not as described above this function can be completely removed.
       
   136 	*/
       
   137 	iReceiveThreadEventStateHandler = CLtsyReceiveThreadEventStateHandler::NewL();
       
   138 	iReceiveThreadManager = CReceiveThreadManager::NewL(*iReceiveThreadEventStateHandler, *iReceiveThreadEventStateHandler);
       
   139 	iReceiveThreadManager->StartReceiveThreadL();
       
   140 
       
   141 	// Can be removed in real LTSY implementation //
       
   142 	MTEST_CREATE_MOCKLTSYENGINE(aCallback);
       
   143 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchCallControlHandler); // Can be removed in real LTSY implementation
       
   144 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchPhoneHandler);
       
   145 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchSecurityHandler);
       
   146 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchPhonebookEnHandler);
       
   147 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchCellBroadcastHandler);
       
   148 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchPhonebookOnHandler);
       
   149 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchPhonebookHandler);
       
   150 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchSimHandler);
       
   151 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchSmsHandler);
       
   152 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchCallControlMultipartyHandler);
       
   153 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchSupplementaryServicesHandler);
       
   154 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchPacketServicesHandler);
       
   155 	MTEST_SET_MOCKLTSYENGINE(iLtsyDispatchSatHandler);
       
   156 
       
   157 	//
       
   158 
       
   159 	} // CLtsyFactoryV1::ConstructL
       
   160 
       
   161 
       
   162 TInt CLtsyFactoryV1::GetDispatchHandler(
       
   163 			TLtsyDispatchInterfaceApiId aDispatchInterfaceId,
       
   164 			TAny*& aDispatchInterface)
       
   165 /**
       
   166  * Part of the MLtsyFactoryV1 interface.  Returns the requested dispatch handler.
       
   167  * For more details see MLtsyFactoryV1::GetDispatchHandler
       
   168  *
       
   169  * @param aInterfaceId The dispatch interface identifier of the requested
       
   170  * interface.
       
   171  *
       
   172  * @param aDispatchInterface If this function completes with KErrNone, will contain
       
   173  * a reference to a pointer to the dispatch handler interface in the LTSY.
       
   174  * aDispatchInterface may be NULL. Otherwise the parameter will remain unchanged.
       
   175  *
       
   176  * @return KErrNone if the requested interface was returned in the
       
   177  * aDispatchInterface parameter; KErrNotFound if the requested interface
       
   178  * was not found in the Licensee LTSY.
       
   179  */
       
   180 	{
       
   181 	TSYLOGENTRYEXITARGS(_L8("aDispatchInterfaceId=%d"), aDispatchInterfaceId);
       
   182 
       
   183 	switch (aDispatchInterfaceId)
       
   184 		{
       
   185 
       
   186 		// Handlers for IPCs used in boot sequence
       
   187 
       
   188 	case MLtsyDispatchPhoneBootNotifyModemStatusReady::KLtsyDispatchPhoneBootNotifyModemStatusReadyApiId:
       
   189 		aDispatchInterface = static_cast<MLtsyDispatchPhoneBootNotifyModemStatusReady*>
       
   190 												(iLtsyDispatchPhoneHandler);
       
   191 		break;
       
   192 	case MLtsyDispatchPhoneBootNotifySimStatusReady::KLtsyDispatchPhoneBootNotifySimStatusReadyApiId:
       
   193 		aDispatchInterface = static_cast<MLtsyDispatchPhoneBootNotifySimStatusReady*>
       
   194 												(iLtsyDispatchPhoneHandler);
       
   195 		break;
       
   196 	case MLtsyDispatchPhoneGetNetworkRegistrationStatus::KLtsyDispatchPhoneGetNetworkRegistrationStatusApiId:
       
   197 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetNetworkRegistrationStatus*>
       
   198 												(iLtsyDispatchPhoneHandler);
       
   199 		break;
       
   200 	case MLtsyDispatchPhoneSimRefreshRegister::KLtsyDispatchPhoneSimRefreshRegisterApiId:
       
   201 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSimRefreshRegister*>
       
   202 												(iLtsyDispatchPhoneHandler);
       
   203 		break;
       
   204 	case MLtsyDispatchPhoneGetFdnStatus::KLtsyDispatchPhoneGetFdnStatusApiId:
       
   205 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetFdnStatus*>
       
   206 												(iLtsyDispatchPhoneHandler);
       
   207 		break;
       
   208 	case MLtsyDispatchPhoneGetHomeNetwork::KLtsyDispatchPhoneGetHomeNetworkApiId:
       
   209 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetHomeNetwork*>
       
   210 												(iLtsyDispatchPhoneHandler);
       
   211 		break;
       
   212 	case MLtsyDispatchPhoneNspsWakeup::KLtsyDispatchPhoneNspsWakeupApiId:
       
   213 		aDispatchInterface = static_cast<MLtsyDispatchPhoneNspsWakeup*>
       
   214 												(iLtsyDispatchPhoneHandler);
       
   215 		break;
       
   216 	case MLtsyDispatchPhoneSetSystemNetworkMode::KLtsyDispatchPhoneSetSystemNetworkModeApiId:
       
   217 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSetSystemNetworkMode*>
       
   218 												(iLtsyDispatchPhoneHandler);
       
   219 		break;
       
   220 	case MLtsyDispatchPhoneGetCurrentSystemNetworkModes::KLtsyDispatchPhoneGetCurrentSystemNetworkModesApiId:
       
   221 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetCurrentSystemNetworkModes*>
       
   222 												(iLtsyDispatchPhoneHandler);
       
   223 		break;
       
   224 	case MLtsyDispatchPhoneResetNetServer::KLtsyDispatchPhoneResetNetServerApiId:
       
   225 		aDispatchInterface = static_cast<MLtsyDispatchPhoneResetNetServer*>
       
   226 												(iLtsyDispatchPhoneHandler);
       
   227 		break;
       
   228 	case MLtsyDispatchPhoneSetAlwaysOnMode::KLtsyDispatchPhoneSetAlwaysOnModeApiId:
       
   229 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSetAlwaysOnMode*>
       
   230 												(iLtsyDispatchPhoneHandler);
       
   231 		break;
       
   232 	case MLtsyDispatchPhoneSetDriveMode::KLtsyDispatchPhoneSetDriveModeApiId:
       
   233 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSetDriveMode*>
       
   234 												(iLtsyDispatchPhoneHandler);
       
   235 		break;
       
   236 	case MLtsyDispatchPhoneGetHspaStatus::KLtsyDispatchPhoneGetHspaStatusApiId:
       
   237 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetHspaStatus*>
       
   238 												(iLtsyDispatchPhoneHandler);
       
   239 		break;
       
   240 	case MLtsyDispatchPhoneSetHspaStatus::KLtsyDispatchPhoneSetHspaStatusApiId:
       
   241 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSetHspaStatus*>
       
   242 												(iLtsyDispatchPhoneHandler);
       
   243 		break;
       
   244 	case MLtsyDispatchPhoneGetNetworkProviderName::KLtsyDispatchPhoneGetNetworkProviderNameApiId:
       
   245 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetNetworkProviderName*>
       
   246 												(iLtsyDispatchPhoneHandler);
       
   247 		break;
       
   248 	case MLtsyDispatchPhoneGetOperatorName::KLtsyDispatchPhoneGetOperatorNameApiId:
       
   249 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetOperatorName*>
       
   250 												(iLtsyDispatchPhoneHandler);
       
   251 		break;
       
   252 	case MLtsyDispatchPhoneGetCellInfo::KLtsyDispatchPhoneGetCellInfoApiId:
       
   253 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetCellInfo*>
       
   254 												(iLtsyDispatchPhoneHandler);
       
   255 		break;
       
   256 
       
   257 		// CallControl Functional Unit interface handlers
       
   258 
       
   259 	case MLtsyDispatchCallControlAnswer::KLtsyDispatchCallControlAnswerApiId:
       
   260 		aDispatchInterface = static_cast<MLtsyDispatchCallControlAnswer*>
       
   261 												(iLtsyDispatchCallControlHandler);
       
   262 		break;
       
   263 	case MLtsyDispatchCallControlHold::KLtsyDispatchCallControlHoldApiId:
       
   264 		aDispatchInterface = static_cast<MLtsyDispatchCallControlHold*>
       
   265 												(iLtsyDispatchCallControlHandler);
       
   266 		break;
       
   267 	case MLtsyDispatchCallControlDialEmergency::KLtsyDispatchCallControlDialEmergencyApiId:
       
   268 		aDispatchInterface = static_cast<MLtsyDispatchCallControlDialEmergency*>
       
   269 												(iLtsyDispatchCallControlHandler);
       
   270 		break;
       
   271 	case MLtsyDispatchCallControlStopDtmfTone::KLtsyDispatchCallControlStopDtmfToneApiId:
       
   272 		aDispatchInterface = static_cast<MLtsyDispatchCallControlStopDtmfTone*>
       
   273 												(iLtsyDispatchCallControlHandler);
       
   274 		break;
       
   275 	case MLtsyDispatchCallControlSetActiveAlsLine::KLtsyDispatchCallControlSetActiveAlsLineApiId:
       
   276 		aDispatchInterface = static_cast<MLtsyDispatchCallControlSetActiveAlsLine*>
       
   277 												(iLtsyDispatchCallControlHandler);
       
   278 		break;
       
   279 	case MLtsyDispatchCallControlSendDtmfTonesCancel::KLtsyDispatchCallControlSendDtmfTonesCancelApiId:
       
   280 		aDispatchInterface = static_cast<MLtsyDispatchCallControlSendDtmfTonesCancel*>
       
   281 												(iLtsyDispatchCallControlHandler);
       
   282 		break;
       
   283 	case MLtsyDispatchCallControlHangUp::KLtsyDispatchCallControlHangUpApiId:
       
   284 		aDispatchInterface = static_cast<MLtsyDispatchCallControlHangUp*>
       
   285 												(iLtsyDispatchCallControlHandler);
       
   286 		break;
       
   287 	case MLtsyDispatchCallControlResume::KLtsyDispatchCallControlResumeApiId:
       
   288 		aDispatchInterface = static_cast<MLtsyDispatchCallControlResume*>
       
   289 												(iLtsyDispatchCallControlHandler);
       
   290 		break;
       
   291 	case MLtsyDispatchCallControlSetDynamicHscsdParams::KLtsyDispatchCallControlSetDynamicHscsdParamsApiId:
       
   292 		aDispatchInterface = static_cast<MLtsyDispatchCallControlSetDynamicHscsdParams*>
       
   293 												(iLtsyDispatchCallControlHandler);
       
   294 		break;
       
   295 	case MLtsyDispatchCallControlDialVoice::KLtsyDispatchCallControlDialVoiceApiId:
       
   296 		aDispatchInterface = static_cast<MLtsyDispatchCallControlDialVoice*>
       
   297 												(iLtsyDispatchCallControlHandler);
       
   298 		break;
       
   299 	case MLtsyDispatchCallControlTransfer::KLtsyDispatchCallControlTransferApiId:
       
   300 		aDispatchInterface = static_cast<MLtsyDispatchCallControlTransfer*>
       
   301 												(iLtsyDispatchCallControlHandler);
       
   302 		break;
       
   303 	case MLtsyDispatchCallControlSendDtmfTones::KLtsyDispatchCallControlSendDtmfTonesApiId:
       
   304 		aDispatchInterface = static_cast<MLtsyDispatchCallControlSendDtmfTones*>
       
   305 												(iLtsyDispatchCallControlHandler);
       
   306 		break;
       
   307 	case MLtsyDispatchCallControlGetIdentityServiceStatus::KLtsyDispatchCallControlGetIdentityServiceStatusApiId:
       
   308 		aDispatchInterface = static_cast<MLtsyDispatchCallControlGetIdentityServiceStatus*>
       
   309 												(iLtsyDispatchCallControlHandler);
       
   310 		break;
       
   311 	case MLtsyDispatchCallControlSwap::KLtsyDispatchCallControlSwapApiId:
       
   312 		aDispatchInterface = static_cast<MLtsyDispatchCallControlSwap*>
       
   313 												(iLtsyDispatchCallControlHandler);
       
   314 		break;
       
   315 	case MLtsyDispatchCallControlLoanDataPort::KLtsyDispatchCallControlLoanDataPortApiId:
       
   316 		aDispatchInterface = static_cast<MLtsyDispatchCallControlLoanDataPort*>
       
   317 												(iLtsyDispatchCallControlHandler);
       
   318 		break;
       
   319 	case MLtsyDispatchCallControlRecoverDataPort::KLtsyDispatchCallControlRecoverDataPortApiId:
       
   320 		aDispatchInterface = static_cast<MLtsyDispatchCallControlRecoverDataPort*>
       
   321 												(iLtsyDispatchCallControlHandler);
       
   322 		break;
       
   323 	case MLtsyDispatchCallControlStartDtmfTone::KLtsyDispatchCallControlStartDtmfToneApiId:
       
   324 		aDispatchInterface = static_cast<MLtsyDispatchCallControlStartDtmfTone*>
       
   325 												(iLtsyDispatchCallControlHandler);
       
   326 		break;
       
   327 	case MLtsyDispatchCallControlGetActiveAlsLine::KLtsyDispatchCallControlGetActiveAlsLineApiId:
       
   328 		aDispatchInterface = static_cast<MLtsyDispatchCallControlGetActiveAlsLine*>
       
   329 												(iLtsyDispatchCallControlHandler);
       
   330 		break;
       
   331 	case MLtsyDispatchCallControlDialData::KLtsyDispatchCallControlDialDataApiId:
       
   332 		aDispatchInterface = static_cast<MLtsyDispatchCallControlDialData*>
       
   333 												(iLtsyDispatchCallControlHandler);
       
   334 		break;
       
   335 	case MLtsyDispatchCallControlQueryIsEmergencyNumber::KLtsyDispatchCallControlQueryIsEmergencyNumberApiId:
       
   336 		aDispatchInterface = static_cast<MLtsyDispatchCallControlQueryIsEmergencyNumber*>
       
   337 												(iLtsyDispatchCallControlHandler);
       
   338 		break;
       
   339 	case MLtsyDispatchCallControlGetAlsPpSupport::KLtsyDispatchCallControlGetAlsPpSupportApiId:
       
   340 		aDispatchInterface = static_cast<MLtsyDispatchCallControlGetAlsPpSupport*>
       
   341 												(iLtsyDispatchCallControlHandler);
       
   342 		break;
       
   343 	case MLtsyDispatchCallControlGetAlsBlockedStatus::KLtsyDispatchCallControlGetAlsBlockedStatusApiId:
       
   344 		aDispatchInterface = static_cast<MLtsyDispatchCallControlGetAlsBlockedStatus*>
       
   345 												(iLtsyDispatchCallControlHandler);
       
   346 		break;
       
   347 	case MLtsyDispatchCallControlSetAlsBlocked::KLtsyDispatchCallControlSetAlsBlockedApiId:
       
   348 		aDispatchInterface = static_cast<MLtsyDispatchCallControlSetAlsBlocked*>
       
   349 												(iLtsyDispatchCallControlHandler);
       
   350 		break;
       
   351 	case MLtsyDispatchCallControlGetLifeTime::KLtsyDispatchCallControlGetLifeTimeApiId:
       
   352 		aDispatchInterface = static_cast<MLtsyDispatchCallControlGetLifeTime*>
       
   353 												(iLtsyDispatchCallControlHandler);
       
   354 		break;
       
   355 	case MLtsyDispatchCallControlTerminateErrorCall::KLtsyDispatchCallControlTerminateErrorCallApiId:
       
   356 		aDispatchInterface = static_cast<MLtsyDispatchCallControlTerminateErrorCall*>
       
   357 												(iLtsyDispatchCallControlHandler);
       
   358         break;
       
   359 	case MLtsyDispatchCallControlTerminateAllCalls::KLtsyDispatchCallControlTerminateAllCallsApiId:
       
   360 		aDispatchInterface = static_cast<MLtsyDispatchCallControlTerminateAllCalls*>
       
   361 												(iLtsyDispatchCallControlHandler);
       
   362 		break;
       
   363 	case MLtsyDispatchCallControlGetCallForwardingIndicator::KLtsyDispatchCallControlGetCallForwardingIndicatorApiId:
       
   364 		aDispatchInterface = static_cast<MLtsyDispatchCallControlGetCallForwardingIndicator*>
       
   365 												(iLtsyDispatchCallControlHandler);
       
   366 		break;
       
   367 	case MLtsyDispatchCallControlUpdateLifeTimer::KLtsyDispatchCallControlUpdateLifeTimerApiId:
       
   368 		aDispatchInterface = static_cast<MLtsyDispatchCallControlUpdateLifeTimer*>
       
   369 												(iLtsyDispatchCallControlHandler);
       
   370 		break;
       
   371 
       
   372 		// Phone Functional Unit interface handlers
       
   373 
       
   374 	case MLtsyDispatchPhoneGetServiceProviderName::KLtsyDispatchPhoneGetServiceProviderNameApiId:
       
   375 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetServiceProviderName*>
       
   376 												(iLtsyDispatchPhoneHandler);
       
   377 		break;
       
   378 	case MLtsyDispatchPhoneGetPhoneId::KLtsyDispatchPhoneGetPhoneIdApiId:
       
   379 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetPhoneId*>
       
   380 												(iLtsyDispatchPhoneHandler);
       
   381 		break;
       
   382 	case MLtsyDispatchPhoneGetDetectedNetworks::KLtsyDispatchPhoneGetDetectedNetworksApiId:
       
   383 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetDetectedNetworks*>
       
   384 												(iLtsyDispatchPhoneHandler);
       
   385 		break;
       
   386 	case MLtsyDispatchPhoneGetDetectedNetworksCancel::KLtsyDispatchPhoneGetDetectedNetworksCancelApiId:
       
   387 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetDetectedNetworksCancel*>
       
   388 												(iLtsyDispatchPhoneHandler);
       
   389 		break;
       
   390 	case MLtsyDispatchPhoneSelectNetwork::KLtsyDispatchPhoneSelectNetworkApiId:
       
   391 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSelectNetwork*>
       
   392 												(iLtsyDispatchPhoneHandler);
       
   393 		break;
       
   394 	case MLtsyDispatchPhoneSelectNetworkCancel::KLtsyDispatchPhoneSelectNetworkCancelApiId:
       
   395 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSelectNetworkCancel*>
       
   396 												(iLtsyDispatchPhoneHandler);
       
   397 		break;
       
   398 	case MLtsyDispatchPhoneSetNetworkSelectionSetting::KLtsyDispatchPhoneSetNetworkSelectionSettingApiId:
       
   399 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSetNetworkSelectionSetting*>
       
   400 												(iLtsyDispatchPhoneHandler);
       
   401 		break;
       
   402 	case MLtsyDispatchPhoneGetCurrentNetworkInfo::KLtsyDispatchPhoneGetCurrentNetworkInfoApiId:
       
   403 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetCurrentNetworkInfo*>
       
   404 												(iLtsyDispatchPhoneHandler);
       
   405 		break;
       
   406 	case MLtsyDispatchPhoneGetNetworkMode::KLtsyDispatchPhoneGetNetworkModeApiId:
       
   407 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetNetworkMode*>
       
   408 												(iLtsyDispatchPhoneHandler);
       
   409 		break;
       
   410 	case MLtsyDispatchPhoneGetNitzInfo::KLtsyDispatchPhoneGetNitzInfoApiId:
       
   411 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetNitzInfo*>
       
   412 												(iLtsyDispatchPhoneHandler);
       
   413 		break;
       
   414 	case MLtsyDispatchPhoneGetSignalStrength::KLtsyDispatchPhoneGetSignalStrengthApiId:
       
   415 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetSignalStrength*>
       
   416 												(iLtsyDispatchPhoneHandler);
       
   417 		break;
       
   418 	case MLtsyDispatchPhoneGetBatteryInfo::KLtsyDispatchPhoneGetBatteryInfoApiId:
       
   419 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetBatteryInfo*>
       
   420 												(iLtsyDispatchPhoneHandler);
       
   421 		break;
       
   422 	case MLtsyDispatchPhoneRegisterCellInfoChangeNotification::KLtsyDispatchPhoneRegisterCellInfoChangeNotificationApiId:
       
   423 		aDispatchInterface = static_cast<MLtsyDispatchPhoneRegisterCellInfoChangeNotification*>
       
   424 												(iLtsyDispatchPhoneHandler);
       
   425 		break;
       
   426 	case MLtsyDispatchPhoneGetPhoneCellInfo::KLtsyDispatchPhoneGetPhoneCellInfoApiId:
       
   427 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetPhoneCellInfo*>
       
   428 												(iLtsyDispatchPhoneHandler);
       
   429 		break;
       
   430 	case MLtsyDispatchPhoneGetUsimServiceSupport::KLtsyDispatchPhoneGetUsimServiceSupportApiId:
       
   431 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetUsimServiceSupport*>
       
   432 												(iLtsyDispatchPhoneHandler);
       
   433 		break;
       
   434 	case MLtsyDispatchPhoneGetCurrentActiveUsimApplication::KLtsyDispatchPhoneGetCurrentActiveUsimApplicationApiId:
       
   435 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetCurrentActiveUsimApplication*>
       
   436 												(iLtsyDispatchPhoneHandler);
       
   437 		break;
       
   438 	case MLtsyDispatchPhoneTerminateAllCalls::KLtsyDispatchPhoneTerminateAllCallsApiId:
       
   439 		aDispatchInterface = static_cast<MLtsyDispatchPhoneTerminateAllCalls*>
       
   440 												(iLtsyDispatchPhoneHandler);
       
   441 		break;
       
   442 	case MLtsyDispatchPhoneGetSystemNetworkBand::KLtsyDispatchPhoneGetSystemNetworkBandApiId:
       
   443 		aDispatchInterface = static_cast<MLtsyDispatchPhoneGetSystemNetworkBand*>
       
   444 												(iLtsyDispatchPhoneHandler);
       
   445 		break;
       
   446 	case MLtsyDispatchPhoneSetSystemNetworkBand::KLtsyDispatchPhoneSetSystemNetworkBandApiId:
       
   447 		aDispatchInterface = static_cast<MLtsyDispatchPhoneSetSystemNetworkBand*>
       
   448 												(iLtsyDispatchPhoneHandler);
       
   449 		break;		
       
   450 		
       
   451 		// Security Functional Unit interface handlers
       
   452 
       
   453 	case MLtsyDispatchSecurityGetSecurityCodeInfo::KLtsyDispatchSecurityGetSecurityCodeInfoApiId:
       
   454 		aDispatchInterface = static_cast<MLtsyDispatchSecurityGetSecurityCodeInfo*>
       
   455 												(iLtsyDispatchSecurityHandler);
       
   456 		break;
       
   457 	case MLtsyDispatchSecurityGetLockInfo::KLtsyDispatchSecurityGetLockInfoApiId:
       
   458 		aDispatchInterface = static_cast<MLtsyDispatchSecurityGetLockInfo*>
       
   459 												(iLtsyDispatchSecurityHandler);
       
   460 		break;
       
   461 	case MLtsyDispatchSecurityAbortSecurityCode::KLtsyDispatchSecurityAbortSecurityCodeApiId:
       
   462 		aDispatchInterface = static_cast<MLtsyDispatchSecurityAbortSecurityCode*>
       
   463 												(iLtsyDispatchSecurityHandler);
       
   464 		break;
       
   465 	case MLtsyDispatchSecurityGetCurrentActivePin::KLtsyDispatchSecurityGetCurrentActivePinApiId:
       
   466 		aDispatchInterface = static_cast<MLtsyDispatchSecurityGetCurrentActivePin*>
       
   467 												(iLtsyDispatchSecurityHandler);
       
   468 		break;
       
   469 	case MLtsyDispatchSecuritySetLockSetting::KLtsyDispatchSecuritySetLockSettingApiId:
       
   470 		aDispatchInterface = static_cast<MLtsyDispatchSecuritySetLockSetting*>
       
   471 												(iLtsyDispatchSecurityHandler);
       
   472 		break;
       
   473 	case MLtsyDispatchSecurityVerifySecurityCode::KLtsyDispatchSecurityVerifySecurityCodeApiId:
       
   474 		aDispatchInterface = static_cast<MLtsyDispatchSecurityVerifySecurityCode*>
       
   475 												(iLtsyDispatchSecurityHandler);
       
   476 		break;
       
   477 	case MLtsyDispatchSecurityGetPin1DisableSupported::KLtsyDispatchSecurityGetPin1DisableSupportedApiId:
       
   478 		aDispatchInterface = static_cast<MLtsyDispatchSecurityGetPin1DisableSupported*>
       
   479 												(iLtsyDispatchSecurityHandler);
       
   480 		break;
       
   481 	case MLtsyDispatchSecurityCheckSecurityCode::KLtsyDispatchSecurityCheckSecurityCodeApiId:
       
   482 		aDispatchInterface = static_cast<MLtsyDispatchSecurityCheckSecurityCode*>
       
   483 												(iLtsyDispatchSecurityHandler);
       
   484 		break;
       
   485 	case MLtsyDispatchSecurityDisablePhoneLock::KLtsyDispatchSecurityDisablePhoneLockApiId:
       
   486 		aDispatchInterface = static_cast<MLtsyDispatchSecurityDisablePhoneLock*>
       
   487 												(iLtsyDispatchSecurityHandler);
       
   488 		break;
       
   489 	case MLtsyDispatchSecurityGetCipheringInfo::KLtsyDispatchSecurityGetCipheringInfoApiId:
       
   490 		aDispatchInterface = static_cast<MLtsyDispatchSecurityGetCipheringInfo*>
       
   491 												(iLtsyDispatchSecurityHandler);
       
   492 		break;
       
   493 	case MLtsyDispatchSecurityIsSecurityCodeBlocked::KLtsyDispatchSecurityIsSecurityCodeBlockedApiId:
       
   494 		aDispatchInterface = static_cast<MLtsyDispatchSecurityIsSecurityCodeBlocked*>
       
   495 												(iLtsyDispatchSecurityHandler);
       
   496 		break;
       
   497 	case MLtsyDispatchSecurityCheckSecurityCodeCancel::KLtsyDispatchSecurityCheckSecurityCodeCancelApiId:
       
   498 		aDispatchInterface = static_cast<MLtsyDispatchSecurityCheckSecurityCodeCancel*>
       
   499 												(iLtsyDispatchSecurityHandler);
       
   500 		break;												
       
   501 				
       
   502 		// PhonebookEn Functional Unit interface handlers
       
   503 
       
   504 	case MLtsyDispatchPhonebookEnStoreGetInfo::KLtsyDispatchPhonebookEnStoreGetInfoApiId:
       
   505 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookEnStoreGetInfo*>
       
   506 												(iLtsyDispatchPhonebookEnHandler);
       
   507 		break;
       
   508 	case MLtsyDispatchPhonebookEnStoreReadAll::KLtsyDispatchPhonebookEnStoreReadAllApiId:
       
   509 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookEnStoreReadAll*>
       
   510 												(iLtsyDispatchPhonebookEnHandler);
       
   511 		break;
       
   512 	case MLtsyDispatchPhonebookEnStoreReadEntry::KLtsyDispatchPhonebookEnStoreReadEntryApiId:
       
   513 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookEnStoreReadEntry*>
       
   514 												(iLtsyDispatchPhonebookEnHandler);
       
   515 		break;
       
   516 
       
   517 		// CellBroadcast Functional Unit interface handlers
       
   518 
       
   519 	case MLtsyDispatchCellBroadcastSetBroadcastFilterSetting::KLtsyDispatchCellBroadcastSetBroadcastFilterSettingApiId:
       
   520 		aDispatchInterface = static_cast<MLtsyDispatchCellBroadcastSetBroadcastFilterSetting*>
       
   521 												(iLtsyDispatchCellBroadcastHandler);
       
   522 		break;
       
   523 	case MLtsyDispatchCellBroadcastActivateBroadcastReceiveMessage::KLtsyDispatchCellBroadcastActivateBroadcastReceiveMessageApiId:
       
   524 		aDispatchInterface = static_cast<MLtsyDispatchCellBroadcastActivateBroadcastReceiveMessage*>
       
   525 												(iLtsyDispatchCellBroadcastHandler);
       
   526 		break;
       
   527 	case MLtsyDispatchCellBroadcastReceiveMessageCancel::KLtsyDispatchCellBroadcastReceiveMessageCancelApiId:
       
   528 		aDispatchInterface = static_cast<MLtsyDispatchCellBroadcastReceiveMessageCancel*>
       
   529 												(iLtsyDispatchCellBroadcastHandler);
       
   530 		break;
       
   531 	case MLtsyDispatchCellBroadcastStartSimCbTopicBrowsing::KLtsyDispatchCellBroadcastStartSimCbTopicBrowsingApiId:
       
   532 		aDispatchInterface = static_cast<MLtsyDispatchCellBroadcastStartSimCbTopicBrowsing*>
       
   533 												(iLtsyDispatchCellBroadcastHandler);
       
   534 		break;		
       
   535 	case MLtsyDispatchCellBroadcastDeleteSimCbTopic::KLtsyDispatchCellBroadcastDeleteSimCbTopicApiId:
       
   536 		aDispatchInterface = static_cast<MLtsyDispatchCellBroadcastDeleteSimCbTopic*>
       
   537 												(iLtsyDispatchCellBroadcastHandler);
       
   538 		break;		
       
   539 
       
   540 		// PhonebookOn Functional Unit interface handlers
       
   541 
       
   542 	case MLtsyDispatchPhonebookOnStoreRead::KLtsyDispatchPhonebookOnStoreReadApiId:
       
   543 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreRead*>
       
   544 												(iLtsyDispatchPhonebookOnHandler);
       
   545 		break;
       
   546 	case MLtsyDispatchPhonebookOnStoreDeleteAll::KLtsyDispatchPhonebookOnStoreDeleteAllApiId:
       
   547 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreDeleteAll*>
       
   548 												(iLtsyDispatchPhonebookOnHandler);
       
   549 		break;
       
   550 	case MLtsyDispatchPhonebookOnStoreReadEntry::KLtsyDispatchPhonebookOnStoreReadEntryApiId:
       
   551 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreReadEntry*>
       
   552 												(iLtsyDispatchPhonebookOnHandler);
       
   553 		break;
       
   554 	case MLtsyDispatchPhonebookOnStoreGetInfo::KLtsyDispatchPhonebookOnStoreGetInfoApiId:
       
   555 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreGetInfo*>
       
   556 												(iLtsyDispatchPhonebookOnHandler);
       
   557 		break;
       
   558 	case MLtsyDispatchPhonebookOnStoreGetReadStoreSize::KLtsyDispatchPhonebookOnStoreGetReadStoreSizeApiId:
       
   559 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreGetReadStoreSize*>
       
   560 												(iLtsyDispatchPhonebookOnHandler);
       
   561 		break;
       
   562 	case MLtsyDispatchPhonebookOnStoreDeleteEntry::KLtsyDispatchPhonebookOnStoreDeleteEntryApiId:
       
   563 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreDeleteEntry*>
       
   564 												(iLtsyDispatchPhonebookOnHandler);
       
   565 		break;
       
   566 	case MLtsyDispatchPhonebookOnStoreWriteEntry::KLtsyDispatchPhonebookOnStoreWriteEntryApiId:
       
   567 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreWriteEntry*>
       
   568 												(iLtsyDispatchPhonebookOnHandler);
       
   569 		break;
       
   570 	case MLtsyDispatchPhonebookOnStoreWrite::KLtsyDispatchPhonebookOnStoreWriteApiId:
       
   571 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreWrite*>
       
   572 												(iLtsyDispatchPhonebookOnHandler);
       
   573 		break;
       
   574 	case MLtsyDispatchPhonebookOnStoreGetStoreSize::KLtsyDispatchPhonebookOnStoreGetStoreSizeApiId:
       
   575 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookOnStoreGetStoreSize*>
       
   576 												(iLtsyDispatchPhonebookOnHandler);
       
   577 		break;
       
   578 
       
   579 		// Phonebook Functional Unit interface handlers
       
   580 
       
   581 	case MLtsyDispatchPhonebookStoreReadEntry::KLtsyDispatchPhonebookStoreReadEntryApiId:
       
   582 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreReadEntry*>
       
   583 												(iLtsyDispatchPhonebookHandler);
       
   584 		break;
       
   585 	case MLtsyDispatchPhonebookStoreDeleteEntry::KLtsyDispatchPhonebookStoreDeleteEntryApiId:
       
   586 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreDeleteEntry*>
       
   587 												(iLtsyDispatchPhonebookHandler);
       
   588 		break;
       
   589 	case MLtsyDispatchPhonebookStoreCache::KLtsyDispatchPhonebookStoreCacheApiId:
       
   590 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreCache*>
       
   591 												(iLtsyDispatchPhonebookHandler);
       
   592 		break;
       
   593 	case MLtsyDispatchPhonebookStoreGetPhonebookInfo::KLtsyDispatchPhonebookStoreGetPhonebookInfoApiId:
       
   594 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreGetPhonebookInfo*>
       
   595 												(iLtsyDispatchPhonebookHandler);
       
   596 		break;
       
   597 	case MLtsyDispatchPhonebookStoreInitialise::KLtsyDispatchPhonebookStoreInitialiseApiId:
       
   598 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreInitialise*>
       
   599 												(iLtsyDispatchPhonebookHandler);
       
   600 		break;
       
   601 	case MLtsyDispatchPhonebookStoreDeleteAll::KLtsyDispatchPhonebookStoreDeleteAllApiId:
       
   602 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreDeleteAll*>
       
   603 												(iLtsyDispatchPhonebookHandler);
       
   604 		break;
       
   605 	case MLtsyDispatchPhonebookSmsStoreReadAll::KLtsyDispatchPhonebookSmsStoreReadAllApiId:
       
   606 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookSmsStoreReadAll*>
       
   607 												(iLtsyDispatchPhonebookHandler);
       
   608 		break;
       
   609 	case MLtsyDispatchPhonebookStoreWriteEntry::KLtsyDispatchPhonebookStoreWriteEntryApiId:
       
   610 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreWriteEntry*>
       
   611 												(iLtsyDispatchPhonebookHandler);
       
   612 		break;
       
   613 	case MLtsyDispatchPhonebookGetPhoneStoreInfo::KLtsyDispatchPhonebookGetPhoneStoreInfoApiId:
       
   614 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookGetPhoneStoreInfo*>
       
   615 												(iLtsyDispatchPhonebookHandler);
       
   616 		break;
       
   617 	case MLtsyDispatchPhonebookSmsStoreDeleteEntry::KLtsyDispatchPhonebookSmsStoreDeleteEntryApiId:
       
   618 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookSmsStoreDeleteEntry*>
       
   619 												(iLtsyDispatchPhonebookHandler);
       
   620 		break;
       
   621 	case MLtsyDispatchPhonebookSmsStoreDeleteAll::KLtsyDispatchPhonebookSmsStoreDeleteAllApiId:
       
   622 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookSmsStoreDeleteAll*>
       
   623 												(iLtsyDispatchPhonebookHandler);
       
   624 		break;
       
   625 	case MLtsyDispatchPhonebookSmsStoreGetInfo::KLtsyDispatchPhonebookSmsStoreGetInfoApiId:
       
   626 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookSmsStoreGetInfo*>
       
   627 												(iLtsyDispatchPhonebookHandler);
       
   628 		break;
       
   629 	case MLtsyDispatchPhonebookSmsStoreReadEntry::KLtsyDispatchPhonebookSmsStoreReadEntryApiId:
       
   630 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookSmsStoreReadEntry*>
       
   631 												(iLtsyDispatchPhonebookHandler);
       
   632 		break;
       
   633 	case MLtsyDispatchPhonebookSmsStoreWriteEntry::KLtsyDispatchPhonebookSmsStoreWriteEntryApiId:
       
   634 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookSmsStoreWriteEntry*>
       
   635 												(iLtsyDispatchPhonebookHandler);
       
   636 		break;
       
   637 	case MLtsyDispatchPhonebookStoreCacheCancel::KLtsyDispatchPhonebookStoreCacheCancelApiId:
       
   638 		aDispatchInterface = static_cast<MLtsyDispatchPhonebookStoreCacheCancel*>
       
   639 												(iLtsyDispatchPhonebookHandler);
       
   640 		break;
       
   641 
       
   642 		// Sim Functional Unit interface handlers
       
   643 
       
   644 	case MLtsyDispatchSimGetApnControlListServiceStatus::KLtsyDispatchSimGetApnControlListServiceStatusApiId:
       
   645 		aDispatchInterface = static_cast<MLtsyDispatchSimGetApnControlListServiceStatus*>
       
   646 												(iLtsyDispatchSimHandler);
       
   647 		break;
       
   648 	case MLtsyDispatchSimDeleteApnName::KLtsyDispatchSimDeleteApnNameApiId:
       
   649 		aDispatchInterface = static_cast<MLtsyDispatchSimDeleteApnName*>
       
   650 												(iLtsyDispatchSimHandler);
       
   651 		break;
       
   652 	case MLtsyDispatchSimEnumerateApnEntries::KLtsyDispatchSimEnumerateApnEntriesApiId:
       
   653 		aDispatchInterface = static_cast<MLtsyDispatchSimEnumerateApnEntries*>
       
   654 												(iLtsyDispatchSimHandler);
       
   655 		break;
       
   656 	case MLtsyDispatchSimChangeSecurityCode::KLtsyDispatchSimChangeSecurityCodeApiId:
       
   657 		aDispatchInterface = static_cast<MLtsyDispatchSimChangeSecurityCode*>
       
   658 												(iLtsyDispatchSimHandler);
       
   659 		break;
       
   660 	case MLtsyDispatchSimSetFdnSetting::KLtsyDispatchSimSetFdnSettingApiId:
       
   661 		aDispatchInterface = static_cast<MLtsyDispatchSimSetFdnSetting*>
       
   662 												(iLtsyDispatchSimHandler);
       
   663 		break;
       
   664 	case MLtsyDispatchSimGetCustomerServiceProfile::KLtsyDispatchSimGetCustomerServiceProfileApiId:
       
   665 		aDispatchInterface = static_cast<MLtsyDispatchSimGetCustomerServiceProfile*>
       
   666 												(iLtsyDispatchSimHandler);
       
   667 		break;
       
   668 	case MLtsyDispatchSimGetSubscriberId::KLtsyDispatchSimGetSubscriberIdApiId:
       
   669 		aDispatchInterface = static_cast<MLtsyDispatchSimGetSubscriberId*>
       
   670 												(iLtsyDispatchSimHandler);
       
   671 		break;
       
   672 	case MLtsyDispatchSimAppendApnName::KLtsyDispatchSimAppendApnNameApiId:
       
   673 		aDispatchInterface = static_cast<MLtsyDispatchSimAppendApnName*>
       
   674 												(iLtsyDispatchSimHandler);
       
   675 		break;
       
   676 	case MLtsyDispatchSimGetActiveIccApplicationType::KLtsyDispatchSimGetActiveIccApplicationTypeApiId:
       
   677 		aDispatchInterface = static_cast<MLtsyDispatchSimGetActiveIccApplicationType*>
       
   678 												(iLtsyDispatchSimHandler);
       
   679 		break;
       
   680 	case MLtsyDispatchSimSetIccMessageWaitingIndicators::KLtsyDispatchSimSetIccMessageWaitingIndicatorsApiId:
       
   681 		aDispatchInterface = static_cast<MLtsyDispatchSimSetIccMessageWaitingIndicators*>
       
   682 												(iLtsyDispatchSimHandler);
       
   683 		break;
       
   684 	case MLtsyDispatchSimSetApnControlListServiceStatus::KLtsyDispatchSimSetApnControlListServiceStatusApiId:
       
   685 		aDispatchInterface = static_cast<MLtsyDispatchSimSetApnControlListServiceStatus*>
       
   686 												(iLtsyDispatchSimHandler);
       
   687 		break;
       
   688 	case MLtsyDispatchSimGetApnName::KLtsyDispatchSimGetApnNameApiId:
       
   689 		aDispatchInterface = static_cast<MLtsyDispatchSimGetApnName*>
       
   690 												(iLtsyDispatchSimHandler);
       
   691 		break;
       
   692 	case MLtsyDispatchSimSimRefreshDone::KLtsyDispatchSimSimRefreshDoneApiId:
       
   693 		aDispatchInterface = static_cast<MLtsyDispatchSimSimRefreshDone*>
       
   694 												(iLtsyDispatchSimHandler);
       
   695 		break;
       
   696 	case MLtsyDispatchSimGetServiceTable::KLtsyDispatchSimGetServiceTableApiId:
       
   697 		aDispatchInterface = static_cast<MLtsyDispatchSimGetServiceTable*>
       
   698 												(iLtsyDispatchSimHandler);
       
   699 		break;
       
   700 	case MLtsyDispatchSimGetIccMessageWaitingIndicators::KLtsyDispatchSimGetIccMessageWaitingIndicatorsApiId:
       
   701 		aDispatchInterface = static_cast<MLtsyDispatchSimGetIccMessageWaitingIndicators*>
       
   702 												(iLtsyDispatchSimHandler);
       
   703 		break;
       
   704 	case MLtsyDispatchSimSimLockActivate::KLtsyDispatchSimSimLockActivateApiId:
       
   705 			aDispatchInterface = static_cast<MLtsyDispatchSimSimLockActivate*>
       
   706 													(iLtsyDispatchSimHandler);
       
   707 		break;
       
   708 	case MLtsyDispatchSimSimLockDeActivate::KLtsyDispatchSimSimLockDeActivateApiId:
       
   709 		aDispatchInterface = static_cast<MLtsyDispatchSimSimLockDeActivate*>
       
   710 												(iLtsyDispatchSimHandler);
       
   711 		break;
       
   712 	case MLtsyDispatchSimGetAnswerToReset::KLtsyDispatchSimGetAnswerToResetApiId:
       
   713 		aDispatchInterface = static_cast<MLtsyDispatchSimGetAnswerToReset*>
       
   714 												(iLtsyDispatchSimHandler);
       
   715 		break;
       
   716 	case MLtsyDispatchSimGetSimCardReaderStatus::KLtsyDispatchSimGetSimCardReaderStatusApiId:
       
   717 		aDispatchInterface = static_cast<MLtsyDispatchSimGetSimCardReaderStatus*>
       
   718 												(iLtsyDispatchSimHandler);
       
   719 		break;
       
   720 	case MLtsyDispatchSimGetSimAuthenticationEapSimData::KLtsyDispatchSimGetSimAuthenticationEapSimDataApiId:
       
   721 		aDispatchInterface = static_cast<MLtsyDispatchSimGetSimAuthenticationEapSimData*>
       
   722 												(iLtsyDispatchSimHandler);
       
   723 		break;
       
   724 	case MLtsyDispatchSimGetSimAuthenticationEapAkaData::KLtsyDispatchSimGetSimAuthenticationEapAkaDataApiId:
       
   725 		aDispatchInterface = static_cast<MLtsyDispatchSimGetSimAuthenticationEapAkaData*>
       
   726 												(iLtsyDispatchSimHandler);
       
   727 		break;
       
   728 	case MLtsyDispatchSimPowerSimOff::KLtsyDispatchSimPowerSimOffApiId:
       
   729 		aDispatchInterface = static_cast<MLtsyDispatchSimPowerSimOff*>
       
   730 												(iLtsyDispatchSimHandler);
       
   731 		break;
       
   732 	case MLtsyDispatchSimPowerSimOn::KLtsyDispatchSimPowerSimOnApiId:
       
   733 		aDispatchInterface = static_cast<MLtsyDispatchSimPowerSimOn*>
       
   734 												(iLtsyDispatchSimHandler);
       
   735 		break;
       
   736 	case MLtsyDispatchSimReadSimFile::KLtsyDispatchSimReadSimFileApiId:
       
   737 		aDispatchInterface = static_cast<MLtsyDispatchSimReadSimFile*>
       
   738 												(iLtsyDispatchSimHandler);
       
   739 		break;
       
   740 	case MLtsyDispatchSimSendApduRequest::KLtsyDispatchSimSendApduRequestApiId:
       
   741 			aDispatchInterface = static_cast<MLtsyDispatchSimSendApduRequest*>
       
   742 													(iLtsyDispatchSimHandler);
       
   743 			break;
       
   744 	case MLtsyDispatchSimSendApduRequestV2::KLtsyDispatchSimSendApduRequestV2ApiId:
       
   745 		aDispatchInterface = static_cast<MLtsyDispatchSimSendApduRequestV2*>
       
   746 												(iLtsyDispatchSimHandler);
       
   747 		break;
       
   748 	case MLtsyDispatchSimSimWarmReset::KLtsyDispatchSimSimWarmResetApiId:
       
   749 		aDispatchInterface = static_cast<MLtsyDispatchSimSimWarmReset*>
       
   750 												(iLtsyDispatchSimHandler);
       
   751 		break;
       
   752 	case MLtsyDispatchSimSetSimMessageStatusRead::KLtsyDispatchSimSetSimMessageStatusReadApiId:
       
   753 		aDispatchInterface = static_cast<MLtsyDispatchSimSetSimMessageStatusRead*>
       
   754 												(iLtsyDispatchSimHandler);
       
   755 		break;
       
   756 
       
   757 		// Sms Functional Unit interface handlers
       
   758 
       
   759 	case MLtsyDispatchSmsSendSatSms::KLtsyDispatchSmsSendSatSmsApiId:
       
   760 		aDispatchInterface = static_cast<MLtsyDispatchSmsSendSatSms*>
       
   761 												(iLtsyDispatchSmsHandler);
       
   762 		break;
       
   763 	case MLtsyDispatchSmsGetSmsStoreInfo::KLtsyDispatchSmsGetSmsStoreInfoApiId:
       
   764 		aDispatchInterface = static_cast<MLtsyDispatchSmsGetSmsStoreInfo*>
       
   765 												(iLtsyDispatchSmsHandler);
       
   766 		break;
       
   767 	case MLtsyDispatchSmsGetSmspList::KLtsyDispatchSmsGetSmspListApiId:
       
   768 		aDispatchInterface = static_cast<MLtsyDispatchSmsGetSmspList*>
       
   769 												(iLtsyDispatchSmsHandler);
       
   770 		break;
       
   771 	case MLtsyDispatchSmsNackSmsStored::KLtsyDispatchSmsNackSmsStoredApiId:
       
   772 		aDispatchInterface = static_cast<MLtsyDispatchSmsNackSmsStored*>
       
   773 												(iLtsyDispatchSmsHandler);
       
   774 		break;
       
   775 	case MLtsyDispatchSmsAckSmsStored::KLtsyDispatchSmsAckSmsStoredApiId:
       
   776 		aDispatchInterface = static_cast<MLtsyDispatchSmsAckSmsStored*>
       
   777 												(iLtsyDispatchSmsHandler);
       
   778 		break;
       
   779 	case MLtsyDispatchSmsResumeSmsReception::KLtsyDispatchSmsResumeSmsReceptionApiId:
       
   780 		aDispatchInterface = static_cast<MLtsyDispatchSmsResumeSmsReception*>
       
   781 												(iLtsyDispatchSmsHandler);
       
   782 		break;
       
   783 	case MLtsyDispatchSmsSendSmsMessage::KLtsyDispatchSmsSendSmsMessageApiId:
       
   784 		aDispatchInterface = static_cast<MLtsyDispatchSmsSendSmsMessage*>
       
   785 												(iLtsyDispatchSmsHandler);
       
   786 		break;
       
   787 	case MLtsyDispatchSmsSendSmsMessageNoFdnCheck::KLtsyDispatchSmsSendSmsMessageNoFdnCheckApiId:
       
   788 		aDispatchInterface = static_cast<MLtsyDispatchSmsSendSmsMessageNoFdnCheck*>
       
   789 												(iLtsyDispatchSmsHandler);
       
   790 		break;
       
   791 	case MLtsyDispatchSmsSetMoSmsBearer::KLtsyDispatchSmsSetMoSmsBearerApiId:
       
   792 		aDispatchInterface = static_cast<MLtsyDispatchSmsSetMoSmsBearer*>
       
   793 												(iLtsyDispatchSmsHandler);
       
   794 		break;
       
   795 	case MLtsyDispatchSmsStoreSmspListEntry::KLtsyDispatchSmsStoreSmspListEntryApiId:
       
   796 		aDispatchInterface = static_cast<MLtsyDispatchSmsStoreSmspListEntry*>
       
   797 												(iLtsyDispatchSmsHandler);
       
   798 		break;
       
   799 
       
   800 		// CallControlMultiparty Functional Unit interface handlers
       
   801 
       
   802 	case MLtsyDispatchCallControlMultipartyConferenceHangUp::KLtsyDispatchCallControlMultipartyConferenceHangUpApiId:
       
   803 		aDispatchInterface = static_cast<MLtsyDispatchCallControlMultipartyConferenceHangUp*>
       
   804 												(iLtsyDispatchCallControlMultipartyHandler);
       
   805 		break;
       
   806 	case MLtsyDispatchCallControlMultipartyConferenceAddCall::KLtsyDispatchCallControlMultipartyConferenceAddCallApiId:
       
   807 		aDispatchInterface = static_cast<MLtsyDispatchCallControlMultipartyConferenceAddCall*>
       
   808 												(iLtsyDispatchCallControlMultipartyHandler);
       
   809 		break;
       
   810 	case MLtsyDispatchCallControlMultipartyCreateConference::KLtsyDispatchCallControlMultipartyCreateConferenceApiId:
       
   811 		aDispatchInterface = static_cast<MLtsyDispatchCallControlMultipartyCreateConference*>
       
   812 												(iLtsyDispatchCallControlMultipartyHandler);
       
   813 		break;
       
   814 	case MLtsyDispatchCallControlMultipartyConferenceSwap::KLtsyDispatchCallControlMultipartyConferenceSwapApiId:
       
   815 		aDispatchInterface = static_cast<MLtsyDispatchCallControlMultipartyConferenceSwap*>
       
   816 												(iLtsyDispatchCallControlMultipartyHandler);
       
   817 		break;
       
   818 	case MLtsyDispatchCallControlMultipartyConferenceGoOneToOne::KLtsyDispatchCallControlMultipartyConferenceGoOneToOneApiId:
       
   819 		aDispatchInterface = static_cast<MLtsyDispatchCallControlMultipartyConferenceGoOneToOne*>
       
   820 												(iLtsyDispatchCallControlMultipartyHandler);
       
   821 		break;
       
   822 
       
   823 		// SupplementaryServices Functional Unit interface handlers
       
   824 
       
   825 	case MLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheck::KLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheckApiId:
       
   826 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSendNetworkServiceRequestNoFdnCheck*>
       
   827 												(iLtsyDispatchSupplementaryServicesHandler);
       
   828 		break;
       
   829 	case MLtsyDispatchSupplementaryServicesGetCallWaitingStatus::KLtsyDispatchSupplementaryServicesGetCallWaitingStatusApiId:
       
   830 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesGetCallWaitingStatus*>
       
   831 												(iLtsyDispatchSupplementaryServicesHandler);
       
   832 		break;
       
   833 	case MLtsyDispatchSupplementaryServicesSendNetworkServiceRequest::KLtsyDispatchSupplementaryServicesSendNetworkServiceRequestApiId:
       
   834 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSendNetworkServiceRequest*>
       
   835 												(iLtsyDispatchSupplementaryServicesHandler);
       
   836 		break;
       
   837 	case MLtsyDispatchSupplementaryServicesGetCallBarringStatus::KLtsyDispatchSupplementaryServicesGetCallBarringStatusApiId:
       
   838 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesGetCallBarringStatus*>
       
   839 												(iLtsyDispatchSupplementaryServicesHandler);
       
   840 		break;
       
   841 	case MLtsyDispatchSupplementaryServicesSetCallBarringStatus::KLtsyDispatchSupplementaryServicesSetCallBarringStatusApiId:
       
   842 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSetCallBarringStatus*>
       
   843 												(iLtsyDispatchSupplementaryServicesHandler);
       
   844 		break;
       
   845 	case MLtsyDispatchSupplementaryServicesSetCallForwardingStatus::KLtsyDispatchSupplementaryServicesSetCallForwardingStatusApiId:
       
   846 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSetCallForwardingStatus*>
       
   847 												(iLtsyDispatchSupplementaryServicesHandler);
       
   848 		break;
       
   849 	case MLtsyDispatchSupplementaryServicesSetCallWaitingStatus::KLtsyDispatchSupplementaryServicesSetCallWaitingStatusApiId:
       
   850 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSetCallWaitingStatus*>
       
   851 												(iLtsyDispatchSupplementaryServicesHandler);
       
   852 		break;
       
   853 	case MLtsyDispatchSupplementaryServicesSetSsPassword::KLtsyDispatchSupplementaryServicesSetSsPasswordApiId:
       
   854 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSetSsPassword*>
       
   855 												(iLtsyDispatchSupplementaryServicesHandler);
       
   856 		break;
       
   857 	case MLtsyDispatchSupplementaryServicesGetCallForwardingStatus::KLtsyDispatchSupplementaryServicesGetCallForwardingStatusApiId:
       
   858 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesGetCallForwardingStatus*>
       
   859 												(iLtsyDispatchSupplementaryServicesHandler);
       
   860 		break;
       
   861 	case MLtsyDispatchSupplementaryServicesSendUssdMessage::KLtsyDispatchSupplementaryServicesSendUssdMessageApiId:
       
   862 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSendUssdMessage*>
       
   863 												(iLtsyDispatchSupplementaryServicesHandler);
       
   864 		break;
       
   865 	case MLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheck::KLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheckApiId:
       
   866 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSendUssdMessageNoFdnCheck*>
       
   867 												(iLtsyDispatchSupplementaryServicesHandler);
       
   868 		break;		
       
   869 	case MLtsyDispatchSupplementaryServicesSendUssdRelease::KLtsyDispatchSupplementaryServicesSendUssdReleaseApiId:
       
   870 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesSendUssdRelease*>
       
   871 												(iLtsyDispatchSupplementaryServicesHandler);
       
   872 		break;
       
   873 	case MLtsyDispatchSupplementaryServicesClearBlacklist::KLtsyDispatchSupplementaryServicesClearBlacklistApiId:
       
   874 		aDispatchInterface = static_cast<MLtsyDispatchSupplementaryServicesClearBlacklist*>
       
   875 												(iLtsyDispatchSupplementaryServicesHandler);
       
   876 		break;
       
   877 
       
   878 		// PacketServices Functional Unit interface handlers
       
   879 
       
   880 	case MLtsyDispatchPacketServicesPacketAttach::KLtsyDispatchPacketServicesPacketAttachApiId:
       
   881 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesPacketAttach*>
       
   882 												(iLtsyDispatchPacketServicesHandler);
       
   883 		break;
       
   884 	case MLtsyDispatchPacketServicesGetPacketAttachMode::KLtsyDispatchPacketServicesGetPacketAttachModeApiId:
       
   885 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetPacketAttachMode*>
       
   886 												(iLtsyDispatchPacketServicesHandler);
       
   887 		break;
       
   888 	case MLtsyDispatchPacketServicesGetPacketNetworkRegistrationStatus::KLtsyDispatchPacketServicesGetPacketNetworkRegistrationStatusApiId:
       
   889 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetPacketNetworkRegistrationStatus*>
       
   890 												(iLtsyDispatchPacketServicesHandler);
       
   891 		break;
       
   892 	case MLtsyDispatchPacketServicesPacketDetach::KLtsyDispatchPacketServicesPacketDetachApiId:
       
   893 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesPacketDetach*>
       
   894 												(iLtsyDispatchPacketServicesHandler);
       
   895 		break;
       
   896 	case MLtsyDispatchPacketServicesSetPdpContextConfig::KLtsyDispatchPacketServicesSetPdpContextConfigApiId:
       
   897 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetPdpContextConfig*>
       
   898 												(iLtsyDispatchPacketServicesHandler);
       
   899 		break;
       
   900 	case MLtsyDispatchPacketServicesModifyActivePdpContext::KLtsyDispatchPacketServicesModifyActivePdpContextApiId:
       
   901 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesModifyActivePdpContext*>
       
   902 												(iLtsyDispatchPacketServicesHandler);
       
   903 		break;
       
   904 	case MLtsyDispatchPacketServicesInitialisePdpContext::KLtsyDispatchPacketServicesInitialisePdpContextApiId:
       
   905 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesInitialisePdpContext*>
       
   906 												(iLtsyDispatchPacketServicesHandler);
       
   907 		break;
       
   908 	case MLtsyDispatchPacketServicesDeletePdpContext::KLtsyDispatchPacketServicesDeletePdpContextApiId:
       
   909 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesDeletePdpContext*>
       
   910 												(iLtsyDispatchPacketServicesHandler);
       
   911 		break;
       
   912 	case MLtsyDispatchPacketServicesSetPacketAttachMode::KLtsyDispatchPacketServicesSetPacketAttachModeApiId:
       
   913 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetPacketAttachMode*>
       
   914 												(iLtsyDispatchPacketServicesHandler);
       
   915 		break;
       
   916 	case MLtsyDispatchPacketServicesNotifyPacketStatusChange::KLtsyDispatchPacketServicesNotifyPacketStatusChangeApiId:
       
   917 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesNotifyPacketStatusChange*>
       
   918 												(iLtsyDispatchPacketServicesHandler);
       
   919 		break;
       
   920 	case MLtsyDispatchPacketServicesSetDefaultPdpContextGprsParams::KLtsyDispatchPacketServicesSetDefaultPdpContextGprsParamsApiId:
       
   921 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetDefaultPdpContextGprsParams*>
       
   922 												(iLtsyDispatchPacketServicesHandler);
       
   923 		break;
       
   924 	case MLtsyDispatchPacketServicesSetDefaultPdpContextR99R4Params::KLtsyDispatchPacketServicesSetDefaultPdpContextR99R4ParamsApiId:
       
   925 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetDefaultPdpContextR99R4Params*>
       
   926 												(iLtsyDispatchPacketServicesHandler);
       
   927 		break;		
       
   928 	case MLtsyDispatchPacketServicesActivatePdpContext::KLtsyDispatchPacketServicesActivatePdpContextApiId:
       
   929 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesActivatePdpContext*>
       
   930 												(iLtsyDispatchPacketServicesHandler);
       
   931 		break;
       
   932 	case MLtsyDispatchPacketServicesSetPdpContextQosGprs::KLtsyDispatchPacketServicesSetPdpContextQosGprsApiId:
       
   933 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetPdpContextQosGprs*>
       
   934 												(iLtsyDispatchPacketServicesHandler);
       
   935 		break;
       
   936 	case MLtsyDispatchPacketServicesSetPdpContextQosR99R4::KLtsyDispatchPacketServicesSetPdpContextQosR99R4ApiId:
       
   937 			aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetPdpContextQosR99R4*>
       
   938 													(iLtsyDispatchPacketServicesHandler);
       
   939 		break;
       
   940 	case MLtsyDispatchPacketServicesSetPdpContextQosR5::KLtsyDispatchPacketServicesSetPdpContextQosR5ApiId:
       
   941 				aDispatchInterface = static_cast<MLtsyDispatchPacketServicesSetPdpContextQosR5*>
       
   942 														(iLtsyDispatchPacketServicesHandler);
       
   943 		break;
       
   944 	case MLtsyDispatchPacketServicesRejectNetworkInitiatedContextActivationRequest::KLtsyDispatchPacketServicesRejectNetworkInitiatedContextActivationRequestApiId:
       
   945 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesRejectNetworkInitiatedContextActivationRequest*>
       
   946 												(iLtsyDispatchPacketServicesHandler);
       
   947 		break;
       
   948 	case MLtsyDispatchPacketServicesDeactivatePdpContext::KLtsyDispatchPacketServicesDeactivatePdpContextApiId:
       
   949 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesDeactivatePdpContext*>
       
   950 												(iLtsyDispatchPacketServicesHandler);
       
   951 		break;
       
   952 	case MLtsyDispatchPacketServicesAddPacketFilter::KLtsyDispatchPacketServicesAddPacketFilterApiId:
       
   953 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesAddPacketFilter*>
       
   954 												(iLtsyDispatchPacketServicesHandler);
       
   955 		break;
       
   956 	case MLtsyDispatchPacketServicesGetStatus::KLtsyDispatchPacketServicesGetStatusApiId:
       
   957 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetStatus*>
       
   958 						   				 (iLtsyDispatchPacketServicesHandler);
       
   959 		break;
       
   960 	case MLtsyDispatchPacketServicesGetStaticCapabilities::KLtsyDispatchPacketServicesGetStaticCapabilitiesApiId:
       
   961 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetStaticCapabilities*>
       
   962 						   				 (iLtsyDispatchPacketServicesHandler);
       
   963 		break;
       
   964 	case MLtsyDispatchPacketServicesGetMaxNoMonitoredServiceLists::KLtsyDispatchPacketServicesGetMaxNoMonitoredServiceListsApiId:
       
   965 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetMaxNoMonitoredServiceLists*>
       
   966 						   				 (iLtsyDispatchPacketServicesHandler);
       
   967 		break;
       
   968 	case MLtsyDispatchPacketServicesGetMaxNoActiveServices::KLtsyDispatchPacketServicesGetMaxNoActiveServicesApiId:
       
   969 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetMaxNoActiveServices*>
       
   970 						   				 (iLtsyDispatchPacketServicesHandler);
       
   971 		break;
       
   972 	case MLtsyDispatchPacketServicesInitialiseMbmsContext::KLtsyDispatchPacketServicesInitialiseMbmsContextApiId:
       
   973 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesInitialiseMbmsContext*>
       
   974 						   				 (iLtsyDispatchPacketServicesHandler);
       
   975 		break;
       
   976 	case MLtsyDispatchPacketServicesGetMbmsNetworkServiceStatus::KLtsyDispatchPacketServicesGetMbmsNetworkServiceStatusApiId:
       
   977 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesGetMbmsNetworkServiceStatus*>
       
   978 						   				 (iLtsyDispatchPacketServicesHandler);
       
   979 		break;
       
   980 	case MLtsyDispatchPacketServicesUpdateMbmsMonitorServiceList::KLtsyDispatchPacketServicesUpdateMbmsMonitorServiceListApiId:
       
   981 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesUpdateMbmsMonitorServiceList*>
       
   982 						   				 (iLtsyDispatchPacketServicesHandler);
       
   983 		break;
       
   984 	case MLtsyDispatchPacketServicesUpdateMbmsSessionList::KLtsyDispatchPacketServicesUpdateMbmsSessionListApiId:
       
   985 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesUpdateMbmsSessionList*>
       
   986 						   				 (iLtsyDispatchPacketServicesHandler);
       
   987 		break;
       
   988 	case MLtsyDispatchPacketServicesRemovePacketFilter::KLtsyDispatchPacketServicesRemovePacketFilterApiId:
       
   989 		aDispatchInterface = static_cast<MLtsyDispatchPacketServicesRemovePacketFilter*>
       
   990 										(iLtsyDispatchPacketServicesHandler);
       
   991 		break;
       
   992 
       
   993 		// Sat Functional Unit interface handlers
       
   994 
       
   995 	case MLtsyDispatchSatSmsDeliverReport::KLtsyDispatchSatSmsDeliverReportApiId:
       
   996 		aDispatchInterface = static_cast<MLtsyDispatchSatSmsDeliverReport*>
       
   997 												(iLtsyDispatchSatHandler);
       
   998 		break;
       
   999 	case MLtsyDispatchSatGetImageInstance::KLtsyDispatchSatGetImageInstanceApiId:
       
  1000 		aDispatchInterface = static_cast<MLtsyDispatchSatGetImageInstance*>
       
  1001 												(iLtsyDispatchSatHandler);
       
  1002 		break;
       
  1003 	case MLtsyDispatchSatGetIconData::KLtsyDispatchSatGetIconDataApiId:
       
  1004 		aDispatchInterface = static_cast<MLtsyDispatchSatGetIconData*>
       
  1005 												(iLtsyDispatchSatHandler);
       
  1006 		break;
       
  1007 	case MLtsyDispatchSatGetClut::KLtsyDispatchSatGetClutApiId:
       
  1008 		aDispatchInterface = static_cast<MLtsyDispatchSatGetClut*>
       
  1009 												(iLtsyDispatchSatHandler);
       
  1010 		break;
       
  1011 	case MLtsyDispatchSatGetDefaultBearerCapability::KLtsyDispatchSatGetDefaultBearerCapabilityApiId:
       
  1012 		aDispatchInterface = static_cast<MLtsyDispatchSatGetDefaultBearerCapability*>
       
  1013 												(iLtsyDispatchSatHandler);
       
  1014 		break;
       
  1015 	case MLtsyDispatchSatGetSmsPpDownloadSupported::KLtsyDispatchSatGetSmsPpDownloadSupportedApiId:
       
  1016 		aDispatchInterface = static_cast<MLtsyDispatchSatGetSmsPpDownloadSupported*>
       
  1017 												(iLtsyDispatchSatHandler);
       
  1018 		break;
       
  1019 	case MLtsyDispatchSatGetSmsControlActivated::KLtsyDispatchSatGetSmsControlActivatedApiId:
       
  1020 		aDispatchInterface = static_cast<MLtsyDispatchSatGetSmsControlActivated*>
       
  1021 												(iLtsyDispatchSatHandler);
       
  1022 		break;
       
  1023 	case MLtsyDispatchSatCellBroadcastEnvelope::KLtsyDispatchSatCellBroadcastEnvelopeApiId:
       
  1024 		aDispatchInterface = static_cast<MLtsyDispatchSatCellBroadcastEnvelope*>
       
  1025 												(iLtsyDispatchSatHandler);
       
  1026 		break;
       
  1027 	case MLtsyDispatchSatGetAccessTechnology::KLtsyDispatchSatGetAccessTechnologyApiId:
       
  1028 		aDispatchInterface = static_cast<MLtsyDispatchSatGetAccessTechnology*>
       
  1029 												(iLtsyDispatchSatHandler);
       
  1030 		break;
       
  1031 	case MLtsyDispatchSatTimingAdvance::KLtsyDispatchSatTimingAdvanceApiId:
       
  1032 		aDispatchInterface = static_cast<MLtsyDispatchSatTimingAdvance*>
       
  1033 												(iLtsyDispatchSatHandler);
       
  1034 		break;
       
  1035 	case MLtsyDispatchSatSmControlResponseData::KLtsyDispatchSatSmControlResponseDataApiId:
       
  1036 		aDispatchInterface = static_cast<MLtsyDispatchSatSmControlResponseData*>
       
  1037 												(iLtsyDispatchSatHandler);
       
  1038 		break;
       
  1039 	case MLtsyDispatchSatProvideLocationInfo::KLtsyDispatchSatProvideLocationInfoApiId:
       
  1040 		aDispatchInterface = static_cast<MLtsyDispatchSatProvideLocationInfo*>
       
  1041 												(iLtsyDispatchSatHandler);
       
  1042 		break;
       
  1043 	case MLtsyDispatchSatSetPollingInterval::KLtsyDispatchSatSetPollingIntervalApiId:
       
  1044 		aDispatchInterface = static_cast<MLtsyDispatchSatSetPollingInterval*>
       
  1045 												(iLtsyDispatchSatHandler);
       
  1046 		break;
       
  1047 	case MLtsyDispatchSatSmsPpDownloadEnvelope::KLtsyDispatchSatSmsPpDownloadEnvelopeApiId:
       
  1048 		aDispatchInterface = static_cast<MLtsyDispatchSatSmsPpDownloadEnvelope*>
       
  1049 												(iLtsyDispatchSatHandler);
       
  1050 		break;
       
  1051 	case MLtsyDispatchSatLocalInformationNmr::KLtsyDispatchSatLocalInformationNmrApiId:
       
  1052 		aDispatchInterface = static_cast<MLtsyDispatchSatLocalInformationNmr*>
       
  1053 												(iLtsyDispatchSatHandler);
       
  1054 		break;
       
  1055 	case MLtsyDispatchSatCallAndSmsControlEnvelope::KLtsyDispatchSatCallAndSmsControlEnvelopeApiId:
       
  1056 		aDispatchInterface = static_cast<MLtsyDispatchSatCallAndSmsControlEnvelope*>
       
  1057 												(iLtsyDispatchSatHandler);
       
  1058 		break;
       
  1059 	case MLtsyDispatchSatRefreshAllowed::KLtsyDispatchSatRefreshAllowedApiId:
       
  1060 		aDispatchInterface = static_cast<MLtsyDispatchSatRefreshAllowed*>
       
  1061 												(iLtsyDispatchSatHandler);
       
  1062 		break;
       
  1063 	case MLtsyDispatchSatReady::KLtsyDispatchSatReadyApiId:
       
  1064 		aDispatchInterface = static_cast<MLtsyDispatchSatReady*>
       
  1065 												(iLtsyDispatchSatHandler);
       
  1066 		break;
       
  1067 	case MLtsyDispatchSatPCmdNotification::KLtsyDispatchSatPCmdNotificationApiId:
       
  1068 		aDispatchInterface = static_cast<MLtsyDispatchSatPCmdNotification*>
       
  1069 												(iLtsyDispatchSatHandler);
       
  1070 		break;
       
  1071 	case MLtsyDispatchSatUssdControlEnvelopeError::KLtsyDispatchSatUssdControlEnvelopeErrorApiId:
       
  1072 		aDispatchInterface = static_cast<MLtsyDispatchSatUssdControlEnvelopeError*>
       
  1073 												(iLtsyDispatchSatHandler);
       
  1074 		break;
       
  1075 	case MLtsyDispatchSatTimerExpirationEnvelope::KLtsyDispatchSatTimerExpirationEnvelopeApiId:
       
  1076 		aDispatchInterface = static_cast<MLtsyDispatchSatTimerExpirationEnvelope*>
       
  1077 												(iLtsyDispatchSatHandler);
       
  1078 		break;
       
  1079 	case MLtsyDispatchSatTerminalRsp::KLtsyDispatchSatTerminalRspApiId:
       
  1080 		aDispatchInterface = static_cast<MLtsyDispatchSatTerminalRsp*>
       
  1081 												(iLtsyDispatchSatHandler);
       
  1082 		break;
       
  1083 	case MLtsyDispatchSatMenuSelectionEnvelope::KLtsyDispatchSatMenuSelectionEnvelopeApiId:
       
  1084 		aDispatchInterface = static_cast<MLtsyDispatchSatMenuSelectionEnvelope*>
       
  1085 												(iLtsyDispatchSatHandler);
       
  1086 		break;
       
  1087 	case MLtsyDispatchSatEventDownloadEnvelope::KLtsyDispatchSatEventDownloadEnvelopeApiId:
       
  1088 		aDispatchInterface = static_cast<MLtsyDispatchSatEventDownloadEnvelope*>
       
  1089 												(iLtsyDispatchSatHandler);
       
  1090 		break;
       
  1091 	case MLtsyDispatchSatGetUssdControlSupported::KLtsyDispatchSatGetUssdControlSupportedApiId:
       
  1092 		aDispatchInterface = static_cast<MLtsyDispatchSatGetUssdControlSupported*>
       
  1093 												(iLtsyDispatchSatHandler);
       
  1094 		break;
       
  1095 	default:
       
  1096 		return TSYLOGSETEXITERR(KErrNotFound);
       
  1097 		} // switch (aDispatchInterfaceId)
       
  1098 
       
  1099 	return TSYLOGSETEXITERR(KErrNone);
       
  1100 	} // CLtsyFactoryV1::GetDispatchHandler
       
  1101 
       
  1102 TBool CLtsyFactoryV1::IsDispatchInterfaceSupported(TInt aFuncUnitId, TLtsyDispatchInterfaceApiId aDispatchApiId)
       
  1103 	{
       
  1104 	switch(aFuncUnitId)
       
  1105 	    {
       
  1106 
       
  1107 	  case KDispatchCallControlFuncUnitId:
       
  1108 	    return iLtsyDispatchCallControlHandler->IsInterfaceSupported(aDispatchApiId);
       
  1109 	  case KDispatchPhoneFuncUnitId:
       
  1110 	    return iLtsyDispatchPhoneHandler->IsInterfaceSupported(aDispatchApiId);
       
  1111 	  case KDispatchSecurityFuncUnitId:
       
  1112 	    return iLtsyDispatchSecurityHandler->IsInterfaceSupported(aDispatchApiId);
       
  1113 	  case KDispatchPhonebookEnFuncUnitId:
       
  1114 	    return iLtsyDispatchPhonebookEnHandler->IsInterfaceSupported(aDispatchApiId);
       
  1115 	  case KDispatchCellBroadcastFuncUnitId:
       
  1116 	    return iLtsyDispatchCellBroadcastHandler->IsInterfaceSupported(aDispatchApiId);
       
  1117 	  case KDispatchPhonebookOnFuncUnitId:
       
  1118 	    return iLtsyDispatchPhonebookOnHandler->IsInterfaceSupported(aDispatchApiId);
       
  1119 	  case KDispatchPhonebookFuncUnitId:
       
  1120 	    return iLtsyDispatchPhonebookHandler->IsInterfaceSupported(aDispatchApiId);
       
  1121 	  case KDispatchSimFuncUnitId:
       
  1122 	    return iLtsyDispatchSimHandler->IsInterfaceSupported(aDispatchApiId);
       
  1123 	  case KDispatchSmsFuncUnitId:
       
  1124 	    return iLtsyDispatchSmsHandler->IsInterfaceSupported(aDispatchApiId);
       
  1125 	  case KDispatchCallControlMultipartyFuncUnitId:
       
  1126 	    return iLtsyDispatchCallControlMultipartyHandler->IsInterfaceSupported(aDispatchApiId);
       
  1127 	  case KDispatchSupplementaryServicesFuncUnitId:
       
  1128 	    return iLtsyDispatchSupplementaryServicesHandler->IsInterfaceSupported(aDispatchApiId);
       
  1129 	  case KDispatchPacketServicesFuncUnitId:
       
  1130 	    return iLtsyDispatchPacketServicesHandler->IsInterfaceSupported(aDispatchApiId);
       
  1131 	  case KDispatchSatFuncUnitId:
       
  1132 	    return iLtsyDispatchSatHandler->IsInterfaceSupported(aDispatchApiId);
       
  1133 	  default:
       
  1134 	    return EFalse;
       
  1135 	    }
       
  1136 	}
       
  1137 
       
  1138 void CLtsyFactoryV1::IsCallbackIndicatorSupported(TInt aFuncUnitId, TLtsyDispatchIndIdGroup aIdGroup, TUint32& aIndIdBitMask)
       
  1139 	{
       
  1140 	switch(aFuncUnitId)
       
  1141 	    {
       
  1142 	  case KDispatchCallControlFuncUnitId:
       
  1143 	    iLtsyDispatchCallControlHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1144 	    break;
       
  1145 	  case KDispatchPhoneFuncUnitId:
       
  1146 	    iLtsyDispatchPhoneHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1147 	    break;
       
  1148 	  case KDispatchSecurityFuncUnitId:
       
  1149 	    iLtsyDispatchSecurityHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1150 	    break;
       
  1151 	  case KDispatchPhonebookEnFuncUnitId:
       
  1152 	    iLtsyDispatchPhonebookEnHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1153 	    break;
       
  1154 	  case KDispatchCellBroadcastFuncUnitId:
       
  1155 	    iLtsyDispatchCellBroadcastHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1156 	    break;
       
  1157 	  case KDispatchPhonebookOnFuncUnitId:
       
  1158 	    iLtsyDispatchPhonebookOnHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1159 	    break;
       
  1160 	  case KDispatchPhonebookFuncUnitId:
       
  1161 	    iLtsyDispatchPhonebookHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1162 	    break;
       
  1163 	  case KDispatchSimFuncUnitId:
       
  1164 	    iLtsyDispatchSimHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1165 	    break;
       
  1166 	  case KDispatchSmsFuncUnitId:
       
  1167 	    iLtsyDispatchSmsHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1168 	    break;
       
  1169 	  case KDispatchCallControlMultipartyFuncUnitId:
       
  1170 	    iLtsyDispatchCallControlMultipartyHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1171 	    break;
       
  1172 	  case KDispatchSupplementaryServicesFuncUnitId:
       
  1173 	    iLtsyDispatchSupplementaryServicesHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1174 	    break;
       
  1175 	  case KDispatchPacketServicesFuncUnitId:
       
  1176 	    iLtsyDispatchPacketServicesHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1177 	    break;
       
  1178 	  case KDispatchSatFuncUnitId:
       
  1179 	    iLtsyDispatchSatHandler->IsCallbackIndicatorSupported(aIdGroup, aIndIdBitMask);
       
  1180 	    break;
       
  1181 	  default:
       
  1182 		  aIndIdBitMask = 0;//no support
       
  1183 		 break;
       
  1184 	    }
       
  1185 	}
       
  1186 
       
  1187 CTsySatMessagingBase* CLtsyFactoryV1::GetSatMessagingService(MCtsySatService& /*aSatMessagingService*/)
       
  1188 	{
       
  1189 	return NULL;
       
  1190 	}
       
  1191 
       
  1192 void CLtsyFactoryV1::Release()
       
  1193 /**
       
  1194  * Called by the CTSY Dispatcher to inform this object that it can clean itself up.
       
  1195  */
       
  1196 	{
       
  1197 	TSYLOGENTRYEXIT;
       
  1198 	delete this;
       
  1199 	} // CLtsyFactoryV1::Release
       
  1200 
       
  1201 
       
  1202 
       
  1203 
       
  1204 
       
  1205 EXPORT_C MLtsyFactoryBase* LTsyFactoryL()
       
  1206 /**
       
  1207  * Creates an instance of an object implementing the MLtsyFactoryBase interface.
       
  1208  * ConstructL() must be called on the object returned before it is used.
       
  1209  */
       
  1210 	{
       
  1211 	TSYLOGENTRYEXIT;
       
  1212 	CLtsyFactoryV1* factory = new (ELeave) CLtsyFactoryV1;
       
  1213 	return factory;
       
  1214 	} // LTsyFactoryL
       
  1215