diff -r e1b950c65cb4 -r 837f303aceeb epoc32/include/gsmumsg.h --- a/epoc32/include/gsmumsg.h Wed Mar 31 12:27:01 2010 +0100 +++ b/epoc32/include/gsmumsg.h Wed Mar 31 12:33:34 2010 +0100 @@ -1,9 +1,9 @@ // Copyright (c) 1999-2009 Nokia Corporation and/or its subsidiary(-ies). // All rights reserved. // This component and the accompanying materials are made available -// 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 +// under the terms of "Eclipse Public License v1.0" // which accompanies this distribution, and is available -// at the URL "http://www.symbianfoundation.org/legal/licencesv10.html". +// at the URL "http://www.eclipse.org/legal/epl-v10.html". // // Initial Contributors: // Nokia Corporation - initial contribution. @@ -16,9 +16,9 @@ // - /** @file + @publishedAll */ #ifndef __GSMUMSG_H__ @@ -34,7 +34,7 @@ #include /** - * @internalComponent + * @publishedAll */ const TUint IoctlWriteSMSBufferSize = 256; const TUint KMaxMobileNameSize = 32; @@ -43,15 +43,15 @@ class CSmsCompressedBuffer; class TSmsUserDataSettings; class CSmsEMSBufferSegmenter; -class CGsmCompressionBase; class CEmsUserPrompt; class CEmsObjectDistribution; class CSmsIEOperation; class CSmsNonIEOperation; +class CSmsMessageAdditionalAttributes; /** * This class is used in CSmsMessage only. - * @internalComponent + * @publishedAll */ class TGsmSmsSlotEntry { @@ -65,6 +65,11 @@ void ExternalizeL(RWriteStream& aStream) const; }; +struct TEncodeParams + { + const TTime* iTimeStamp; + const TTimeIntervalSeconds* iTimeIntervalInSeconds; + }; /** * Represents a complete SMS message. @@ -225,7 +230,7 @@ IMPORT_C void InternalizeVersionL(RReadStream& aStream); IMPORT_C void ExternalizeVersionL(RWriteStream& aStream) const; - void* AdditionalInfo() {return iAdditionalInfo;}; + void* AdditionalInfo() {return (void*)iAdditionalInfo;}; IMPORT_C CSmsIEOperation& GetOperationsForIEL(CSmsInformationElement::TSmsInformationElementIdentifier) const; IMPORT_C CSmsNonIEOperation& GetOperationsForNonIEL(TSmsNonIEIdentifier) const; @@ -258,12 +263,15 @@ void InstallEmsInformationElementsL(CSmsCommand& aCommand, TInt aStartPosition); void InstallControlInformationElementsL(CSmsUserData& aUserData, TInt aSegmentSequenceNum); void InstallControlInformationElementsL(CSmsCommand& aCommand); - TBool AddEMSInformationElementsToMultiSegmentMessageL(CArrayFix& aSmsArray,CSmsEMSBufferSegmenter& aSegmenter,TUint& aCharsAdded,TBool aDoEncode,TSmsEncoding& aEncoding,RPointerArray& aCorrectedFormatingIEArray,TUint& aCurEMSIEno,TUint& aBaseAddr); + TBool AddEMSInformationElementsToMultiSegmentMessageL(CSmsEMSBufferSegmenter& aSegmenter, TUint& aCharsAdded, + TBool aDoEncode, TSmsEncoding& aEncoding, + RPointerArray& aCorrectedFormatingIEArray, + TUint& aCurEMSIEno, TUint& aBaseAddr); TBool AddEMSInformationElementsToSingleSegmentMessageL(CSmsEMSBufferSegmenter& aSegmenter, TSmsEncoding aEncoding); - void AddControlInformationElementsToMultiSegmentMessageL(CArrayFix& aSmsArray); - void AddControlInformationElementsToMultiSegmentMessageL(TSmsInformationElementCategories::TInformationElementCategory aCategory, TBool aMandatoryInPDU, CArrayFix& aSmsArray); - void AddCurrentPDUToSmsArrayL(CArrayFix& aSmsArray,TBool aDoEncode); + void AddControlInformationElementsToMultiSegmentMessageL(TBool aDoEncode); + void AddControlInformationElementsToMultiSegmentMessageL(TSmsInformationElementCategories::TInformationElementCategory aCategory, TBool aMandatoryInPDU, TBool aDoEncode); + void AddCurrentPDUToPDUArrayL(TBool aDoEncode); TBool AddIEToUserDataL(CEmsInformationElement* aIe, TInt aCharsAlreadyAdded,TUint& aCharsAddedToCurrentPDU,CSmsEMSBufferSegmenter& aSeg); TInt FillPduL(CSmsEMSBufferSegmenter& aSeg, TInt aNumChars, TSmsEncoding aEncoding); TInt NumMessageEmsPDUsL(); @@ -275,7 +283,7 @@ void AddEmsObjectDistributionL(const CEmsObjectDistribution& aObjectDistributionIE); void UpdateUserPromptAndODIElementsStartPosition(); TInt AddReceivedEmsInformationElement(CEmsInformationElement* aIE); - TSmsStatusReportScheme FindScheme(const CArrayPtr& aSmsPDUArray); + TSmsStatusReportScheme FindSchemeL(const CArrayPtr& aSmsPDUArray); void InstallTPSRRInformationL(const CArrayPtr& aSmsPDUArray, TInt aSegmentSequenceNum); void EncodingTPSRRFromSchemesIntoSinglePDUL(); void DecodeOnlyTextL(CArrayPtr& aSmsPDUArray,CSmsBufferBase& aBuffer); @@ -325,7 +333,7 @@ CCnvCharacterSetConverter* iCharacterSetConverter; public: - CArrayFixFlat iSlotArray; ///< Array for slots + CArrayFixFlat iSlotArray; //< Array for slots /** * SMS versions */ @@ -347,19 +355,19 @@ protected: -/** - * iVersion is the version of CSmsMessage. This parameter will be - * used to identify what iAdditionalInfo points to for that particular - * version of CSmsMessage - */ + /** + * iVersion is the version of CSmsMessage. This parameter will be + * used to identify what iAdditionalInfo points to for that particular + * version of CSmsMessage + */ TInt iVersion; -/** - * iAdditionalInfo would point to any new added data structure. - * iVersion would identify which data structure is valid for that - * * particular version of CSmsMessage - */ - void* iAdditionalInfo; + /** + * iAdditionalInfo would point to any new added data structure. + * iVersion would identify which data structure is valid for that + * * particular version of CSmsMessage + */ + CSmsMessageAdditionalAttributes* iAdditionalInfo; }; #include