csharp
public interface ITransportEventsWhat a transport reports, during Poll and nowhere else.
No guide page documents this yet — the page shows what the code says about itself.
Remarks
An interface rather than events or delegates, and a ReadOnlySpan`1 rather than an array: the receiving path allocates nothing per packet, and the payload's lifetime is exactly the call, which is a rule a reader can check rather than a convention a reader has to know. A handler that needs the bytes afterwards copies them, and the signature is what tells it so.
Every callback names the TransportRole it concerns, because a listen server polls one transport and gets both halves' events out of it.
Methods (3)
void OnConnected(TransportRole role, ConnectionId connection)A connection was established.
void OnDisconnected(TransportRole role, ConnectionId connection, DisconnectReason reason)A connection ended, or an attempt to make one failed.
void OnData(TransportRole role, ConnectionId connection, Channel channel, ReadOnlySpan<byte> payload)A payload arrived.
Used by (15)
- CompositeTransportVixen.Net.Transport.Composite
- CountingEventsVixen.Net.Fuzz
- EventRecorderVixen.Net.Tests
- ITransportVixen.Net
- InjectingTransportVixen.Net.Fuzz
- LocalTransportVixen.Net.Transport.Local
- NetworkSessionVixen.Net
- NetworkSimulationVixen.Net
- ReentrantPollerVixen.Net.Transport.Local.Tests
- RouterVixen.Net.Transport.Composite
- SessionTestsVixen.Net.Tests
- UdpTransportVixen.Net.Transport.Udp
- WebSocketTransportVixen.Net.Transport.WebSocket
- FakeBuildVixen.Editor.Debugger.Tests
- RemoteInspectorClientVixen.Editor.Debugger