G-Earth/Extensions/XabboScripter_1.1.4/extension/Xabbo.Common.xml
Administrator 368b92d87a G-Earth 1.5.4 beta 22 - Initial release
Komplettes G-Earth Paket inkl. JRE, Extensions und Tools.

Extensions:
- G-BuildTools, G-Click Ultimate, G-Loader, G-Manipulate
- G-Presets, G-Translator, G-Trigger, G-itemViewer
- Market Utils, Packet Info Explorer, Plants
- RandomRoomVisitor, RoomLogger, Sanbovir Photo Inspector
- SpyFriends, WallAligner, XabboScripter, xabbo
2026-03-16 09:45:04 +01:00

2590 lines
127 KiB
XML

<?xml version="1.0"?>
<doc>
<assembly>
<name>Xabbo.Common</name>
</assembly>
<members>
<member name="T:Xabbo.ClientType">
<summary>
Represents a type of game client.
</summary>
</member>
<member name="F:Xabbo.ClientType.Unknown">
<summary>
Represents an unknown client type.
</summary>
</member>
<member name="F:Xabbo.ClientType.Flash">
<summary>
Represents the Flash client.
</summary>
</member>
<member name="F:Xabbo.ClientType.Unity">
<summary>
Represents the Unity client.
</summary>
</member>
<member name="F:Xabbo.ClientType.All">
<summary>
Represents all client types.
</summary>
</member>
<member name="T:Xabbo.Connection.ConnectionBase">
<summary>
A base class for <see cref="T:Xabbo.Connection.IConnection"/> implementations.
This class provides the generic Send/Receive extension methods from within subclasses
without requiring the <see langword="this"/> keyword to access them.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send(Xabbo.Messages.Header)">
<summary>
Sends a packet with the specified header to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync(Xabbo.Messages.Header)">
<summary>
Sends a packet with the specified header to either the client or server, depending on the header destination.
</summary>
</member>
<member name="P:Xabbo.Connection.ConnectionBase.IsConnected">
<inheritdoc/>
</member>
<member name="P:Xabbo.Connection.ConnectionBase.DisconnectToken">
<inheritdoc/>
</member>
<member name="P:Xabbo.Connection.ConnectionBase.Client">
<inheritdoc/>
</member>
<member name="P:Xabbo.Connection.ConnectionBase.ClientIdentifier">
<inheritdoc/>
</member>
<member name="P:Xabbo.Connection.ConnectionBase.ClientVersion">
<inheritdoc />
</member>
<member name="P:Xabbo.Connection.ConnectionBase.Hotel">
<inheritdoc />
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send(Xabbo.Messages.IReadOnlyPacket)">
<inheritdoc/>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync(Xabbo.Messages.IReadOnlyPacket)">
<inheritdoc/>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.ReceiveAsync(Xabbo.Messages.HeaderSet,System.Int32,System.Boolean,System.Threading.CancellationToken)">
<inheritdoc/>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.ReceiveAsync(Xabbo.Messages.HeaderSet,System.Func{Xabbo.Messages.IReadOnlyPacket,System.Boolean},System.Int32,System.Boolean,System.Threading.CancellationToken)">
<inheritdoc/>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``1(Xabbo.Messages.Header,``0)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``1(Xabbo.Messages.Header,``0)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``2(Xabbo.Messages.Header,``0,``1)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``2(Xabbo.Messages.Header,``0,``1)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``3(Xabbo.Messages.Header,``0,``1,``2)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``3(Xabbo.Messages.Header,``0,``1,``2)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``4(Xabbo.Messages.Header,``0,``1,``2,``3)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``4(Xabbo.Messages.Header,``0,``1,``2,``3)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``5(Xabbo.Messages.Header,``0,``1,``2,``3,``4)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``5(Xabbo.Messages.Header,``0,``1,``2,``3,``4)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``6(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``6(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``7(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``7(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``8(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``8(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``9(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``9(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``10(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``10(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``11(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``11(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``12(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``12(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``13(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``13(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``14(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``14(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``15(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``15(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``16(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``16(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``17(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``17(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``18(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``18(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``19(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``19(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.Send``20(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18,``19)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.Connection.ConnectionBase.SendAsync``20(Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18,``19)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="T:Xabbo.Connection.IConnection">
<summary>
Represents a connection to the game server.
</summary>
</member>
<member name="P:Xabbo.Connection.IConnection.IsConnected">
<summary>
Gets if the connection is established.
</summary>
</member>
<member name="P:Xabbo.Connection.IConnection.DisconnectToken">
<summary>
Gets a cancellation token that is triggered when the connection is lost.
</summary>
</member>
<member name="P:Xabbo.Connection.IConnection.Client">
<summary>
Gets the client type for this connnection.
</summary>
</member>
<member name="P:Xabbo.Connection.IConnection.ClientIdentifier">
<summary>
Gets the client identifier for this connection.
</summary>
</member>
<member name="P:Xabbo.Connection.IConnection.ClientVersion">
<summary>
Gets the client version for this connection.
</summary>
</member>
<member name="P:Xabbo.Connection.IConnection.Hotel">
<summary>
Gets the hotel this connection is associated with.
</summary>
</member>
<member name="M:Xabbo.Connection.IConnection.Send(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Sends a packet to the client or server, specified by the destination of the packet's header.
</summary>
</member>
<member name="M:Xabbo.Connection.IConnection.SendAsync(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Asynchronously sends a packet to the client or server, specified by the destination of the packet's header.
</summary>
</member>
<member name="M:Xabbo.Connection.IConnection.ReceiveAsync(Xabbo.Messages.HeaderSet,System.Int32,System.Boolean,System.Threading.CancellationToken)">
<summary>
Asynchronously captures the first packet sent or received with any of the specified headers.
</summary>
<param name="headers">Specifies which headers to listen for.</param>
<param name="timeout">The maximum time in milliseconds to wait for a packet to be captured. <c>-1</c> specifies no timeout.</param>
<param name="block">Whether the captured packet should be blocked from its destination.</param>
<param name="cancellationToken">The token used to cancel this operation.</param>
<returns>A task that completes once a packet has been captured, or the operation times out.</returns>
</member>
<member name="M:Xabbo.Connection.IConnection.ReceiveAsync(Xabbo.Messages.HeaderSet,System.Func{Xabbo.Messages.IReadOnlyPacket,System.Boolean},System.Int32,System.Boolean,System.Threading.CancellationToken)">
<summary>
Asynchronously captures the first packet sent or received with any of the specified headers,
where the provided callback <paramref name="shouldCapture"/> returns <see langword="true"/>.
</summary>
<param name="headers">Specifies which headers to listen for.</param>
<param name="shouldCapture">A callback that may inspect packets with matching headers and return whether the packet should be captured or not.</param>
<param name="timeout">The maximum time in milliseconds to wait for a packet to be captured. <c>-1</c> specifies no timeout.</param>
<param name="block">Whether the captured packet should be blocked from its destination.</param>
<param name="cancellationToken">The token used to cancel this operation.</param>
<returns>A task that completes once a packet has been captured, or the operation times out.</returns>
</member>
<member name="T:Xabbo.ConnectionExtensions">
<summary>
Provides extensions for sending generic values to a connection.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send(Xabbo.Connection.IConnection,Xabbo.Messages.Header)">
<summary>
Sends a packet with the specified header to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync(Xabbo.Connection.IConnection,Xabbo.Messages.Header)">
<summary>
Sends a packet with the specified header to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``1(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``1(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``2(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``2(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``3(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``3(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``4(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``4(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``5(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``5(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``6(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``6(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``7(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``7(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``8(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``8(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``9(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``9(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``10(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``10(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``11(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``11(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``12(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``12(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``13(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``13(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``14(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``14(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``15(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``15(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``16(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``16(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``17(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``17(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``18(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``18(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``19(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``19(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.Send``20(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18,``19)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.ConnectionExtensions.SendAsync``20(Xabbo.Connection.IConnection,Xabbo.Messages.Header,``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18,``19)">
<summary>
Sends a packet with the specified header and values to either the client or server, depending on the header destination.
</summary>
</member>
<member name="T:Xabbo.Extension.AuthorAttribute">
<summary>
Specifies the author of the extension.
</summary>
</member>
<member name="P:Xabbo.Extension.AuthorAttribute.Author">
<summary>
Gets the author of the extension.
</summary>
</member>
<member name="M:Xabbo.Extension.AuthorAttribute.#ctor(System.String)">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.AuthorAttribute"/> with the specified author.
</summary>
</member>
<member name="T:Xabbo.Extension.ConnectionFailedEventArgs">
<summary>
Provides data for the <see cref="E:Xabbo.Extension.IRemoteExtension.InterceptorConnectionFailed"/> event.
</summary>
</member>
<member name="P:Xabbo.Extension.ConnectionFailedEventArgs.Attempt">
<summary>
Gets the current number of attempts made to connect to the remote interceptor.
</summary>
</member>
<member name="P:Xabbo.Extension.ConnectionFailedEventArgs.Retry">
<summary>
Gets or sets whether to retry connecting to the remote interceptor.
</summary>
</member>
<member name="M:Xabbo.Extension.ConnectionFailedEventArgs.#ctor(System.Int32)">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.ConnectionFailedEventArgs"/>.
</summary>
<param name="attempt">The current number of attempts made to connect to the remote interceptor.</param>
</member>
<member name="T:Xabbo.Extension.DescriptionAttribute">
<summary>
Specifies the description of the extension.
</summary>
</member>
<member name="P:Xabbo.Extension.DescriptionAttribute.Description">
<summary>
Gets the description of the extension.
</summary>
</member>
<member name="M:Xabbo.Extension.DescriptionAttribute.#ctor(System.String)">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.DescriptionAttribute"/> with the specified description.
</summary>
</member>
<member name="T:Xabbo.Extension.DisconnectedEventArgs">
<summary>
Provides data for the <see cref="E:Xabbo.Extension.IRemoteExtension.InterceptorDisconnected"/> event.
</summary>
</member>
<member name="P:Xabbo.Extension.DisconnectedEventArgs.Error">
<summary>
Gets the error that caused the disconnection.
</summary>
</member>
<member name="P:Xabbo.Extension.DisconnectedEventArgs.Reconnect">
<summary>
Gets or sets whether to reconnect to the remote interceptor.
</summary>
</member>
<member name="M:Xabbo.Extension.DisconnectedEventArgs.#ctor(System.Exception)">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.DisconnectedEventArgs"/>.
</summary>
<param name="error">The error that caused the disconnection.</param>
</member>
<member name="T:Xabbo.Extension.ExtensionInitializedEventArgs">
<summary>
Provides data for the <see cref="E:Xabbo.Extension.IExtension.Initialized"/> event.
</summary>
</member>
<member name="P:Xabbo.Extension.ExtensionInitializedEventArgs.IsGameConnected">
<summary>
Gets whether the game is already connected at the time of initialization, if provided by the interceptor service.
</summary>
</member>
<member name="M:Xabbo.Extension.ExtensionInitializedEventArgs.#ctor(System.Nullable{System.Boolean})">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.ExtensionInitializedEventArgs"/>.
</summary>
<param name="isGameConnected">Whether the game is already connected at the time of initialization.</param>
</member>
<member name="T:Xabbo.Extension.GameConnectedEventArgs">
<summary>
Provides data for the <see cref="E:Xabbo.Extension.IExtension.Connected"/> event.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.Host">
<summary>
Gets the host name.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.Port">
<summary>
Gets the port.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.ClientType">
<summary>
Gets the client type.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.ClientIdentifier">
<summary>
Gets the client identifier, if it is available.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.ClientVersion">
<summary>
Gets the client version, if it is available.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.MessagesPath">
<summary>
Gets the path to the messages file, if it is available.
</summary>
</member>
<member name="P:Xabbo.Extension.GameConnectedEventArgs.Messages">
<summary>
Gets a list of client specific message information provided by the interceptor service.
</summary>
</member>
<member name="M:Xabbo.Extension.GameConnectedEventArgs.#ctor">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.GameConnectedEventArgs"/>.
</summary>
</member>
<member name="T:Xabbo.Extension.IExtension">
<summary>
Represents an extension interface provided by a packet interceptor service.
</summary>
</member>
<member name="E:Xabbo.Extension.IExtension.Initialized">
<summary>
Invoked when the extension has been initialized by the interceptor.
</summary>
</member>
<member name="E:Xabbo.Extension.IExtension.Connected">
<summary>
Invoked when a connection to the game is established.
</summary>
</member>
<member name="E:Xabbo.Extension.IExtension.Clicked">
<summary>
Invoked when the extension is selected in the interceptor UI.
</summary>
</member>
<member name="E:Xabbo.Extension.IExtension.Intercepted">
<summary>
Invoked when a packet has been intercepted.
</summary>
</member>
<member name="E:Xabbo.Extension.IExtension.Disconnected">
<summary>
Invoked when the connection to the game ends.
</summary>
</member>
<member name="T:Xabbo.Extension.IRemoteExtension">
<summary>
Represents an extension interface provided by a remote packet interceptor service.
</summary>
</member>
<member name="P:Xabbo.Extension.IRemoteExtension.Port">
<summary>
Gets the port that the remote interceptor is currently connected on.
</summary>
</member>
<member name="P:Xabbo.Extension.IRemoteExtension.IsRunning">
<summary>
Gets whether the remote interceptor service is running or not.
</summary>
</member>
<member name="P:Xabbo.Extension.IRemoteExtension.IsInterceptorConnected">
<summary>
Gets whether a connection to the remote interceptor is established or not.
</summary>
</member>
<member name="M:Xabbo.Extension.IRemoteExtension.RunAsync(System.Threading.CancellationToken)">
<summary>
Connects to the remote interceptor and processes incoming packets.
</summary>
</member>
<member name="M:Xabbo.Extension.IRemoteExtension.Stop">
<summary>
Requests to stop the remote interceptor service.
</summary>
</member>
<member name="E:Xabbo.Extension.IRemoteExtension.InterceptorConnectionFailed">
<summary>
Invoked when connection to the remote interceptor fails.
</summary>
</member>
<member name="E:Xabbo.Extension.IRemoteExtension.InterceptorConnected">
<summary>
Invoked when a connection to the remote interceptor is established.
</summary>
</member>
<member name="E:Xabbo.Extension.IRemoteExtension.InterceptorDisconnected">
<summary>
Invoked when the connection to the remote interceptor ends.
</summary>
</member>
<member name="T:Xabbo.Extension.TitleAttribute">
<summary>
Specifies the title of the extension.
</summary>
</member>
<member name="P:Xabbo.Extension.TitleAttribute.Title">
<summary>
Gets the title of the extension.
</summary>
</member>
<member name="M:Xabbo.Extension.TitleAttribute.#ctor(System.String)">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.TitleAttribute"/> with the specified title.
</summary>
</member>
<member name="T:Xabbo.Extension.VersionAttribute">
<summary>
Specifies the version of the extension.
</summary>
</member>
<member name="P:Xabbo.Extension.VersionAttribute.Version">
<summary>
Gets the version of the extension.
</summary>
</member>
<member name="M:Xabbo.Extension.VersionAttribute.#ctor(System.String)">
<summary>
Constructs a new <see cref="T:Xabbo.Extension.VersionAttribute"/> with the specified version.
</summary>
</member>
<member name="T:Xabbo.Hotel">
<summary>
Defines the basic information of a hotel.
</summary>
</member>
<member name="F:Xabbo.Hotel.Unknown">
<summary>
Represents an unknown hotel.
</summary>
</member>
<member name="F:Xabbo.Hotel.All">
<summary>
Contains the definitions of all hotels.
</summary>
</member>
<member name="P:Xabbo.Hotel.Name">
<summary>
Gets the name of this hotel.
</summary>
</member>
<member name="P:Xabbo.Hotel.Identifier">
<summary>
Gets the identifier of this hotel.
</summary>
</member>
<member name="P:Xabbo.Hotel.Subdomain">
<summary>
Gets the subdomain of this hotel.
</summary>
</member>
<member name="P:Xabbo.Hotel.Domain">
<summary>
Gets the domain of this hotel.
</summary>
</member>
<member name="P:Xabbo.Hotel.Host">
<summary>
Gets the web host for this hotel.
</summary>
</member>
<member name="P:Xabbo.Hotel.GameHost">
<summary>
Gets the game host for this hotel.
</summary>
</member>
<member name="M:Xabbo.Hotel.#ctor">
<summary>
Creates a new hotel instance.
</summary>
</member>
<member name="M:Xabbo.Hotel.#ctor(System.String,System.String,System.String,System.String,System.String,System.String)">
<summary>
Creates a new hotel instance.
</summary>
</member>
<member name="M:Xabbo.Hotel.FromIdentifier(System.String)">
<summary>
Gets the hotel with the specified identifier. (ex. <c>us</c>)
</summary>
</member>
<member name="M:Xabbo.Hotel.FromDomain(System.String)">
<summary>
Gets the hotel with the specified domain. (ex. <c>com</c>)
</summary>
</member>
<member name="M:Xabbo.Hotel.FromHost(System.String)">
<summary>
Gets the hotel with the specified host. (ex. <c>www.habbo.com</c>)
</summary>
</member>
<member name="M:Xabbo.Hotel.FromGameHost(System.String)">
<summary>
Gets the hotel with the specified game host. (ex. <c>game-us.habbo.com</c>)
</summary>
</member>
<member name="T:Xabbo.Interceptor.IInterceptor">
<summary>
Represents a packet interceptor that can read, modify and send packets.
</summary>
</member>
<member name="P:Xabbo.Interceptor.IInterceptor.Messages">
<summary>
Gets the message manager associated with this interceptor.
</summary>
</member>
<member name="P:Xabbo.Interceptor.IInterceptor.Dispatcher">
<summary>
Gets the message dispatcher associated with this interceptor.
</summary>
</member>
<member name="T:Xabbo.Interceptor.Tasks.CaptureMessageTask">
<summary>
A task that captures the first intercepted message with a specified header.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.CaptureMessageTask.#ctor(Xabbo.Interceptor.IInterceptor,System.Collections.Generic.IEnumerable{Xabbo.Messages.Header},System.Boolean,System.Func{Xabbo.Messages.IReadOnlyPacket,System.Boolean})">
<summary>
Constructs a new <see cref="T:Xabbo.Interceptor.Tasks.CaptureMessageTask"/> targeting the specified headers.
</summary>
<param name="interceptor">The interceptor to bind to.</param>
<param name="headers">The headers to listen for.</param>
<param name="block">Whether to block the captured packet.</param>
<param name="shouldCapture">A callback that may inspect an intercepted packet and return whether or not it should be captured.</param>
</member>
<member name="T:Xabbo.Interceptor.Tasks.InterceptorTask`1">
<summary>
A base class used to implement a task that can intercept packets and asynchronously return a result.
</summary>
<typeparam name="TResult">The result type of the task.</typeparam>
</member>
<member name="P:Xabbo.Interceptor.Tasks.InterceptorTask`1.Interceptor">
<summary>
The interceptor that this task is bound to.
</summary>
</member>
<member name="P:Xabbo.Interceptor.Tasks.InterceptorTask`1.In">
<summary>
The incoming messages provided by the interceptor's message manager.
</summary>
</member>
<member name="P:Xabbo.Interceptor.Tasks.InterceptorTask`1.Out">
<summary>
The outgoing messages provided by the interceptor's message manager.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.#ctor(Xabbo.Interceptor.IInterceptor)">
<summary>
Creates a new interceptor task bound to the specified interceptor.
</summary>
<param name="interceptor">The interceptor to bind to.</param>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.Execute(System.Int32,System.Threading.CancellationToken)">
<summary>
Executes the task synchronously and returns the result.
</summary>
<param name="timeout">The maximum number of milliseconds to wait for a result. Use <c>-1</c> for no timeout.</param>
<param name="cancellationToken">The cancellation token that can be used to cancel the task.</param>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.ExecuteAsync(System.Int32,System.Threading.CancellationToken)">
<summary>
Executes the task asynchronously and returns the result.
</summary>
<param name="timeout">The maximum number of milliseconds to wait for a result. Use <c>-1</c> for no timeout.</param>
<param name="cancellationToken">The cancellation token that can be used to cancel the task.</param>
<exception cref="T:System.TimeoutException">If the task fails to complete within the specified timeout.</exception>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnBind">
<summary>
Binds this task to the interceptor's dispatcher.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnRelease">
<summary>
Releases this task from the interceptor's dispatcher.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnDisconnected">
<summary>
Invoked when the connection ends while the interceptor task is in progress.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnExecuteAsync">
<summary>
Invoked when the task is executed.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.SetResult(`0)">
<summary>
Attempts to set the result of this task to the specified value.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.SetCanceled">
<summary>
Attempts to set the status of this task to canceled.
</summary>
</member>
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.SetException(System.Exception)">
<summary>
Attempts to set the result of this task to the specified exception.
</summary>
</member>
<member name="T:Xabbo.InterceptorExtensions">
<summary>
Provides various extension methods for interceptors.
</summary>
</member>
<member name="M:Xabbo.InterceptorExtensions.SendAsync(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.Header)">
<summary>
Sends a packet with the specified header to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.InterceptorExtensions.Send(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.Header)">
<summary>
Sends a packet with the specified header to either the client or server, depending on the header destination.
</summary>
</member>
<member name="M:Xabbo.InterceptorExtensions.ReceiveAsync(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.HeaderSet,System.Int32,System.Boolean,System.Threading.CancellationToken)">
<summary>
Asynchronously receives a packet with any of the specified headers.
</summary>
</member>
<member name="M:Xabbo.InterceptorExtensions.ReceiveAsync(Xabbo.Interceptor.IInterceptor,System.Runtime.CompilerServices.ITuple,System.Int32,System.Boolean,System.Threading.CancellationToken)">
<summary>
Asynchronously captures a packet with any of the specified headers.
</summary>
</member>
<member name="M:Xabbo.InterceptorExtensions.ReceiveAsync(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.Header,System.Int32,System.Boolean,System.Threading.CancellationToken)">
<summary>
Asynchronously receives a packet with the specified header.
</summary>
</member>
<member name="M:Xabbo.InterceptorExtensions.OnIntercept(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.HeaderSet,System.Action{Xabbo.Messages.InterceptArgs})">
<summary>
Registers a callback that is invoked when a packet with a matching header is intercepted.
</summary>
<param name="interceptor">The interceptor.</param>
<param name="headers">Specifies which headers to intercept.</param>
<param name="handler">The handler to invoke when a message is intercepted.</param>
</member>
<member name="M:Xabbo.InterceptorExtensions.Bind(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.IMessageHandler)">
<summary>
Binds the specified target object to the dispatcher.
</summary>
<returns>
<c>true</c> if successfully bound, or <c>false</c> if the target
does not have a receive or intercept attribute on any of its methods.
Throws if any of the required message identifiers are unable to be resolved.
</returns>
</member>
<member name="M:Xabbo.InterceptorExtensions.Release(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.IMessageHandler)">
<summary>
Releases the specified target object from the dispatcher.
</summary>
<returns>Whether the binding was released or not.</returns>
</member>
<member name="P:Xabbo.Messages.IdentifiersAttribute.Required">
<summary>
Specifies if this attribute is required for the interceptor binding to succeed.
</summary>
</member>
<member name="P:Xabbo.Messages.IdentifiersAttribute.RequiredClient">
<summary>
Specifies the clients which are required for the interceptor binding to succeed.
</summary>
</member>
<member name="P:Xabbo.Messages.IdentifiersAttribute.Identifiers">
<summary>
Specifies the message identifiers.
</summary>
</member>
<member name="T:Xabbo.Messages.Destination">
<summary>
Represents the destination of a message.
</summary>
</member>
<member name="T:Xabbo.Messages.Direction">
<summary>
Represents the direction of a message.
</summary>
</member>
<member name="T:Xabbo.Messages.Dispatcher.IMessageDispatcher">
<summary>
Represents a service that routes messages to callbacks and bound <see cref="T:Xabbo.Messages.IMessageHandler"/> instances.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.DispatchPacket(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.IReadOnlyPacket)">
<summary>
Routes the specified packet to all handlers bound to this dispatcher.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.DispatchIntercept(Xabbo.Messages.InterceptArgs)">
<summary>
Routes the specified <see cref="T:Xabbo.Messages.InterceptArgs"/> to all intercept handlers bound to this dispatcher.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.IsBound(Xabbo.Messages.IMessageHandler)">
<summary>
Gets whether the specified intercept handler is bound to this dispatcher or not.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.Bind(Xabbo.Messages.IMessageHandler,Xabbo.ClientType)">
<summary>
Binds the specified message handler to this dispatcher.
Throws an exception if any of the message identifiers are unable to be resolved.
</summary>
<param name="handler">The message handler to bind.</param>
<param name="requiredClientHeaders">Specifies which client headers must be resolved for the binding to be successful.</param>
<returns>
<c>true</c> if successfully bound, or <c>false</c> if the intercept handler
does not have any receive or intercept attributes on any of its methods.
</returns>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.Release(Xabbo.Messages.IMessageHandler)">
<summary>
Releases the binding to the specified intercept handler.
</summary>
<returns>Whether the binding was released or not.</returns>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.AddIntercept(Xabbo.Messages.HeaderSet,System.Action{Xabbo.Messages.InterceptArgs},Xabbo.ClientType)">
<summary>
Registers a callback that is invoked when a message with a matching header is intercepted.
</summary>
<param name="headers">Specifies which headers to intercept.</param>
<param name="handler">The callback to invoke when a message is intercepted.</param>
<param name="requiredClientHeaders">Specifies which client headers must be resolved for the binding to be successful.</param>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.AddIntercept(System.Runtime.CompilerServices.ITuple,System.Action{Xabbo.Messages.InterceptArgs},Xabbo.ClientType)">
<summary>
Registers a callback that is invoked when a packet with a matching header is intercepted.
</summary>
<param name="headers">Specifies which headers to intercept.</param>
<param name="handler">The callback to invoke when a message is intercepted.</param>
<param name="requiredClientHeaders">Specifies which client headers must be resolved for the binding to be successful.</param>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.RemoveIntercept(Xabbo.Messages.Header,System.Action{Xabbo.Messages.InterceptArgs})">
<summary>
Removes the specified intercept callback bound to the target header and destination.
</summary>
<returns>Whether the callback was removed or not.</returns>
</member>
<member name="M:Xabbo.Messages.Dispatcher.IMessageDispatcher.ReleaseAll">
<summary>
Releases all bound intercept handlers and intercept callbacks.
</summary>
</member>
<member name="T:Xabbo.Messages.Dispatcher.MessageDispatcher">
<inheritdoc cref="T:Xabbo.Messages.Dispatcher.IMessageDispatcher" />
</member>
<member name="P:Xabbo.Messages.Dispatcher.MessageDispatcher.Messages">
<summary>
Gets the message manager used by this dispatcher.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.MessageDispatcher.#ctor(Xabbo.Messages.IMessageManager)">
<summary>
Creates a new <see cref="T:Xabbo.Messages.Dispatcher.MessageDispatcher"/> using the specified <see cref="T:Xabbo.Messages.IMessageManager"/>.
</summary>
<param name="messages"></param>
</member>
<member name="M:Xabbo.Messages.Dispatcher.MessageDispatcher.DispatchPacket(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.IReadOnlyPacket)">
<summary>
Dispatches the specified message to all bound receive callbacks.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.MessageDispatcher.DispatchIntercept(Xabbo.Messages.InterceptArgs)">
<summary>
Dispatches the specified intercept arguments to all bound intercept callbacks.
</summary>
</member>
<member name="M:Xabbo.Messages.Dispatcher.MessageDispatcher.ReleaseAll">
<summary>
Releases all bindings, intercepts and receive callbacks.
</summary>
</member>
<member name="T:Xabbo.Messages.ClientHeader">
<summary>
Specifies message header information for a specific client type.
</summary>
</member>
<member name="P:Xabbo.Messages.ClientHeader.Client">
<summary>
The client type of this header.
</summary>
</member>
<member name="P:Xabbo.Messages.ClientHeader.Destination">
<summary>
The destination of this header.
</summary>
</member>
<member name="P:Xabbo.Messages.ClientHeader.Value">
<summary>
The value of this header.
</summary>
</member>
<member name="P:Xabbo.Messages.ClientHeader.Name">
<summary>
The name of this header.
</summary>
</member>
<member name="M:Xabbo.Messages.ClientHeader.Equals(Xabbo.Messages.ClientHeader)">
<summary>
Returns true if the client, destination and value are equal.
The name of the header is not tested for equality.
</summary>
</member>
<member name="T:Xabbo.Messages.Header">
<summary>
Specifies message header information for multiple client types.
</summary>
</member>
<member name="F:Xabbo.Messages.Header.Unknown">
<summary>
Represents an unknown header.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.Destination">
<summary>
Gets the destination of this header.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.IsIncoming">
<summary>
Gets if this is an incoming header.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.IsOutgoing">
<summary>
Gets if this is an outgoing header.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.Flash">
<summary>
Gets the header information for the Flash client.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.Unity">
<summary>
Gets the header information for the Unity client.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.Name">
<summary>
Gets the explicit name of this header.
</summary>
</member>
<member name="P:Xabbo.Messages.Header.Value">
<summary>
Gets the explicit value of this header.
If this value set, it overrides client header information.
It should only be used when a dynamic header from the message manager is unavailable.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.#ctor(Xabbo.Messages.Destination,System.Int16,System.String)">
<summary>
Creates a new header with the specified destination and explicit value.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.GetClientHeader(Xabbo.ClientType)">
<summary>
Gets the header information for the specified client type.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.GetValue(Xabbo.ClientType)">
<summary>
Gets the header value for the specified client type.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.GetName(Xabbo.ClientType)">
<summary>
Gets the name of the header for the specified client type.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.GetHashCode">
<summary>
Returns the hash code of this header.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.In(System.Int16)">
<summary>
Creates an outgoing header with the specified explicit value.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.Out(System.Int16)">
<summary>
Creates an incoming header with the specified explicit value.
</summary>
</member>
<member name="M:Xabbo.Messages.Header.FromTuple(System.Runtime.CompilerServices.ITuple)">
<summary>
Converts the specified tuple into an array of headers.
</summary>
</member>
<member name="T:Xabbo.Messages.Headers">
<summary>
Represents a dictionary that stores <see cref="T:Xabbo.Messages.Header"/>s.
Any children of this class may expose <see cref="T:Xabbo.Messages.Header"/> properties
which will internally map to the dictionary by their name.
</summary>
</member>
<member name="P:Xabbo.Messages.Headers.Destination">
<summary>
The destination of the headers stored in this dictionary.
</summary>
</member>
<member name="M:Xabbo.Messages.Headers.#ctor(Xabbo.Messages.Destination)">
<summary>
Constructs a new header dictionary with the specified destination.
</summary>
</member>
<member name="M:Xabbo.Messages.Headers.Load(System.Collections.Generic.IEnumerable{Xabbo.Messages.IMessageInfo})">
<summary>
Resets this dictionary and initializes it from the specified message information.
</summary>
</member>
<member name="M:Xabbo.Messages.Headers.MessageExists(System.String)">
<summary>
Gets if a message with the specified name exists in this dictionary.
</summary>
</member>
<member name="M:Xabbo.Messages.Headers.TryGetName(Xabbo.ClientType,System.Int16,System.String@)">
<summary>
Attempts to get the name of the message with the specified client type and header value.
</summary>
<returns><see langword="true"/> if the name of the message was found.</returns>
</member>
<member name="M:Xabbo.Messages.Headers.TryGetHeader(Xabbo.ClientType,System.Int16,Xabbo.Messages.Header@)">
<summary>
Attempts to get the <see cref="T:Xabbo.Messages.Header"/> with the specified client type and value.
</summary>
<returns><see langword="true"/> if the header was found.</returns>
</member>
<member name="M:Xabbo.Messages.Headers.TryGetHeader(System.String,Xabbo.Messages.Header@)">
<summary>
Attempts to get the <see cref="T:Xabbo.Messages.Header"/> with the specified name.
</summary>
<returns><see langword="true"/> if the header was found.</returns>
</member>
<member name="P:Xabbo.Messages.Headers.Item(System.String)">
<summary>
Gets the <see cref="T:Xabbo.Messages.Header"/> with the specified name, or throws if it does not exist.
</summary>
<exception cref="T:Xabbo.Messages.UnknownHeaderException">If a header with the specified name does not exist.</exception>
</member>
<member name="T:Xabbo.Messages.HeaderSet">
<summary>
Specifies a set of headers.
</summary>
</member>
<member name="T:Xabbo.Messages.Incoming">
<summary>
A header dictionary that provides named incoming header properties based on the Unity client.
</summary>
</member>
<member name="T:Xabbo.Messages.Outgoing">
<summary>
A header dictionary that provides named outgoing header properties based on the Unity client.
</summary>
</member>
<member name="T:Xabbo.Messages.IComposable">
<summary>
Represents a composable object that can be serialized to a packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IComposable.Compose(Xabbo.Messages.IPacket)">
<summary>
Writes this object to the specified packet.
</summary>
<param name="packet">The packet to write to.</param>
</member>
<member name="T:Xabbo.Messages.Identifier">
<summary>
Represents a message name and direction.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifier.Destination">
<summary>
Gets the destination of this message.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifier.IsOutgoing">
<summary>
Gets whether this is an outgoing message.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifier.IsIncoming">
<summary>
Gets whether this is an incoming message.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifier.Name">
<summary>
Gets the name of this message.
</summary>
</member>
<member name="M:Xabbo.Messages.Identifier.#ctor(Xabbo.Messages.Destination,System.String)">
<summary>
Constructs a new message <see cref="T:Xabbo.Messages.Identifier"/> with the specified name and destination.
</summary>
<param name="destination">The destination of the message.</param>
<param name="name">The name of the message.</param>
</member>
<member name="M:Xabbo.Messages.Identifier.WithDestination(Xabbo.Messages.Destination)">
<summary>
Returns a new <see cref="T:Xabbo.Messages.Identifier"/> with the destination changed.
</summary>
<param name="destination">The new destination.</param>
<returns>A new instance of <see cref="T:Xabbo.Messages.Identifier"/> with the destination changed.</returns>
</member>
<member name="T:Xabbo.Messages.Identifiers">
<summary>
Represents a set of <see cref="T:Xabbo.Messages.Identifier"/>s.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifiers.Unknown">
<summary>
Gets the identifiers in this set with an unknown destination.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifiers.Incoming">
<summary>
Gets the incoming identifiers in this set.
</summary>
</member>
<member name="P:Xabbo.Messages.Identifiers.Outgoing">
<summary>
Gets the outgoing identifiers in this set.
</summary>
</member>
<member name="M:Xabbo.Messages.Identifiers.#ctor">
<summary>
Creates an empty identifier set.
</summary>
</member>
<member name="M:Xabbo.Messages.Identifiers.#ctor(System.Collections.Generic.IEnumerable{Xabbo.Messages.Identifier})">
<summary>
Creates an identifier set from the specified identifiers.
</summary>
</member>
<member name="M:Xabbo.Messages.Identifiers.#ctor(System.String[],System.String[])">
<summary>
Creates an identifier set from the specified incoming and outgoing names.
</summary>
<param name="incoming">The names of the incoming identifiers.</param>
<param name="outgoing">The names of the outgoing identifiers.</param>
</member>
<member name="M:Xabbo.Messages.Identifiers.Add(Xabbo.Messages.Destination,System.String)">
<summary>
Adds a new identifier with the specified destination and name to this set.
</summary>
<param name="destination"></param>
<param name="name"></param>
</member>
<member name="M:Xabbo.Messages.Identifiers.Add(Xabbo.Messages.Destination,System.String[])">
<summary>
Adds a range of new identifiers with the specified destination and names to this set.
</summary>
</member>
<member name="M:Xabbo.Messages.Identifiers.ToString">
<summary>
Gets a string representation of this identifier set.
</summary>
</member>
<member name="T:Xabbo.Messages.IMessageHandler">
<summary>
Represents a handler that can be bound to an <see cref="T:Xabbo.Messages.Dispatcher.IMessageDispatcher"/>.
<para>
The class implementing this interface should define methods decorated with
<see cref="T:Xabbo.Messages.ReceiveAttribute"/>, <see cref="T:Xabbo.Messages.InterceptInAttribute"/> or <see cref="T:Xabbo.Messages.InterceptOutAttribute"/>.
</para>
<para>
For a <see cref="T:Xabbo.Messages.ReceiveAttribute"/>, the method signature must be
<see langword="void"/> (<see cref="T:System.Object"/>? sender, <see cref="T:Xabbo.Messages.IReadOnlyPacket"/> packet).
</para>
<para>
For an <see cref="T:Xabbo.Messages.InterceptAttribute"/>, the method signature must be
<see langword="void"/> (<see cref="T:Xabbo.Messages.InterceptArgs"/> e).
</para>
<para>
When an <see cref="T:Xabbo.Messages.Dispatcher.IMessageDispatcher"/> attempts to bind an <see cref="T:Xabbo.Messages.IMessageHandler"/>, the message names (identifiers) specified in the attributes are resolved to <see cref="T:Xabbo.Messages.Header"/>s by the <see cref="T:Xabbo.Messages.IMessageManager"/>.
If any required message header is unable to be resolved, the binding fails.
If <c>Required</c> is set to <c>false</c> on the attribute and is unable to be resolved, it is silently ignored.
</para>
<para>
Once an instance is bound, the methods decorated with those attributes
will be invoked whenever a message matching the specified header is intercepted.
</para>
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.Destination">
<summary>
Gets the destination of the message.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.Direction">
<summary>
Gets the direction of the message.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.IsIncoming">
<summary>
Gets if the message is an incoming message.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.IsOutgoing">
<summary>
Gets if the message is an outgoing message.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.UnityName">
<summary>
The name of the message in the Unity client, or <c>null</c> if it does not exist.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.UnityHeader">
<summary>
The header value of the message for the unity client.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.FlashName">
<summary>
The name of the message in the Flash client, or <c>null</c> if it does not exist.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageInfo.FlashHeader">
<summary>
The header value of the message for the flash client.
</summary>
</member>
<member name="T:Xabbo.Messages.IMessageManager">
<summary>
Represents a service that manages client specific message &amp; header information.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.InitializeAsync(System.Threading.CancellationToken)">
<summary>
Initializes the message manager.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.LoadMessages(System.Collections.Generic.IEnumerable{Xabbo.Messages.IClientMessageInfo})">
<summary>
Loads the specified client message information.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageManager.In">
<summary>
Gets the incoming headers.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageManager.Out">
<summary>
Gets the outgoing headers.
</summary>
</member>
<member name="P:Xabbo.Messages.IMessageManager.Item(Xabbo.Messages.Identifier)">
<summary>
Gets the header with the specified identifier.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.IdentifierExists(Xabbo.Messages.Identifier)">
<summary>
Gets if a header with the specified identifier exists.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.TryGetHeader(Xabbo.Messages.Identifier,Xabbo.Messages.Header@)">
<summary>
Attempts to get a header by its identifier.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.TryGetHeaderByValue(Xabbo.Messages.Destination,Xabbo.ClientType,System.Int16,Xabbo.Messages.Header@)">
<summary>
Attempts to get a header by its destination and value.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.TryGetHeaderByName(Xabbo.Messages.Destination,System.String,Xabbo.Messages.Header@)">
<summary>
Attempts to get a header by its destination and name.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.TryGetInfoByHeader(Xabbo.Messages.Direction,Xabbo.ClientType,System.Int16,Xabbo.Messages.MessageInfo@)">
<summary>
Attempts to get a message's info by its direction and header.
</summary>
</member>
<member name="M:Xabbo.Messages.IMessageManager.TryGetInfoByName(Xabbo.Messages.Direction,System.String,Xabbo.Messages.MessageInfo@)">
<summary>
Attempts to get a message's info by its direction and name.
</summary>
</member>
<member name="T:Xabbo.Messages.InterceptArgs">
<summary>
Contains event arguments of an intercepted packet.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.Interceptor">
<summary>
Gets the interceptor that intercepted this packet.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.Timestamp">
<summary>
Gets the time that the packet was intercepted.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.Destination">
<summary>
Gets the destination of the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.Step">
<summary>
Gets the sequence number of the intercepted packet.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.Packet">
<summary>
Gets or replaces the intercepted packet.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.OriginalPacket">
<summary>
Gets the original, unmodified packet that was intercepted.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.IsIncoming">
<summary>
Gets if the packet's destination is to the client.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.IsOutgoing">
<summary>
Gets if the packet's destination is to the server.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.IsBlocked">
<summary>
Gets if the packet is to be blocked by the interceptor.
</summary>
</member>
<member name="P:Xabbo.Messages.InterceptArgs.IsModified">
<summary>
Gets if the packet has been modified from its original state.
</summary>
</member>
<member name="M:Xabbo.Messages.InterceptArgs.#ctor(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.Destination,Xabbo.Messages.IPacket)">
<summary>
Constructs a new InterceptArgs instance with the specified destination and packet.
</summary>
</member>
<member name="M:Xabbo.Messages.InterceptArgs.Block">
<summary>
Flags the packet to be blocked from its destination by the interceptor.
</summary>
</member>
<member name="M:Xabbo.Messages.InterceptArgs.Dispose(System.Boolean)">
<inheritdoc cref="M:Xabbo.Messages.InterceptArgs.Dispose" />
</member>
<member name="M:Xabbo.Messages.InterceptArgs.Dispose">
<summary>
Disposes this InterceptArgs instance.
</summary>
</member>
<member name="T:Xabbo.Messages.LegacyFloat">
<summary>
Represents a <see cref="T:System.Single"/> that is serialized to a <see cref="T:System.String"/> on Flash sessions for compatibility.
</summary>
</member>
<member name="P:Xabbo.Messages.LegacyFloat.Value">
<summary>
Gets the value.
</summary>
</member>
<member name="M:Xabbo.Messages.LegacyFloat.#ctor(System.Single)">
<summary>
Constructs a new <see cref="T:Xabbo.Messages.LegacyFloat"/> with the specified value.
</summary>
</member>
<member name="T:Xabbo.Messages.LegacyLong">
<summary>
Represents a <see cref="T:System.Int64"/> that is serialized to an <see cref="T:System.Int32"/> on Flash sessions for compatibility.
</summary>
</member>
<member name="P:Xabbo.Messages.LegacyLong.Value">
<summary>
Gets the value.
</summary>
</member>
<member name="M:Xabbo.Messages.LegacyLong.#ctor(System.Int64)">
<summary>
Constructs a new <see cref="T:Xabbo.Messages.LegacyLong"/> with the specified value.
</summary>
</member>
<member name="T:Xabbo.Messages.LegacyShort">
<summary>
Represents a <see cref="T:System.Int16"/> that is serialized to an <see cref="T:System.Int32"/> on Flash sessions for compatibility.
</summary>
</member>
<member name="P:Xabbo.Messages.LegacyShort.Value">
<summary>
Gets the value.
</summary>
</member>
<member name="M:Xabbo.Messages.LegacyShort.#ctor(System.Int16)">
<summary>
Constructs a new <see cref="T:Xabbo.Messages.LegacyShort"/> with the specified value.
</summary>
</member>
<member name="T:Xabbo.Messages.IPacket">
<summary>
Represents a writable packet of binary data with a message header.
</summary>
</member>
<member name="P:Xabbo.Messages.IPacket.Header">
<summary>
Gets or sets the message header of the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.IPacket.Buffer">
<summary>
Gets the underlying buffer of the packet's data as a <see cref="T:System.Span`1"/>.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.GetMemory">
<summary>
Gets the underlying buffer of the packet's data as <see cref="T:System.Memory`1"/>.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.Skip(System.Int32)">
<inheritdoc cref="M:Xabbo.Messages.IReadOnlyPacket.Skip(System.Int32)" />
</member>
<member name="M:Xabbo.Messages.IPacket.Skip(System.Type[])">
<inheritdoc cref="M:Xabbo.Messages.IReadOnlyPacket.Skip(System.Type[])" />
</member>
<member name="M:Xabbo.Messages.IPacket.GetSpan(System.Int32)">
<summary>
<para>
Returns a span of bytes of the specified length from the current position in the packet that maps to the packet's internal buffer.
If the length of the packet is insufficient, it will be increased and its internal buffer may be grown.
Any bytes that already exist after the current position in the packet will be included from the start of the resulting span.
Advances the packet's position by the specified length.
</para>
<para>
Should be used with methods that write directly to a span without needing to allocate a new byte array, such as <see cref="M:System.Text.Encoding.GetBytes(System.ReadOnlySpan{System.Char},System.Span{System.Byte})"/>.
</para>
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.Write(Xabbo.Messages.IComposable)">
<summary>
Writes a composable object to the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteBool(System.Boolean)">
<summary>
Writes a boolean to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteBool(System.Boolean,System.Int32)">
<summary>
Writes a boolean to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteByte(System.Byte)">
<summary>
Writes a byte to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteByte(System.Byte,System.Int32)">
<summary>
Writes a byte to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteShort(System.Int16)">
<summary>
Writes a short to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteShort(System.Int16,System.Int32)">
<summary>
Writes a short to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteInt(System.Int32)">
<summary>
Writes an integer to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteInt(System.Int32,System.Int32)">
<summary>
Writes an integer to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteFloat(System.Single)">
<summary>
Writes a float to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteFloat(System.Single,System.Int32)">
<summary>
Writes a float to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteLong(System.Int64)">
<summary>
Writes a long to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteLong(System.Int64,System.Int32)">
<summary>
Writes a long to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteString(System.String)">
<summary>
Writes a string to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteString(System.String,System.Int32)">
<summary>
Writes a string to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteFloatAsString(System.Single)">
<summary>
Writes a string representation of a float to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteFloatAsString(System.Single,System.Int32)">
<summary>
Writes a string representation of a float to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteBytes(System.ReadOnlySpan{System.Byte})">
<summary>
Writes the specified bytes to the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteBytes(System.ReadOnlySpan{System.Byte},System.Int32)">
<summary>
Writes the specified bytes to the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteLegacyShort(System.Int16)">
<summary>
Writes a short or an int to the current position in the packet, depending on its protocol.
If the protocol is Unity, writes a short.
If the protocol is Flash, writes an int.
Otherwise, throws an exception.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteLegacyFloat(System.Single)">
<summary>
Writes a float or a string to the current position in the packet, depending on its protocol.
If the protocol is Unity, writes a float as 4 bytes.
If the protocol is Flash, writes a string representation of a float.
Otherwise, throws an exception.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.WriteLegacyLong(System.Int64)">
<summary>
Writes a long or an int to the current position in the packet, depending on its protocol.
If the protocol is Unity, writes a long.
If the protocol is Flash, writes an int.
Otherwise, throws an exception.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.ReplaceString(System.String)">
<summary>
Replaces a string at the current position in the packet.
Adjusts the packet length and offsets any data after the string if the replacement causes the length to change.
Throws if a string cannot be read at the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.ReplaceString(System.String,System.Int32)">
<summary>
Replaces a string at the specified position in the packet.
Adjusts the packet length and offsets any data after the string if the replacement causes the length to change.
Throws if a string cannot be read at the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.ModifyString(System.Func{System.String,System.String})">
<summary>
Replaces a string at the current position in the packet using a transform function.
Adjusts the packet length and offsets any data after the string if the replacement causes the length to change.
Throws if a string cannot be read at the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IPacket.Replace(System.Object[])">
<summary>
Replaces the specified values in the packet.
</summary>
</member>
<member name="T:Xabbo.Messages.IReadOnlyPacket">
<summary>
Represents a readable packet of binary data with a message header.
</summary>
</member>
<member name="P:Xabbo.Messages.IReadOnlyPacket.Protocol">
<summary>
Gets the client protocol hint of the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.IReadOnlyPacket.Header">
<summary>
Gets the message header of the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.IReadOnlyPacket.Position">
<summary>
Gets or sets the current position in the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.IReadOnlyPacket.Length">
<summary>
Gets the length of the data in the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.IReadOnlyPacket.Available">
<summary>
Gets the number of available bytes left in the packet.
</summary>
</member>
<member name="P:Xabbo.Messages.IReadOnlyPacket.Buffer">
<summary>
Gets the underlying buffer of the packet's data as a <see cref="T:System.ReadOnlySpan`1"/>.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.GetMemory">
<summary>
Gets the underlying buffer of the packet's data as <see cref="T:System.ReadOnlyMemory`1"/>.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.CanReadBool">
<summary>
Returns whether a boolean can be read from the current position in the packet.
</summary>
<returns><c>true</c> if a byte can be read from the current position in the packet and its value is either <c>0</c> or <c>1</c>.</returns>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.CanReadString">
<summary>
Returns whether a string can be read from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.Skip(System.Int32)">
<summary>
Advances the packet's position by the specified number of bytes.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.Skip(System.Type[])">
<summary>
Skips values of the specified types.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadBool">
<summary>
Reads a boolean from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadBool(System.Int32)">
<summary>
Reads a boolean from the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadByte">
<summary>
Reads a byte from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadByte(System.Int32)">
<summary>
Reads a byte from the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadShort">
<summary>
Reads a short from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadShort(System.Int32)">
<summary>
Reads a from the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadInt">
<summary>
Reads an integer from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadInt(System.Int32)">
<summary>
Reads an integer from the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadFloat">
<summary>
Reads a 32-bit floating point number from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadFloat(System.Int32)">
<summary>
Reads a 32-bit floating point number from the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadLong">
<summary>
Reads a long from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadLong(System.Int32)">
<summary>
Reads a long from the specified positions in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadString">
<summary>
Reads a string from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadString(System.Int32)">
<summary>
Reads a string from the specified position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadFloatAsString">
<summary>
Reads a string from the current position in the packet and parses it into a floating point number.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadFloatAsString(System.Int32)">
<summary>
Reads a string from the specified position in the packet and parses it into a floating point number.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.Read(System.Span{System.Byte})">
<summary>
Copies from the current position in the packet into the <see cref="T:System.Span`1"/>.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadBytes(System.Span{System.Byte},System.Int32)">
<summary>
Copies from the specified position in the packet into the <see cref="T:System.Span`1"/>
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadLegacyShort">
<summary>
Reads a short if the packet's protocol is Unity,
an int if it is Flash,
or throws if unknown.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadLegacyFloat">
<summary>
Reads a float if the packet's protocol is Unity,
a float (as a string) if it is Flash,
or throws if unknown.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.ReadLegacyLong">
<summary>
Reads a long if the packet's protocol is Unity,
an int if it is Flash,
or throws if unknown.
</summary>
</member>
<member name="M:Xabbo.Messages.IReadOnlyPacket.Copy">
<summary>
Creates a copy of this packet.
</summary>
</member>
<member name="T:Xabbo.Messages.Packet">
<inheritdoc cref="T:Xabbo.Messages.IPacket" />
</member>
<member name="F:Xabbo.Messages.Packet.Byte">
<inheritdoc cref="T:System.Byte" />
</member>
<member name="F:Xabbo.Messages.Packet.Bool">
<summary>
Represents a boolean as an 8-bit unsigned integer.
</summary>
</member>
<member name="F:Xabbo.Messages.Packet.Short">
<inheritdoc cref="T:System.Int16" />
</member>
<member name="F:Xabbo.Messages.Packet.Int">
<inheritdoc cref="T:System.Int32" />
</member>
<member name="F:Xabbo.Messages.Packet.Float">
<inheritdoc cref="T:System.Single" />
</member>
<member name="F:Xabbo.Messages.Packet.Long">
<inheritdoc cref="T:System.Int64" />
</member>
<member name="F:Xabbo.Messages.Packet.String">
<summary>
Represents a UTF-8 encoded string preceded by a 2-byte integer specifying its length.
</summary>
</member>
<member name="P:Xabbo.Messages.Packet.Protocol">
<inheritdoc />
</member>
<member name="P:Xabbo.Messages.Packet.Header">
<inheritdoc />
</member>
<member name="P:Xabbo.Messages.Packet.Buffer">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.GetMemory">
<inheritdoc />
</member>
<member name="P:Xabbo.Messages.Packet.Position">
<inheritdoc />
</member>
<member name="P:Xabbo.Messages.Packet.Length">
<inheritdoc />
</member>
<member name="P:Xabbo.Messages.Packet.Available">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.#ctor(Xabbo.Messages.Header,Xabbo.ClientType,System.Int32)">
<summary>
Constructs a new packet with the specified protocol and message header.
</summary>
<param name="protocol">The packet protocol hint.</param>
<param name="header">The message header.</param>
<param name="size">The initial size in bytes of the packet data buffer.</param>
</member>
<member name="M:Xabbo.Messages.Packet.#ctor(Xabbo.Messages.Header,System.ReadOnlySpan{System.Byte},Xabbo.ClientType)">
<summary>
Constructs a new packet with the specified protocol and header,
copying the <see cref="T:System.ReadOnlySpan`1"/> into its internal buffer.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.#ctor(Xabbo.Messages.Header,System.Buffers.ReadOnlySequence{System.Byte}@,Xabbo.ClientType)">
<summary>
Constructs a new packet with the specified protocol and header,
copying the <see cref="T:System.Buffers.ReadOnlySequence`1"/> into its internal buffer.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.Copy">
<inheritdoc cref="M:Xabbo.Messages.IReadOnlyPacket.Copy" />
</member>
<member name="M:Xabbo.Messages.Packet.Grow(System.Int32)">
<summary>
Grows the internal buffer by the specified number of bytes from the current position in the packet, if its size is insufficient.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.GrowToSize(System.Int32)">
<summary>
Grows the internal buffer to the specified minimum size, if its size is insufficient.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.CanReadByte">
<summary>
Returns whether a byte can be read from the current position in the packet.
</summary>
<returns><c>true</c> if the number of available bytes is &gt;= <c>1</c>.</returns>
</member>
<member name="M:Xabbo.Messages.Packet.CanReadBool">
<summary>
Returns whether a bool can be read from the current position in the packet.
</summary>
<returns><c>true</c> if a byte can be read from the current position in the packet and its value is either <c>0</c> or <c>1</c>.</returns>
</member>
<member name="M:Xabbo.Messages.Packet.CanReadInt">
<summary>
Returns whether an int can be read from the current position in the packet.
</summary>
<returns></returns>
</member>
<member name="M:Xabbo.Messages.Packet.CanReadString">
<summary>
Returns whether a string can be read from the current position in the packet.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.CanReadFloatAsString">
<summary>
Returns whether a float can be read as a string from the current position in the packet.
</summary>
<returns></returns>
</member>
<member name="M:Xabbo.Messages.Packet.Skip(System.Int32)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.Skip(System.Int32)" />
</member>
<member name="M:Xabbo.Messages.Packet.Skip(System.Type)">
<summary>
Skips a value of the specified type.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.Skip(System.Type[])">
<inheritdoc cref="M:Xabbo.Messages.IPacket.Skip(System.Type[])" />
</member>
<member name="M:Xabbo.Messages.Packet.ReadByte">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadByte(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.Read(System.Span{System.Byte})">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadBytes(System.Span{System.Byte},System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadBool">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadBool(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadShort">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadShort(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadInt">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadInt(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadFloat">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadFloat(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadLong">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadLong(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadString">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadString(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadFloatAsString">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.ReadFloatAsString(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.GetSpan(System.Int32)">
<inheritdoc />
</member>
<member name="M:Xabbo.Messages.Packet.WriteFloat(System.Single,System.Int32)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteFloat(System.Single,System.Int32)" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteFloatAsString(System.Single)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteFloatAsString(System.Single)" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteFloatAsString(System.Single,System.Int32)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteFloatAsString(System.Single,System.Int32)" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteString(System.String)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteString(System.String)" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteString(System.String,System.Int32)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteString(System.String,System.Int32)" />
</member>
<member name="M:Xabbo.Messages.Packet.ReadLegacyShort">
<inheritdoc cref="M:Xabbo.Messages.IReadOnlyPacket.ReadLegacyShort" />
</member>
<member name="M:Xabbo.Messages.Packet.ReadLegacyFloat">
<inheritdoc cref="M:Xabbo.Messages.IReadOnlyPacket.ReadLegacyFloat" />
</member>
<member name="M:Xabbo.Messages.Packet.ReadLegacyLong">
<inheritdoc cref="M:Xabbo.Messages.IReadOnlyPacket.ReadLegacyLong" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteLegacyShort(System.Int16)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteLegacyShort(System.Int16)" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteLegacyFloat(System.Single)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteLegacyFloat(System.Single)" />
</member>
<member name="M:Xabbo.Messages.Packet.WriteLegacyLong(System.Int64)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.WriteLegacyLong(System.Int64)" />
</member>
<member name="M:Xabbo.Messages.Packet.ReplaceString(System.String)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.ReplaceString(System.String)" />
</member>
<member name="M:Xabbo.Messages.Packet.ReplaceString(System.String,System.Int32)">
<inheritdoc cref="M:Xabbo.Messages.IPacket.ReplaceString(System.String,System.Int32)" />
</member>
<member name="M:Xabbo.Messages.Packet.ModifyString(System.Func{System.String,System.String})">
<inheritdoc cref="M:Xabbo.Messages.IPacket.ModifyString(System.Func{System.String,System.String})" />
</member>
<member name="M:Xabbo.Messages.Packet.Replace(System.Object[])">
<inheritdoc cref="M:Xabbo.Messages.IPacket.Replace(System.Object[])" />
</member>
<member name="M:Xabbo.Messages.Packet.Dispose">
<summary>
Disposes of this packet and its memory.
</summary>
</member>
<member name="M:Xabbo.Messages.Packet.Dispose(System.Boolean)">
<inheritdoc cref="M:Xabbo.Messages.Packet.Dispose" />
</member>
<member name="T:Xabbo.Messages.UnifiedMessageManager">
<summary>
Manages messages of the Unity and Flash clients using a message mapping file.
</summary>
</member>
<member name="P:Xabbo.Messages.UnifiedMessageManager.AutoFetch">
<summary>
Whether to fetch the message map file from the Xabbo.Messages GitHub repo
upon initialization if it does not exist locally.
</summary>
</member>
<member name="P:Xabbo.Messages.UnifiedMessageManager.Item(Xabbo.Messages.Identifier)">
<summary>
Gets the header
</summary>
<param name="identifier"></param>
<returns></returns>
</member>
<member name="M:Xabbo.Messages.UnifiedMessageManager.#ctor(Microsoft.Extensions.Configuration.IConfiguration)">
<summary>
Constructs a new <see cref="T:Xabbo.Messages.UnifiedMessageManager"/> using the specified configuration.
</summary>
</member>
<member name="M:Xabbo.Messages.UnifiedMessageManager.#ctor(System.String)">
<summary>
Constructs a new <see cref="T:Xabbo.Messages.UnifiedMessageManager"/> using the message map file path.
</summary>
</member>
<member name="M:Xabbo.Messages.UnifiedMessageManager.InitializeMessages(Xabbo.Messages.Direction)">
<summary>
Initializes the messages from the message map
</summary>
</member>
<member name="T:Xabbo.Messages.UnknownHeaderException">
<summary>
Thrown when attempting to access a named header that does not exist.
</summary>
</member>
<member name="P:Xabbo.Messages.UnknownHeaderException.Identifier">
<summary>
The identifier of the header.
</summary>
</member>
<member name="T:Xabbo.Messages.UnresolvedHeaderException">
<summary>
Thrown when attempting to access the value of a header which has not been resolved.
</summary>
</member>
<member name="P:Xabbo.Messages.UnresolvedHeaderException.Client">
<summary>
The client for which the header is unresolved.
</summary>
</member>
<member name="P:Xabbo.Messages.UnresolvedHeaderException.Header">
<summary>
The unresolved header.
</summary>
</member>
<member name="T:Xabbo.PacketExtensions">
<summary>
Provides extensions for reading/writing values to/from packets.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``1(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads a generically typed value from the packet.
</summary>
<typeparam name="T">The type of value to read.</typeparam>
<param name="p">The packet to read from.</param>
<returns>The value read from the current postion in the packet.</returns>
<exception cref="T:System.ArgumentException">The specified type <typeparamref name="T"/> cannot be read from the packet.</exception>
</member>
<member name="M:Xabbo.PacketExtensions.ReadList``1(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads a collection of values of the specified type into a list.
The size of the list is read as an int on Flash sessions, or a short on Unity sessions.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.WriteObject``1(``0,System.Object)">
<summary>
Writes the specified object to the packet.
It is recommended to use the explicitly typed Write methods or the generically typed <see cref="M:Xabbo.PacketExtensions.Write``2(``0,``1)"/>.
</summary>
<exception cref="T:System.ArgumentException">The type of the specified object is not supported for packet serialization.</exception>
</member>
<member name="M:Xabbo.PacketExtensions.WriteObjectCollection``1(``0,System.Collections.ICollection)">
<summary>
Writes the specified collection of objects to the packet.
The size of the collection is written as an int on Flash sessions, or a short on Unity sessions.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.WriteObjectEnumerable``1(``0,System.Collections.IEnumerable)">
<summary>
Writes the specified enumerable to the packet.
The number of items is written as an int on Flash sessions, or a short on Unity sessions.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``2(``0,``1)">
<summary>
Writes the specified generically typed value to the packet.
</summary>
<typeparam name="TPacket">The type of the packet.</typeparam>
<typeparam name="T">The type of value to write.</typeparam>
<param name="p">The packet.</param>
<param name="value">The value to write.</param>
<returns>A reference to this instance after the value has been written.</returns>
<exception cref="T:System.ArgumentException">The specified type is not supported for packet serialization.</exception>
</member>
<member name="M:Xabbo.PacketExtensions.WriteCollection``2(``0,System.Collections.Generic.ICollection{``1})">
<summary>
Writes the specified generically typed collection to the packet.
The size of the collection is written as an int on Flash sessions, or a short on Unity sessions.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.WriteEnumerable``2(``0,System.Collections.Generic.IEnumerable{``1})">
<summary>
Writes the specified generically typed enumerable to the packet.
The number of items is written as an int on Flash sessions, or a short on Unity sessions.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``2(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``3(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``4(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``5(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``6(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``7(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``8(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``9(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``10(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``11(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``12(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``13(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``14(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``15(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``16(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``17(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``18(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``19(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Read``20(Xabbo.Messages.IReadOnlyPacket)">
<summary>
Reads the specified generically typed values from the packet into a tuple.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``3(``0,``1,``2)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``4(``0,``1,``2,``3)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``5(``0,``1,``2,``3,``4)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``6(``0,``1,``2,``3,``4,``5)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``7(``0,``1,``2,``3,``4,``5,``6)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``8(``0,``1,``2,``3,``4,``5,``6,``7)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``9(``0,``1,``2,``3,``4,``5,``6,``7,``8)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``10(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``11(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``12(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``13(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``14(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``15(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``16(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``17(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``18(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``19(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``20(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18,``19)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
<member name="M:Xabbo.PacketExtensions.Write``21(``0,``1,``2,``3,``4,``5,``6,``7,``8,``9,``10,``11,``12,``13,``14,``15,``16,``17,``18,``19,``20)">
<summary>
Writes the specified generically typed values to the packet.
</summary>
</member>
</members>
</doc>