Browse Source

Remove IImageEncoderInternals interface

pull/2762/head
James Jackson-South 2 years ago
parent
commit
e61585afe2
  1. 3
      src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs
  2. 22
      src/ImageSharp/Formats/IImageEncoderInternals.cs
  3. 1
      src/ImageSharp/Formats/ImageEncoder.cs
  4. 2
      src/ImageSharp/Formats/Jpeg/JpegEncoderCore.cs
  5. 3
      src/ImageSharp/Formats/Pbm/PbmEncoderCore.cs
  6. 2
      src/ImageSharp/Formats/Png/PngEncoderCore.cs
  7. 10
      src/ImageSharp/Formats/Qoi/QoiEncoderCore.cs
  8. 3
      src/ImageSharp/Formats/Tga/TgaEncoderCore.cs
  9. 3
      src/ImageSharp/Formats/Tiff/TiffEncoderCore.cs
  10. 2
      src/ImageSharp/Formats/Webp/WebpEncoderCore.cs

3
src/ImageSharp/Formats/Bmp/BmpEncoderCore.cs

@ -4,7 +4,6 @@
using System.Buffers;
using System.Buffers.Binary;
using System.Runtime.InteropServices;
using SixLabors.ImageSharp.Advanced;
using SixLabors.ImageSharp.Common.Helpers;
using SixLabors.ImageSharp.Memory;
using SixLabors.ImageSharp.Metadata;
@ -17,7 +16,7 @@ namespace SixLabors.ImageSharp.Formats.Bmp;
/// <summary>
/// Image encoder for writing an image to a stream as a Windows bitmap.
/// </summary>
internal sealed class BmpEncoderCore : IImageEncoderInternals
internal sealed class BmpEncoderCore
{
/// <summary>
/// The amount to pad each row by.

22
src/ImageSharp/Formats/IImageEncoderInternals.cs

@ -1,22 +0,0 @@
// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
using SixLabors.ImageSharp.PixelFormats;
namespace SixLabors.ImageSharp.Formats;
/// <summary>
/// Abstraction for shared internals for ***DecoderCore implementations.
/// </summary>
internal interface IImageEncoderInternals
{
/// <summary>
/// Encodes the image.
/// </summary>
/// <param name="image">The image.</param>
/// <param name="stream">The stream.</param>
/// <param name="cancellationToken">The token to monitor for cancellation requests.</param>
/// <typeparam name="TPixel">The pixel type.</typeparam>
void Encode<TPixel>(Image<TPixel> image, Stream stream, CancellationToken cancellationToken)
where TPixel : unmanaged, IPixel<TPixel>;
}

1
src/ImageSharp/Formats/ImageEncoder.cs

@ -1,7 +1,6 @@
// Copyright (c) Six Labors.
// Licensed under the Six Labors Split License.
using SixLabors.ImageSharp.Advanced;
using SixLabors.ImageSharp.IO;
using SixLabors.ImageSharp.PixelFormats;

2
src/ImageSharp/Formats/Jpeg/JpegEncoderCore.cs

@ -18,7 +18,7 @@ namespace SixLabors.ImageSharp.Formats.Jpeg;
/// <summary>
/// Image encoder for writing an image to a stream as a jpeg.
/// </summary>
internal sealed unsafe partial class JpegEncoderCore : IImageEncoderInternals
internal sealed unsafe partial class JpegEncoderCore
{
/// <summary>
/// The available encodable frame configs.

3
src/ImageSharp/Formats/Pbm/PbmEncoderCore.cs

@ -2,7 +2,6 @@
// Licensed under the Six Labors Split License.
using System.Buffers.Text;
using SixLabors.ImageSharp.Advanced;
using SixLabors.ImageSharp.PixelFormats;
namespace SixLabors.ImageSharp.Formats.Pbm;
@ -10,7 +9,7 @@ namespace SixLabors.ImageSharp.Formats.Pbm;
/// <summary>
/// Image encoder for writing an image to a stream as a PGM, PBM, PPM or PAM bitmap.
/// </summary>
internal sealed class PbmEncoderCore : IImageEncoderInternals
internal sealed class PbmEncoderCore
{
private const byte NewLine = (byte)'\n';
private const byte Space = (byte)' ';

2
src/ImageSharp/Formats/Png/PngEncoderCore.cs

@ -22,7 +22,7 @@ namespace SixLabors.ImageSharp.Formats.Png;
/// <summary>
/// Performs the png encoding operation.
/// </summary>
internal sealed class PngEncoderCore : IImageEncoderInternals, IDisposable
internal sealed class PngEncoderCore : IDisposable
{
/// <summary>
/// The maximum block size, defaults at 64k for uncompressed blocks.

10
src/ImageSharp/Formats/Qoi/QoiEncoderCore.cs

@ -12,7 +12,7 @@ namespace SixLabors.ImageSharp.Formats.Qoi;
/// <summary>
/// Image encoder for writing an image to a stream as a QOi image
/// </summary>
internal class QoiEncoderCore : IImageEncoderInternals
internal class QoiEncoderCore
{
/// <summary>
/// The encoder with options
@ -41,7 +41,13 @@ internal class QoiEncoderCore : IImageEncoderInternals
this.memoryAllocator = configuration.MemoryAllocator;
}
/// <inheritdoc />
/// <summary>
/// Encodes the image to the specified stream from the <see cref="ImageFrame{TPixel}"/>.
/// </summary>
/// <typeparam name="TPixel">The pixel format.</typeparam>
/// <param name="image">The <see cref="ImageFrame{TPixel}"/> to encode from.</param>
/// <param name="stream">The <see cref="Stream"/> to encode the image data to.</param>
/// <param name="cancellationToken">The token to request cancellation.</param>
public void Encode<TPixel>(Image<TPixel> image, Stream stream, CancellationToken cancellationToken)
where TPixel : unmanaged, IPixel<TPixel>
{

3
src/ImageSharp/Formats/Tga/TgaEncoderCore.cs

@ -5,7 +5,6 @@ using System.Buffers;
using System.Buffers.Binary;
using System.Numerics;
using System.Runtime.CompilerServices;
using SixLabors.ImageSharp.Advanced;
using SixLabors.ImageSharp.Memory;
using SixLabors.ImageSharp.Metadata;
using SixLabors.ImageSharp.PixelFormats;
@ -15,7 +14,7 @@ namespace SixLabors.ImageSharp.Formats.Tga;
/// <summary>
/// Image encoder for writing an image to a stream as a truevision targa image.
/// </summary>
internal sealed class TgaEncoderCore : IImageEncoderInternals
internal sealed class TgaEncoderCore
{
/// <summary>
/// Used for allocating memory during processing operations.

3
src/ImageSharp/Formats/Tiff/TiffEncoderCore.cs

@ -2,7 +2,6 @@
// Licensed under the Six Labors Split License.
#nullable disable
using SixLabors.ImageSharp.Advanced;
using SixLabors.ImageSharp.Compression.Zlib;
using SixLabors.ImageSharp.Formats.Tiff.Compression;
using SixLabors.ImageSharp.Formats.Tiff.Constants;
@ -19,7 +18,7 @@ namespace SixLabors.ImageSharp.Formats.Tiff;
/// <summary>
/// Performs the TIFF encoding operation.
/// </summary>
internal sealed class TiffEncoderCore : IImageEncoderInternals
internal sealed class TiffEncoderCore
{
private static readonly ushort ByteOrderMarker = BitConverter.IsLittleEndian
? TiffConstants.ByteOrderLittleEndianShort

2
src/ImageSharp/Formats/Webp/WebpEncoderCore.cs

@ -12,7 +12,7 @@ namespace SixLabors.ImageSharp.Formats.Webp;
/// <summary>
/// Image encoder for writing an image to a stream in the Webp format.
/// </summary>
internal sealed class WebpEncoderCore : IImageEncoderInternals
internal sealed class WebpEncoderCore
{
/// <summary>
/// Used for allocating memory during processing operations.

Loading…
Cancel
Save