Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.IO.RandomAccess Class Reference

Classes

class  CallbackResetEvent
 
interface  IMemoryHandler
 
struct  MemoryHandler
 
struct  ReadOnlyMemoryHandler
 

Static Public Member Functions

static long GetLength (SafeFileHandle handle)
 
static int Read (SafeFileHandle handle, Span< byte > buffer, long fileOffset)
 
static long Read (SafeFileHandle handle, IReadOnlyList< Memory< byte > > buffers, long fileOffset)
 
static ValueTask< int > ReadAsync (SafeFileHandle handle, Memory< byte > buffer, long fileOffset, CancellationToken cancellationToken=default(CancellationToken))
 
static ValueTask< long > ReadAsync (SafeFileHandle handle, IReadOnlyList< Memory< byte > > buffers, long fileOffset, CancellationToken cancellationToken=default(CancellationToken))
 
static void Write (SafeFileHandle handle, ReadOnlySpan< byte > buffer, long fileOffset)
 
static void Write (SafeFileHandle handle, IReadOnlyList< ReadOnlyMemory< byte > > buffers, long fileOffset)
 
static ValueTask WriteAsync (SafeFileHandle handle, ReadOnlyMemory< byte > buffer, long fileOffset, CancellationToken cancellationToken=default(CancellationToken))
 
static ValueTask WriteAsync (SafeFileHandle handle, IReadOnlyList< ReadOnlyMemory< byte > > buffers, long fileOffset, CancellationToken cancellationToken=default(CancellationToken))
 

Static Package Functions

static unsafe long GetFileLength (SafeFileHandle handle)
 
static unsafe int ReadAtOffset (SafeFileHandle handle, Span< byte > buffer, long fileOffset)
 
static unsafe void WriteAtOffset (SafeFileHandle handle, ReadOnlySpan< byte > buffer, long fileOffset)
 
static ValueTask< int > ReadAtOffsetAsync (SafeFileHandle handle, Memory< byte > buffer, long fileOffset, CancellationToken cancellationToken, OSFileStreamStrategy strategy=null)
 
static ValueTask WriteAtOffsetAsync (SafeFileHandle handle, ReadOnlyMemory< byte > buffer, long fileOffset, CancellationToken cancellationToken, OSFileStreamStrategy strategy=null)
 
static long ReadScatterAtOffset (SafeFileHandle handle, IReadOnlyList< Memory< byte > > buffers, long fileOffset)
 
static void WriteGatherAtOffset (SafeFileHandle handle, IReadOnlyList< ReadOnlyMemory< byte > > buffers, long fileOffset)
 

Properties

static Memory< byte > long CancellationToken OSFileStreamStrategy strategy
 
static ReadOnlyMemory< byte > long CancellationToken OSFileStreamStrategy strategy
 

Static Private Member Functions

static void ValidateInput (SafeFileHandle handle, long fileOffset)
 
static void ValidateBuffers< T > (IReadOnlyList< T > buffers)
 
static ValueTask< int > ScheduleSyncReadAtOffsetAsync (SafeFileHandle handle, Memory< byte > buffer, long fileOffset, CancellationToken cancellationToken, OSFileStreamStrategy strategy)
 
static ValueTask< long > ScheduleSyncReadScatterAtOffsetAsync (SafeFileHandle handle, IReadOnlyList< Memory< byte > > buffers, long fileOffset, CancellationToken cancellationToken)
 
static ValueTask ScheduleSyncWriteAtOffsetAsync (SafeFileHandle handle, ReadOnlyMemory< byte > buffer, long fileOffset, CancellationToken cancellationToken, OSFileStreamStrategy strategy)
 
static ValueTask ScheduleSyncWriteGatherAtOffsetAsync (SafeFileHandle handle, IReadOnlyList< ReadOnlyMemory< byte > > buffers, long fileOffset, CancellationToken cancellationToken)
 
