using FishNet.Documenting;
using FishNet.Serializing;
using UnityEngine;
namespace FishNet.Object.Prediction
{
///
/// Used to store reconciles locally.
///
/// This is for internal use only.
[APIExclude]
public struct LocalReconcile where T : IReconcileData
{
///
/// Tick for reconcile.
///
public uint Tick;
///
/// Writer reconcile was written to.
///
public PooledWriter Writer;
///
/// Data inside writer.
///
public T Data;
public void Initialize(uint tick, T data)
{
Tick = tick;
Data = data;
Writer = WriterPool.Retrieve();
Writer.Write(data);
}
///
/// Disposes of used data.
///
public void Dispose()
{
Data.Dispose();
if (Writer != null)
WriterPool.Store(Writer);
}
}
}