CArrayFixFlat< TAny > Class Template Reference

template <>
class CArrayFixFlat< TAny > : public CArrayFix< TAny >

An array of fixed length untyped objects using a flat dynamic buffer.

The array elements are contained within a CBufFlat.

The class is useful for constructing an array of fixed length buffers, where the length is decided at run time.

This class is also useful as a data member of a base class in a thin template class/base class pair where the type of the array element is not known until the owning thin template class is instantiated.

CBufFlat

Inherits from

Public Member Functions
CArrayFixFlat(TInt, TInt)
voidSetReserveL(TInt)
Inherited Functions
CArrayFix< TAny >::AppendL(const TAny *)
CArrayFix< TAny >::AppendL(const TAny *,TInt)
CArrayFix< TAny >::At(TInt)
CArrayFix< TAny >::At(TInt)const
CArrayFix< TAny >::Back(TInt)
CArrayFix< TAny >::Back(TInt)const
CArrayFix< TAny >::CArrayFix(TBufRep,TInt,TInt)
CArrayFix< TAny >::End(TInt)
CArrayFix< TAny >::End(TInt)const
CArrayFix< TAny >::ExtendL()
CArrayFixBase::AtR(const CBase *,TInt)
CArrayFixBase::CArrayFixBase(TBufRep,TInt,TInt)
CArrayFixBase::Compress()
CArrayFixBase::Count()const
CArrayFixBase::CountR(const CBase *)
CArrayFixBase::Delete(TInt)
CArrayFixBase::Delete(TInt,TInt)
CArrayFixBase::ExpandL(TInt)
CArrayFixBase::Find(const TAny *,TKeyArrayFix &,TInt &)const
CArrayFixBase::FindIsq(const TAny *,TKeyArrayFix &,TInt &)const
CArrayFixBase::InsertIsqAllowDuplicatesL(const TAny *,TKeyArrayFix &)
CArrayFixBase::InsertIsqL(const TAny *,TKeyArrayFix &)
CArrayFixBase::InsertL(TInt,const TAny *)
CArrayFixBase::InsertL(TInt,const TAny *,TInt)
CArrayFixBase::InsertRepL(TInt,const TAny *,TInt)
CArrayFixBase::Length()const
CArrayFixBase::Reset()
CArrayFixBase::ResizeL(TInt,const TAny *)
CArrayFixBase::SetKey(TKeyArrayFix &)const
CArrayFixBase::SetReserveFlatL(TInt)
CArrayFixBase::Sort(TKeyArrayFix &)
CArrayFixBase::~CArrayFixBase()
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()

Constructor & Destructor Documentation

CArrayFixFlat(TInt, TInt)

CArrayFixFlat(TIntaRecordLength,
TIntaGranularity
)[inline]

Constructs a flat array of fixed length objects with the specified granularity to contain elements of the specified length.

Note that no memory is allocated to the array buffer by this constructor.

panic
E32USER-CBase 17, if aRecordLength is not positive.
panic
E32USER-CBase 18, if aGranularity is not positive.

Parameters

TInt aRecordLengthThe length of the elements of this fixed length array.
TInt aGranularityThe granularity of the array.

Member Functions Documentation

SetReserveL(TInt)

voidSetReserveL(TIntaCount)[inline]

Reserves space in the array buffer.

If necessary, the array buffer is allocated or re-allocated so that it can accommodate the specified number of elements.

After a successful call to this function, elements can be added to the array and the process is guaranteed not to fail for lack of memory - provided the total number of elements does not exceed the specified number.

This function does not increase the number of elements in the array; i.e. the member function CArrayFixBase::Count() returns the same value both before and after a call to this function.

panic
E32USER-CBase 27, if aCount is less than the current number of elements in the array.

Parameters

TInt aCountThe total number of elements for which space is to be reserved.