|
|
|
@ -238,103 +238,5 @@ namespace SixLabors.ImageSharp.Formats.Jpeg.Components.Decoder.ColorConverters |
|
|
|
return new ComponentValues(this.ComponentCount, c0, c1, c2, c3); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
internal struct Vector4Octet |
|
|
|
{ |
|
|
|
#pragma warning disable SA1132 // Do not combine fields
|
|
|
|
public Vector4 V0, V1, V2, V3, V4, V5, V6, V7; |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Pack (r0,r1...r7) (g0,g1...g7) (b0,b1...b7) vector values as (r0,g0,b0,1), (r1,g1,b1,1) ...
|
|
|
|
/// </summary>
|
|
|
|
public void Pack(ref Vector4Pair r, ref Vector4Pair g, ref Vector4Pair b) |
|
|
|
{ |
|
|
|
this.V0.X = r.A.X; |
|
|
|
this.V0.Y = g.A.X; |
|
|
|
this.V0.Z = b.A.X; |
|
|
|
this.V0.W = 1f; |
|
|
|
|
|
|
|
this.V1.X = r.A.Y; |
|
|
|
this.V1.Y = g.A.Y; |
|
|
|
this.V1.Z = b.A.Y; |
|
|
|
this.V1.W = 1f; |
|
|
|
|
|
|
|
this.V2.X = r.A.Z; |
|
|
|
this.V2.Y = g.A.Z; |
|
|
|
this.V2.Z = b.A.Z; |
|
|
|
this.V2.W = 1f; |
|
|
|
|
|
|
|
this.V3.X = r.A.W; |
|
|
|
this.V3.Y = g.A.W; |
|
|
|
this.V3.Z = b.A.W; |
|
|
|
this.V3.W = 1f; |
|
|
|
|
|
|
|
this.V4.X = r.B.X; |
|
|
|
this.V4.Y = g.B.X; |
|
|
|
this.V4.Z = b.B.X; |
|
|
|
this.V4.W = 1f; |
|
|
|
|
|
|
|
this.V5.X = r.B.Y; |
|
|
|
this.V5.Y = g.B.Y; |
|
|
|
this.V5.Z = b.B.Y; |
|
|
|
this.V5.W = 1f; |
|
|
|
|
|
|
|
this.V6.X = r.B.Z; |
|
|
|
this.V6.Y = g.B.Z; |
|
|
|
this.V6.Z = b.B.Z; |
|
|
|
this.V6.W = 1f; |
|
|
|
|
|
|
|
this.V7.X = r.B.W; |
|
|
|
this.V7.Y = g.B.W; |
|
|
|
this.V7.Z = b.B.W; |
|
|
|
this.V7.W = 1f; |
|
|
|
} |
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Pack (g0,g1...g7) vector values as (g0,g0,g0,1), (g1,g1,g1,1) ...
|
|
|
|
/// </summary>
|
|
|
|
public void Pack(ref Vector4Pair g) |
|
|
|
{ |
|
|
|
this.V0.X = g.A.X; |
|
|
|
this.V0.Y = g.A.X; |
|
|
|
this.V0.Z = g.A.X; |
|
|
|
this.V0.W = 1f; |
|
|
|
|
|
|
|
this.V1.X = g.A.Y; |
|
|
|
this.V1.Y = g.A.Y; |
|
|
|
this.V1.Z = g.A.Y; |
|
|
|
this.V1.W = 1f; |
|
|
|
|
|
|
|
this.V2.X = g.A.Z; |
|
|
|
this.V2.Y = g.A.Z; |
|
|
|
this.V2.Z = g.A.Z; |
|
|
|
this.V2.W = 1f; |
|
|
|
|
|
|
|
this.V3.X = g.A.W; |
|
|
|
this.V3.Y = g.A.W; |
|
|
|
this.V3.Z = g.A.W; |
|
|
|
this.V3.W = 1f; |
|
|
|
|
|
|
|
this.V4.X = g.B.X; |
|
|
|
this.V4.Y = g.B.X; |
|
|
|
this.V4.Z = g.B.X; |
|
|
|
this.V4.W = 1f; |
|
|
|
|
|
|
|
this.V5.X = g.B.Y; |
|
|
|
this.V5.Y = g.B.Y; |
|
|
|
this.V5.Z = g.B.Y; |
|
|
|
this.V5.W = 1f; |
|
|
|
|
|
|
|
this.V6.X = g.B.Z; |
|
|
|
this.V6.Y = g.B.Z; |
|
|
|
this.V6.Z = g.B.Z; |
|
|
|
this.V6.W = 1f; |
|
|
|
|
|
|
|
this.V7.X = g.B.W; |
|
|
|
this.V7.Y = g.B.W; |
|
|
|
this.V7.Z = g.B.W; |
|
|
|
this.V7.W = 1f; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|