Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Net.Quic.Implementations.MsQuic.MsQuicStream Class Referencesealed

Classes

class  State
 

Public Member Functions

override ValueTask DisposeAsync ()
 
override void Dispose ()
 

Package Functions

string TraceId ()
 
 MsQuicStream (MsQuicConnection.State connectionState, SafeMsQuicStreamHandle streamHandle, QUIC_STREAM_OPEN_FLAGS flags)
 
 MsQuicStream (MsQuicConnection.State connectionState, QUIC_STREAM_OPEN_FLAGS flags)
 
override ValueTask WriteAsync (ReadOnlyMemory< byte > buffer, CancellationToken cancellationToken=default(CancellationToken))
 
override ValueTask WriteAsync (ReadOnlySequence< byte > buffers, CancellationToken cancellationToken=default(CancellationToken))
 
override async ValueTask WriteAsync (ReadOnlySequence< byte > buffers, bool endStream, CancellationToken cancellationToken=default(CancellationToken))
 
override ValueTask WriteAsync (ReadOnlyMemory< ReadOnlyMemory< byte > > buffers, CancellationToken cancellationToken=default(CancellationToken))
 
override async ValueTask WriteAsync (ReadOnlyMemory< ReadOnlyMemory< byte > > buffers, bool endStream, CancellationToken cancellationToken=default(CancellationToken))
 
override async ValueTask WriteAsync (ReadOnlyMemory< byte > buffer, bool endStream, CancellationToken cancellationToken=default(CancellationToken))
 
override ValueTask< int > ReadAsync (Memory< byte > destination, CancellationToken cancellationToken=default(CancellationToken))
 
override void AbortRead (long errorCode)
 
override void AbortWrite (long errorCode)
 
override async ValueTask ShutdownCompleted (CancellationToken cancellationToken=default(CancellationToken))
 
override ValueTask WaitForWriteCompletionAsync (CancellationToken cancellationToken=default(CancellationToken))
 
override void Shutdown ()
 
override int Read (Span< byte > buffer)
 
override void Write (ReadOnlySpan< byte > buffer)
 
override void Flush ()
 
override Task FlushAsync (CancellationToken cancellationToken=default(CancellationToken))
 

Static Package Attributes

static readonly MsQuicNativeMethods.StreamCallbackDelegate s_streamDelegate = NativeCallbackHandler
 

Properties

override bool CanRead [get]
 
override bool CanWrite [get]
 
override bool ReadsCompleted [get]
 
override bool CanTimeout [get]
 
override int ReadTimeout [get, set]
 
override int WriteTimeout [get, set]
 
override long StreamId [get]
 

Private Types

enum  ReadState {
  None , IndividualReadComplete , PendingRead , ReadsCompleted ,
  Aborted , ConnectionClosed , Closed
}
 
enum  ShutdownWriteState { None , Canceled , Finished , ConnectionClosed }
 
enum  ShutdownState {
  None , Canceled , Pending , Finished ,
  ConnectionClosed
}
 
enum  SendState {
  None , Pending , Finished , Aborted ,
  ConnectionClosed , Closed
}
 

Private Member Functions

CancellationTokenRegistration HandleWriteStartState (bool emptyBuffer, CancellationToken cancellationToken)
 
void HandleWriteCompletedState ()
 
void HandleWriteFailedState ()
 
void StartShutdown (QUIC_STREAM_SHUTDOWN_FLAGS flags, long errorCode)
 
 ~MsQuicStream ()
 
void Dispose (bool disposing)
 
void EnableReceive ()
 
unsafe ValueTask SendReadOnlyMemoryAsync (ReadOnlyMemory< byte > buffer, QUIC_SEND_FLAGS flags)
 
unsafe ValueTask SendReadOnlySequenceAsync (ReadOnlySequence< byte > buffers, QUIC_SEND_FLAGS flags)
 
unsafe ValueTask SendReadOnlyMemoryListAsync (ReadOnlyMemory< ReadOnlyMemory< byte > > buffers, QUIC_SEND_FLAGS flags)
 
void ReceiveComplete (int bufferLength)
 
long GetStreamId ()
 
void ThrowIfDisposed ()
 

Static Private Member Functions

static unsafe int CopyMsQuicBuffersToUserBuffer (ReadOnlySpan< MsQuicNativeMethods.QuicBuffer > sourceBuffers, Span< byte > destinationBuffer)
 
static uint NativeCallbackHandler (IntPtr stream, IntPtr context, ref MsQuicNativeMethods.StreamEvent streamEvent)
 
static uint HandleEvent (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static unsafe uint HandleEventRecv (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static uint HandleEventPeerRecvAborted (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static uint HandleEventStartComplete (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static uint HandleEventSendShutdownComplete (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static uint HandleEventShutdownComplete (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static uint HandleEventPeerSendAborted (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static uint HandleEventPeerSendShutdown (State state)
 
static uint HandleEventSendComplete (State state, ref MsQuicNativeMethods.StreamEvent evt)
 
static void CleanupSendState (State state)
 
static uint HandleEventConnectionClose (State state)
 
static Exception GetConnectionAbortedException (State state)
 
static bool CleanupReadStateAndCheckPending (State state, ReadState finalState)
 

Private Attributes

readonly State _state = new State()
 
readonly bool _canRead
 
readonly bool _canWrite
 
long _streamId = -1L
 
int _disposed
 
int _readTimeout = -1
 
int _writeTimeout = -1
 

Detailed Description

Definition at line 12 of file MsQuicStream.cs.


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