C# Class Universe.ClientStack.LLUDPServer

The LLUDP server for a region. This handles incoming and outgoing packets for all UDP connections to the region
Inheritance: UDPBase, IClientNetworkServer
Afficher le fichier Open project: Virtual-Universe/Virtual-Universe Class Usage Examples

Méthodes publiques

Свойство Type Description
AvatarUpdatesPerCallBack int
ClientTimeOut int
PacketLog PacketLogger
PrimUpdatesPerCallback int
TextureSendLimit int
TickCountResolution float
m_circuitManager Universe.Framework.SceneInfo.AgentCircuitManager
m_scene IScene

Protected Properties

Свойство Type Description
m_shouldCollectStats bool
m_throttle TokenBucket
m_throttleRates ThrottleRates

Méthodes publiques

Méthode Description
AddClient ( uint circuitCode, UUID agentID, UUID sessionID, IPEndPoint remoteEndPoint, AgentCircuitData sessionInfo ) : bool
AddScene ( IScene scene ) : void
BroadcastPacket ( Packet packet, ThrottleOutPacketType category, bool sendToPausedAgents, bool allowSplitting, UnackedPacketMethod resendMethod, UnackedPacketMethod finishedMethod ) : void
ClientOutgoingPacketHandler ( IClientAPI client ) : void
CloseThreadPool ( ) : void
CompletePing ( LLUDPClient udpClient, byte pingID ) : void
Copy ( ) : IClientNetworkServer
FireAndForget ( Action callback, object obj ) : void
Flush ( LLUDPClient udpClient ) : void
ForEachInternalClient ( Action action ) : void
HandleUseCircuitCode ( object o ) : void
InitThreadPool ( int maxThreads ) : void
Initialize ( uint port, IConfigSource configSource, AgentCircuitManager circuitManager ) : void
LogPacketHeader ( bool incoming, uint circuit, byte flags, PacketType packetType, ushort size ) : void
ProcessInPacket ( object state ) : void
RemoveClient ( IClientAPI client ) : void
RemoveClient ( LLUDPClient udpClient ) : void
ResendUnacked ( LLUDPClient udpClient ) : void
SendAckImmediate ( IPEndPoint remoteEndpoint, uint sequenceNumber ) : void
SendAcks ( LLUDPClient udpClient ) : void
SendPacket ( LLUDPClient udpClient, Packet packet, ThrottleOutPacketType category, bool allowSplitting, UnackedPacketMethod resendMethod, UnackedPacketMethod finishedMethod ) : void
SendPacketData ( LLUDPClient udpClient, byte data, Packet packet, ThrottleOutPacketType category, UnackedPacketMethod resendMethod, UnackedPacketMethod finishedMethod ) : void
SendPing ( LLUDPClient udpClient ) : void
Start ( ) : void
Stop ( ) : void
UpdatePort ( uint port ) : void

Méthodes protégées

Méthode Description
LogoutHandler ( IClientAPI client ) : void
PacketReceived ( UDPPacketBuffer buffer ) : void

Private Methods

Méthode Description
IncomingPacketHandlerLoop ( ) : bool
IsClientAuthorized ( UseCircuitCodePacket useCircuitCode, IPEndPoint remoteEndPoint, AgentCircuitData &sessionInfo ) : bool
OutgoingPacketHandlerLoop ( ) : bool
SendPacketFinal ( OutgoingPacket outgoingPacket ) : void

Actually send a packet to a client.

SmartThreadPoolCallback ( object o ) : object

Method Details

AddClient() public méthode

public AddClient ( uint circuitCode, UUID agentID, UUID sessionID, IPEndPoint remoteEndPoint, AgentCircuitData sessionInfo ) : bool
circuitCode uint
agentID UUID
sessionID UUID
remoteEndPoint System.Net.IPEndPoint
sessionInfo Universe.Framework.PresenceInfo.AgentCircuitData
Résultat bool

AddScene() public méthode

public AddScene ( IScene scene ) : void
scene IScene
Résultat void

BroadcastPacket() public méthode

public BroadcastPacket ( Packet packet, ThrottleOutPacketType category, bool sendToPausedAgents, bool allowSplitting, UnackedPacketMethod resendMethod, UnackedPacketMethod finishedMethod ) : void
packet OpenMetaverse.Packets.Packet
category ThrottleOutPacketType
sendToPausedAgents bool
allowSplitting bool
resendMethod UnackedPacketMethod
finishedMethod UnackedPacketMethod
Résultat void

ClientOutgoingPacketHandler() public méthode

public ClientOutgoingPacketHandler ( IClientAPI client ) : void
client IClientAPI
Résultat void

CloseThreadPool() public méthode

public CloseThreadPool ( ) : void
Résultat void

CompletePing() public méthode

public CompletePing ( LLUDPClient udpClient, byte pingID ) : void
udpClient LLUDPClient
pingID byte
Résultat void

Copy() public méthode

public Copy ( ) : IClientNetworkServer
Résultat IClientNetworkServer

FireAndForget() public méthode

