summaryrefslogtreecommitdiff
path: root/Impostor-dev/src/Impostor.Api/Net/Messages/IMessageWriterProvider.cs
blob: f39893930ddf06c1b63616e49e8da5c45dc03fa0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
namespace Impostor.Api.Net.Messages
{
    public interface IMessageWriterProvider
    {
        /// <summary>
        ///     Retrieves a <see cref="IMessageWriter"/> from the internal pool.
        ///     Make sure to call <see cref="IMessageWriter.Dispose"/> when you are done!
        /// </summary>
        /// <param name="sendOption">
        ///     Whether to send the message as <see cref="MessageType.Reliable"/> or <see cref="MessageType.Unreliable"/>.
        ///     Reliable packets will ensure delivery while unreliable packets may be lost.
        /// </param>
        /// <returns>A <see cref="IMessageWriter"/> from the pool.</returns>
        IMessageWriter Get(MessageType sendOption = MessageType.Unreliable);
    }
}