2 * Copyright (c) 2004-2009 Nokia Corporation and/or its subsidiary(-ies).
 
     4 * This component and the accompanying materials are made available
 
     5 * 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
 
     6 * which accompanies this distribution, and is available
 
     7 * at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
 
     9 * Initial Contributors:
 
    10 * Nokia Corporation - initial contribution.
 
    15 * Name        : sipallowheader.h
 
    17 * Interface   : SDK API, SIP Codec API
 
    25 #ifndef CSIPALLOWHEADER_H
 
    26 #define CSIPALLOWHEADER_H
 
    29 #include "siptokenheaderbase.h"
 
    30 #include "_sipcodecdefs.h"
 
    37 * Class provides functions for setting and getting parameters 
 
    38 * in SIP "Allow" header.
 
    42 class CSIPAllowHeader : public CSIPTokenHeaderBase
 
    44 	public:	// Constructors and destructor
 
    47 		* Constructs a CSIPAllowHeader from textual representation 
 
    48 		* of the header's value part.
 
    49 		* @param aValue a value part of a "Allow"-header
 
    50 		* @return an array containing one to many instances of CSIPAllowHeader
 
    52 		IMPORT_C static RPointerArray<CSIPAllowHeader> 
 
    53 			DecodeL(const TDesC8& aValue);
 
    56 		* Creates a new instance of CSIPAllowHeader
 
    57 		* @param aValue a value 
 
    58 		* @return a new instance of CSIPAllowHeader
 
    60 		IMPORT_C static CSIPAllowHeader* NewL(RStringF aValue);
 
    63 		* Creates a new instance of CSIPAllowHeader and puts it to CleanupStack
 
    64 		* @param aValue a value   
 
    65 		* @return a new instance of CSIPAllowHeader
 
    67 		IMPORT_C static CSIPAllowHeader* NewLC(RStringF aValue);
 
    70 		* Destructor, deletes the resources of CSIPAllowHeader.
 
    72 		IMPORT_C ~CSIPAllowHeader();
 
    75 	public: // New functions
 
    78 		* Constructs an instance of a CSIPAllowHeader from a RReadStream
 
    79 		* @param aReadStream a stream containing the value of the
 
    80 		*        externalized object (header name not included). 
 
    81 		* @return an instance of a CSIPAllowHeader
 
    83 		IMPORT_C static CSIPHeaderBase* 
 
    84 			InternalizeValueL(RReadStream& aReadStream);
 
    87 	public: // From CSIPHeaderBase
 
    90 		* From CSIPHeaderBase CloneL
 
    92 		IMPORT_C CSIPHeaderBase* CloneL() const;
 
    95 		* From CSIPHeaderBase Name
 
    97 		IMPORT_C RStringF Name() const;
 
   100 	public: // From CSIPHeaderBase, for internal use
 
   105 		TPreferredPlace PreferredPlaceInMessage() const;
 
   107 	public: // New functions, for internal use
 
   109 		static RPointerArray<CSIPHeaderBase> BaseDecodeL(const TDesC8& aValue);
 
   111 	private: // Constructors
 
   114 		CSIPAllowHeader(const CSIPAllowHeader& aHeader);
 
   117 #endif // CSIPALLOWHEADER_H