public FireAndForget ( Action callback, object obj ) : void
callback Action
obj object
Résultat void

Flush() public méthode

public Flush ( LLUDPClient udpClient ) : void
udpClient LLUDPClient
Résultat void

ForEachInternalClient() public méthode

public ForEachInternalClient ( Action action ) : void
action Action
Résultat void

HandleUseCircuitCode() public méthode

public HandleUseCircuitCode ( object o ) : void
o object
Résultat void

InitThreadPool() public méthode

public InitThreadPool ( int maxThreads ) : void
maxThreads int
Résultat void

Initialize() public méthode

public Initialize ( uint port, IConfigSource configSource, AgentCircuitManager circuitManager ) : void
port uint
configSource IConfigSource
circuitManager Universe.Framework.SceneInfo.AgentCircuitManager
Résultat void

LogPacketHeader() public static méthode

public static LogPacketHeader ( bool incoming, uint circuit, byte flags, PacketType packetType, ushort size ) : void
incoming bool
circuit uint
flags byte
packetType PacketType
size ushort
Résultat void

LogoutHandler() protected méthode

protected LogoutHandler ( IClientAPI client ) : void
client IClientAPI
Résultat void

PacketReceived() protected méthode

protected PacketReceived ( UDPPacketBuffer buffer ) : void
buffer UDPPacketBuffer
Résultat void

ProcessInPacket() public méthode

public ProcessInPacket ( object state ) : void
state object
Résultat void

RemoveClient() public méthode

public RemoveClient ( IClientAPI client ) : void
client IClientAPI
Résultat void

RemoveClient() public méthode

public RemoveClient ( LLUDPClient udpClient ) : void
udpClient LLUDPClient
Résultat void

ResendUnacked() public méthode

public ResendUnacked ( LLUDPClient udpClient ) : void
udpClient LLUDPClient
Résultat void

SendAckImmediate() public méthode

public SendAckImmediate ( IPEndPoint remoteEndpoint, uint sequenceNumber ) : void
remoteEndpoint System.Net.IPEndPoint
sequenceNumber uint
Résultat void

SendAcks() public méthode

public SendAcks ( LLUDPClient udpClient ) : void
udpClient LLUDPClient
Résultat void

SendPacket() public méthode

public SendPacket ( LLUDPClient udpClient, Packet packet, ThrottleOutPacketType category, bool allowSplitting, UnackedPacketMethod resendMethod, UnackedPacketMethod finishedMethod ) : void
udpClient LLUDPClient
packet OpenMetaverse.Packets.Packet
category ThrottleOutPacketType
allowSplitting bool
resendMethod UnackedPacketMethod
finishedMethod UnackedPacketMethod
Résultat void

SendPacketData() public méthode

public SendPacketData ( LLUDPClient udpClient, byte data, Packet packet, ThrottleOutPacketType category, UnackedPacketMethod resendMethod, UnackedPacketMethod finishedMethod ) : void
udpClient LLUDPClient
data byte
packet OpenMetaverse.Packets.Packet
category ThrottleOutPacketType
resendMethod UnackedPacketMethod
finishedMethod UnackedPacketMethod
Résultat void

SendPing() public méthode

public SendPing ( LLUDPClient udpClient ) : void
udpClient LLUDPClient
Résultat void

Start() public méthode

public Start ( ) : void
Résultat void

Stop() public méthode

public Stop ( ) : void
Résultat void

UpdatePort() public méthode

public UpdatePort ( uint port ) : void
port uint
Résultat void

Property Details

AvatarUpdatesPerCallBack public_oe property

Number of avatar update packets to put on the queue each time the OnQueueEmpty event is triggered
public int AvatarUpdatesPerCallBack
Résultat int

ClientTimeOut public_oe property

public int ClientTimeOut
Résultat int

PacketLog public_oe static_oe property

public static PacketLogger PacketLog
Résultat PacketLogger

PrimUpdatesPerCallback public_oe property

Number of prim updates to put on the queue each time the OnQueueEmpty event is triggered for updates
public int PrimUpdatesPerCallback
Résultat int

TextureSendLimit public_oe property

Number of texture packets to put on the queue each time the OnQueueEmpty event is triggered for textures
public int TextureSendLimit
Résultat int

TickCountResolution public_oe property

The measured resolution of Environment.TickCount
public float TickCountResolution
Résultat float

m_circuitManager public_oe property

Manages authentication for agent circuits
public AgentCircuitManager,Universe.Framework.SceneInfo m_circuitManager
Résultat Universe.Framework.SceneInfo.AgentCircuitManager

m_scene public_oe property

Reference to the scene this UDP server is attached to
public IScene m_scene
Résultat IScene

m_shouldCollectStats protected_oe static_oe property

protected static bool m_shouldCollectStats
Résultat bool

m_throttle protected_oe property

Bandwidth throttle for this UDP server
protected TokenBucket m_throttle
Résultat TokenBucket

m_throttleRates protected_oe property

Bandwidth throttle rates for this UDP server
protected ThrottleRates,Universe.ClientStack m_throttleRates
Résultat ThrottleRates