// BSCGSMCS.H
//
// Copyright (c) 1997-1999 Symbian Ltd.  All rights reserved.
//

#if !defined (__BSCGSMIPC_H__)
#define __BSCGSMIPC_H__

#if !defined (__ETELBGSM_H__)
#include "ETelBgsm.h"
#endif

#define IPC_GSM_BSC_EXT (1000)
									   
const TInt bscGsmPhoneNotifyArray[7] = {
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iSignalStrengthChanged),
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iBerChanged),
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iCurrentNetworkInfoChanged),
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iBatteryInfoChanged),
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iIndicatorInfoChanged),
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iNetworkSetModeChanged),
										_FOFF(RBasicGsmPhone::TPhoneNotifyInfo,iNetworkRegistrationStatusChanged)
										};

									   
const TInt bscGsmCallNotifyArray[1] = {_FOFF(RBasicGsmCall::TCallNotifyInfo,iBearerChanged)};


enum
	{
//
// Phone
//
	EGsmPhoneGetGsmPhoneId=IPC_GSM_BSC_EXT,
	EGsmPhoneGetSignalStrength,
	EGsmPhoneGetSignalStrengthCancel,
	EGsmPhoneSignalStrengthNotification,
	EGsmPhoneSignalStrengthNotificationCancel,
	EGsmPhoneGetBer,
	EGsmPhoneGetBerCancel,
	EGsmPhoneBerNotification,
	EGsmPhoneBerNotificationCancel,
	EGsmPhoneGetSignalBerCaps,
	EGsmPhoneSignalBerCapsChangeNotification,
	EGsmPhoneSignalBerCapsChangeNotificationCancel,
	EGsmPhoneGetBasicNetworkCaps,
	EGsmPhoneEnumeratePhoneBooks,
	EGsmPhoneGetPhoneBookInfo,
	EGsmPhoneEnumerateDetectedNetwork,
	EGsmPhoneEnumerateDetectedNetworkCancel,
	EGsmPhoneGetNetworkInfo,
	EGsmPhoneGetNetworkInfoCancel,
	EGsmPhoneSetNetworkMode,
	EGsmPhoneSetNetworkModeCancel,
	EGsmPhoneRetrieveDetectedNetworksPhase1,
	EGsmPhoneRetrieveDetectedNetworksPhase1Cancel,
	EGsmPhoneRetrieveDetectedNetworksPhase2,
	EGsmPhoneRetrieveDetectedNetworksPhase2Cancel,
	EGsmPhoneSetManualNetwork,
	EGsmPhoneSetManualNetworkCancel,
	EGsmPhoneGetCurrentNetworkInfo,
	EGsmPhoneNotifyChangeOfCurrentNetwork,
	EGsmPhoneNotifyChangeOfCurrentNetworkCancel,
	EGsmPhoneGetBatteryInfo,
	EGsmPhoneGetBatteryInfoCancel,
	EGsmPhoneBatteryInfoNotification,
	EGsmPhoneBatteryInfoNotificationCancel,
	EGsmPhoneGetBatteryAndPowerCaps,
	EGsmPhoneIndicatorNotification,
	EGsmPhoneIndicatorNotificationCancel,
	EGsmPhoneGetIndicator,
	EGsmPhoneGetIndicatorCaps,
	EGsmPhoneReadClock,
	EGsmPhoneEnumerateAlarm,
	EGsmPhoneGetAlarm,
	EGsmPhoneSetAlarm,
	EGsmPhoneSetClock,
	EGsmPhoneGetClockCaps,
	EGsmPhoneClockCapsChangeNotification,
	EGsmPhoneClockCapsChangeNotificationCancel,
	EGsmPhoneGetInfoBasic,
	EGsmPhoneNotifyOnAnythingBasic,
	EGsmPhoneNotifyOnAnythingBasicCancel,
	EGsmPhoneGetNetworkRegistrationStatus,		// 1050
	EGsmPhoneNotifyChangeOfNetworkRegistrationStatus,
	EGsmPhoneNotifyChangeOfNetworkRegistrationStatusCancel,
	EGsmPhoneGetNetworkSearchMode,
	EGsmPhoneNotifyChangeOfNetworkSearchMode,
	EGsmPhoneNotifyChangeOfNetworkSearchModeCancel,
//
// Call
//
	EGsmCallBasicGetCaps,						// 1056
	EGsmCallBasicCapsChangeNotification,
	EGsmCallBasicCapsChangeNotificationCancel,
	EGsmCallGetInfoBasic,
	EGsmCallNotifyOnAnythingBasic,
	EGsmCallNotifyOnAnythingBasicCancel,

//
// Gsm PhoneBook
//
	EGsmPhoneBookGetGsmCaps,					// 1062
	EGsmPhoneBookAddressAddedNotification,		// to maintain BC these must remain but aren't used
	EGsmPhoneBookAddressAddedNotificationCancel,	// to maintain BC these must remain but aren't used
	EGsmPhoneBookAddressRemovedNotification,		// to maintain BC these must remain but aren't used
	EGsmPhoneBookAddressRemovedNotificationCancel,	// to maintain BC these must remain but aren't used
	EGsmPhoneBookEntryChangedNotification, 
	EGsmPhoneBookEntryChangedNotificationCancel,
	EGsmPhoneBookGetInfo,
	EGsmPhoneBookGetInfoCancel,
	EGsmPhoneBookRead,
	EGsmPhoneBookReadCancel,
	EGsmPhoneBookReadFirst,
	EGsmPhoneBookReadFirstCancel,
	EGsmPhoneBookReadPrevious,
	EGsmPhoneBookReadPreviousCancel,
	EGsmPhoneBookReadNext,
	EGsmPhoneBookReadNextCancel,
	EGsmPhoneBookWrite,
	EGsmPhoneBookWriteCancel,
	EGsmPhoneBookDelete,
	EGsmPhoneBookDeleteCancel,
	EGsmPhoneBookSearchPhase1,
	EGsmPhoneBookSearchPhase2,
	EGsmPhoneBookSearchPhase1Cancel,
	EGsmPhoneBookSearchPhase2Cancel,		   

//
// Gsm Sms Storage
//
	ESmsStorageGetInfo,							// 1087
	ESmsStorageGetInfoCancel,
	ESmsStorageReadSms,
	ESmsStorageReadSmsCancel,
	ESmsStorageNull1,
	ESmsStorageNull2,
	ESmsStorageWrite,
	ESmsStorageWriteCancel,
	ESmsStorageDelete,
	ESmsStorageDeleteCancel,
	ESmsStorageWriteNotification,
	ESmsStorageWriteNotificationCancel,

//
//	RSmsMessaging
//
	ESmsMessagingGetCaps,					   // 1099
	ESmsMessagingSetMode,
	ESmsMessagingGetMode,
	ESmsMessagingGetSCAddress,
	ESmsMessagingSetSCAddress,
	ESmsMessagingSetSCAddressCancel,
	ESmsMessagingSendMessage,
	ESmsMessagingSendMessageCancel,
	ESmsMessagingRegisterReadSmsMessage,	
	ESmsMessagingDeregisterReadSmsMessage,
	ESmsMessagingNull1,	
	ESmsMessagingNull2,						   // 1110
	ESmsMessagingReadSmsMessage,
	ESmsMessagingReadSmsMessageCancel,
	ESmsMessagingNull3,
	ESmsMessagingNull4,
	ESmsMessagingNull5,
	ESmsMessagingNull6,
	ESmsMessagingNotifySmsMessageArrived,
	ESmsMessagingNotifySmsMessageArrivedCancel,
	ESmsMessagingNull7,
	ESmsMessagingNull8,
	ESmsMessagingNull9,	
	ESmsMessagingNull10,
	ESmsMessagingNull11,
	ESmsMessagingNull12,
	ESmsMessagingNull13,
	ESmsMessagingNull14,
	ESmsMessagingEnumerateMessageStores,		// 1127
	ESmsMessagingGetMessageStoreInfo,
	ESmsMessagingSetModeCancel,				// added 29/1/99
	ESmsMessagingGetSCAddressCancel,		// added 29/1/99
	ESmsMessagingGetMessageStoreInfoCancel,	// added 29/1/99

	EGsmPhoneReadClockCancel,				// added 1/2/99
	EGsmPhoneSetClockCancel,				// added 1/2/99
	EGsmPhoneEnumerateAlarmCancel,			// added 1/2/99
	EGsmPhoneGetAlarmCancel,				// added 1/2/99
	EGsmPhoneSetAlarmCancel,				// added 1/2/99
	EGsmPhoneGetPhoneBookInfoCancel			// added 1/2/99
	};

#endif
