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

sdprepeatfield.h

Go to the documentation of this file.
00001 /*
00002 * =============================================================================
00003 *  Name          : SdpRepeatField.h
00004 *  Part of       : SDP Codec
00005 *  Interface     : SDK API, SDP Codec API
00006 *  Description   : 
00007 *  Version       : 1.0
00008 *
00009 *  Copyright (c) 2003 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 #ifndef CSDPREPEATFIELD_H
00022 #define CSDPREPEATFIELD_H
00023 
00024 //  INCLUDES
00025 #include <e32base.h>
00026 #include <StringPool.h>
00027 #include "_sdpdefs.h"
00028 #include "sdptypedtime.h"
00029 
00030 // FORWARD DECLARATIONS
00031 class RReadStream;
00032 class RWriteStream;
00033 
00034 // CLASS DECLARATION
00049 class CSdpRepeatField : public CBase
00050         {
00051     public: // Constructors and destructor
00059                 IMPORT_C static CSdpRepeatField* DecodeL(const TDesC8& aText);
00060 
00069                 IMPORT_C static CSdpRepeatField* DecodeLC(const TDesC8& aText);
00070 
00080                 IMPORT_C static CSdpRepeatField* NewL(
00081                                         const TSdpTypedTime  aRepeatInterval,
00082                                                                                 const TSdpTypedTime  aActiveDuration,
00083                                                                                 const RArray<TSdpTypedTime>& aOffsets);
00084 
00095                 IMPORT_C static CSdpRepeatField* NewLC(
00096                                         const TSdpTypedTime  aRepeatInterval,
00097                                                                                 const TSdpTypedTime aActiveDuration,
00098                                                                                 const RArray<TSdpTypedTime>& aOffsets);
00099 
00103                 IMPORT_C ~CSdpRepeatField();
00104 
00105     public: // New functions
00113                 IMPORT_C void EncodeL(RWriteStream& aStream) const;
00114 
00120                 IMPORT_C CSdpRepeatField * CloneL() const;
00121 
00128                 IMPORT_C TBool operator == (const CSdpRepeatField & aObj) const;
00129 
00135                 IMPORT_C const TSdpTypedTime RepeatInterval() const;
00136 
00144                 IMPORT_C void SetRepeatIntervalL(const TSdpTypedTime  aValue);
00145 
00151                 IMPORT_C const TSdpTypedTime ActiveDuration() const;
00152 
00158                 IMPORT_C void SetActiveDuration(const TSdpTypedTime aValue);
00159 
00166                 IMPORT_C const RArray<TSdpTypedTime>& TimeOffsets() const;
00167 
00173                 IMPORT_C void SetTimeOffsetsL(const RArray<TSdpTypedTime>& aValue);
00174 
00175     public:
00181                 void ExternalizeL(RWriteStream& aStream) const;
00182                 
00189                 static CSdpRepeatField* InternalizeL(RReadStream& aStream);
00190 
00191         private:
00192                 CSdpRepeatField(const TSdpTypedTime aRepeatInterval,
00193                                                 const TSdpTypedTime aActiveDuration);
00194                 CSdpRepeatField();
00195                 void ConstructL(const TDesC8& aText);
00196                 void ConstructL(const RArray<TSdpTypedTime>& aOffsets);
00197         
00198 
00199     private: // Data
00200         RStringPool iPool;
00201                 TSdpTypedTime iRepeatInterval;
00202                 TSdpTypedTime iActiveDuration;
00203                 RArray<TSdpTypedTime> iTimeOffsets;
00204 
00205                 __DECLARE_TEST;
00206         };
00207 
00208 // CSDPREPEATFIELD_H
00209 #endif

Copyright © Nokia Corporation 2001-2007
Back to top