Vixen
02b45cc4
csharp
public readonly record struct TransportCapabilities

What a transport will carry, stated by the transport rather than assumed by its callers.

No guide page documents this yet — the page shows what the code says about itself.

Remarks

Three facts, each of which changes what the layer above does. The size cap decides where fragmentation happens; decides whether the reliability layer has anything to do; is what lets a listen server skip serialising a payload it is about to hand to itself.

Fields and properties (3)

  • public int MaxPayloadBytes

    The largest single payload. Not a suggestion — a longer one throws rather than being split, because a transport that silently fragments is a transport whose bandwidth numbers lie.

  • public bool IsInProcess

    Whether both ends are in this process. True for the local transport, false for anything with a socket in it.

  • public bool IsLossy

    Whether an unreliable payload may be lost, duplicated or reordered on the way. False only for a transport that physically cannot lose one — which is the local transport, until NetworkSimulation is wrapped around it.

Methods (1)

  • public TransportCapabilities(int MaxPayloadBytes, bool IsInProcess, bool IsLossy)

    What a transport will carry, stated by the transport rather than assumed by its callers.

Used by (12)

  • CompositeTransportVixen.Net.Transport.Composite
  • CompositeTransportTestsVixen.Net.Transport.Composite.Tests
  • ITransportVixen.Net
  • InjectingTransportVixen.Net.Fuzz
  • LocalTransportVixen.Net.Transport.Local
  • NetworkSessionVixen.Net
  • NetworkSimulationVixen.Net
  • NetworkSimulationTestsVixen.Net.Tests
  • SessionRpcTransportVixen.Net
  • TransportConformanceVixen.Net.Tests
  • UdpTransportVixen.Net.Transport.Udp
  • WebSocketTransportVixen.Net.Transport.WebSocket