epoc32/include/gsmuelem.h
branchSymbian3
changeset 4 837f303aceeb
parent 2 2fe1408b6811
     1.1 --- a/epoc32/include/gsmuelem.h	Wed Mar 31 12:27:01 2010 +0100
     1.2 +++ b/epoc32/include/gsmuelem.h	Wed Mar 31 12:33:34 2010 +0100
     1.3 @@ -1,9 +1,9 @@
     1.4  // Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies).
     1.5  // All rights reserved.
     1.6  // This component and the accompanying materials are made available
     1.7 -// 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
     1.8 +// under the terms of "Eclipse Public License v1.0"
     1.9  // which accompanies this distribution, and is available
    1.10 -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
    1.11 +// at the URL "http://www.eclipse.org/legal/epl-v10.html".
    1.12  //
    1.13  // Initial Contributors:
    1.14  // Nokia Corporation - initial contribution.
    1.15 @@ -19,6 +19,7 @@
    1.16  
    1.17  /**
    1.18   @file
    1.19 + @publishedAll
    1.20  */
    1.21  
    1.22  #ifndef __GSMUELEM_H__
    1.23 @@ -35,7 +36,7 @@
    1.24  class RReadStream;
    1.25  class RWriteStream;
    1.26  class CSmsEMSBufferSegmenter;
    1.27 -
    1.28 +struct TEncodeParams;
    1.29  
    1.30  // class declarations
    1.31  
    1.32 @@ -45,22 +46,6 @@
    1.33   *  @released 
    1.34   */
    1.35  const TInt KErrGsmuDecoding = KErrCorrupt;
    1.36 -/**
    1.37 - *  @internalComponent
    1.38 - */
    1.39 -_LIT8(KMOSES,"\x40\x4d\x64\xd3\x50\x00");
    1.40 -/**
    1.41 - *  @internalComponent
    1.42 - */
    1.43 -_LIT16(KNETWORK,"NETWORK");
    1.44 -
    1.45 -
    1.46 -// Constants
    1.47 -/**
    1.48 - *  @internalComponent
    1.49 - */
    1.50 -const TUint8 KSms7BitAlphabetEscapeChar=0x1b;
    1.51 -
    1.52  
    1.53  /**
    1.54   *  Thin wrapper over TLex8 to provide leaving functions when getting the next
    1.55 @@ -463,7 +448,7 @@
    1.56  	/** Unspecified error cause. */
    1.57  		ESmsErrorUnspecified=0xFF,
    1.58  
    1.59 -	/**	@internalComponent	*/
    1.60 +	/**	@publishedAll	*/
    1.61  		ESmsErrorFree=0x100
    1.62  		};
    1.63  public:
    1.64 @@ -1220,8 +1205,8 @@
    1.65  	 *  	Coded according to 3GPP TS 23.038 - GSM 7-bit default alphabet. 
    1.66  	 */
    1.67  		EGsmSmsTONAlphaNumeric=0x50,
    1.68 -		EGsmSmsTONAbbreviatedNumber=0x60,		///< Abbreviated number
    1.69 -		EGsmSmsTONReserverved=0x70,				///< Reserved for extension
    1.70 +		EGsmSmsTONAbbreviatedNumber=0x60,		//< Abbreviated number
    1.71 +		EGsmSmsTONReserverved=0x70,				//< Reserved for extension
    1.72  	};
    1.73  
    1.74  /** Numbering-plan-identification defined in ETSI 3GPP TS 23.040. */
    1.75 @@ -1309,7 +1294,7 @@
    1.76  	{
    1.77  	public:
    1.78          /**
    1.79 -         *  @internalComponent
    1.80 +         *  @publishedAll
    1.81           *  If the address is an alphanumeric address,
    1.82           *  it can represent a voice message waiting indicator
    1.83           *  as defined in the Common PCN Handset Specification
    1.84 @@ -1354,8 +1339,8 @@
    1.85  
    1.86  	public:
    1.87  
    1.88 -		TGsmSmsTypeOfAddress iTypeOfAddress;		///< The type-of-address of iTelNumber
    1.89 -		TBuf<TGsmSmsTelNumberMaxLen> iTelNumber;	///< Telephone number, in format of iTypeOfAddress
    1.90 +		TGsmSmsTypeOfAddress iTypeOfAddress;		//< The type-of-address of iTelNumber
    1.91 +		TBuf<TGsmSmsTelNumberMaxLen> iTelNumber;	//< Telephone number, in format of iTypeOfAddress
    1.92  	};
    1.93  
    1.94  
    1.95 @@ -1389,6 +1374,9 @@
    1.96  	void DecodeL(TGsmuLex8& aPdu);
    1.97  	void InternalizeL(RReadStream& aStream);
    1.98  	void ExternalizeL(RWriteStream& aStream) const;
    1.99 +
   1.100 +	CSmsAddress*  DuplicateL() const;
   1.101 +
   1.102  private:
   1.103  	CSmsAddress(CCnvCharacterSetConverter& aCharacterSetConverter,RFs& aFs);
   1.104  	void NewBufferL(TInt aLength);
   1.105 @@ -1495,6 +1483,7 @@
   1.106  	inline void SetTimeIntervalMinutes(const TTimeIntervalMinutes& aTimeIntervalMinutes);
   1.107  	TTime Time() const;
   1.108  	TUint8* EncodeL(TUint8* aPtr) const;
   1.109 +	TUint8* EncodeL(TUint8* aPtr, const TEncodeParams* aEncodeParams) const;	
   1.110  	void DecodeL(TGsmuLex8& aPdu);
   1.111  	void InternalizeL(RReadStream& aStream);
   1.112  	void ExternalizeL(RWriteStream& aStream) const;
   1.113 @@ -1736,7 +1725,7 @@
   1.114  	/** SC specific use 32. */
   1.115  		ESmsIEISCSpecificUse32=0xDF,
   1.116  	/**
   1.117 -	 *  @internalComponent
   1.118 +	 *  @publishedAll
   1.119  	 */
   1.120  		ESmsIEMaximum = 0xFF
   1.121  		};
   1.122 @@ -1767,7 +1756,7 @@
   1.123  
   1.124  
   1.125  /**
   1.126 - *  @internalComponent
   1.127 + *  @publishedAll
   1.128   *  
   1.129   *  TSmsInformationElementCategories
   1.130   *  
   1.131 @@ -1825,7 +1814,7 @@
   1.132  
   1.133  
   1.134  /**
   1.135 - *  @internalComponent
   1.136 + *  @publishedAll
   1.137   */
   1.138  typedef CSmsInformationElement::TSmsInformationElementIdentifier TSmsId;
   1.139  
   1.140 @@ -1862,6 +1851,9 @@
   1.141  	void DecodeL(TGsmuLex8& aPdu);
   1.142  	void InternalizeL(RReadStream& aStream);
   1.143  	void ExternalizeL(RWriteStream& aStream) const;
   1.144 +	
   1.145 +	CSmsCommandData* DuplicateL() const;
   1.146 +
   1.147  private:
   1.148  	CSmsCommandData(TSmsFirstOctet& aFirstOctet);
   1.149  
   1.150 @@ -1917,6 +1909,7 @@
   1.151  	{
   1.152  public:
   1.153  	enum {KSmsMaxUserDataSize=140};
   1.154 +	enum {KSmsMaxUserDataLengthInChars=(KSmsMaxUserDataSize*8)/7};
   1.155  
   1.156  public:
   1.157  	static CSmsUserData* NewL(CCnvCharacterSetConverter& aCharacterSetConverter,RFs& aFs,TSmsFirstOctet& aFirstOctet,const TSmsDataCodingScheme& aDataCodingScheme);
   1.158 @@ -1960,9 +1953,12 @@
   1.159  
   1.160  	TUint8* EncodeL(TUint8* aPtr) const;
   1.161  	void DecodeL(TGsmuLex8& aPdu);
   1.162 -	void DecodeL(TGsmuLex8& aPdu, TBool aAcceptTruncation);
   1.163 +	void DecodeL(TGsmuLex8& aPdu, TBool aAcceptTruncation);	
   1.164  	void InternalizeL(RReadStream& aStream);
   1.165  	void ExternalizeL(RWriteStream& aStream) const;
   1.166 +	
   1.167 +	CSmsUserData* DuplicateL(TSmsFirstOctet& aFirstOctet, const TSmsDataCodingScheme& aDataCodingScheme) const;
   1.168 +
   1.169  private:
   1.170  	CSmsUserData(CCnvCharacterSetConverter& aCharacterSetConverter,RFs& aFs,TSmsFirstOctet& aFirstOctet,const TSmsDataCodingScheme& aDataCodingScheme);
   1.171  	void ConstructL();
   1.172 @@ -2080,6 +2076,7 @@
   1.173   *  both types of Enhanced Voice Mail Information Element.
   1.174   *  
   1.175   *  @publishedAll
   1.176 + *  @released
   1.177   */
   1.178  class CEnhancedVoiceMailBoxInformation : public CBase
   1.179  {
   1.180 @@ -2148,6 +2145,7 @@
   1.181   *  It is used as one of the attributes a Enhanced Voice Mail Notification.
   1.182   *  
   1.183   *  @publishedAll
   1.184 + *  @released
   1.185   */
   1.186  class CVoiceMailNotification : public CBase
   1.187  {
   1.188 @@ -2219,6 +2217,7 @@
   1.189   *  only the Enhanced Voice Mail Information Element and no other information elements or text.
   1.190   *  
   1.191   *  @publishedAll
   1.192 + *  @released
   1.193   */
   1.194  class CEnhancedVoiceMailNotification : public CEnhancedVoiceMailBoxInformation
   1.195  {
   1.196 @@ -2257,6 +2256,7 @@
   1.197   *  It is used as one of the attributes of a Enhanced Voice Mail Delete Confirmation.
   1.198   *  
   1.199   *  @publishedAll
   1.200 + *  @released
   1.201   */
   1.202  class CVoiceMailDeletion : public CBase
   1.203  {
   1.204 @@ -2292,6 +2292,7 @@
   1.205   *  interface provided by the class CSmsEnhancedVoiceMailOperations.
   1.206   *  
   1.207   *  @publishedAll
   1.208 + *  @released
   1.209   */
   1.210  class CEnhancedVoiceMailDeleteConfirmations : public
   1.211        CEnhancedVoiceMailBoxInformation