epoc_rs_buf8.hpp

Go to the documentation of this file.
00001 #ifndef __epoc_rs_buf8_hpp__
00002 #define __epoc_rs_buf8_hpp__
00003 
00004 #include <e32std.h>
00005 
00006 // An RBuf8 with more resizing support.
00007 NONSHARABLE_CLASS(RRsBuf8) : 
00008   public RBuf8
00009 {
00010  public:
00011   RRsBuf8() : iGranularity(16) {}
00012   RRsBuf8(TInt aGranularity) : iGranularity(aGranularity) {}
00013 
00014   void CopyL(const TDesC8 &aDes);
00015   void CopyL(const TUint8 *aZeroTerminatedString);
00016   void CopyL(const TUint8 *aBuf, TInt aLength);
00017 
00018   void AppendL(const TDesC8 &aDes);
00019   void AppendL(const TUint8 *aZeroTerminatedString);
00020   void AppendL(const TUint8 *aBuf, TInt aLength);
00021   
00022   const TUint8 *PtrZL();
00023 
00024  private:
00025   void ReserveL(TInt aMinRequiredCapacity);
00026   void ReserveFreeCapacityL(TInt aExtraSpaceLength);
00027 
00028  private:
00029    TInt iGranularity;
00030 };
00031 
00032 #endif /* __epoc_rs_buf8_hpp__ */
00033 
00034 // Adapted from estring.h of EUserHL, hence this license applies.
00035 //
00036 // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies).
00037 // All rights reserved.
00038 // This component and the accompanying materials are made available
00039 // under the terms of "Eclipse Public License v1.0"
00040 // which accompanies this distribution, and is available
00041 // at the URL "http://www.eclipse.org/legal/epl-v10.html".

ContextLogger2—ContextLogger2 Logger Daemon Internals—Generated on Mon May 2 13:49:52 2011 by Doxygen 1.6.1