TStreamTransfer Class Reference

#include <s32buf.h>

class TStreamTransfer

Detailed Description

Stream transfer object.

Holds and maintains a value that represents how much data is to be transferred, or remains to be transferred, between streams.

Objects of this type are used by ReadL() and WriteL() functions of MStreamBuf.

See also: MStreamBuf TStreamBuf TStreamMark TStreamExchange RShareBuf

Member Enumeration Documentation

Enum TUnlimited

An enumerator type passed to a constructor of this class to indicate that there is no explicit limit to the amount of data that can be transferred between streams. The enumeration is not used.

EnumeratorValueDescription
EUnlimited

Constructor & Destructor Documentation

TStreamTransfer ( )

TStreamTransfer()[inline]

Constructs a stream transfer object specifying that there is no explicit limit to the amount of data that can be transferred between streams.

The amount of data to be transferred is only limited by the streams themselves.

The arithmetical operators do not change the state of an unlimited stream transfer object.

TStreamTransfer ( TInt )

TStreamTransfer(TIntaMaxLength)[inline]

Constructs a stream transfer object specifying a length value.

This value represents the maximum amount of data that can be transferred between streams.

Parameters
aMaxLengthThe maximum length of data that can be transferred. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative.

TStreamTransfer ( TUnlimited )

TStreamTransfer(TUnlimited)[inline]

Constructs a stream transfer object specifying that there is no explicit limit to the amount of data that can be transferred between streams.

The amount of data to be transferred is only limited by the streams themselves.

The arithmetical operators do not change the state of an unlimited stream transfer object.

Member Function Documentation

Left ( )

TInt Left()const [inline]

Gets the stream transfer value.

Return Value
The current stream transfer value.

operator- ( TInt )

TStreamTransfer operator-(TIntaLength)const [inline]

Subtracts the specified value from the stream transfer value.

If this stream transfer object was originally constructed as an unlimited type, i.e. using the TStreamTransfer(TUnlimited) constructor, then this operator does not change the state of the object, and it remains an unlimited type.

Parameters
aLengthThe length to be subtracted. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative.
Return Value
A stream transfer object containing the result of the subtraction.

operator-= ( TInt )

TStreamTransfer &operator-=(TIntaLength)[inline]

Subtracts the specified value from the stream transfer value, updating this stream transfer object.

If this stream transfer object was originally constructed as an unlimited type, i.e. using the TStreamTransfer(TUnlimited) constructor, then this operator does not change the state of the object, and it remains an unlimited type.

If this stream transfer object was not an unlimited type, then, in debug mode, the function raises a STORE-Stream 13 panic, if the result of the calculation is negative.

Parameters
aLengthThe length to be subtracted. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative.
Return Value
A reference to this stream transfer object.

operator== ( TInt )

TBool operator==(TIntaLength)const [inline]

Tests whether the stream transfer value is equal to the specified value.

Parameters
aLengthThe length to compared. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative.
Return Value
True, if the stream transfer value is equal to the specified value; false, otherwise.

operator> ( TInt )

TBool operator>(TIntaLength)const [inline]

Tests whether the stream transfer value is greater than the specified value.

Parameters
aLengthThe length to compared. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative.
Return Value
True, if the stream transfer value is greater than the specified value; false, otherwise.

operator[] ( TInt )

TInt operator[](TIntaMaxLength)const [inline]