Struct NetworkDriver
The NetworkDriver is an implementation of Virtual Connections over any transport.
Basic usage:
var driver = new NetworkDriver.Create();
Syntax
public struct NetworkDriver : IDisposable
Constructors
NetworkDriver(INetworkInterface, INetworkParameter[])
Constructor for NetworkDriver.
Declaration
public NetworkDriver(INetworkInterface netIf, params INetworkParameter[] param)
Parameters
Exceptions
Type |
Condition |
ArgumentException |
Thrown if the value for NetworkDataStreamParameter.size is smaller then zero.
|
Properties
IsCreated
Declaration
public bool IsCreated { get; }
Property Value
LastUpdateTime
Declaration
public long LastUpdateTime { get; }
Property Value
Listening
Declaration
public bool Listening { get; }
Property Value
ReceiveErrorCode
Declaration
public int ReceiveErrorCode { get; }
Property Value
Methods
AbortSend(DataStreamWriter)
Declaration
public void AbortSend(DataStreamWriter writer)
Parameters
Accept()
Checks to see if there are any new connections to Accept.
Declaration
public NetworkConnection Accept()
Returns
Type |
Description |
NetworkConnection |
If accept fails it returnes a default NetworkConnection.
|
BeginSend(NetworkConnection, out DataStreamWriter, Int32)
Declaration
public int BeginSend(NetworkConnection id, out DataStreamWriter writer, int requiredPayloadSize = 0)
Parameters
Returns
BeginSend(NetworkPipeline, NetworkConnection, out DataStreamWriter, Int32)
Declaration
public int BeginSend(NetworkPipeline pipe, NetworkConnection id, out DataStreamWriter writer, int requiredPayloadSize = 0)
Parameters
Returns
Bind(NetworkEndPoint)
Bind the driver to a endpoint.
Declaration
public int Bind(NetworkEndPoint endpoint)
Parameters
Returns
Type |
Description |
Int32 |
Returns 0 on success. And a negative value if a error occured.
|
Exceptions
Connect(NetworkEndPoint)
Connects the driver to a endpoint
Declaration
public NetworkConnection Connect(NetworkEndPoint endpoint)
Parameters
Returns
Type |
Description |
NetworkConnection |
If connect fails it returns a default NetworkConnection.
|
Exceptions
Create(INetworkParameter[])
Helper function for creating a NetworkDriver.
Declaration
public static NetworkDriver Create(params INetworkParameter[] param)
Parameters
Returns
Exceptions
CreatePipeline(Type[])
Declaration
public NetworkPipeline CreatePipeline(params Type[] stages)
Parameters
Type |
Name |
Description |
Type[] |
stages |
An array of stages the pipeline should contain.
|
Returns
Exceptions
Disconnect(NetworkConnection)
Disconnects a NetworkConnection
Declaration
public int Disconnect(NetworkConnection id)
Parameters
Type |
Name |
Description |
NetworkConnection |
id |
The NetworkConnection we want to Disconnect.
|
Returns
Type |
Description |
Int32 |
Return 0 on success.
|
Dispose()
Declaration
EndSend(DataStreamWriter)
Declaration
public int EndSend(DataStreamWriter writer)
Parameters
Returns
GetConnectionState(NetworkConnection)
Declaration
public NetworkConnection.State GetConnectionState(NetworkConnection con)
Parameters
Returns
GetEventQueueSizeForConnection(NetworkConnection)
Returns the size of the eventqueue for a specific connection
Declaration
public int GetEventQueueSizeForConnection(NetworkConnection connectionId)
Parameters
Returns
Type |
Description |
Int32 |
If the connection is valid it returns the size of the event queue otherwise it returns 0.
|
GetPipelineBuffers(NetworkPipeline, NetworkPipelineStageId, NetworkConnection, out NativeArray<Byte>, out NativeArray<Byte>, out NativeArray<Byte>)
Returns the PipelineBuffers for a specific pipeline and stage.
Declaration
public void GetPipelineBuffers(NetworkPipeline pipeline, NetworkPipelineStageId stageId, NetworkConnection connection, out NativeArray<byte> readProcessingBuffer, out NativeArray<byte> writeProcessingBuffer, out NativeArray<byte> sharedBuffer)
Parameters
Exceptions
Listen()
Set the driver to Listen for incomming connections
Declaration
Returns
Type |
Description |
Int32 |
Returns 0 on success.
|
Exceptions
LocalEndPoint()
Declaration
public NetworkEndPoint LocalEndPoint()
Returns
Declaration
public int MaxHeaderSize(NetworkPipeline pipe)
Parameters
Returns
PopEvent(out NetworkConnection, out DataStreamReader)
Declaration
public NetworkEvent.Type PopEvent(out NetworkConnection con, out DataStreamReader reader)
Parameters
Returns
PopEventForConnection(NetworkConnection, out DataStreamReader)
Declaration
public NetworkEvent.Type PopEventForConnection(NetworkConnection connectionId, out DataStreamReader reader)
Parameters
Returns
RemoteEndPoint(NetworkConnection)
Declaration
public NetworkEndPoint RemoteEndPoint(NetworkConnection id)
Parameters
Returns
ScheduleFlushSend(JobHandle)
Declaration
public JobHandle ScheduleFlushSend(JobHandle dep)
Parameters
Returns
ScheduleUpdate(JobHandle)
Declaration
public JobHandle ScheduleUpdate(JobHandle dep = default(JobHandle))
Parameters
Returns
ToConcurrent()
Create a Concurrent Copy of the NetworkDriver.
Declaration
public NetworkDriver.Concurrent ToConcurrent()
Returns