S60 3rd Edition API Reference: sipacceptlanguageheader.h Source File

sipacceptlanguageheader.h

Go to the documentation of this file.
00001 /*
00002 * =============================================================================
00003 *  Name        : sipacceptlanguageheader.h
00004 *  Part of     : SIP Codec
00005 *  Interface   : SDK API, SIP Codec API
00006 *  Description : 
00007 *  Version     : SIP/4.0 
00008 *
00009 *  Copyright (c) 2004 Nokia Corporation. 
00010 *  This material, including documentation and any related 
00011 *  computer programs, is protected by copyright controlled by 
00012 *  Nokia Corporation. All rights are reserved. Copying, 
00013 *  including reproducing, storing, adapting or translating, any 
00014 *  or all of this material requires the prior written consent of 
00015 *  Nokia Corporation. This material also contains confidential 
00016 *  information which may not be disclosed to others without the 
00017 *  prior written consent of Nokia Corporation. 
00018 * =============================================================================
00019 */
00020 
00021 
00022 #ifndef CSIPACCEPTLANGUAGEHEADER_H
00023 #define CSIPACCEPTLANGUAGEHEADER_H
00024 
00025 //  INCLUDES
00026 #include "SipParameterHeaderBase.h"
00027 #include "_sipcodecdefs.h"
00028 
00029 // FORWARD DECLARATIONS
00030 class CSIPAcceptHeaderParams;
00031 
00032 // CLASS DECLARATION
00042 class CSIPAcceptLanguageHeader : public CSIPParameterHeaderBase
00043         {
00044         public: // Constructors and destructor
00045 
00053                 IMPORT_C static RPointerArray<CSIPAcceptLanguageHeader> 
00054                         DecodeL(const TDesC8& aValue);
00055 
00061                 IMPORT_C static CSIPAcceptLanguageHeader* 
00062                         NewL(const TDesC8& aLanguageRange);
00063 
00070                 IMPORT_C static CSIPAcceptLanguageHeader* 
00071                         NewLC(const TDesC8& aLanguageRange);
00072 
00076                 IMPORT_C ~CSIPAcceptLanguageHeader();
00077 
00078 
00079         public: // New functions
00080 
00085                 IMPORT_C const TDesC8& LanguageRange() const;
00086 
00091                 IMPORT_C void SetLanguageRangeL(const TDesC8& aLanguageRange);
00092 
00097                 IMPORT_C TReal QParameter() const;
00098 
00103                 IMPORT_C void SetQParameterL(TReal aQValue);
00104 
00111                 IMPORT_C static CSIPHeaderBase* 
00112                         InternalizeValueL(RReadStream& aReadStream);
00113 
00114 
00115         public: // From CSIPHeaderBase
00116 
00120                 IMPORT_C CSIPHeaderBase* CloneL() const;
00121                 
00125                 IMPORT_C RStringF Name() const;
00126 
00127 
00128         public: // From CSIPHeaderBase, for internal use
00129 
00130                 TBool MoreThanOneAllowed() const;
00131                 TPreferredPlace PreferredPlaceInMessage() const;
00132 
00133         public: // New functions, for internal use
00134 
00135                 static RPointerArray<CSIPHeaderBase> BaseDecodeL(const TDesC8& aValue);
00136 
00137         private: // From CSIPHeaderBase
00138 
00139                 void ExternalizeValueL(RWriteStream& aWriteStream) const;
00140 
00141         private: // From CSIPParameterHeaderBase
00142 
00143                 HBufC8* ToTextMandatoryPartLC() const;
00144                 void ParseMandatoryPartL(const TDesC8& aMandatoryPart);
00145                 const CSIPParamContainerBase& Params() const;
00146                 CSIPParamContainerBase& Params();
00147 
00148         private: // New functions
00149 
00150                 CSIPAcceptLanguageHeader();
00151                 void ConstructL();
00152                 void ConstructL(const TDesC8& aLanguageRange);
00153                 void ConstructL(const CSIPAcceptLanguageHeader& aAcceptLanguageHeader);
00154                 void DoInternalizeValueL(RReadStream& aReadStream);
00155 
00156         private: // Data
00157 
00158                 HBufC8* iLanguageRange;
00159                 CSIPAcceptHeaderParams* iParams;
00160 
00161         private: // For testing purposes
00162         
00163                 UNIT_TEST(CSIPAcceptLanguageHeaderTest)
00164         };
00165 
00166 // CSIPACCEPTLANGUAGEHEADER_H
00167 #endif
00168 
00169 // End of File

Copyright © Nokia Corporation 2001-2007
Back to top