RReadStream Class Reference

class RReadStream

The read stream interface. The process of internalising from a stream is achieved through a reference to an object of this type.

A store aware class defines an implements an InternalizeL() member function which is used to internalise that object and takes a reference to an RReadStream as the interface to the read stream.

Public Member Functions
RReadStream ()
RReadStream ( MStreamBuf *)
void Close ()
void Pop ()
IMPORT_C void PushL ()
IMPORT_C TInt16 ReadInt16L ()
IMPORT_C TInt32 ReadInt32L ()
IMPORT_C TInt8 ReadInt8L ()
IMPORT_C void ReadL ( TDes8 &)
IMPORT_C void ReadL ( TDes8 &, TInt )
IMPORT_C void ReadL ( TDes8 &, TChar )
IMPORT_C void ReadL ( TUint8 *, TInt )
IMPORT_C void ReadL ( TInt )
void ReadL ( RWriteStream &)
void ReadL ( RWriteStream &, TInt )
IMPORT_C void ReadL ( TDes16 &)
IMPORT_C void ReadL ( TDes16 &, TInt )
IMPORT_C void ReadL ( TDes16 &, TChar )
IMPORT_C void ReadL ( TUint16 *, TInt )
IMPORT_C TReal32 ReadReal32L ()
IMPORT_C TReal64 ReadReal64L ()
IMPORT_C TUint16 ReadUint16L ()
IMPORT_C TUint32 ReadUint32L ()
IMPORT_C TUint8 ReadUint8L ()
IMPORT_C void Release ()
MStreamBuf * Source ()
Protected Member Functions
void Attach ( MStreamBuf *)
void Detach ()
Private Attributes
MStreamBuf * iSrc

Constructor & Destructor Documentation

RReadStream()

RReadStream ( ) [inline]

Sets the stream buffer source to NULL, which implies that it is safe to close

RReadStream::Source()

RReadStream(MStreamBuf *)

RReadStream ( MStreamBuf * aSource ) [inline]

Constructs a read stream over the supplied stream buffer.

RReadStream::Source()

Parameters

MStreamBuf * aSource The stream buffer used to read from the read stream.

Member Functions Documentation

Attach(MStreamBuf *)

void Attach ( MStreamBuf * aSource ) [protected, inline]

Sets the stream buffer source for this read stream. The existing source (if there is one) will be discarded.

This is useful for derived classes, enabling them to set the source following construction.

Note:

Release() is not called on any discarded stream buffer.

RReadStream::Source() RReadStream::Detach()

Parameters

MStreamBuf * aSource The new source stream buffer for this read stream.

Close()

void Close ( ) [inline]

Frees resources used by the stream.

RReadStream::Release()

Detach()

void Detach ( ) [protected, inline]

Sets the stream buffer source for this read stream to NULL. The existing source, if there is one, will be discarded.

Note that Release() is not called on any discarded stream buffer.

RReadStream::Source() RReadStream::Attach()

Pop()

void Pop ( ) [inline]

Removes the cleanup item for this read stream object from the cleanup stack.

PushL()

IMPORT_C void PushL ( )

Puts a cleanup item for this read stream object onto the cleanup stack. This allows allocated resources to be cleaned up if a subsequent leave occurs.

ReadInt16L()

IMPORT_C TInt16 ReadInt16L ( )

Internalises a TInt16 value. The function reads a 16 bit value from this stream and interprets it as a TInt16.

ReadInt32L()

IMPORT_C TInt32 ReadInt32L ( )

Internalises a TInt32 value. The function reads a 32 bit value from this stream and interprets it as a TInt32.

ReadInt8L()

IMPORT_C TInt8 ReadInt8L ( )

Internalises a TInt8 value The function reads an 8 bit value from this stream and interprets it as a TInt8.

ReadL(TDes8 &)

IMPORT_C void ReadL ( TDes8 & aDes )

Reads sufficient data from this stream to fill the specified 8 bit descriptor up to its maximum length. No other information is read from this read stream.

Parameters

TDes8 & aDes A reference to a modifiable descriptor which is to receive the data read from this stream. Passing the build independent type TDes& allows the compiler to choose the appropriate ReadL() variant (i.e the 8 bit or the 16 bit) at build time.

ReadL(TDes8 &, TInt)

IMPORT_C void ReadL ( TDes8 & aDes,
TInt aLength
)

Reads data of specified length from this stream into the specified 8 bit descriptor. No other information is read from this stream.

Parameters

TDes8 & aDes A reference to a modifiable type descriptor which is to receive the data read from this stream. Passing the build independent type TDes& allows the compiler to choose the appropriate ReadL() variant (i.e the 8 bit or the 16 bit) at build time.
TInt aLength The length of data to be read from this stream. This value must be non-negative and must not be greater than the maximum length of the descriptor otherwise the function raises a USER 11 panic.

ReadL(TDes8 &, TChar)

IMPORT_C void ReadL ( TDes8 & aDes,
TChar aDelim
)

Reads data from this stream into the 8 bit descriptor, until either the specified delimiter is encountered or the descriptor is filled to its maximum length. The resulting data in aDes always includes the delimiter aDelim, if aDes is large enough.

