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
2284 lines
109 KiB
XML
2284 lines
109 KiB
XML
<?xml version="1.0"?>
|
|
<doc>
|
|
<assembly>
|
|
<name>Xabbo.Common</name>
|
|
</assembly>
|
|
<members>
|
|
<member name="T:Xabbo.Client">
|
|
<summary>
|
|
Represents a client type, identifier and version.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Client.#ctor(Xabbo.ClientType,System.String,System.String)">
|
|
<summary>
|
|
Represents a client type, identifier and version.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.ClientType">
|
|
<summary>
|
|
Represents a type of game client.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.None">
|
|
<summary>
|
|
Represents no particular client.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.Unity">
|
|
<summary>
|
|
Represents the Unity client.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.Flash">
|
|
<summary>
|
|
Represents the Flash client.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.Shockwave">
|
|
<summary>
|
|
Represents the Shockwave client.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.All">
|
|
<summary>
|
|
Represents all clients.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.Modern">
|
|
<summary>
|
|
Represents modern clients. (<see cref="F:Xabbo.ClientType.Unity"/> or <see cref="F:Xabbo.ClientType.Flash"/>)
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.ClientType.Origins">
|
|
<summary>
|
|
Represents the Origins client. (<see cref="F:Xabbo.ClientType.Shockwave"/>)
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.ConnectedEventArgs">
|
|
<summary>
|
|
Provides data for the <see cref="E:Xabbo.Connection.IConnection.Connected"/> event.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ConnectedEventArgs.Host">
|
|
<summary>
|
|
Gets the host for the current game connection.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ConnectedEventArgs.Port">
|
|
<summary>
|
|
Gets the port for the current game connection.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ConnectedEventArgs.Session">
|
|
<summary>
|
|
Gets the session information for the current game connection.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ConnectedEventArgs.MessagesFilePath">
|
|
<summary>
|
|
Gets the path to the messages file, if it is available.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ConnectedEventArgs.Messages">
|
|
<summary>
|
|
Gets a list of client-specific message information.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ConnectedEventArgs.PreEstablished">
|
|
<summary>
|
|
Gets whether the connection was previously established at the time of initialization.
|
|
</summary>
|
|
<remarks>
|
|
If this is true, it is likely safe to begin sending packets. Otherwise, the connection
|
|
could be in a pre-authenticated state and it may not be safe to send certain packets.
|
|
</remarks>
|
|
</member>
|
|
<member name="T:Xabbo.ConnectionExtensions">
|
|
<summary>
|
|
Provides extensions methods for <see cref="T:Xabbo.Connection.IConnection"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.ConnectionExtensions.Send(Xabbo.Connection.IConnection,Xabbo.Messages.Header)">
|
|
<summary>
|
|
Sends an empty packet with the specified message header.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.ConnectionExtensions.Send(Xabbo.Connection.IConnection,Xabbo.Messages.Identifier)">
|
|
<summary>
|
|
Sends an empty packet with the specified message identifier.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.ConnectionExtensions.Send(Xabbo.Connection.IConnection,Xabbo.Messages.IMessage)">
|
|
<summary>
|
|
Sends a message to the client or server, specified by the direction of the message.
|
|
</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 whether a connection to the game is currently 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.Session">
|
|
<summary>
|
|
Gets the session information for the current connection.
|
|
</summary>
|
|
</member>
|
|
<member name="E:Xabbo.Connection.IConnection.Connected">
|
|
<summary>
|
|
Occurs when a connection to the game is established.
|
|
</summary>
|
|
</member>
|
|
<member name="E:Xabbo.Connection.IConnection.Disconnected">
|
|
<summary>
|
|
Occurs when a connection to the game ends.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Connection.IConnection.Send(Xabbo.Messages.IPacket)">
|
|
<summary>
|
|
Sends a packet to the client or server, specified by the direction of the packet's header.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Direction">
|
|
<summary>
|
|
Represents the direction of a message.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.EnumExtensions.ToShortString(Xabbo.Direction)">
|
|
<summary>
|
|
Returns a short string representation of the specified direction.
|
|
</summary>
|
|
<returns><c>in</c>, <c>out</c> or <c>both</c>.</returns>
|
|
</member>
|
|
<member name="M:Xabbo.EnumExtensions.ToShortString(Xabbo.ClientType)">
|
|
<summary>
|
|
Returns a short string representation of the specified client.
|
|
</summary>
|
|
<returns><c>u</c>, <c>f</c>, <c>s</c> or a combination representing which client flags are set.</returns>
|
|
</member>
|
|
<member name="T:Xabbo.ExtensionAttribute">
|
|
<summary>
|
|
Defines information about an extension.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ExtensionAttribute.Name">
|
|
<summary>
|
|
Defines the title of the extension.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ExtensionAttribute.Description">
|
|
<summary>
|
|
Defines the description of the extension.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ExtensionAttribute.Author">
|
|
<summary>
|
|
Defines the author of the extension.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.ExtensionAttribute.Version">
|
|
<summary>
|
|
Defines the version of the extension.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Extension.ExtensionInfo">
|
|
<summary>
|
|
Defines information about an extension.
|
|
</summary>
|
|
<param name="Name">The name of the extension.</param>
|
|
<param name="Description">The description of the extension.</param>
|
|
<param name="Author">The author of the extension.</param>
|
|
<param name="Version">The version of the extension.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Extension.ExtensionInfo.#ctor(System.String,System.String,System.String,System.String)">
|
|
<summary>
|
|
Defines information about an extension.
|
|
</summary>
|
|
<param name="Name">The name of the extension.</param>
|
|
<param name="Description">The description of the extension.</param>
|
|
<param name="Author">The author of the extension.</param>
|
|
<param name="Version">The version of the extension.</param>
|
|
</member>
|
|
<member name="P:Xabbo.Extension.ExtensionInfo.Name">
|
|
<summary>The name of the extension.</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Extension.ExtensionInfo.Description">
|
|
<summary>The description of the extension.</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Extension.ExtensionInfo.Author">
|
|
<summary>The author of the extension.</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Extension.ExtensionInfo.Version">
|
|
<summary>The version of the extension.</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.Activated">
|
|
<summary>
|
|
Occurs when the extension is activated by the user.
|
|
</summary>
|
|
</member>
|
|
<member name="E:Xabbo.Extension.IExtension.Intercepted">
|
|
<summary>
|
|
Occurs when a packet has been intercepted.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Extension.IExtensionInfoInit">
|
|
<summary>
|
|
Allows an extension to initialize its information.
|
|
The source generator will implement this interface on partial classes marked with <see cref="T:Xabbo.ExtensionAttribute"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Extension.IExtensionInfoInit.Info">
|
|
<summary>
|
|
The extension information.
|
|
</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 is currently being used to connect to the remote interceptor.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Extension.IRemoteExtension.RunAsync(System.Threading.CancellationToken)">
|
|
<summary>
|
|
Connects to the remote interceptor and runs the packet processing loop.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.FloatString">
|
|
<summary>
|
|
Represents a float that is parsed and composed as a string.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.FloatString.#ctor(System.Single)">
|
|
<summary>
|
|
Represents a float that is parsed and composed as a string.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Hotel">
|
|
<summary>
|
|
Represents a hotel region.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Hotel.None">
|
|
<summary>
|
|
Represents no particular hotel.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.All">
|
|
<summary>
|
|
Contains the definitions of all hotels, mapped by their identifier.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.Name">
|
|
<summary>
|
|
Gets the name of this hotel, e.g. "US", "Netherlands".
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.Identifier">
|
|
<summary>
|
|
Gets the identifier of this hotel, e.g. "us", "nl".
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.Subdomain">
|
|
<summary>
|
|
Gets the subdomain of this hotel, e.g. "www", "sandbox".
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.Domain">
|
|
<summary>
|
|
Gets the top-level domain of this hotel, e.g. "com", "com.br".
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.HostName">
|
|
<summary>
|
|
Gets the hostname for this hotel, e.g. "habbo".
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.WebHost">
|
|
<summary>
|
|
Gets the web host for this hotel, e.g. "www.habbo.com".
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.GameHost">
|
|
<summary>
|
|
Gets the game host for this hotel.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Hotel.IsOrigins">
|
|
<summary>
|
|
Gets whether this is an origins 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,System.Boolean)">
|
|
<summary>
|
|
Creates a new hotel instance.
|
|
</summary>
|
|
<param name="name">The name of the hotel.</param>
|
|
<param name="identifier">The short identifier of the hotel, e.g. "us".</param>
|
|
<param name="subdomain">The subdomain, e.g. "www", "sandbox".</param>
|
|
<param name="domain">The top-level domain, e.g. "com", "com.br".</param>
|
|
<param name="host">The hostname, e.g. "habbo".</param>
|
|
<param name="gameHost">The game host, defaults to "game-{identifier}.habbo.com".</param>
|
|
<param name="isOrigins">Whether this is an Origins hotel.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Hotel.ToString">
|
|
<summary>
|
|
Returns the name of the hotel.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Hotel.FromIdentifier(System.String)">
|
|
<summary>
|
|
Gets the hotel with the specified identifier, e.g. "us".
|
|
</summary>
|
|
<returns>
|
|
The matching Hotel, or <see cref="F:Xabbo.Hotel.None"/> if it was not found.
|
|
</returns>
|
|
</member>
|
|
<member name="M:Xabbo.Hotel.FromGameHost(System.String)">
|
|
<summary>
|
|
Gets the hotel with the specified game host, e.g. "game-us.habbo.com".
|
|
</summary>
|
|
<returns>
|
|
The matching Hotel, or <see cref="F:Xabbo.Hotel.None"/> if it was not found.
|
|
</returns>
|
|
</member>
|
|
<member name="T:Xabbo.Id">
|
|
<summary>
|
|
Represents a numeric identifier.
|
|
</summary>
|
|
<remarks>
|
|
This type is represented as the following:
|
|
<list type="bullet">
|
|
<item>On Unity as a <see cref="T:System.Int64"/>.</item>
|
|
<item>On Flash as an <see cref="T:System.Int32"/>.</item>
|
|
<item>On Shockwave as a <see cref="T:Xabbo.Messages.VL64"/>.</item>
|
|
</list>
|
|
</remarks>
|
|
</member>
|
|
<member name="F:Xabbo.Id.MinValue">
|
|
<summary>
|
|
The minimum value of and <see cref="T:Xabbo.Id"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Id.MaxValue">
|
|
<summary>
|
|
The maximum value of an <see cref="T:Xabbo.Id"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Id.TryParse(System.String,Xabbo.Id@)">
|
|
<summary>
|
|
Parses a string representation of an Id to its value and
|
|
returns whether the conversion was successful.
|
|
</summary>
|
|
<param name="s">The string to parse.</param>
|
|
<param name="id">The parsed <see cref="T:Xabbo.Id"/>.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Id.ToString">
|
|
<summary>
|
|
Returns the value of this <see cref="T:Xabbo.Id"/> as a string.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Id.CompareTo(Xabbo.Id)">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="M:Xabbo.Id.CompareTo(System.Object)">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="T:Xabbo.InitializedEventArgs">
|
|
<summary>
|
|
Provides data for the <see cref="E:Xabbo.Interceptor.IInterceptor.Initialized"/> event.
|
|
</summary>
|
|
<param name="IsGameConnected">
|
|
Gets whether the game is already connected at the time of extension initialization.
|
|
</param>
|
|
</member>
|
|
<member name="M:Xabbo.InitializedEventArgs.#ctor(System.Nullable{System.Boolean})">
|
|
<summary>
|
|
Provides data for the <see cref="E:Xabbo.Interceptor.IInterceptor.Initialized"/> event.
|
|
</summary>
|
|
<param name="IsGameConnected">
|
|
Gets whether the game is already connected at the time of extension initialization.
|
|
</param>
|
|
</member>
|
|
<member name="P:Xabbo.InitializedEventArgs.IsGameConnected">
|
|
<summary>
|
|
Gets whether the game is already connected at the time of extension initialization.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Intercept">
|
|
<summary>
|
|
Contains the event arguments of an intercepted packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept.#ctor(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.IPacket@,System.Boolean@)">
|
|
<summary>
|
|
Contains the event arguments of an intercepted packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept.Interceptor">
|
|
<summary>
|
|
Gets the interceptor that intercepted this packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept.Timestamp">
|
|
<summary>
|
|
Gets the time that the packet was intercepted.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept.Direction">
|
|
<summary>
|
|
Gets the direction of the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept.Sequence">
|
|
<summary>
|
|
Gets the sequence number of the intercepted packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept.Packet">
|
|
<summary>
|
|
Gets or replaces the intercepted packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept.IsBlocked">
|
|
<summary>
|
|
Gets whether the packet will be blocked by the interceptor.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept.Is(System.ReadOnlySpan{Xabbo.Messages.Identifier})">
|
|
<summary>
|
|
Gets whether the intercepted packet's unmodified header matches any of the specified identifiers.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept.Block">
|
|
<summary>
|
|
Flags the packet to be blocked from its destination by the interceptor.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.InterceptAttribute">
|
|
<summary>
|
|
Indicates that a class or method intercepts messages for the specified clients.
|
|
If no clients are specified, then all clients are targeted.
|
|
</summary>
|
|
<remarks>
|
|
When placed on a method, and an <see cref="T:Xabbo.InterceptInAttribute"/> or
|
|
<see cref="T:Xabbo.InterceptOutAttribute"/> is also present, this attribute specifies
|
|
which clients the intercept handler should target. If no directional intercept
|
|
attributes are specified, then the method is considered to be a message handler,
|
|
the attribute must not specify any client types, and the method must have
|
|
one of the following function signatures:
|
|
<list type="bullet">
|
|
<item>void (<see cref="T:Xabbo.Intercept`1"/>)</item>
|
|
<item>void (<see cref="T:Xabbo.Intercept"/>, <see cref="T:Xabbo.Messages.IMessage`1"/>)</item>
|
|
<item>void (<see cref="T:Xabbo.Messages.IMessage`1"/>)</item>
|
|
<item><see cref="T:Xabbo.Messages.IMessage"/>? (<see cref="T:Xabbo.Messages.IMessage`1"/>)</item>
|
|
</list>
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptAttribute.#ctor(Xabbo.ClientType)">
|
|
<summary>
|
|
Indicates that a class or method intercepts messages for the specified clients.
|
|
If no clients are specified, then all clients are targeted.
|
|
</summary>
|
|
<remarks>
|
|
When placed on a method, and an <see cref="T:Xabbo.InterceptInAttribute"/> or
|
|
<see cref="T:Xabbo.InterceptOutAttribute"/> is also present, this attribute specifies
|
|
which clients the intercept handler should target. If no directional intercept
|
|
attributes are specified, then the method is considered to be a message handler,
|
|
the attribute must not specify any client types, and the method must have
|
|
one of the following function signatures:
|
|
<list type="bullet">
|
|
<item>void (<see cref="T:Xabbo.Intercept`1"/>)</item>
|
|
<item>void (<see cref="T:Xabbo.Intercept"/>, <see cref="T:Xabbo.Messages.IMessage`1"/>)</item>
|
|
<item>void (<see cref="T:Xabbo.Messages.IMessage`1"/>)</item>
|
|
<item><see cref="T:Xabbo.Messages.IMessage"/>? (<see cref="T:Xabbo.Messages.IMessage`1"/>)</item>
|
|
</list>
|
|
</remarks>
|
|
</member>
|
|
<member name="P:Xabbo.InterceptAttribute.Clients">
|
|
<summary>
|
|
The target clients on which to intercept packets.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptAttribute.#ctor">
|
|
<summary>
|
|
Constructs a new intercept attribute targeting all clients.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.InterceptInAttribute">
|
|
<summary>
|
|
When placed on a method, indicates that the method intercepts the specified incoming messages.
|
|
</summary>
|
|
<param name="identifiers">The names of the identifiers to intercept.</param>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptInAttribute.#ctor(System.String[])">
|
|
<summary>
|
|
When placed on a method, indicates that the method intercepts the specified incoming messages.
|
|
</summary>
|
|
<param name="identifiers">The names of the identifiers to intercept.</param>
|
|
</member>
|
|
<member name="P:Xabbo.InterceptInAttribute.Identifiers">
|
|
<summary>
|
|
The names of the identifiers to intercept.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.InterceptOutAttribute">
|
|
<summary>
|
|
When placed on a method, indicates that the method intercepts the specified outgoing messages.
|
|
</summary>
|
|
<param name="identifiers">The names of the identifiers to intercept.</param>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptOutAttribute.#ctor(System.String[])">
|
|
<summary>
|
|
When placed on a method, indicates that the method intercepts the specified outgoing messages.
|
|
</summary>
|
|
<param name="identifiers">The names of the identifiers to intercept.</param>
|
|
</member>
|
|
<member name="P:Xabbo.InterceptOutAttribute.Identifiers">
|
|
<summary>
|
|
The names of the identifiers to intercept.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.InterceptorExtensions">
|
|
<summary>
|
|
Provides extensions for <see cref="T:Xabbo.Interceptor.IInterceptor"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.Intercept(Xabbo.Interceptor.IInterceptor,System.ReadOnlySpan{Xabbo.Messages.Header},Xabbo.Messages.InterceptCallback,Xabbo.ClientType)">
|
|
<summary>
|
|
Registers an intercept for the specified headers with the provided <see cref="T:Xabbo.Messages.InterceptCallback"/>.
|
|
</summary>
|
|
<param name="interceptor">The interceptor to register the intercept for.</param>
|
|
<param name="headers">The message headers to intercept.</param>
|
|
<param name="callback">The function to call when a packet is intercepted.</param>
|
|
<param name="clients">Specifies which clients to intercept on.</param>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.Intercept(Xabbo.Interceptor.IInterceptor,System.ReadOnlySpan{Xabbo.Messages.Identifier},Xabbo.Messages.InterceptCallback,Xabbo.ClientType,System.Boolean)">
|
|
<summary>
|
|
Registers an intercept for the specified identifiers with the provided <see cref="T:Xabbo.Messages.InterceptCallback"/>.
|
|
</summary>
|
|
<param name="interceptor">The interceptor to register the intercept for.</param>
|
|
<param name="identifiers">The message identifiers to intercept.</param>
|
|
<param name="callback">The function to call when a packet is intercepted.</param>
|
|
<param name="clients">Specifies which clients to intercept on.</param>
|
|
<param name="targeted">
|
|
Whether to use client-targeted identifiers.
|
|
For example, if the client type of the message identifier is Flash,
|
|
then it will only intercept that identifier on the Flash client.
|
|
</param>
|
|
<returns></returns>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.Intercept``1(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.MessageCallback{``0})">
|
|
<summary>
|
|
Registers an intercept for the specified message with the provided <see cref="T:Xabbo.Messages.MessageCallback`1"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.Intercept``1(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.ModifyMessageCallback{``0})">
|
|
<summary>
|
|
Registers an intercept for the specified message with the provided <see cref="T:Xabbo.Messages.ModifyMessageCallback`1"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.Intercept``1(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.InterceptMessageCallback{``0})">
|
|
<summary>
|
|
Registers an intercept for the specified message with the provided <see cref="T:Xabbo.Messages.InterceptMessageCallback`1"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.ReceiveAsync(Xabbo.Interceptor.IInterceptor,System.ReadOnlySpan{Xabbo.Messages.Header},System.Nullable{System.Int32},System.Boolean,System.Func{Xabbo.Messages.IPacket,System.Boolean},System.Threading.CancellationToken)">
|
|
<summary>
|
|
Asynchronously captures the first intercepted packet matching any of the specified headers.
|
|
</summary>
|
|
<param name="interceptor">The interceptor.</param>
|
|
<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="shouldCapture">A callback that inspects intercepted packets and return whether the packet should be captured or not.</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.InterceptorExtensions.ReceiveAsync(Xabbo.Interceptor.IInterceptor,System.ReadOnlySpan{Xabbo.Messages.Identifier},System.Nullable{System.Int32},System.Boolean,System.Func{Xabbo.Messages.IPacket,System.Boolean},System.Threading.CancellationToken)">
|
|
<summary>
|
|
Asynchronously captures the first intercepted packet matching any of the specified headers.
|
|
</summary>
|
|
<param name="interceptor">The interceptor.</param>
|
|
<param name="identifiers">Specifies which messages 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="shouldCapture">A callback that inspects intercepted packets and return whether the packet should be captured or not.</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.InterceptorExtensions.ReceiveAsync``1(Xabbo.Interceptor.IInterceptor,System.Nullable{System.Int32},System.Boolean,System.Func{``0,System.Boolean},System.Threading.CancellationToken)">
|
|
<summary>
|
|
Asynchronously captures the first intercepted matching message.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of message to capture.</typeparam>
|
|
<param name="interceptor">The interceptor.</param>
|
|
<param name="timeout">The maximum time in milliseconds to wait for a message to be captured. <c>-1</c> specifies no timeout.</param>
|
|
<param name="block">Whether the captured message should be blocked from its destination.</param>
|
|
<param name="shouldCapture">A callback that inspects an intercepted message and return whether the message should be captured or not.</param>
|
|
<param name="cancellationToken">The token used to cancel this operation.</param>
|
|
<returns>A task that completes once a message has been captured, or the operation times out.</returns>
|
|
</member>
|
|
<member name="M:Xabbo.InterceptorExtensions.RequestAsync``3(Xabbo.Interceptor.IInterceptor,Xabbo.Messages.IRequestMessage{``0,``1,``2},System.Nullable{System.Int32},System.Boolean,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Sends a request message and asynchronously captures its response.
|
|
</summary>
|
|
<typeparam name="TReq">The type of the request message.</typeparam>
|
|
<typeparam name="TRes">The type of the response message.</typeparam>
|
|
<typeparam name="TData">The type of the response data.</typeparam>
|
|
<param name="interceptor">The interceptor.</param>
|
|
<param name="request">The request message to send.</param>
|
|
<param name="timeout">The maximum time in milliseconds to wait for a message to be captured. <c>-1</c> specifies no timeout.</param>
|
|
<param name="block">Whether the captured message should be blocked from its destination.</param>
|
|
<param name="cancellationToken">The token used to cancel this operation.</param>
|
|
</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.Dispatcher">
|
|
<summary>
|
|
Gets the message dispatcher associated with this interceptor.
|
|
</summary>
|
|
</member>
|
|
<member name="E:Xabbo.Interceptor.IInterceptor.Initialized">
|
|
<summary>
|
|
Occurs when the interceptor has been initialized.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Interceptor.IInterceptorContext">
|
|
<summary>
|
|
Represents a context that allows the source generator
|
|
to inject interceptor related methods into.
|
|
<para/>
|
|
The generator will inject the following methods into partial classes
|
|
that implement this interface and are marked with
|
|
<see cref="T:Xabbo.ExtensionAttribute"/> or <see cref="T:Xabbo.InterceptAttribute"/>:
|
|
<list type="bullet">
|
|
<item><c>void Send<T, ...>(Identifier, T, ...)</c> <i>(variadic)</i></item>
|
|
<item><c>void Send<T, ...>(Header, T, ...)</c> <i>(variadic)</i></item>
|
|
<item><c>void Send<T>(T msg) where T : IMessage<T></c></item>
|
|
<item><c>Task<IPacket> ReceiveAsync(Identifier, ...)</c></item>
|
|
<item><c>Task<IPacket> ReceiveAsync(Header, ...)</c></item>
|
|
<item><c>Task<T> ReceiveAsync<T>(...) where T : IMessage<T></c></item>
|
|
<item><c>Task<TData> RequestAsync<TReq, TRes, TData>(...) where T : IRequestMessage<TReq, TRes, TData></c></item>
|
|
</list>
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Interceptor.Tasks.CaptureMessageTask">
|
|
<summary>
|
|
A task that captures the first intercepted message with a specified header.
|
|
</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="M:Xabbo.Interceptor.Tasks.CaptureMessageTask.#ctor(Xabbo.Interceptor.IInterceptor,System.ReadOnlySpan{Xabbo.Messages.Header},System.Boolean,System.Func{Xabbo.Messages.IPacket,System.Boolean})">
|
|
<summary>
|
|
A task that captures the first intercepted message with a specified header.
|
|
</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 an asynchronous task that intercepts packets and returns a result.
|
|
</summary>
|
|
<typeparam name="TResult">The result type of the task.</typeparam>
|
|
</member>
|
|
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.#ctor(Xabbo.Interceptor.IInterceptor)">
|
|
<summary>
|
|
A base class used to implement an asynchronous task that intercepts packets and returns a result.
|
|
</summary>
|
|
<typeparam name="TResult">The result type of the task.</typeparam>
|
|
</member>
|
|
<member name="P:Xabbo.Interceptor.Tasks.InterceptorTask`1.SupportedClients">
|
|
<summary>
|
|
Gets the clients supported by this interceptor task.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Interceptor.Tasks.InterceptorTask`1.Interceptor">
|
|
<summary>
|
|
The interceptor that this task is attached to.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Interceptor.Tasks.InterceptorTask`1.Session">
|
|
<summary>
|
|
Gets the current session information.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.Execute(System.Nullable{System.Int32},System.Threading.CancellationToken)">
|
|
<summary>
|
|
Executes the task synchronously and returns the result.
|
|
</summary>
|
|
<param name="timeoutMs">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.Execute(System.TimeSpan,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Executes the task synchronously and returns the result.
|
|
</summary>
|
|
<param name="timeout">The maximum time to wait for a result. Use <see cref="F:System.TimeSpan.Zero"/> 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.Nullable{System.Int32},System.Threading.CancellationToken)">
|
|
<summary>
|
|
Executes the task asynchronously and returns the result.
|
|
</summary>
|
|
<param name="timeoutMs">The maximum time to wait for a result in milliseconds. 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.ExecuteAsync(System.TimeSpan,System.Threading.CancellationToken)">
|
|
<summary>
|
|
Executes the task asynchronously and returns the result.
|
|
</summary>
|
|
<param name="timeout">The maximum time to wait for a result. Use <see cref="F:System.TimeSpan.Zero"/> 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.OnAttach">
|
|
<summary>
|
|
Attaches this task to the interceptor's dispatcher.
|
|
The default implementation calls <see cref="M:Xabbo.Messages.IMessageHandler.Attach(Xabbo.Interceptor.IInterceptor)"/> if this task implements <see cref="T:Xabbo.Messages.IMessageHandler"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnRelease">
|
|
<summary>
|
|
Detaches this task from the interceptor's dispatcher.
|
|
The default implementation calls <see cref="M:System.IDisposable.Dispose"/> on the <see cref="T:System.IDisposable"/> returned by <see cref="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnAttach"/> .
|
|
</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.
|
|
The default implementation synchronously calls <see cref="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnExecute"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Interceptor.Tasks.InterceptorTask`1.OnExecute">
|
|
<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.Intercept`1">
|
|
<summary>
|
|
Contains the event arguments of an intercepted message.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of the message.</typeparam>
|
|
<param name="inner">The inner intercept instance to wrap.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept`1.#ctor(Xabbo.Intercept@)">
|
|
<summary>
|
|
Contains the event arguments of an intercepted message.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of the message.</typeparam>
|
|
<param name="inner">The inner intercept instance to wrap.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept`1.Wrap(Xabbo.Messages.InterceptCallback{`0})">
|
|
<summary>
|
|
Wraps the targeted message intercept callback.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept`1.Msg">
|
|
<summary>
|
|
Gets the parsed message for this intercept.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept`1.Interceptor">
|
|
<summary>
|
|
Gets the interceptor that intercepted this message.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept`1.Timestamp">
|
|
<summary>
|
|
Gets the time that the message was intercepted.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept`1.Direction">
|
|
<summary>
|
|
Gets the direction of the message.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept`1.Sequence">
|
|
<summary>
|
|
Gets the sequence number of the intercepted message.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Intercept`1.IsBlocked">
|
|
<summary>
|
|
Gets whether the packet will be blocked by the interceptor.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept`1.Is(System.ReadOnlySpan{Xabbo.Messages.Identifier})">
|
|
<summary>
|
|
Gets whether the intercepted packet's unmodified header matches any of the specified identifiers.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Intercept`1.Block">
|
|
<summary>
|
|
Flags the packet to be blocked from its destination by the interceptor.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Length">
|
|
<summary>
|
|
Represents an array length.
|
|
</summary>
|
|
<remarks>
|
|
This type is represented as the following:
|
|
<list type="bullet">
|
|
<item>On Unity as a <see cref="T:System.Int16"/>.</item>
|
|
<item>On Flash as an <see cref="T:System.Int32"/>.</item>
|
|
<item>On Shockwave as a <see cref="T:Xabbo.Messages.VL64"/>.</item>
|
|
</list>
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Length.ToString">
|
|
<summary>
|
|
Returns the value of this <see cref="T:Xabbo.Length"/> as a string.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Length.CompareTo(Xabbo.Length)">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="M:Xabbo.Length.CompareTo(System.Object)">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.AmbiguousIdentifierException">
|
|
<summary>
|
|
Thrown when an identifier resolves to multiple message name sets.
|
|
</summary>
|
|
<param name="identifier">The ambiguous identifier.</param>
|
|
<param name="names">The set of message names resolved by the identifier.</param>
|
|
<remarks>
|
|
This can happen when a non-targeted identifier (with <see cref="F:Xabbo.ClientType.None"/> as its client type)
|
|
resolves to multiple sets of identifiers such as
|
|
(<see cref="F:Xabbo.ClientType.Shockwave"/>/"Objects") and (<see cref="F:Xabbo.ClientType.Flash"/>/"Objects")
|
|
which are considered to be different messages.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.AmbiguousIdentifierException.#ctor(Xabbo.Messages.Identifier,System.Collections.Generic.IEnumerable{Xabbo.Messages.MessageNames})">
|
|
<summary>
|
|
Thrown when an identifier resolves to multiple message name sets.
|
|
</summary>
|
|
<param name="identifier">The ambiguous identifier.</param>
|
|
<param name="names">The set of message names resolved by the identifier.</param>
|
|
<remarks>
|
|
This can happen when a non-targeted identifier (with <see cref="F:Xabbo.ClientType.None"/> as its client type)
|
|
resolves to multiple sets of identifiers such as
|
|
(<see cref="F:Xabbo.ClientType.Shockwave"/>/"Objects") and (<see cref="F:Xabbo.ClientType.Flash"/>/"Objects")
|
|
which are considered to be different messages.
|
|
</remarks>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.B64">
|
|
<summary>
|
|
Represents an unsigned fixed-length radix-64 encoded integer.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.B64.MinValue">
|
|
<summary>
|
|
The minimum value of a <see cref="T:Xabbo.Messages.B64"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.B64.MaxValue">
|
|
<summary>
|
|
The maximum value of a <see cref="T:Xabbo.Messages.B64"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.B64.Encode(System.Span{System.Byte},Xabbo.Messages.B64)">
|
|
<summary>
|
|
Encodes a B64 value to the specified span.
|
|
</summary>
|
|
<param name="buf">The span to encode into.</param>
|
|
<param name="value">The value to encode.</param>
|
|
<exception cref="T:System.ArgumentOutOfRangeException">
|
|
If the value is outside the range of a B64,
|
|
or the length of the provided span is less than 2.
|
|
</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.B64.Decode(System.ReadOnlySpan{System.Byte})">
|
|
<summary>
|
|
Decodes a B64 value from the specified read-only byte span.
|
|
</summary>
|
|
<param name="buf">The span to decode from.</param>
|
|
<returns>The decoded B64 value.</returns>
|
|
<exception cref="T:System.ArgumentOutOfRangeException">If the length of the provided span is less than 2.</exception>
|
|
<exception cref="T:System.ArgumentException">
|
|
If any of the input bytes' 2 most significant bits are not set to <c>01</c>.
|
|
</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.B64.ToString">
|
|
<summary>
|
|
Returns the value of this <see cref="T:Xabbo.Messages.B64"/> as a string.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.ClientMessage">
|
|
<summary>
|
|
Defines information about a client message.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.ClientMessage.#ctor(Xabbo.ClientType,Xabbo.Direction,System.Int16,System.String)">
|
|
<summary>
|
|
Defines information about a client message.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.Header">
|
|
<summary>
|
|
Specifies a direction and header value.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Header.#ctor(Xabbo.Direction,System.Int16)">
|
|
<summary>
|
|
Specifies a direction and header value.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.Header.Unknown">
|
|
<summary>
|
|
Represents an unknown header.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.Header.All">
|
|
<summary>
|
|
Represents a header that matches all messages.
|
|
</summary>
|
|
<remarks>
|
|
This can be used to intercept all packets with <see cref="M:Xabbo.InterceptorExtensions.Intercept(Xabbo.Interceptor.IInterceptor,System.ReadOnlySpan{Xabbo.Messages.Header},Xabbo.Messages.InterceptCallback,Xabbo.ClientType)"/>.
|
|
</remarks>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.Headers">
|
|
<summary>
|
|
Represents a set of <see cref="T:Xabbo.Messages.Header"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.Headers.Unknown">
|
|
<summary>
|
|
Gets the unknown identifiers in this set.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.Headers.Incoming">
|
|
<summary>
|
|
Gets the incoming identifiers in this set.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.Headers.Outgoing">
|
|
<summary>
|
|
Gets the outgoing identifiers in this set.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Headers.#ctor">
|
|
<summary>
|
|
Creates a new empty header set.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Headers.#ctor(System.Collections.Generic.IEnumerable{Xabbo.Messages.Header})">
|
|
<summary>
|
|
Creates a header set with the specified headers.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Headers.ToString">
|
|
<summary>
|
|
Gets a string representation of this header set.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IComposer">
|
|
<summary>
|
|
Represents an object that can be composed to a packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IComposer.Compose(Xabbo.Messages.PacketWriter@)">
|
|
<summary>
|
|
Composes the object to a packet using the specified <see cref="T:Xabbo.Messages.PacketWriter"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.Identifier">
|
|
<summary>
|
|
Represents a client type, direction, and message name.
|
|
</summary>
|
|
<remarks>
|
|
Used to associate a message name with a <see cref="T:Xabbo.Messages.Header"/> that is resolved at runtime.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Identifier.#ctor(Xabbo.ClientType,Xabbo.Direction,System.String)">
|
|
<summary>
|
|
Represents a client type, direction, and message name.
|
|
</summary>
|
|
<remarks>
|
|
Used to associate a message name with a <see cref="T:Xabbo.Messages.Header"/> that is resolved at runtime.
|
|
</remarks>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.Identifiers">
|
|
<summary>
|
|
Represents a set of <see cref="T:Xabbo.Messages.Identifier"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.Identifiers.Unknown">
|
|
<summary>
|
|
Gets the unknown identifiers in this set.
|
|
</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 a new empty identifier set.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Identifiers.#ctor(System.Collections.Generic.IEnumerable{Xabbo.Messages.Identifier})">
|
|
<summary>
|
|
Creates an identifier set with the specified identifiers.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Identifiers.Add(Xabbo.ClientType,Xabbo.Direction,System.String)">
|
|
<summary>
|
|
Adds a new identifier with the specified direction and name to this set.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Identifiers.Add(Xabbo.ClientType,Xabbo.Direction,System.String[])">
|
|
<summary>
|
|
Adds a range of new identifiers with the specified direction 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.IMessage">
|
|
<summary>
|
|
Represents a message with an associated identifier that can be composed to a packet.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.IMessage.Block">
|
|
<summary>
|
|
A message instance that blocks the packet if it is returned from a <see cref="T:Xabbo.Messages.ModifyMessageCallback`1"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage.GetIdentifier(Xabbo.ClientType)">
|
|
<summary>
|
|
Gets the identifier for this message instance.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage.GetSupportedClients">
|
|
<summary>
|
|
Gets the clients that this message supports.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IMessageDispatcher">
|
|
<summary>
|
|
Represents a service that routes intercepted messages to registered intercept handlers.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IMessageDispatcher.Messages">
|
|
<summary>
|
|
Gets the message manager associated with this dispatcher.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageDispatcher.Dispatch(Xabbo.Intercept)">
|
|
<summary>
|
|
Routes the specified <see cref="T:Xabbo.Intercept"/> to the relevant handlers currently attached to this dispatcher.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageDispatcher.Register(Xabbo.Messages.InterceptGroup)">
|
|
<summary>
|
|
Registers a group of intercept handlers.
|
|
</summary>
|
|
<returns>
|
|
An <see cref="T:System.IDisposable"/> that deregisters the intercept group
|
|
when <see cref="M:System.IDisposable.Dispose"/> is called.
|
|
</returns>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageDispatcher.Reset">
|
|
<summary>
|
|
Releases all bound intercept handlers and intercept callbacks.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IMessageHandler">
|
|
<summary>
|
|
Represents a message handler that can be attached to an interceptor.
|
|
</summary>
|
|
<remarks>
|
|
The source generator will implement this interface on partial classes marked with
|
|
<see cref="T:Xabbo.InterceptAttribute"/> or <see cref="T:Xabbo.ExtensionAttribute"/>.
|
|
Intercept handlers will be generated for methods marked with <see cref="T:Xabbo.InterceptAttribute"/>,
|
|
<see cref="T:Xabbo.InterceptInAttribute"/> or <see cref="T:Xabbo.InterceptOutAttribute"/>.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageHandler.Attach(Xabbo.Interceptor.IInterceptor)">
|
|
<summary>
|
|
Attaches the handler to the specified interceptor.
|
|
</summary>
|
|
<returns>
|
|
An <see cref="T:System.IDisposable"/> that detaches the handler
|
|
when <see cref="M:System.IDisposable.Dispose"/> is called.
|
|
</returns>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IMessageManager">
|
|
<summary>
|
|
Represents a service that manages client specific message & header information.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.InitializeAsync(System.Threading.CancellationToken)">
|
|
<summary>
|
|
Initializes the message manager.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IMessageManager.Available">
|
|
<summary>
|
|
Gets whether message information is available.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.LoadMessages(System.Collections.Generic.IEnumerable{Xabbo.Messages.ClientMessage})">
|
|
<summary>
|
|
Loads the specified client messages.
|
|
</summary>
|
|
</member>
|
|
<member name="E:Xabbo.Messages.IMessageManager.Loaded">
|
|
<summary>
|
|
Notifies listeners when messages have been loaded.
|
|
</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.TryGetNames(Xabbo.Messages.Identifier,Xabbo.Messages.MessageNames@)">
|
|
<summary>
|
|
Attempts to get the associated message names for the specified identifier.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.TryGetNames(Xabbo.Messages.Header,Xabbo.Messages.MessageNames@)">
|
|
<summary>
|
|
Attempts to get the associated message names for the specified header.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.Resolve(Xabbo.Messages.Identifier)">
|
|
<summary>
|
|
Resolves the specified identifier to a header.
|
|
</summary>
|
|
<exception cref="T:Xabbo.Messages.UnresolvedIdentifiersException">If the identifier could not be resolved.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.Resolve(System.ReadOnlySpan{Xabbo.Messages.Identifier})">
|
|
<summary>
|
|
Resolves the specified identifiers to an array of headers.
|
|
</summary>
|
|
<exception cref="T:System.ArgumentException">If no identifiers were specified.</exception>
|
|
<exception cref="T:Xabbo.Messages.UnresolvedIdentifiersException">If any of the identifiers could not be resolved.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.TryResolve(System.ReadOnlySpan{Xabbo.Messages.Identifier},Xabbo.Messages.Headers@,Xabbo.Messages.Identifiers@)">
|
|
<summary>
|
|
Attempts to resolve the specified identifiers to an array of headers.
|
|
</summary>
|
|
<exception cref="T:System.ArgumentException">If no identifiers were specified.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessageManager.Is(Xabbo.Messages.Header,System.ReadOnlySpan{Xabbo.Messages.Identifier})">
|
|
<summary>
|
|
Gets whether the header matches any of the specified identifiers.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IMessage`1">
|
|
<summary>
|
|
Represents a message with an associated identifier that can be parsed from and composed to a packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IMessage`1.Identifiers">
|
|
<summary>
|
|
Gets the target identifiers for this message.
|
|
</summary>
|
|
<remarks>
|
|
The default implementation returns an array containing the single <see cref="P:Xabbo.Messages.IMessage`1.Identifier"/>.
|
|
</remarks>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IMessage`1.UseTargetedIdentifiers">
|
|
<summary>
|
|
Gets whether each of the identifiers should only intercept on their respective client types.
|
|
</summary>
|
|
<remarks>
|
|
The default implementation returns false.
|
|
</remarks>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IMessage`1.SupportedClients">
|
|
<summary>
|
|
Gets the client types that this message supports.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IMessage`1.Identifier">
|
|
<summary>
|
|
Gets the identifier for this message.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage`1.Xabbo#Messages#IMessage#GetIdentifier(Xabbo.ClientType)">
|
|
<inheritdoc/>
|
|
<remarks>
|
|
The default implementation returns the static <see cref="P:Xabbo.Messages.IMessage`1.Identifier"/>.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage`1.Match(Xabbo.Messages.PacketReader@)">
|
|
<summary>
|
|
Checks whether the specified packet matches this message.
|
|
</summary>
|
|
<remarks>
|
|
The default implementation returns true.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage`1.CreateHandler(Xabbo.Messages.InterceptCallback{`0})">
|
|
<summary>
|
|
Creates an <see cref="T:Xabbo.Messages.InterceptHandler"/> for the specified <see cref="T:Xabbo.Messages.InterceptCallback`1"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage`1.CreateHandler(Xabbo.Messages.ModifyMessageCallback{`0})">
|
|
<summary>
|
|
Creates an <see cref="T:Xabbo.Messages.InterceptHandler"/> for the specified <see cref="T:Xabbo.Messages.ModifyMessageCallback`1"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage`1.CreateHandler(Xabbo.Messages.MessageCallback{`0})">
|
|
<summary>
|
|
Creates an <see cref="T:Xabbo.Messages.InterceptHandler"/> for the specified <see cref="T:Xabbo.Messages.MessageCallback`1"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IMessage`1.CreateHandler(Xabbo.Messages.InterceptMessageCallback{`0})">
|
|
<summary>
|
|
Creates an <see cref="T:Xabbo.Messages.InterceptHandler"/> for the specified <see cref="T:Xabbo.Messages.InterceptMessageCallback`1"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.InterceptCallback">
|
|
<summary>
|
|
Handles an intercepted packet.
|
|
</summary>
|
|
<param name="intercept">The intercept event arguments.</param>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.InterceptCallback`1">
|
|
<summary>
|
|
Handles an intercepted message.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of the message.</typeparam>
|
|
<param name="intercept">The intercept event arguments.</param>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.InterceptGroup">
|
|
<summary>
|
|
Defines a set of related intercept handlers.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.InterceptGroup.#ctor">
|
|
<summary>
|
|
Constructs a new empty intercept group.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.InterceptGroup.#ctor(System.ReadOnlySpan{Xabbo.Messages.InterceptHandler})">
|
|
<summary>
|
|
Constructs a new intercept group with the specified handlers.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.InterceptGroup.Persistent">
|
|
<summary>
|
|
Whether this is a persistent intercept group.
|
|
</summary>
|
|
<remarks>
|
|
Persistent intercept groups can be attached before a connection is established
|
|
when message information is not yet available. They will be persisted by a message
|
|
dispatcher and re-attached each time the game connects, until the registration
|
|
returned by <see cref="M:Xabbo.Messages.IMessageDispatcher.Register(Xabbo.Messages.InterceptGroup)"/> is disposed of.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.InterceptGroup.Add(Xabbo.Messages.InterceptHandler)">
|
|
<summary>
|
|
Adds the specified handler to the intercept group.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.InterceptHandler">
|
|
<summary>
|
|
Associates a set of <see cref="T:Xabbo.Messages.Identifier"/> and/or <see cref="T:Xabbo.Messages.Header"/> with an <see cref="T:Xabbo.Messages.InterceptCallback"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.InterceptHandler.#ctor(System.ReadOnlySpan{Xabbo.Messages.Header},System.ReadOnlySpan{Xabbo.Messages.Identifier},Xabbo.Messages.InterceptCallback)">
|
|
<summary>
|
|
Associates a set of <see cref="T:Xabbo.Messages.Identifier"/> and/or <see cref="T:Xabbo.Messages.Header"/> with an <see cref="T:Xabbo.Messages.InterceptCallback"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.InterceptHandler.#ctor(System.ReadOnlySpan{Xabbo.Messages.Header},Xabbo.Messages.InterceptCallback)">
|
|
<summary>
|
|
Constructs a new intercept handler with the specified headers and callback.
|
|
</summary>
|
|
<param name="headers">The headers to intercept.</param>
|
|
<param name="callback">The intercept handler callback.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.InterceptHandler.#ctor(System.ReadOnlySpan{Xabbo.Messages.Identifier},Xabbo.Messages.InterceptCallback)">
|
|
<summary>
|
|
Constructs a new intercept handler with the specified identifiers and callback.
|
|
</summary>
|
|
<param name="identifiers">The identifiers to intercept.</param>
|
|
<param name="callback">The intercept handler callback.</param>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.InterceptHandler.Target">
|
|
<summary>
|
|
Specifies which clients this handler should be registered for.
|
|
The handler will only be attached on the specified client sessions.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.InterceptHandler.UseTargetedIdentifiers">
|
|
<summary>
|
|
Whether to use client-targeted identifiers.
|
|
</summary>
|
|
<remarks>
|
|
Targeted identifiers will only intercept messages for the their specified client.
|
|
For example, a Flash identifier will only intercept messages for the Flash client.
|
|
</remarks>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.InterceptHandler.Headers">
|
|
<summary>
|
|
Gets the target headers.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.InterceptHandler.Identifiers">
|
|
<summary>
|
|
Gets the target identifiers.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.InterceptHandler.Callback">
|
|
<summary>
|
|
Gets the intercept handler callback.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.InterceptMessageCallback`1">
|
|
<summary>
|
|
Handles an intercepted message.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of the message.</typeparam>
|
|
<param name="intercept">The intercept event arguments.</param>
|
|
<param name="msg">The intercepted message.</param>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IPacket">
|
|
<summary>
|
|
Represents a packet of 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.Client">
|
|
<summary>
|
|
Gets the client type of the packet's header.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IPacket.Context">
|
|
<summary>
|
|
Gets the context this packet was intercepted in.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IPacket.Buffer">
|
|
<summary>
|
|
Gets the packet's buffer.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IPacket.Position">
|
|
<summary>
|
|
Gets a reference to the current position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IPacket.Length">
|
|
<summary>
|
|
Gets the length of the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.Reader">
|
|
<summary>
|
|
Creates a new reader for this packet at the current position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.ReaderAt(System.Int32@)">
|
|
<summary>
|
|
Creates a new reader for this packet at the specified position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.Writer">
|
|
<summary>
|
|
Creates a new writer for this packet at the current position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.WriterAt(System.Int32@)">
|
|
<summary>
|
|
Creates a new writer for this packet at the specified position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.Allocate(System.Int32)">
|
|
<inheritdoc cref="M:Xabbo.Messages.PacketWriter.Allocate(System.Int32)" />
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.ReadSpan(System.Int32)">
|
|
<inheritdoc cref="M:Xabbo.Messages.PacketReader.ReadSpan(System.Int32)" />
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.WriteSpan(System.ReadOnlySpan{System.Byte})">
|
|
<inheritdoc cref="M:Xabbo.Messages.PacketWriter.WriteSpan(System.ReadOnlySpan{System.Byte})" />
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.ReadContent">
|
|
<inheritdoc cref="M:Xabbo.Messages.PacketReader.ReadContent" />
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.WriteContent(System.String)">
|
|
<inheritdoc cref="M:Xabbo.Messages.PacketWriter.WriteContent(System.String)" />
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.Clear">
|
|
<summary>
|
|
Clears the packet's buffer and resets its position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IPacket.Copy">
|
|
<summary>
|
|
Creates a copy of this packet.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IParser`1">
|
|
<summary>
|
|
Represents an object that can be parsed from a packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IParser`1.Parse(Xabbo.Messages.PacketReader@)">
|
|
<summary>
|
|
Parses an object of type <typeparamref name="T"/> from a packet using the specified <see cref="T:Xabbo.Messages.PacketReader"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IParserComposer`1">
|
|
<summary>
|
|
Represents an object that can be parsed from and composed to a packet.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IParserContext">
|
|
<summary>
|
|
Provides additional context to a <see cref="T:Xabbo.Messages.PacketReader"/> or <see cref="T:Xabbo.Messages.PacketWriter"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.IParserContext.Messages">
|
|
<summary>
|
|
Gets the message manager.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IRequestFor`1">
|
|
<summary>
|
|
Provides a method for a request message to check whether a response matches the request.
|
|
</summary>
|
|
<typeparam name="TRes">The type of the response message.</typeparam>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IRequestFor`1.MatchResponse(`0)">
|
|
<summary>
|
|
Gets whether the response message matches the request message.
|
|
</summary>
|
|
<param name="msg">The response message to check.</param>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IRequestMessage`3">
|
|
<summary>
|
|
Represents a request message with an associated response message and response data type.
|
|
</summary>
|
|
<typeparam name="TReq">The type of the request message.</typeparam>
|
|
<typeparam name="TRes">The type of the response message.</typeparam>
|
|
<typeparam name="TData">The type of the response data.</typeparam>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IRequestMessage`2">
|
|
<summary>
|
|
Represents a request message with an associated response message.
|
|
</summary>
|
|
<typeparam name="TReq">The type of the request message.</typeparam>
|
|
<typeparam name="TRes">The type of the response message.</typeparam>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.IResponseData`2">
|
|
<summary>
|
|
Represents a response message with an associated data type.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of the response message.</typeparam>
|
|
<typeparam name="TData">The type of the response data.</typeparam>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.IResponseData`2.GetData(`0)">
|
|
<summary>
|
|
Extracts the data from the response message.
|
|
</summary>
|
|
<param name="msg">The response message.</param>
|
|
<returns>The extracted data.</returns>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.MessageCallback`1">
|
|
<summary>
|
|
Handles an intercepted message.
|
|
</summary>
|
|
<param name="msg">The intercepted message.</param>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.MessageDispatcher">
|
|
<summary>
|
|
Creates a new <see cref="T:Xabbo.Messages.MessageDispatcher"/> using the specified <see cref="T:Xabbo.Messages.IMessageManager"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.MessageDispatcher.Interceptor">
|
|
<summary>
|
|
Gets the interceptor associated with this dispatcher.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.MessageDispatcher.Dispatch(Xabbo.Intercept)">
|
|
<summary>
|
|
Dispatches the specified intercept event to the registered intercept handlers.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.MessageDispatcher.Reset">
|
|
<summary>
|
|
Releases all registered intercept handlers.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.MessageManager">
|
|
<summary>
|
|
Manages messages between multiple clients using a mapping file.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.MessageManager.#ctor(System.String,Microsoft.Extensions.Logging.ILoggerFactory)">
|
|
<summary>
|
|
Manages messages between multiple clients using a mapping file.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.MessageManager.Fetch">
|
|
<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.MessageManager.MaxAge">
|
|
<summary>
|
|
The maximum age of the message map file after which it is invalidated.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.MessageMap">
|
|
<summary>
|
|
Maps message names between clients.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.MessageNames">
|
|
<summary>
|
|
Defines an association of message names between clients.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.MessageNames.#ctor(System.String,System.String,System.String)">
|
|
<summary>
|
|
Defines an association of message names between clients.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.ModifyMessageCallback`1">
|
|
<summary>
|
|
Handles an intercepted message and allows the handler to modify the intercepted message
|
|
by returning a modified or new <see cref="T:Xabbo.Messages.IMessage"/> instance.
|
|
</summary>
|
|
<typeparam name="TMsg">The type of the message.</typeparam>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.Packet">
|
|
<summary>
|
|
Represents a packet of data with a message header.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Packet.#ctor(Xabbo.Messages.Header,Xabbo.ClientType,Xabbo.Messages.PacketBuffer)">
|
|
<summary>
|
|
Represents a packet of data with a message header.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.Packet.Dispose">
|
|
<summary>
|
|
Disposes of this packet's buffer.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.PacketBuffer">
|
|
<summary>
|
|
Represents a resizable buffer backed by a rented memory span
|
|
of <see cref="T:System.Byte"/> from a <see cref="T:System.Buffers.MemoryPool`1"/> .
|
|
</summary>
|
|
<param name="minimumCapacity">The initial minimum capacity of the rented span of bytes.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.#ctor(System.Int32)">
|
|
<summary>
|
|
Represents a resizable buffer backed by a rented memory span
|
|
of <see cref="T:System.Byte"/> from a <see cref="T:System.Buffers.MemoryPool`1"/> .
|
|
</summary>
|
|
<param name="minimumCapacity">The initial minimum capacity of the rented span of bytes.</param>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.PacketBuffer.Length">
|
|
<summary>
|
|
Gets the length of the buffer.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Messages.PacketBuffer.Span">
|
|
<summary>
|
|
Gets the memory of the buffer as a <see cref="T:System.Span`1"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.#ctor(System.ReadOnlySpan{System.Byte})">
|
|
<summary>
|
|
Constructs a new buffer and copies the specified <see cref="T:System.ReadOnlySpan`1"/> into its internal memory.
|
|
</summary>
|
|
<param name="data">The data to copy into this buffer.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.#ctor(System.Buffers.ReadOnlySequence{System.Byte}@)">
|
|
<summary>
|
|
Constructs a new buffer and copies the specified <see cref="T:System.Buffers.ReadOnlySequence`1"/> into its internal memory.
|
|
</summary>
|
|
<param name="data">The data to copy into this buffer.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.Grow(System.Int32)">
|
|
<summary>
|
|
Grows the buffer to the specified length if the current length is insufficient.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.Allocate(System.Int32,System.Int32)">
|
|
<summary>
|
|
Allocates <paramref name="length"/> bytes from the <paramref name="start"/> position
|
|
and returns the allocated range as a <see cref="T:System.Span`1"/> of bytes.
|
|
<para/>
|
|
If <paramref name="start"/>+<paramref name="length"/> is greater than the buffer length,
|
|
the buffer is grown to support the new length.
|
|
<para/>
|
|
<paramref name="start"/> may not be greater than the current length.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.Resize(System.Range,System.Int32)">
|
|
<summary>
|
|
Resizes the specified range of the buffer to the specified length and returns
|
|
the resized range as a <see cref="T:System.Span`1"/> of bytes.
|
|
<para/>
|
|
The tail portion of the buffer after the end of the range will be copied into
|
|
the correct position.
|
|
<para/>
|
|
If the range grows in length, the expanded portion of the range is not cleared,
|
|
so it is the caller's responsibility to write valid data to the resulting span.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.Clear">
|
|
<summary>
|
|
Resets the buffer's length to zero.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.Dispose">
|
|
<summary>
|
|
Disposes of this buffer and releases its memory back to the memory pool.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketBuffer.Copy">
|
|
<summary>
|
|
Creates a new copy of this buffer.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.PacketReader">
|
|
<summary>
|
|
Provides primitive packet read operations.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.#ctor(Xabbo.Messages.IPacket,System.Int32@,Xabbo.Messages.IParserContext)">
|
|
<summary>
|
|
Provides primitive packet read operations.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadSpan(System.Int32)">
|
|
<summary>
|
|
Reads a <see cref="T:System.Span`1"/> of bytes of length <paramref name="n"/> from the current position and advances it.
|
|
</summary>
|
|
<param name="n">The number of bytes to read.</param>
|
|
<exception cref="T:System.IndexOutOfRangeException">If the current position plus the specified length exceeds the length of the packet.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadBool">
|
|
<summary>
|
|
Reads a <see cref="T:System.Boolean"/> from the current position and advances it.
|
|
<para/>
|
|
Decoded as a <see cref="T:Xabbo.Messages.VL64"/> on Shockwave, otherwise as a <see cref="T:System.Byte"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadByte">
|
|
<summary>
|
|
Reads a <see cref="T:System.Byte"/> from the current position and advances it.
|
|
<para/>
|
|
Not supported on Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the <see cref="P:Xabbo.Messages.PacketReader.Client"/> is <see cref="F:Xabbo.ClientType.Shockwave"/>.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadShort">
|
|
<summary>
|
|
Reads a <see cref="T:System.Int16"/> from the current position and advances it.
|
|
<para/>
|
|
Decoded as a <see cref="T:Xabbo.Messages.B64"/> on Shockwave, otherwise as a 16-bit integer.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadShortArray">
|
|
<summary>
|
|
Reads a short array from the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadInt">
|
|
<summary>
|
|
Reads an <see cref="T:System.Int32"/> from the current position and advances it.
|
|
<para/>
|
|
Decoded as a <see cref="T:Xabbo.Messages.VL64"/> on Shockwave, otherwise as a 32-bit integer.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadIntArray">
|
|
<summary>
|
|
Reads an int array from the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadFloat">
|
|
<summary>
|
|
Reads a <see cref="T:System.Single"/> from the current position and advances it.
|
|
<para/>
|
|
Read as a <see cref="T:System.String"/> on Flash and Shockwave, otherwise decoded as a 32-bit floating point number.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadLong">
|
|
<summary>
|
|
Reads a <see cref="T:System.Int64"/> from the current position and advances it.
|
|
<para/>
|
|
Decoded as a 64-bit integer. Not supported on Flash or Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">
|
|
If the <see cref="P:Xabbo.Messages.PacketReader.Client"/> is <see cref="F:Xabbo.ClientType.Flash"/> or <see cref="F:Xabbo.ClientType.Shockwave"/>.
|
|
</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadString">
|
|
<summary>
|
|
Reads a <see cref="T:System.String"/> from the current position and advances it.
|
|
<para/>
|
|
On Shockwave, when the header direction is incoming, it is decoded as a sequence of characters terminated by a <c>0x02</c> byte.
|
|
<para/>
|
|
Otherwise, it is decoded as a <see cref="T:System.Int16"/> length-prefixed UTF-8 <see cref="T:System.String"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadStringArray">
|
|
<summary>
|
|
Reads a string array from the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadId">
|
|
<summary>
|
|
Reads an <see cref="T:Xabbo.Id"/> from the current position and advances it.
|
|
<para/>
|
|
Read as a <see cref="T:System.Int64"/> on Unity, or an <see cref="T:System.Int32"/> on Flash and Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the client type is invalid.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadIdArray">
|
|
<summary>
|
|
Reads an Id array from the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadLength">
|
|
<summary>
|
|
Reads a <see cref="P:Xabbo.Messages.PacketReader.Length"/> from the current position and advances it.
|
|
<para/>
|
|
Read as a <see cref="T:System.Int16"/> on Unity, or an <see cref="T:System.Int32"/> on Flash and Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the client type is invalid.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadB64">
|
|
<summary>
|
|
Reads a <see cref="T:Xabbo.Messages.B64"/> from the current position and advances it.
|
|
<para/>
|
|
Not supported on Unity or Flash.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the <see cref="P:Xabbo.Messages.PacketReader.Client"/> is <see cref="F:Xabbo.ClientType.Unity"/> or <see cref="F:Xabbo.ClientType.Flash"/>.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadVL64">
|
|
<summary>
|
|
Reads a <see cref="T:Xabbo.Messages.VL64"/> from the current position and advances it.
|
|
<para/>
|
|
Not supported on Unity or Flash.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the <see cref="P:Xabbo.Messages.PacketReader.Client"/> is <see cref="F:Xabbo.ClientType.Unity"/> or <see cref="F:Xabbo.ClientType.Flash"/>.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ReadContent">
|
|
<summary>
|
|
Reads the contents of the packet as a string
|
|
and advances the position to the end of the packet.
|
|
The position must be at the start of the packet.
|
|
<para/>
|
|
Only supported on Shockwave.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.Parse``1">
|
|
<summary>
|
|
Parses a <typeparamref name="T"/> from the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketReader.ParseArray``1">
|
|
<summary>
|
|
Parses an array of <typeparamref name="T"/> from the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.PacketWriter">
|
|
<summary>
|
|
Provides primitive packet write operations.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.#ctor(Xabbo.Messages.IPacket,System.Int32@,Xabbo.Messages.IParserContext)">
|
|
<summary>
|
|
Provides primitive packet write operations.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.Allocate(System.Int32)">
|
|
<summary>
|
|
Allocates the specified number of bytes from the current position
|
|
and returns the allocated range as a <see cref="T:System.Span`1"/> of bytes.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.Resize(System.Int32,System.Int32)">
|
|
<summary>
|
|
Resizes a range of bytes from the current position of length `<paramref name="pre"/>` to length `<paramref name="post"/>`
|
|
and returns the resized range as a <see cref="T:System.Span`1"/> of bytes.
|
|
</summary>
|
|
<param name="pre">The length to resize from.</param>
|
|
<param name="post">The length to resize to</param>
|
|
<returns>The resized range as a <see cref="T:System.Span`1"/> of bytes.</returns>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteSpan(System.ReadOnlySpan{System.Byte})">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Span`1"/> of bytes to the current position.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteBool(System.Boolean)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Boolean"/> value to the current position and advances it.
|
|
<para/>
|
|
Encoded as a <see cref="T:Xabbo.Messages.VL64"/> on Shockwave, otherwise as a <see cref="T:System.Byte"/> .
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteByte(System.Byte)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Byte"/> value to the current position and advances it.
|
|
<para/>
|
|
Not supported on Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the <see cref="P:Xabbo.Messages.PacketWriter.Client"/> is <see cref="F:Xabbo.ClientType.Shockwave"/>.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteShort(System.Int16)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Int16"/> value to the current position and advances it.
|
|
<para/>
|
|
Encoded as a <see cref="T:Xabbo.Messages.B64"/> on Shockwave, otherwise as a 16-bit integer.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteShortArray(System.Collections.Generic.IEnumerable{System.Int16})">
|
|
<summary>
|
|
Writes a short array to the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteInt(System.Int32)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Int32"/> value to the current position and advances it.
|
|
<para/>
|
|
Encoded as a <see cref="T:Xabbo.Messages.VL64"/> on Shockwave, otherwise as a 32-bit integer.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteIntArray(System.Collections.Generic.IEnumerable{System.Int32})">
|
|
<summary>
|
|
Writes an int array to the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteFloat(System.Single)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Single"/> value to the current position and advances it.
|
|
<para/>
|
|
Written as a <see cref="T:System.String"/> on Flash and Shockwave, otherwise encoded as a 32-bit floating point number.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteLong(System.Int64)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.Int64"/> value to the current position and advances it.
|
|
<para/>
|
|
Encoded as a 64-bit integer. Not supported on Flash or Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">
|
|
If the <see cref="P:Xabbo.Messages.PacketWriter.Client"/> is <see cref="F:Xabbo.ClientType.Flash"/> or <see cref="F:Xabbo.ClientType.Shockwave"/>.
|
|
</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteString(System.String)">
|
|
<summary>
|
|
Writes the specified <see cref="T:System.String"/> value to the current position and advances it.
|
|
<para/>
|
|
On Shockwave, when the header direction is incoming, it is encoded as a sequence of characters terminated by a <c>0x02</c> byte.
|
|
<para/>
|
|
Otherwise, it is encoded as a <see cref="T:System.Int16"/> length-prefixed UTF-8 <see cref="T:System.String"/>.
|
|
</summary>
|
|
<exception cref="T:System.ArgumentException">If the string length exceeds the maximum value of an unsigned 16-bit integer.</exception>
|
|
<exception cref="T:System.ArgumentNullException">If the string is null.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteStringArray(System.Collections.Generic.IEnumerable{System.String})">
|
|
<summary>
|
|
Writes a string array to the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteId(Xabbo.Id)">
|
|
<summary>
|
|
Writes the specified <see cref="T:Xabbo.Id"/> value to the current position and advances it.
|
|
<para/>
|
|
Written as a <see cref="T:System.Int64"/> on Unity, or an <see cref="T:System.Int32"/> on Flash and Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the client type is invalid.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteIdArray(System.Collections.Generic.IEnumerable{Xabbo.Id})">
|
|
<summary>
|
|
Writes an Id array to the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteLength(Xabbo.Length)">
|
|
<summary>
|
|
Writes the specified <see cref="P:Xabbo.Messages.PacketWriter.Length"/> value to the current position and advances it.
|
|
<para/>
|
|
Written as a <see cref="T:System.Int16"/> on Unity, or an <see cref="T:System.Int32"/> on Flash and Shockwave.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the client type is invalid.</exception>
|
|
<exception cref="T:System.ArgumentOutOfRangeException">If the value is negative.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteB64(Xabbo.Messages.B64)">
|
|
<summary>
|
|
Writes the specified <see cref="T:Xabbo.Messages.B64"/> value to the current position and advances it.
|
|
<para/>
|
|
Not supported on Unity or Flash.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the <see cref="P:Xabbo.Messages.PacketWriter.Client"/> is <see cref="F:Xabbo.ClientType.Unity"/> or <see cref="F:Xabbo.ClientType.Flash"/>.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteVL64(Xabbo.Messages.VL64)">
|
|
<summary>
|
|
Writes the specified <see cref="T:Xabbo.Messages.VL64"/> value to the current position and advances it.
|
|
<para/>
|
|
Not supported on Unity or Flash.
|
|
</summary>
|
|
<exception cref="T:Xabbo.UnsupportedClientException">If the <see cref="P:Xabbo.Messages.PacketWriter.Client"/> is <see cref="F:Xabbo.ClientType.Unity"/> or <see cref="F:Xabbo.ClientType.Flash"/>.</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.WriteContent(System.String)">
|
|
<summary>
|
|
Replaces the packet buffer with the specified content
|
|
and advances the position to the end of the packet.
|
|
The position must be at the start of the packet.
|
|
<para/>
|
|
Only supported on Shockwave.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.Compose``1(``0)">
|
|
<summary>
|
|
Composes the specified <typeparamref name="T"/> to the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.PacketWriter.ComposeArray``1(System.Collections.Generic.IEnumerable{``0})">
|
|
<summary>
|
|
Composes the specified array of <typeparamref name="T"/> to the current position and advances it.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.UnresolvedIdentifiersException">
|
|
<summary>
|
|
Thrown when a set of <see cref="T:Xabbo.Messages.Identifier"/>s fail to resolve to their respective <see cref="T:Xabbo.Messages.Header"/>s.
|
|
</summary>
|
|
<param name="identifiers">The identifiers that failed to resolve.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.UnresolvedIdentifiersException.#ctor(Xabbo.Messages.Identifiers)">
|
|
<summary>
|
|
Thrown when a set of <see cref="T:Xabbo.Messages.Identifier"/>s fail to resolve to their respective <see cref="T:Xabbo.Messages.Header"/>s.
|
|
</summary>
|
|
<param name="identifiers">The identifiers that failed to resolve.</param>
|
|
</member>
|
|
<member name="T:Xabbo.Messages.VL64">
|
|
<summary>
|
|
Represents a signed variable-length radix-64 encoded integer.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.VL64.MinValue">
|
|
<summary>
|
|
The minimum value of a <see cref="T:Xabbo.Messages.VL64"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Messages.VL64.MaxValue">
|
|
<summary>
|
|
The maximum value of a <see cref="T:Xabbo.Messages.VL64"/>.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.VL64.EncodeLength(Xabbo.Messages.VL64)">
|
|
<summary>
|
|
Returns the number of bytes required to represent the specified VL64.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.VL64.DecodeLength(System.Byte)">
|
|
<summary>
|
|
Returns the number of bytes required to decode a VL64, given (and including) the first byte.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.VL64.Encode(System.Span{System.Byte},Xabbo.Messages.VL64)">
|
|
<summary>
|
|
Encodes a VL64 value to the specified byte span.
|
|
</summary>
|
|
<param name="buf">The span to encode into.</param>
|
|
<param name="value">The value to encode.</param>
|
|
<exception cref="T:System.ArgumentOutOfRangeException">
|
|
If the value is outside the range of a VL64.
|
|
</exception>
|
|
<exception cref="T:System.ArgumentException">
|
|
If the length of the provided span is insufficient to encode the specified VL64 value.
|
|
</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.VL64.Decode(System.ReadOnlySpan{System.Byte})">
|
|
<summary>
|
|
Decodes a VL64 value from the specified read-only byte span.
|
|
</summary>
|
|
<param name="buf">The span to decode from.</param>
|
|
<returns>The decoded VL64 value.</returns>
|
|
<exception cref="T:System.ArgumentOutOfRangeException">
|
|
If the provided span does not have enough bytes to decode a VL64 based on the length decoded from the first byte.
|
|
</exception>
|
|
<exception cref="T:System.ArgumentException">
|
|
If the length decoded from the first byte is outside the valid range of 1-6,
|
|
or any of the input bytes' 2 most significant bits are not set to <c>01</c>.
|
|
</exception>
|
|
</member>
|
|
<member name="M:Xabbo.Messages.VL64.ToString">
|
|
<summary>
|
|
Returns the value of this <see cref="T:Xabbo.Messages.VL64"/> as a string.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.PacketContent">
|
|
<summary>
|
|
Represents a packet's content as a string.
|
|
</summary>
|
|
<remarks>
|
|
Only supported on Shockwave.
|
|
This can only be read or written when the position is at the start of the packet,
|
|
after which the position will be set to the end of the packet.
|
|
</remarks>
|
|
</member>
|
|
<member name="M:Xabbo.PacketContent.#ctor(System.String)">
|
|
<summary>
|
|
Represents a packet's content as a string.
|
|
</summary>
|
|
<remarks>
|
|
Only supported on Shockwave.
|
|
This can only be read or written when the position is at the start of the packet,
|
|
after which the position will be set to the end of the packet.
|
|
</remarks>
|
|
</member>
|
|
<member name="T:Xabbo.Session">
|
|
<summary>
|
|
Represents a connection session.
|
|
</summary>
|
|
<param name="Hotel">The hotel of the current session.</param>
|
|
<param name="Client">The client of the current session.</param>
|
|
</member>
|
|
<member name="M:Xabbo.Session.#ctor(Xabbo.Hotel,Xabbo.Client)">
|
|
<summary>
|
|
Represents a connection session.
|
|
</summary>
|
|
<param name="Hotel">The hotel of the current session.</param>
|
|
<param name="Client">The client of the current session.</param>
|
|
</member>
|
|
<member name="P:Xabbo.Session.Hotel">
|
|
<summary>The hotel of the current session.</summary>
|
|
</member>
|
|
<member name="P:Xabbo.Session.Client">
|
|
<summary>The client of the current session.</summary>
|
|
</member>
|
|
<member name="F:Xabbo.Session.None">
|
|
<summary>
|
|
Represents no session.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.Session.Is(Xabbo.ClientType)">
|
|
<summary>
|
|
Gets whether the session is any of the specified clients.
|
|
</summary>
|
|
<param name="client">
|
|
The client to test for. This may be a combination of multiple clients.
|
|
</param>
|
|
<returns><c>true</c> if the specified client type contains the current session's client.</returns>
|
|
</member>
|
|
<member name="P:Xabbo.SourceGenerationContext.Boolean">
|
|
<summary>
|
|
Defines the source generated JSON serialization contract metadata for a given type.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.SourceGenerationContext.ListHotel">
|
|
<summary>
|
|
Defines the source generated JSON serialization contract metadata for a given type.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.SourceGenerationContext.Hotel">
|
|
<summary>
|
|
Defines the source generated JSON serialization contract metadata for a given type.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.SourceGenerationContext.String">
|
|
<summary>
|
|
Defines the source generated JSON serialization contract metadata for a given type.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.SourceGenerationContext.Default">
|
|
<summary>
|
|
The default <see cref="T:System.Text.Json.Serialization.JsonSerializerContext"/> associated with a default <see cref="T:System.Text.Json.JsonSerializerOptions"/> instance.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.SourceGenerationContext.GeneratedSerializerOptions">
|
|
<summary>
|
|
The source-generated options associated with this context.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.SourceGenerationContext.#ctor">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="M:Xabbo.SourceGenerationContext.#ctor(System.Text.Json.JsonSerializerOptions)">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="M:Xabbo.SourceGenerationContext.GetTypeInfo(System.Type)">
|
|
<inheritdoc/>
|
|
</member>
|
|
<member name="T:Xabbo.UnhandledInterceptException">
|
|
<summary>
|
|
Thrown when an unhandled exception is thrown from an intercept handler.
|
|
</summary>
|
|
<param name="header">The header of the message</param>
|
|
<param name="handler">The handler that the exception was thrown from.</param>
|
|
<param name="innerException">The exception that was thrown.</param>
|
|
</member>
|
|
<member name="M:Xabbo.UnhandledInterceptException.#ctor(Xabbo.Messages.Header,Xabbo.Messages.InterceptHandler,System.Exception)">
|
|
<summary>
|
|
Thrown when an unhandled exception is thrown from an intercept handler.
|
|
</summary>
|
|
<param name="header">The header of the message</param>
|
|
<param name="handler">The handler that the exception was thrown from.</param>
|
|
<param name="innerException">The exception that was thrown.</param>
|
|
</member>
|
|
<member name="P:Xabbo.UnhandledInterceptException.Header">
|
|
<summary>
|
|
The header of the intercepted message when the exception was thrown.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.UnhandledInterceptException.Handler">
|
|
<summary>
|
|
The handler that the exception was thrown from.
|
|
</summary>
|
|
</member>
|
|
<member name="T:Xabbo.UnsupportedClientException">
|
|
<summary>
|
|
Thrown when an operation is not supported for the current client.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.UnsupportedClientException.#ctor(Xabbo.ClientType)">
|
|
<summary>
|
|
Thrown when an operation is not supported for the current client.
|
|
</summary>
|
|
</member>
|
|
<member name="P:Xabbo.UnsupportedClientException.Client">
|
|
<summary>
|
|
The client that is not supported.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.UnsupportedClientException.ThrowIfNone(Xabbo.ClientType)">
|
|
<summary>
|
|
Throws if the specified client is not a known client.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.UnsupportedClientException.ThrowIf(Xabbo.ClientType,Xabbo.ClientType)">
|
|
<summary>
|
|
Throws if the client is any of the specified clients.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.UnsupportedClientException.ThrowIfNoneOr(Xabbo.ClientType,Xabbo.ClientType)">
|
|
<summary>
|
|
Throws if the client is unknown or any of the specified clients.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.UnsupportedClientException.ThrowIfOrigins(Xabbo.ClientType)">
|
|
<summary>
|
|
Throws if the client is the Shockwave client.
|
|
</summary>
|
|
</member>
|
|
<member name="M:Xabbo.UnsupportedClientException.ThrowIfModern(Xabbo.ClientType)">
|
|
<summary>
|
|
Throws if the client is the Unity or Flash client.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.Read``1(Xabbo.Messages.IPacket)">
|
|
<summary>
|
|
Reads a value of the specified type from the current position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.ReadAt``1(Xabbo.Messages.IPacket,System.Int32)">
|
|
<summary>
|
|
Reads a value of the specified type from the specified position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.Write``1(Xabbo.Messages.IPacket,``0)">
|
|
<summary>
|
|
Writes a value of the specified type to the current position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.WriteAt``1(Xabbo.Messages.IPacket,System.Int32,``0)">
|
|
<summary>
|
|
Writes a value of the specified type to the specified position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.Replace``1(Xabbo.Messages.IPacket,``0)">
|
|
<summary>
|
|
Replaces a value of the specified type at the current position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.ReplaceAt``1(Xabbo.Messages.IPacket,System.Int32,``0)">
|
|
<summary>
|
|
Replaces a value of the specified type at the specified position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.Modify``1(Xabbo.Messages.IPacket,System.Func{``0,``0})">
|
|
<summary>
|
|
Modifies a value of the specified type at the current position in the packet.
|
|
</summary>
|
|
</member>
|
|
<member name="M:XabboExtensions.ModifyAt``1(Xabbo.Messages.IPacket,System.Int32,System.Func{``0,``0})">
|
|
<summary>
|
|
Modifies a value of the specified type at the specified position in the packet.
|
|
</summary>
|
|
</member>
|
|
</members>
|
|
</doc>
|