Struct UDPNetworkInterface
Default interface used by NetworkDriver, which will send/receive all traffic over UDP. Not available on WebGL.
Inherited Members
Namespace: Unity.Networking.Transport
Syntax
[BurstCompile]
public struct UDPNetworkInterface : INetworkInterface, IDisposable
Properties
LocalEndpoint
Gets the local endpoint that the interface will use to communicate on the network.
This call only makes sense after Bind(NetworkEndpoint) has already been called, and
represents the endpoint the interface is actually bound to. This property serves the
same purpose as getsockname
in the BSD socket world.
Declaration
public readonly NetworkEndpoint LocalEndpoint { get; }
Property Value
Type | Description |
---|---|
NetworkEndpoint | Local endpoint. |
Implements
Methods
Bind(NetworkEndpoint)
Binds the network interface to an endpoint. This is meant to act the same way as the
bind
call in the BSD socket world. One way to see it is that it "attaches" the
network interface to a specific local address on the machine.
Declaration
public int Bind(NetworkEndpoint endpoint)
Parameters
Type | Name | Description |
---|---|---|
NetworkEndpoint | endpoint | Endpoint to bind to. |
Returns
Type | Description |
---|---|
Int32 | 0 on success, a negative number on error. |
Implements
Dispose()
Declaration
public void Dispose()
Implements
Initialize(ref NetworkSettings, ref Int32)
Initialize the network interface with the given settings.
Declaration
public int Initialize(ref NetworkSettings settings, ref int packetPadding)
Parameters
Type | Name | Description |
---|---|---|
NetworkSettings | settings | Configuration settings provided to the driver. |
Int32 | packetPadding | Return value parameter for how much padding the interface adds to packets. Note that this parameter is only concerned about padding that would be added directly in the packets stored in the send and receive queues, not to padding that would be added by lower levels of the network stack (e.g. IP headers). |
Returns
Type | Description |
---|---|
Int32 | 0 on success, a negative number on error. |
Implements
Listen()
Start listening for incoming connections. Unlike Bind(NetworkEndpoint) which will always be called on clients and servers, this is only meant to be called on servers.
Declaration
public int Listen()
Returns
Type | Description |
---|---|
Int32 | 0 on success, a negative number on error. |
Implements
ScheduleReceive(ref ReceiveJobArguments, JobHandle)
Schedule a receive job. This job's responsibility is to read data from the network and enqueue it in ReceiveQueue.
Declaration
public JobHandle ScheduleReceive(ref ReceiveJobArguments arguments, JobHandle dep)
Parameters
Type | Name | Description |
---|---|---|
ReceiveJobArguments | arguments | Arguments to be passed to the receive job. |
JobHandle | dep | Handle to any dependency the receive job has (use default if none). |
Returns
Type | Description |
---|---|
JobHandle | Handle to the newly-schedule job. |
Implements
ScheduleSend(ref SendJobArguments, JobHandle)
Schedule a send job. This job's responsibility is to flush any data stored in SendQueue to the network.
Declaration
public JobHandle ScheduleSend(ref SendJobArguments arguments, JobHandle dep)
Parameters
Type | Name | Description |
---|---|---|
SendJobArguments | arguments | Arguments to be passed to the send job. |
JobHandle | dep | Handle to any dependency the send job has (use default if none). |
Returns
Type | Description |
---|---|
JobHandle | Handle to the newly-schedule job. |