Share via


RandomAccessStreamOverStream Class

Definition

Provides a Windows Runtime random access stream for an IStream base implementation.

public ref class RandomAccessStreamOverStream sealed : IClosable, IRandomAccessStream
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class RandomAccessStreamOverStream final : IClosable, IRandomAccessStream
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class RandomAccessStreamOverStream : System.IDisposable, IRandomAccessStream
Public NotInheritable Class RandomAccessStreamOverStream
Implements IDisposable, IRandomAccessStream
Inheritance
Object Platform::Object IInspectable RandomAccessStreamOverStream
Attributes
Implements

Windows requirements

Device family
Windows 10 (introduced in 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (introduced in v1.0)

Remarks

The InputStreamOverStream, OutputStreamOverStream, and RandomAccessStreamOverStream classes are interop helpers to convert between the Windows Runtime stream types, which are natively asynchronous, and the Component Object Model (COM) IStream types, which are natively synchronous.

These helper classes make it easier for to reuse legacy code when you transition to the Windows Runtime stream types.

Properties

CanRead

Gets a value that indicates whether the stream can be read from.

CanWrite

Gets a value that indicates whether the stream can be written to.

Position

Gets the byte offset of the stream.

Size

Gets or sets the size of the random access stream.

Methods

CloneStream()

Creates a new instance of a IRandomAccessStream over the same resource as the current stream.

Close()

Closes the current stream and releases system resources.

Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

FlushAsync()

Flushes data asynchronously in a sequential stream.

GetInputStreamAt(UInt64)

Returns an input stream at a specified location in a stream.

GetOutputStreamAt(UInt64)

Returns an output stream at a specified location in a stream.

ReadAsync(IBuffer, UInt32, InputStreamOptions)

Returns an asynchronous byte reader object.

Seek(UInt64)

Sets the position of the stream to the specified value.

WriteAsync(IBuffer)

Writes data asynchronously in a sequential stream.

Applies to

See also