static unsafe int ReadSyncUsingAsyncHandle (SafeFileHandle handle, Span< byte > buffer, long fileOffset)
 
static unsafe void WriteSyncUsingAsyncHandle (SafeFileHandle handle, ReadOnlySpan< byte > buffer, long fileOffset)
 
static unsafe (SafeFileHandle.OverlappedValueTaskSource vts, int errorCode) QueueAsyncReadFile(SafeFileHandle handle
 
static unsafe (SafeFileHandle.OverlappedValueTaskSource vts, int errorCode) QueueAsyncWriteFile(SafeFileHandle handle
 
static bool CanUseScatterGatherWindowsAPIs (SafeFileHandle handle)
 
static unsafe bool TryPrepareScatterGatherBuffers< T, THandler > (IReadOnlyList< T > buffers, THandler handler, [NotNullWhen(true)] out MemoryHandle[] handlesToDispose, out IntPtr segmentsPtr, out int totalBytes)
 
static unsafe void CleanupScatterGatherBuffers (MemoryHandle[] handlesToDispose, IntPtr segmentsPtr)
 
static ValueTask< long > ReadScatterAtOffsetAsync (SafeFileHandle handle, IReadOnlyList< Memory< byte > > buffers, long fileOffset, CancellationToken cancellationToken)
 
static async ValueTask< long > ReadScatterAtOffsetSingleSyscallAsync (SafeFileHandle handle, MemoryHandle[] handlesToDispose, IntPtr segmentsPtr, long fileOffset, int totalBytes, CancellationToken cancellationToken)
 
static unsafe ValueTask< int > ReadFileScatterAsync (SafeFileHandle handle, IntPtr segmentsPtr, int bytesToRead, long fileOffset, CancellationToken cancellationToken)
 
static async ValueTask< long > ReadScatterAtOffsetMultipleSyscallsAsync (SafeFileHandle handle, IReadOnlyList< Memory< byte > > buffers, long fileOffset, CancellationToken cancellationToken)
 
static ValueTask WriteGatherAtOffsetAsync (SafeFileHandle handle, IReadOnlyList< ReadOnlyMemory< byte > > buffers, long fileOffset, CancellationToken cancellationToken)
 
static async ValueTask WriteGatherAtOffsetSingleSyscallAsync (SafeFileHandle handle, MemoryHandle[] handlesToDispose, IntPtr segmentsPtr, long fileOffset, int totalBytes, CancellationToken cancellationToken)
 
static unsafe ValueTask WriteFileGatherAsync (SafeFileHandle handle, IntPtr segmentsPtr, int bytesToWrite, long fileOffset, CancellationToken cancellationToken)
 
static async ValueTask WriteGatherAtOffsetMultipleSyscallsAsync (SafeFileHandle handle, IReadOnlyList< ReadOnlyMemory< byte > > buffers, long fileOffset, CancellationToken cancellationToken)
 
static unsafe NativeOverlappedGetNativeOverlappedForAsyncHandle (ThreadPoolBoundHandle threadPoolBinding, long fileOffset, CallbackResetEvent resetEvent)
 
static NativeOverlapped GetNativeOverlappedForSyncHandle (SafeFileHandle handle, long fileOffset)
 
static unsafe IOCompletionCallback AllocateCallback ()
 

Private Attributes

static Memory< byte > buffer
 
static Memory< byte > long fileOffset
 
static Memory< byte > long CancellationToken cancellationToken
 
static ReadOnlyMemory< byte > buffer
 
static ReadOnlyMemory< byte > long fileOffset
 
static ReadOnlyMemory< byte > long CancellationToken cancellationToken
 

Static Private Attributes

static readonly IOCompletionCallback s_callback = AllocateCallback()
 
static readonly int s_cachedPageSize = Environment.SystemPageSize
 

Detailed Description

Definition at line 13 of file RandomAccess.cs.


The documentation for this class was generated from the following file: