Fellow Oak DICOM
Search Results for

    Show / Hide Table of Contents

    Class FileByteSource

    File byte source for reading.

    Inheritance
    System.Object
    FileByteSource
    Implements
    IByteSource
    System.IDisposable
    Inherited Members
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: FellowOakDicom.IO
    Assembly: fo-dicom.core.dll
    Syntax
    public class FileByteSource : IByteSource, IDisposable

    Constructors

    FileByteSource(IFileReference, FileReadOption, Int32)

    Initializes an instance of FileByteSource.

    Declaration
    public FileByteSource(IFileReference file, FileReadOption readOption, int largeObjectSize)
    Parameters
    Type Name Description
    IFileReference file

    File to read from.

    FileReadOption readOption

    Option how to deal with large values, if they should be loaded directly into memory or lazy loaded on demand

    System.Int32 largeObjectSize

    Custom limit of what are large values and what are not. If 0 is passend, then the default of 64k is used.

    Properties

    Endian

    Gets or sets the endianness.

    Declaration
    public Endian Endian { get; set; }
    Property Value
    Type Description
    Endian

    IsEOF

    Gets whether end-of-source is reached.

    Declaration
    public bool IsEOF { get; }
    Property Value
    Type Description
    System.Boolean

    LargeObjectSize

    Gets or sets the size of what is considered a large object.

    Declaration
    public int LargeObjectSize { get; set; }
    Property Value
    Type Description
    System.Int32

    Position

    Gets the current read position.

    Declaration
    public long Position { get; }
    Property Value
    Type Description
    System.Int64

    Methods

    Dispose()

    Declaration
    public void Dispose()

    Dispose(Boolean)

    Perform disposal.

    Declaration
    protected virtual void Dispose(bool disposing)
    Parameters
    Type Name Description
    System.Boolean disposing

    true if disposal request originates from Dispose call, false if request originates from sestructor.

    GetBuffer(UInt32)

    Gets a byte buffer of specified length from the current position and moves to subsequent position.

    Declaration
    public IByteBuffer GetBuffer(uint count)
    Parameters
    Type Name Description
    System.UInt32 count

    Number of bytes to read.

    Returns
    Type Description
    IByteBuffer

    Byte buffer containing the read bytes.

    GetBufferAsync(UInt32)

    Asynchronously gets a byte buffer of specified length from the current position and moves to subsequent position.

    Declaration
    public Task<IByteBuffer> GetBufferAsync(uint count)
    Parameters
    Type Name Description
    System.UInt32 count

    Number of bytes to read.

    Returns
    Type Description
    System.Threading.Tasks.Task<IByteBuffer>

    Awaitable byte buffer containing the read bytes.

    GetBytes(Byte[], Int32, Int32)

    Gets a specified number of bytes from the current position and moves to subsequent position. The bytes will be written to buffer

    Declaration
    public int GetBytes(byte[] buffer, int index, int count)
    Parameters
    Type Name Description
    System.Byte[] buffer

    The buffer to write the bytes to

    System.Int32 index

    The index in the buffer at which to start writing

    System.Int32 count

    Number of bytes to read.

    Returns
    Type Description
    System.Int32

    The number of bytes that were filled in the buffer

    GetBytes(Int32)

    Gets a specified number of bytes from the current position and moves to subsequent position.

    Declaration
    public byte[] GetBytes(int count)
    Parameters
    Type Name Description
    System.Int32 count

    Number of bytes to read.

    Returns
    Type Description
    System.Byte[]

    Array of bytes.

    GetDouble()

    Gets a double precision floating point value (64 bits) from the current position and moves to subsequent position.

    Declaration
    public double GetDouble()
    Returns
    Type Description
    System.Double

    Double precision floating point value.

    GetInt16()

    Gets a signed short (16 bits) from the current position and moves to subsequent position.

    Declaration
    public short GetInt16()
    Returns
    Type Description
    System.Int16

    Signed short.

    GetInt32()

    Gets a signed integer (32 bits) from the current position and moves to subsequent position.

    Declaration
    public int GetInt32()
    Returns
    Type Description
    System.Int32

    Signed integer.

    GetInt64()

    Gets a signed long (64 bits) from the current position and moves to subsequent position.

    Declaration
    public long GetInt64()
    Returns
    Type Description
    System.Int64

    Signed long.

    GetSingle()

    Gets a single precision floating point value (32 bits) from the current position and moves to subsequent position.

    Declaration
    public float GetSingle()
    Returns
    Type Description
    System.Single

    Single precision floating point value.

    GetStream()

    Declaration
    public Stream GetStream()
    Returns
    Type Description
    System.IO.Stream

    GetUInt16()

    Gets an unsigned short (16 bits) from the current position and moves to subsequent position.

    Declaration
    public ushort GetUInt16()
    Returns
    Type Description
    System.UInt16

    Unsigned short.

    GetUInt32()

    Gets an unsigned integer (32 bits) from the current position and moves to subsequent position.

    Declaration
    public uint GetUInt32()
    Returns
    Type Description
    System.UInt32

    Unsigned integer.

    GetUInt64()

    Gets an unsigned long (64 bits) from the current position and moves to subsequent position.

    Declaration
    public ulong GetUInt64()
    Returns
    Type Description
    System.UInt64

    Unsigned long.

    GetUInt8()

    Gets one byte from the current position and moves to subsequent position.

    Declaration
    public byte GetUInt8()
    Returns
    Type Description
    System.Byte

    Single byte.

    GoTo(Int64)

    Declaration
    public void GoTo(long position)
    Parameters
    Type Name Description
    System.Int64 position

    Require(UInt32)

    Verifies that there is a sufficient number of bytes to read.

    Declaration
    public bool Require(uint count)
    Parameters
    Type Name Description
    System.UInt32 count

    Required number of bytes.

    Returns
    Type Description
    System.Boolean

    true if source contains sufficient number of remaining bytes, false otherwise.

    Require(UInt32, ByteSourceCallback, Object)

    Verifies that there is a sufficient number of bytes to read.

    Declaration
    public bool Require(uint count, ByteSourceCallback callback, object state)
    Parameters
    Type Name Description
    System.UInt32 count

    Required number of bytes.

    ByteSourceCallback callback

    Byte source callback.

    System.Object state

    Callback state.

    Returns
    Type Description
    System.Boolean

    true if source contains sufficient number of remaining bytes, false otherwise.

    Skip(UInt32)

    Skip position count number of bytes.

    Declaration
    public void Skip(uint count)
    Parameters
    Type Name Description
    System.UInt32 count

    Number of bytes to skip.

    Implements

    IByteSource
    System.IDisposable

    Extension Methods

    LinqExtensions.IsOneOf<T>(T, T[])
    In This Article
    Back to top Copyright (c) 2012-2025 fo-dicom contributors