williamr@2: // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). williamr@2: // All rights reserved. williamr@2: // This component and the accompanying materials are made available williamr@2: // under the terms of the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members williamr@2: // which accompanies this distribution, and is available williamr@2: // at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". williamr@2: // williamr@2: // Initial Contributors: williamr@2: // Nokia Corporation - initial contribution. williamr@2: // williamr@2: // Contributors: williamr@2: // williamr@2: // Description: williamr@2: // Common MBMS Broadcast Variables williamr@2: // williamr@2: // williamr@2: williamr@2: williamr@2: williamr@2: /** williamr@2: @file williamr@2: @publishedAll williamr@2: @released williamr@2: */ williamr@2: williamr@2: #ifndef _MBMSTYPES_H_ williamr@2: #define _MBMSTYPES_H_ williamr@2: williamr@2: /** williamr@2: * This name will be used by the TSY to identify the request for MBMS context williamr@2: * williamr@2: * @publishedPartner williamr@2: * @released williamr@2: */ williamr@2: _LIT(KMBMSContextName,"MBMS_CONTEXT"); williamr@2: williamr@2: /** williamr@2: * Holds the list of MBMS sessions identifiers williamr@2: */ williamr@2: typedef RArray TMbmsSessionIdList; williamr@2: williamr@2: /** williamr@2: * Holds the MBMS session identifier williamr@2: */ williamr@2: typedef TUint TMbmsSessionId; williamr@2: williamr@2: class TTmgi williamr@2: /** williamr@2: * Holds the Temporary mobile group identity information williamr@2: * @see section 15.2 of 3GPP TS 23.007 williamr@2: */ williamr@2: { williamr@2: public: williamr@2: inline TUint GetServiceId() const { return iServiceID; } williamr@2: inline void SetServiceId(TUint aServiceID) { iServiceID = aServiceID; } williamr@2: inline TUint16 GetMCC() const { return iMCC; } williamr@2: inline void SetMCC(TUint16 aMCC) { iMCC = aMCC; } williamr@2: inline TUint16 GetMNC() const { return iMNC; } williamr@2: inline void SetMNC(TUint16 aMNC) { iMNC=aMNC; } williamr@2: williamr@2: private: williamr@2: /** MBMS Service ID uniquely identifies an MBMS bearer service within a PLMN. */ williamr@2: TUint iServiceID; williamr@2: /** Mobile Country Code Information */ williamr@2: TUint16 iMCC; williamr@2: /** Mobile Network Code Information */ williamr@2: TUint16 iMNC; williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Holds the MBMS Access Bearer Information. williamr@2: */ williamr@2: enum TMbmsScope williamr@2: { williamr@2: /** MBMS Bearer is 2G. */ williamr@2: E2GBearer, williamr@2: /** MBMS Bearer is 3G. */ williamr@2: E3GBearer williamr@2: }; williamr@2: williamr@2: williamr@2: /** williamr@2: * Holds the MBMS Service priority Information williamr@2: */ williamr@2: enum TMbmsServicePriority williamr@2: { williamr@2: /** Emergency MBMS service priority. */ williamr@2: EMbmsEmergencyServicePriority, williamr@2: /** High MBMS service priority. */ williamr@2: EMbmsHighServicePriority, williamr@2: /** Medium MBMS service priority. */ williamr@2: EMbmsMediumServicePriority, williamr@2: /** Lowest MBMS service priority. */ williamr@2: EMbmsLowServicePriority williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Holds the MBMS Service mode Information williamr@2: */ williamr@2: enum TMbmsServiceMode williamr@2: { williamr@2: /** MBMS broadcast service mode. */ williamr@2: KBroadcast = 0x01, williamr@2: /** MBMS Selected Broadcast mode. */ williamr@2: KSelectedBroadcast = 0x02 williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Holds the MBMS service availability status Information williamr@2: */ williamr@2: enum TMbmsAvailabilityStatus williamr@2: { williamr@2: /** MBMS availability status is unknown. */ williamr@2: EMbmsAvailabilityUnknown, williamr@2: /** MBMS availability status is unavailable. */ williamr@2: EMbmsUnavailable, williamr@2: /** MBMS availability status is available. */ williamr@2: EMbmsAvailable williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Holds the MBMS Network service status Information williamr@2: */ williamr@2: enum TMbmsNetworkServiceStatus williamr@2: { williamr@2: /** MBMS Network status is unknown. */ williamr@2: EMbmsSupportUnknown, williamr@2: /** MBMS Network status is supported. */ williamr@2: EMbmsSupported, williamr@2: /** MBMS Network status is not supported. */ williamr@2: EMbmsNotSupported williamr@2: }; williamr@2: williamr@2: /** williamr@2: * Holds the Different MBMS Action Information williamr@2: */ williamr@2: enum TMbmsAction williamr@2: { williamr@2: /** Add the mbms entries. */ williamr@2: EAddEntries, williamr@2: /** Removes the mbms entries. */ williamr@2: ERemoveEntries, williamr@2: /** Removes all the mbms entries. */ williamr@2: ERemoveAllEntries williamr@2: }; williamr@2: williamr@2: #endif