Symbian
Symbian OS Library

SYMBIAN OS V9.3

[Index] [Spacer] [Previous] [Next]



Location: S32BUF.H

Class MStreamOutput

class MStreamOutput;

Description

An interface to an object that acts as source for write operations to a stream. The object behaves as a generic data source.

A stream output object can act as an intelligent buffer, and is useful for performing filtering, compression or any other general kind of conversion operation that might be needed before writing to a stream.

The class is pure interface and requires an implementation.

Members

Defined in MStreamOutput:
PullL(), WriteToL()

See also:


Member functions


PullL()

virtual TInt PullL(TAny *aPtr, TInt aMaxLength)=0;

Description

Writes data to an intermediate buffer from this stream output object.

This function is called by the default implementation of TStreamBuf::DoWriteL(MStreamOutput&,TStreamTransfer) and assumes that the target is a stream buffer's intermediate buffer.

Parameters

TAny *aPtr

A pointer into the intermediate buffer where the write operation starts.

TInt aMaxLength

The maximum amount of data to be written.

Return value

TInt

The amount of data written.

See also:


WriteToL()

virtual TStreamTransfer WriteToL(MStreamBuf &aSink, TStreamTransfer aTransfer)=0;

Description

Writes data to the specified stream from this stream output object.

This function is called by the default implementation of MStreamBuf::DoWriteL(MStreamOutput&,TStreamTransfer). It may also be called by TStreamBuf::DoWriteL(MStreamOutput&,TStreamTransfer), depending on the amount of data to be transferred and the nature of the buffering scheme.

Parameters

MStreamBuf &aSink

The stream to which data is to be written.

TStreamTransfer aTransfer

Defines the amount of data available to be written.

Return value

TStreamTransfer

The amount of data that was not consumed.

See also: