Table of Contents

Class FileByteBuffer

Namespace
FellowOakDicom.IO.Buffer
Assembly
fo-dicom.core.dll
public sealed class FileByteBuffer : IByteBuffer
Inheritance
FileByteBuffer
Implements
Inherited Members
Extension Methods

Constructors

FileByteBuffer(IFileReference, long, long)

public FileByteBuffer(IFileReference file, long position, long length)

Parameters

file IFileReference
position long
length long

FileByteBuffer(IFileReference, long, long, IMemoryProvider)

public FileByteBuffer(IFileReference file, long position, long length, IMemoryProvider memoryProvider)

Parameters

file IFileReference
position long
length long
memoryProvider IMemoryProvider

Properties

Data

Gets the data.

public byte[] Data { get; }

Property Value

byte[]

File

public IFileReference File { get; }

Property Value

IFileReference

IsMemory

Gets whether data is buffered in memory or not.

public bool IsMemory { get; }

Property Value

bool

Position

public long Position { get; }

Property Value

long

Size

Gets the size of the buffered data.

public long Size { get; }

Property Value

long

Methods

CopyToStream(Stream)

Copies the contents of this buffer to the provided stream

public void CopyToStream(Stream stream)

Parameters

stream Stream

A stream that will receive the contents of this buffer

CopyToStreamAsync(Stream, CancellationToken)

Copies the contents of this buffer to the provided stream

public Task CopyToStreamAsync(Stream stream, CancellationToken cancellationToken)

Parameters

stream Stream

A stream that will receive the contents of this buffer

cancellationToken CancellationToken

A cancellation token that halts the execution of the copy operation

Returns

Task

GetByteRange(long, int, byte[])

Gets a subset of the data and fills it in the provided output buffer

public void GetByteRange(long offset, int count, byte[] output)

Parameters

offset long

Offset from beginning of data array.

count int

Number of bytes to return.

output byte[]

The array where the data will be written to