Parameters

TDes8 & aDes A reference to a modifiable type descriptor which is to receive the data read from this stream. Passing the build independent type TDes& allows the compiler to choose the appropriate ReadL() variant (i.e the 8 bit or the 16 bit) at build time.
TChar aDelim The delimiter marking the end of the data in the stream.

ReadL(TUint8 *, TInt)

IMPORT_C void ReadL ( TUint8 * aPtr,
TInt aLength
)

Reads data of specified length from this stream into the location defined by the specified TUint8 pointer.

Parameters

TUint8 * aPtr The target location for the streamed in data.
TInt aLength The length of data to be streamed in.

ReadL(TInt)

IMPORT_C void ReadL ( TInt aLength )

Discards data of specified length read from this stream.

Parameters

TInt aLength The length of data to be discarded from this read stream.

ReadL(RWriteStream &)

void ReadL ( RWriteStream & aStream ) [inline]

Writes the content of this stream to the specified write stream.

Parameters

RWriteStream & aStream A reference to the write stream to which this stream is to be written.

ReadL(RWriteStream &, TInt)

void ReadL ( RWriteStream & aStream,
TInt aLength
) [inline]

Writes the content of this stream to the specified write stream.

Parameters

RWriteStream & aStream A reference to the write stream to which this stream is to be written.
TInt aLength The length of data from this stream to be written to aStream.

ReadL(TDes16 &)

IMPORT_C void ReadL ( TDes16 & aDes )

Reads sufficient data from this stream to fill the specified 16 bit descriptor up to its maximum length. No other information is read from this read stream.

Parameters

TDes16 & aDes A reference to a modifiable type descriptor which is to receive the data read from this stream. Passing the build independent type TDes& allows the compiler to choose the appropriate ReadL() variant (i.e the 8 bit or the 16 bit) at build time.

ReadL(TDes16 &, TInt)

IMPORT_C void ReadL ( TDes16 & aDes,
TInt aLength
)

Reads data of specified length from this stream into the specified 16 bit descriptor. No other information is read from this stream.

Parameters

TDes16 & aDes A reference to a modifiable type descriptor which is to receive the data read from this stream. Passing the build independent type TDes& allows the compiler to choose the appropriate ReadL() variant (i.e the 8 bit or the 16 bit) at build time.
TInt aLength The length of data to be read from this stream. This value must be non-negative and must not be greater than the maximum length of the descriptor otherwise the function raises a USER 11 panic.

ReadL(TDes16 &, TChar)

IMPORT_C void ReadL ( TDes16 & aDes,
TChar aDelim
)

Reads data from this stream into the 16 bit descriptor, until either the specified delimiter is encountered or the descriptor is filled to its maximum length. The resulting data in aDes always includes the delimiter aDelim, if aDes is large enough.

Parameters

TDes16 & aDes A reference to a modifiable type descriptor which is to receive the data read from this stream. Passing the build independent type TDes& allows the compiler to choose the appropriate ReadL() variant (i.e the 8 bit or the 16 bit) at build time.
TChar aDelim The delimiter marking the end of the data in the stream.

ReadL(TUint16 *, TInt)

IMPORT_C void ReadL ( TUint16 * aPtr,
TInt aLength
)

Reads data of specified length from this stream into the specified 16 bit descriptor. No other information is read from this stream.

Parameters

TUint16 * aPtr
TInt aLength The length of data to be read from this stream. This value must be non-negative and must not be greater than the maximum length of the descriptor otherwise the function raises a USER 11 panic.

ReadReal32L()

IMPORT_C TReal32 ReadReal32L ( )

Internalises a TReal32 value. The function reads a 32 bit value from this stream and interprets it as a TReal32.

ReadReal64L()

IMPORT_C TReal64 ReadReal64L ( )

Internalises a TReal64 value. The function reads a 64 bit value from this stream and interprets it as a TReal64.

ReadUint16L()

IMPORT_C TUint16 ReadUint16L ( )

Internalises a TUint16 value. The function reads a 16 bit value from this stream and interprets it as a TUint16.

ReadUint32L()

IMPORT_C TUint32 ReadUint32L ( )

Internalises a TUint32 value. The function reads a 32 bit value from this stream and interprets it as a TUint32.

ReadUint8L()

IMPORT_C TUint8 ReadUint8L ( )

Internalises a TUint8 value. The function reads an 8 bit value from this stream and interprets it as a TUint8.

Release()

IMPORT_C void Release ( )

Frees resources before abandoning the stream.

Note that, if a cleanup item for the stream was placed on the cleanup stack when the stream was opened by a call to OpenLC(), then this function need not be called explicitly; clean up is implicitly done by CleanupStack::PopAndDestroy() .

Source()

MStreamBuf * Source ( ) [inline]

Gets the underlying stream buffer for the read stream. This provides access to the stream-buffer implementation used by the read stream.

Note:

If the stream buffer supports seeking, this allows the RReadStream client to have random access to the stream data.

RReadStream::Attach() RReadStream::Detach()

Member Data Documentation

MStreamBuf * iSrc

MStreamBuf * iSrc [private]