class TStreamTransfer |
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.
Public Member Functions | |
---|---|
TStreamTransfer() | |
TStreamTransfer(TInt) | |
TStreamTransfer(TUnlimited) | |
TInt | Left() |
TStreamTransfer | operator-(TInt) |
TStreamTransfer & | operator-=(TInt) |
TBool | operator==(TInt) |
TBool | operator>(TInt) |
TInt | operator[](TInt) |
Private Member Functions | |
---|---|
IMPORT_C void | __DbgChkNonNegative(TInt) |
Public Member Enumerations | |
---|---|
enum | TUnlimited { EUnlimited } |
Private Attributes | |
---|---|
TInt | iVal |
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 | aMaxLength | ) | [inline] |
Constructs a stream transfer object specifying a length value.
This value represents the maximum amount of data that can be transferred between streams.
TInt aMaxLength | The 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 | ) | [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.
TUnlimited |
IMPORT_C void | __DbgChkNonNegative | ( | TInt | aLength | ) | [private, static] |
TInt aLength |
TStreamTransfer | operator- | ( | TInt | aLength | ) | 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.
A stream transfer object containing the result of the subtraction.
TInt aLength | The length to be subtracted. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative. |
TStreamTransfer & | operator-= | ( | TInt | aLength | ) | [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.
A reference to this stream transfer object.
TInt aLength | The length to be subtracted. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative. |
TBool | operator== | ( | TInt | aLength | ) | const [inline] |
Tests whether the stream transfer value is equal to the specified value.
True, if the stream transfer value is equal to the specified value; false, otherwise.
TInt aLength | The length to compared. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative. |
TBool | operator> | ( | TInt | aLength | ) | const [inline] |
Tests whether the stream transfer value is greater than the specified value.
True, if the stream transfer value is greater than the specified value; false, otherwise.
TInt aLength | The length to compared. In debug mode, the function raises a STORE-Stream 13 panic, if this value is negative. |
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.
EUnlimited |