#include <s32share.h>
| class TStreamMark |
Manages the position of a read mark or a write mark within a shared stream.
A shared stream is one that shares its host with other streams. In practice, the host is a stream buffer that is, itself, hosted by a file, an RFileBuf object.
TStreamMark objects are owned by RShareBuf, one for reading and one for writing. They re-direct read/write operations through a TStreamExchange object to the RFileBuf object, which handles the actual file read and write operations.
See also: RFileBuf RShareBuf TStreamExchange
| TStreamMark | ( | TStreamPos | aPos | ) | [inline] |
Constructs the shared stream mark object, setting the mark to the specified stream position.
An initialised mark means that a call to IsEmpty() returns false.
See also: IsEmpty()
| Parameter | Description |
|---|---|
| aPos | The stream position |
| void | ExtractL | ( | TStreamExchange & | aHost | ) | [inline] |
Refreshes this mark from the mark in the host stream buffer and tells the shared streaming manager to drop any reference it has to to this mark object.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| TBool | IsEmpty | ( | ) | const [inline] |
Tests whether this mark object is uninitialised.
Returns: True, if this mark object is uninitialised; false, otherwise.
| TBool | IsWith | ( | TStreamExchange & | aHost | ) | const [inline] |
Tests whether the specified shared streaming manager currently refers to this mark object.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
Returns: True, if the shared stream manager refers to this mark; false, otherwise.
| TInt | ReadL | ( | TStreamExchange & | aHost, |
| TAny * | aPtr, | |||
| TInt | aMaxLength | |||
| ) | [inline] | |||
Reads data from the shared stream into the specified memory location.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| aPtr | A pointer to the target memory location for the data read from the shared stream. |
| aMaxLength | The maximum number of bytes to be read. |
Returns: The number of bytes read.
| IMPORT_C TInt | ReadL | ( | TStreamExchange & | aHost, |
| TDes8 & | aDes, | |||
| TRequestStatus & | aStatus | |||
| ) | ||||
| TInt | ReadL | ( | TStreamExchange & | aHost, |
| TDes8 & | aDes, | |||
| TInt | aMaxLength, | |||
| TRequestStatus & | aStatus | |||
| ) | [inline] | |||
Reads data, asynchronously, from the shared stream into the specified descriptor.
If the function leaves, then no read request will have been initiated.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| aDes | The target descriptor for the data read from the shared stream. |
| aMaxLength | The maximum number of bytes to be read. |
| aStatus | The request status that indicates the completion status of this asynchronous request. |
Returns: The maximum number of bytes to be read, as used in this request. This can be different to the value supplied in aMaxLength; this is dependent on the implementation of the underlying stream.
| TStreamTransfer | ReadL | ( | TStreamExchange & | aHost, |
| MStreamInput & | anInput, | |||
| TStreamTransfer | aTransfer | |||
| ) | [inline] | |||
Reads data from the shared stream into the specified data sink.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anInput | The sink which is the target for the read operation. |
| aTransfer | Defines the amount of data available to be read from the shared stream. |
Returns: The amount of data that was not consumed.
| TInt | ReadL | ( | TStreamExchange & | aHost, |
| MStreamInput & | anInput, | |||
| TInt | aMaxLength | |||
| ) | [inline] | |||
Reads data from the shared stream into the specified data sink.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anInput | The sink which is the target for the read operation. |
| aMaxLength | The maximum amount of data available to be read from the shared stream. |
Returns: The amount of data that was not consumed.
| void | ReadL | ( | TStreamExchange & | aHost, |
| MStreamInput & | anInput | |||
| ) | [inline] | |||
Reads data from the shared stream into the specified data sink.
No explicit limit is placed on the amount of data that can be read.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anInput | The sink which is the target for the read operation. |
| TBool | RelatesTo | ( | TStreamExchange & | aHost | ) | const [inline] |
Tests whether the specified shared streaming manager currently refers to this mark object OR whether this mark object is initialised.
See also: IsWith() TStreamExchange::IsActive()
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
Returns: True, if the shared stream manager refers to this mark OR if this mark object is initialised; false, otherwise.
| TStreamPos | SeekL | ( | TStreamExchange & | aHost, |
| TStreamLocation | aLocation, | |||
| TInt | anOffset = 0 | |||
| ) | [inline] | |||
Moves the position of the mark in the host stream.
The new position is calculated by adding the specified offset to one of:
the position of the beginning of the host stream
the position of the end of the host stream
the position of the current mark.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| aLocation | The location in the host stream on which the calculation of the new position is based. |
| anOffset | The offset value. |
Returns: The new position of the mark.
| TStreamPos | SeekL | ( | TStreamExchange & | aHost, |
| TInt | anOffset | |||
| ) | [inline] | |||
Moves the position of the mark in the host stream.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anOffset | The amount by which the position of the mark is to be moved relative to the existing position of the mark. |
Returns: The new position of the mark.
| TStreamPos | TellL | ( | TStreamExchange & | aHost | ) | const [inline] |
Gets the position of the mark within the host stream.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
Returns: The stream position.
| void | Withdraw | ( | TStreamExchange & | aHost | ) | [inline] |
Instructs the shared streaming manager to remove any reference it has to this mark object.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| void | WriteL | ( | TStreamExchange & | aHost, |
| const TAny * | aPtr, | |||
| TInt | aLength | |||
| ) | [inline] | |||
Writes data from the specified memory location into the shared stream.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| aPtr | A pointer to the memory location from which data is to be written to the shared stream. |
| aLength | The number of bytes to be written. |
| IMPORT_C TInt | WriteL | ( | TStreamExchange & | aHost, |
| const TDesC8 & | aDes, | |||
| TRequestStatus & | aStatus | |||
| ) | ||||
| TInt | WriteL | ( | TStreamExchange & | aHost, |
| const TDesC8 & | aDes, | |||
| TInt | aMaxLength, | |||
| TRequestStatus & | aStatus | |||
| ) | [inline] | |||
Writes data, asynchronously, from the specified descriptor into the shared stream.
If the function leaves, then no write request will have been initiated.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| aDes | The source descriptor for the data to be written into the shared stream. |
| aMaxLength | The maximum number of bytes to be written. |
| aStatus | The request status that indicates the completion status of this asynchronous request. |
Returns: The maximum number of bytes to be written, as used in this request. This can be different to the value supplied in aMaxLength; this is dependent on the implementation.
| TStreamTransfer | WriteL | ( | TStreamExchange & | aHost, |
| MStreamOutput & | anOutput, | |||
| TStreamTransfer | aTransfer | |||
| ) | [inline] | |||
Writes data into the shared stream from the specified data source.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anOutput | The data source for the write operation. |
| aTransfer | Defines the amount of data to be pulled from the output stream object. |
Returns: A stream transfer object defining the amount of data that was not consumed.
| TInt | WriteL | ( | TStreamExchange & | aHost, |
| MStreamOutput & | anOutput, | |||
| TInt | aMaxLength | |||
| ) | [inline] | |||
Writes data into the shared stream from the specified data source
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anOutput | The data source for the write operation. |
| aMaxLength | The maximum amount of data available to be written. |
Returns: The amount of data that was not consumed.
| void | WriteL | ( | TStreamExchange & | aHost, |
| MStreamOutput & | anOutput | |||
| ) | [inline] | |||
Writes data into the shared stream from the specified data source.
No explicit limit is placed on the amount of data that can be written.
| Parameter | Description |
|---|---|
| aHost | The object that manages shared streaming. |
| anOutput | The data source for the write operation. |
| TBool | operator!= | ( | const TStreamMark & | aMark | ) | const [inline] |
Tests whether this object and the specified shared stream mark object are different objects.
| Parameter | Description |
|---|---|
| aMark | A pointer to a shared stream mark object. |
Returns: True, if the two objects are different objects; false, otherwise.
| TStreamMark & | operator= | ( | TStreamPos | aPos | ) | [inline] |
Assigns the specified stream position value to this shared stream mark object.
| Parameter | Description |
|---|---|
| aPos | The stream position value to be assigned. |
Returns: A reference to this shared stream mark object.
| TBool | operator== | ( | const TStreamMark & | aMark | ) | const [inline] |
Tests whether this object and the specified referenced shared stream mark object are the same object.
| Parameter | Description |
|---|---|
| aMark | A reference to a shared stream mark object. |
Returns: True, if the two objects are the same object; false, otherwise.