<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Fusion.Common</name>
    </assembly>
    <members>
        <member name="T:Fusion.Async.TaskFactoryManager">
            <summary>
            Task Factory is used to create new Tasks and Schedule long running Tasks
            </summary>
        </member>
        <member name="P:Fusion.Async.TaskFactoryManager.TaskFactory">
            <summary>
            Stores a Task Factory ready made to be used with Unity
            </summary>
        </member>
        <member name="P:Fusion.Async.TaskFactoryManager.TaskScheduler">
            <summary>
            Task Scheduler based on the TaskFactory currently set
            </summary>
        </member>
        <member name="M:Fusion.Async.TaskFactoryManager.SetupForUnity">
            <summary>
            Setup a new TaskFactory tailored to work with Unity
            </summary>
        </member>
        <member name="M:Fusion.Async.TaskFactoryManager.CreateUnityTaskFactory">
            <summary>
            Create a new TaskFactory reference with settings to work wiht Unity
            </summary>
            <returns>TaskFactory ref with the right arguments set</returns>
        </member>
        <member name="T:Fusion.Collections.SynchronizedQueue`1">
            <summary>
            Queue that usese Sync locks for each operations
            </summary>
            <typeparam name="T">Type used by the internal Queue</typeparam>
        </member>
        <member name="M:Fusion.CompressionUtils.Compress(System.Byte[])">
            <summary>
            Compress the byte array uisng GZip
            </summary>
            <param name="data">Original byte array</param>
            <returns>Compressed byte array</returns>
        </member>
        <member name="M:Fusion.CompressionUtils.Decompress(System.Byte[])">
            <summary>
            Decompress the byte array using GZip
            </summary>
            <param name="data">Compressed byte array</param>
            <returns>Decompressed byte array</returns>
        </member>
        <member name="P:Fusion.Protocol.ICommunicator.CommunicatorID">
            <summary>
            Represents the current ID of the communicator.
            </summary>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.SendPackage(System.Byte,System.Int32,System.Boolean,System.Byte*,System.Int32)">
            <summary>
            Sends a package data using the communication system
            </summary>
            <param name="code">Event Code used to send the Package</param>
            <param name="targetActor">Target Actor of the Package</param>
            <param name="reliable">Flag if this Package should be sent reliably</param>
            <param name="buffer">Data Buffer</param>
            <param name="bufferLength">Buffer Length</param>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.ReceivePackage(System.Int32@,System.Byte*,System.Int32)">
            <summary>
            Retrieve a Data Package
            </summary>
            <param name="senderActor">Data Package Sender</param>
            <param name="buffer">Buffer to be filled with the Data</param>
            <param name="bufferLength">Buffer length</param>
            <returns>Total number of bytes written to buffer</returns>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.Poll">
            <summary>
            Check if there are data package to be retrieved
            </summary>
            <returns>True if the internal buffer has pendind data</returns>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.PushPackage(System.Int32,System.Int32,System.Object)">
            <summary>
            Push a new Package into the communicator queues
            </summary>
            <param name="senderActor">Data Sender Actor</param>
            <param name="eventCode">Event Code of the Package</param>
            <param name="data">Package</param>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.RegisterPackageCallback``1(System.Action{System.Int32,``0})">
            <summary>
            Register a callback for a specific Message Type
            </summary>
            <typeparam name="K"></typeparam>
            <param name="callback"></param>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.SendMessage(System.Int32,Fusion.Protocol.IMessage)">
            <summary>
            Send a Protocol Message using the communicator system
            </summary>
            <param name="targetActor">Target Actor of the Protocol Message</param>
            <param name="message">Protocol Message to be sent</param>
        </member>
        <member name="M:Fusion.Protocol.ICommunicator.Service">
            <summary>
            Step the Communicator internals
            </summary>
        </member>
        <member name="T:Fusion.Protocol.IMessage">
            <summary>
            Represents a Protocol Message
            
            Used to tag the Messages in <see cref="T:Fusion.Protocol.ICommunicator"/>.
            </summary>
        </member>
        <member name="T:Fusion.JsonUtils">
            <summary>
            Collection of simple JSON Utility methods
            </summary>
        </member>
        <member name="M:Fusion.JsonUtils.RemoveExtraReferences(System.String)">
            <summary>
            Removes from a JSON serialized by Unity Serializer the "referenes" field.
            This aims to reduce the JSON size when sending accross the network
            </summary>
            <param name="baseJson">JSON output of "JsonUtility.ToJson" call</param>
            <returns>Same JSON but without the "referenes" object</returns>
        </member>
        <member name="M:Fusion.Profiling.FusionSamplers.IncrementFrame">
            <summary>
            Instructs all sub-Samplers to register a frame change. The next Add will go to the next frame section.
            </summary>
        </member>
        <member name="M:Fusion.Profiling.FusionSamplers.GetSampler(System.Int32,System.String)">
            <summary>
            Get Sampler from the connection specific collection.
            </summary>
        </member>
        <member name="M:Fusion.Profiling.FusionSamplers.GetSampler(System.String)">
            <summary>
            Get Sampler from the common samplers (non-connection specific) collection.
            </summary>
        </member>
        <member name="M:Fusion.Radix.Sort(Fusion.Radix.SortTarget*,Fusion.Radix.SortTarget*,System.Int32,System.Int32*,System.Int32*)">
            <summary>
            Sort 4 byte integers
            </summary>
            <param name="a">array to sort</param>
            <param name="t">temp array that is >= aLength</param>
            <param name="aLength">length of array</param>
            <param name="p">integer array with size (1 &lt;&lt; RADIX)</param>
            <param name="c">integer array with size (1 &lt;&lt; RADIX) * 4</param>
        </member>
    </members>
</doc>
