00001 /* 00002 * ============================================================================= 00003 * Name : siprouteheader.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 CSIPROUTEHEADER_H 00023 #define CSIPROUTEHEADER_H 00024 00025 // INCLUDES 00026 #include "siprouteheaderbase.h" 00027 #include "_sipcodecdefs.h" 00028 00029 // CLASS DECLARATION 00038 class CSIPRouteHeader : public CSIPRouteHeaderBase 00039 { 00040 public: // Constructors and destructor 00041 00048 IMPORT_C static RPointerArray<CSIPRouteHeader> 00049 DecodeL(const TDesC8& aValue); 00050 00057 IMPORT_C static CSIPRouteHeader* NewL(CSIPAddress* aSIPAddress); 00058 00066 IMPORT_C static CSIPRouteHeader* NewLC(CSIPAddress* aSIPAddress); 00067 00071 IMPORT_C ~CSIPRouteHeader(); 00072 00073 00074 public: // New functions 00075 00082 IMPORT_C static CSIPHeaderBase* 00083 InternalizeValueL(RReadStream& aReadStream); 00084 00085 00086 public: // From CSIPHeaderBase 00087 00091 IMPORT_C CSIPHeaderBase* CloneL() const; 00092 00096 IMPORT_C RStringF Name() const; 00097 00098 00099 public: // New functions, for internal use 00100 00101 static RPointerArray<CSIPHeaderBase> BaseDecodeL(const TDesC8& aValue); 00102 static CSIPRouteHeader* NewL(const CSIPRouteHeaderBase& aHeader); 00103 00104 private: // From CSIPHeaderbase 00105 00106 void ExternalizeValueL(RWriteStream& aWriteStream) const; 00107 00108 private: // Constructors 00109 00110 CSIPRouteHeader(); 00111 00112 private: // New functions 00113 00114 void DoInternalizeValueL(RReadStream& aReadStream); 00115 }; 00116 00117 // CSIPROUTEHEADER_H 00118 #endif 00119 00120 // End of File