/// <summary> /// Initializes a new instance of the <see cref="JpegColorConverter"/> class. /// </summary> protected JpegColorConverter(JpegColorSpace colorSpace, int precision) { this.ColorSpace = colorSpace; this.Precision = precision; this.MaximumValue = MathF.Pow(2, precision) - 1; this.HalfValue = MathF.Ceiling(this.MaximumValue / 2); }
/// <summary> /// Returns the <see cref="JpegColorConverter"/> corresponding to the given <see cref="JpegColorSpace"/> /// </summary> public static JpegColorConverter GetConverter(JpegColorSpace colorSpace) { JpegColorConverter converter = Converters.FirstOrDefault(c => c.ColorSpace == colorSpace); if (converter == null) { throw new Exception($"Could not find any converter for JpegColorSpace {colorSpace}!"); } return(converter); }
/// <summary> /// Returns the <see cref="JpegColorConverter"/> corresponding to the given <see cref="JpegColorSpace"/> /// </summary> public static JpegColorConverter GetConverter(JpegColorSpace colorSpace, int precision) { JpegColorConverter converter = Array.Find(Converters, c => c.ColorSpace == colorSpace && c.Precision == precision); if (converter is null) { throw new Exception($"Could not find any converter for JpegColorSpace {colorSpace}!"); } return(converter); }
private static void ValidateConversion( JpegColorSpace colorSpace, int componentCount, int inputBufferLength, int resultBufferLength, int seed) { ValidateConversion( JpegColorConverter.GetConverter(colorSpace, 8), componentCount, inputBufferLength, resultBufferLength, seed); }
private static void ValidateConversion( JpegColorSpace colorSpace, int componentCount, int inputBufferLength, int resultBufferLength, int seed, Action <JpegColorConverter.ComponentValues, Span <Vector4>, int> validatePixelValue) { ValidateConversion( JpegColorConverter.GetConverter(colorSpace), componentCount, inputBufferLength, resultBufferLength, seed, validatePixelValue); }
/// <summary> /// Initializes a new instance of the <see cref="JpegColorConverter"/> class. /// </summary> protected JpegColorConverter(JpegColorSpace colorSpace) { this.ColorSpace = colorSpace; }
protected JpegColorConverterScalar(JpegColorSpace colorSpace, int precision) : base(colorSpace, precision) { }
protected Vector8JpegColorConverter(JpegColorSpace colorSpace, int precision) : base(colorSpace, precision, 8) { }
protected VectorizedJpegColorConverter(JpegColorSpace colorSpace, int precision, int vectorSize) : base(colorSpace, precision) { this.vectorSize = vectorSize; }
private static void Validate( JpegColorSpace colorSpace, in JpegColorConverter.ComponentValues values,
protected BasicJpegColorConverter(JpegColorSpace colorSpace, int precision) : base(colorSpace, precision) { }