diff --git a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccFormulaCurveElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccFormulaCurveElement.cs index e437e6cf3d..2b0dc96570 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccFormulaCurveElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccFormulaCurveElement.cs @@ -5,10 +5,12 @@ namespace ImageSharp { + using System; + /// /// A formula based curve segment /// - internal sealed class IccFormulaCurveElement : IccCurveSegment + internal sealed class IccFormulaCurveElement : IccCurveSegment, IEquatable { /// /// Initializes a new instance of the class. @@ -83,5 +85,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccFormulaCurveElement other) + { + return this.Equals((IccCurveSegment)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccSampledCurveElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccSampledCurveElement.cs index 8c9ef14f98..859d43338e 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccSampledCurveElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/Curves/IccSampledCurveElement.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// A sampled curve segment /// - internal sealed class IccSampledCurveElement : IccCurveSegment + internal sealed class IccSampledCurveElement : IccCurveSegment, IEquatable { /// /// Initializes a new instance of the class. @@ -40,5 +41,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccSampledCurveElement other) + { + return this.Equals((IccCurveSegment)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccBAcsProcessElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccBAcsProcessElement.cs index 90d07a2009..a20a52d8e6 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccBAcsProcessElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccBAcsProcessElement.cs @@ -5,10 +5,12 @@ namespace ImageSharp { + using System; + /// /// A placeholder (might be used for future ICC versions) /// - internal sealed class IccBAcsProcessElement : IccMultiProcessElement + internal sealed class IccBAcsProcessElement : IccMultiProcessElement, IEquatable { /// /// Initializes a new instance of the class. @@ -19,5 +21,11 @@ namespace ImageSharp : base(IccMultiProcessElementSignature.BAcs, inChannelCount, outChannelCount) { } + + /// + public bool Equals(IccBAcsProcessElement other) + { + return base.Equals(other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccClutProcessElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccClutProcessElement.cs index 329d305a99..7d5855168e 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccClutProcessElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccClutProcessElement.cs @@ -5,10 +5,12 @@ namespace ImageSharp { + using System; + /// /// A CLUT (color lookup table) element to process data /// - internal sealed class IccClutProcessElement : IccMultiProcessElement + internal sealed class IccClutProcessElement : IccMultiProcessElement, IEquatable { /// /// Initializes a new instance of the class. @@ -36,5 +38,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccClutProcessElement other) + { + return this.Equals((IccMultiProcessElement)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccCurveSetProcessElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccCurveSetProcessElement.cs index 3a6252d01b..c16ca93d24 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccCurveSetProcessElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccCurveSetProcessElement.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// A set of curves to process data /// - internal sealed class IccCurveSetProcessElement : IccMultiProcessElement + internal sealed class IccCurveSetProcessElement : IccMultiProcessElement, IEquatable { /// /// Initializes a new instance of the class. @@ -38,5 +39,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccCurveSetProcessElement other) + { + return this.Equals((IccMultiProcessElement)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccEAcsProcessElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccEAcsProcessElement.cs index b08fe2cf56..9219f52002 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccEAcsProcessElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccEAcsProcessElement.cs @@ -5,10 +5,12 @@ namespace ImageSharp { + using System; + /// /// A placeholder (might be used for future ICC versions) /// - internal sealed class IccEAcsProcessElement : IccMultiProcessElement + internal sealed class IccEAcsProcessElement : IccMultiProcessElement, IEquatable { /// /// Initializes a new instance of the class. @@ -19,5 +21,11 @@ namespace ImageSharp : base(IccMultiProcessElementSignature.EAcs, inChannelCount, outChannelCount) { } + + /// + public bool Equals(IccEAcsProcessElement other) + { + return base.Equals(other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccMatrixProcessElement.cs b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccMatrixProcessElement.cs index 32b429cf35..e4f5362b40 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccMatrixProcessElement.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/MultiProcessElements/IccMatrixProcessElement.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// A matrix element to process data /// - internal sealed class IccMatrixProcessElement : IccMultiProcessElement + internal sealed class IccMatrixProcessElement : IccMultiProcessElement, IEquatable { /// /// Initializes a new instance of the class. @@ -52,6 +53,12 @@ namespace ImageSharp return false; } + /// + public bool Equals(IccMatrixProcessElement other) + { + return this.Equals((IccMultiProcessElement)other); + } + private bool EqualsMatrix(IccMatrixProcessElement element) { for (int x = 0; x < this.MatrixIxO.Width; x++) diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccChromaticityTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccChromaticityTagDataEntry.cs index b68a30b52f..1621aa302f 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccChromaticityTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccChromaticityTagDataEntry.cs @@ -12,7 +12,7 @@ namespace ImageSharp /// The chromaticity tag type provides basic chromaticity data /// and type of phosphors or colorants of a monitor to applications and utilities. /// - internal sealed class IccChromaticityTagDataEntry : IccTagDataEntry + internal sealed class IccChromaticityTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -96,6 +96,12 @@ namespace ImageSharp return false; } + /// + public bool Equals(IccChromaticityTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } + private static double[][] GetColorantArray(IccColorantEncoding colorantType) { switch (colorantType) diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantOrderTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantOrderTagDataEntry.cs index 9f02bdf24f..08875f0855 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantOrderTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantOrderTagDataEntry.cs @@ -5,13 +5,14 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This tag specifies the laydown order in which colorants /// will be printed on an n-colorant device. /// - internal sealed class IccColorantOrderTagDataEntry : IccTagDataEntry + internal sealed class IccColorantOrderTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -51,5 +52,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccColorantOrderTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantTableTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantTableTagDataEntry.cs index 657c53cbc2..e9411da4dd 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantTableTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccColorantTableTagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Linq; /// @@ -12,7 +13,7 @@ namespace ImageSharp /// the profile by a unique name and set of PCSXYZ or PCSLAB values /// to give the colorant an unambiguous value. /// - internal sealed class IccColorantTableTagDataEntry : IccTagDataEntry + internal sealed class IccColorantTableTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -52,5 +53,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccColorantTableTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccCurveTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccCurveTagDataEntry.cs index 334064c536..de2553dc54 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccCurveTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccCurveTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// The type contains a one-dimensional table of double values. /// - internal sealed class IccCurveTagDataEntry : IccTagDataEntry + internal sealed class IccCurveTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -118,5 +119,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccCurveTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDataTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDataTagDataEntry.cs index bb757963bd..c2bfacf53c 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDataTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDataTagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Linq; using System.Text; @@ -12,7 +13,7 @@ namespace ImageSharp /// The dataType is a simple data structure that contains /// either 7-bit ASCII or binary data, i.e. textType data or transparent bytes. /// - internal sealed class IccDataTagDataEntry : IccTagDataEntry + internal sealed class IccDataTagDataEntry : IccTagDataEntry, IEquatable { private static readonly Encoding AsciiEncoding = Encoding.GetEncoding("ASCII"); @@ -89,5 +90,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccDataTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDateTimeTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDateTimeTagDataEntry.cs index 819c0d4bc3..5313270328 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDateTimeTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccDateTimeTagDataEntry.cs @@ -10,7 +10,7 @@ namespace ImageSharp /// /// This type is a representation of the time and date. /// - internal sealed class IccDateTimeTagDataEntry : IccTagDataEntry + internal sealed class IccDateTimeTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -47,5 +47,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccDateTimeTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccFix16ArrayTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccFix16ArrayTagDataEntry.cs index f98b8ed7f2..af1a7aa420 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccFix16ArrayTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccFix16ArrayTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type represents an array of doubles (from 32bit fixed point values). /// - internal sealed class IccFix16ArrayTagDataEntry : IccTagDataEntry + internal sealed class IccFix16ArrayTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccFix16ArrayTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut16TagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut16TagDataEntry.cs index f3807a5849..8f0b357271 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut16TagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut16TagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Linq; using System.Numerics; @@ -12,7 +13,7 @@ namespace ImageSharp /// This structure represents a color transform using tables /// with 16-bit precision. /// - internal sealed class IccLut16TagDataEntry : IccTagDataEntry + internal sealed class IccLut16TagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -127,6 +128,12 @@ namespace ImageSharp return false; } + /// + public bool Equals(IccLut16TagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } + private Matrix4x4 CreateMatrix(float[,] matrix) { return new Matrix4x4( diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut8TagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut8TagDataEntry.cs index 61f17b7568..91e23223d2 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut8TagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLut8TagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Linq; using System.Numerics; @@ -12,7 +13,7 @@ namespace ImageSharp /// This structure represents a color transform using tables /// with 8-bit precision. /// - internal sealed class IccLut8TagDataEntry : IccTagDataEntry + internal sealed class IccLut8TagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -130,6 +131,12 @@ namespace ImageSharp return false; } + /// + public bool Equals(IccLut8TagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } + private Matrix4x4 CreateMatrix(float[,] matrix) { return new Matrix4x4( diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutAToBTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutAToBTagDataEntry.cs index 7a05faaa77..cfbb64714c 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutAToBTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutAToBTagDataEntry.cs @@ -12,7 +12,7 @@ namespace ImageSharp /// /// This structure represents a color transform. /// - internal sealed class IccLutAToBTagDataEntry : IccTagDataEntry + internal sealed class IccLutAToBTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -164,6 +164,12 @@ namespace ImageSharp return false; } + /// + public bool Equals(IccLutAToBTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } + private bool EqualsCurve(IccTagDataEntry[] thisCurves, IccTagDataEntry[] entryCurves) { bool thisNull = thisCurves == null; diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutBToATagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutBToATagDataEntry.cs index 6639e01cf9..e0bcab7be8 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutBToATagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccLutBToATagDataEntry.cs @@ -12,7 +12,7 @@ namespace ImageSharp /// /// This structure represents a color transform. /// - internal sealed class IccLutBToATagDataEntry : IccTagDataEntry + internal sealed class IccLutBToATagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -164,6 +164,12 @@ namespace ImageSharp return false; } + /// + public bool Equals(IccLutBToATagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } + private bool EqualsCurve(IccTagDataEntry[] thisCurves, IccTagDataEntry[] entryCurves) { bool thisNull = thisCurves == null; diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMeasurementTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMeasurementTagDataEntry.cs index cdc68eb915..b63e4a20b3 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMeasurementTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMeasurementTagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Numerics; /// @@ -12,7 +13,7 @@ namespace ImageSharp /// profile data and is meant to provide profile makers an alternative /// to the default measurement specifications. /// - internal sealed class IccMeasurementTagDataEntry : IccTagDataEntry + internal sealed class IccMeasurementTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -85,5 +86,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccMeasurementTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiLocalizedUnicodeTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiLocalizedUnicodeTagDataEntry.cs index 5c1c4a38b1..c5af2399ba 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiLocalizedUnicodeTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiLocalizedUnicodeTagDataEntry.cs @@ -5,13 +5,14 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This tag structure contains a set of records each referencing /// a multilingual string associated with a profile. /// - internal sealed class IccMultiLocalizedUnicodeTagDataEntry : IccTagDataEntry + internal sealed class IccMultiLocalizedUnicodeTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -49,5 +50,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccMultiLocalizedUnicodeTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiProcessElementsTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiProcessElementsTagDataEntry.cs index f93a2543e0..5ebfbbb6e2 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiProcessElementsTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccMultiProcessElementsTagDataEntry.cs @@ -5,13 +5,14 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This structure represents a color transform, containing /// a sequence of processing elements. /// - internal sealed class IccMultiProcessElementsTagDataEntry : IccTagDataEntry + internal sealed class IccMultiProcessElementsTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -68,5 +69,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccMultiProcessElementsTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccNamedColor2TagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccNamedColor2TagDataEntry.cs index afd6015168..6b354b3110 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccNamedColor2TagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccNamedColor2TagDataEntry.cs @@ -5,13 +5,14 @@ namespace ImageSharp { + using System; using System.Linq; /// /// The namedColor2Type is a count value and array of structures /// that provide color coordinates for color names. /// - internal sealed class IccNamedColor2TagDataEntry : IccTagDataEntry + internal sealed class IccNamedColor2TagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -133,5 +134,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccNamedColor2TagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccParametricCurveTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccParametricCurveTagDataEntry.cs index 7d0af1fa94..7796569115 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccParametricCurveTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccParametricCurveTagDataEntry.cs @@ -5,11 +5,13 @@ namespace ImageSharp { + using System; + /// /// The parametricCurveType describes a one-dimensional curve by /// specifying one of a predefined set of functions using the parameters. /// - internal sealed class IccParametricCurveTagDataEntry : IccTagDataEntry + internal sealed class IccParametricCurveTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -46,5 +48,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccParametricCurveTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceDescTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceDescTagDataEntry.cs index 56b3eea140..ef9da652b7 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceDescTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceDescTagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Linq; /// @@ -12,7 +13,7 @@ namespace ImageSharp /// from the header fields and tags from the original profiles which were /// combined to create the final profile. /// - internal sealed class IccProfileSequenceDescTagDataEntry : IccTagDataEntry + internal sealed class IccProfileSequenceDescTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -50,5 +51,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccProfileSequenceDescTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceIdentifierTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceIdentifierTagDataEntry.cs index 4151ed77cc..480f3974bd 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceIdentifierTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccProfileSequenceIdentifierTagDataEntry.cs @@ -5,13 +5,14 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type is an array of structures, each of which contains information /// for identification of a profile used in a sequence. /// - internal sealed class IccProfileSequenceIdentifierTagDataEntry : IccTagDataEntry + internal sealed class IccProfileSequenceIdentifierTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -49,5 +50,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccProfileSequenceIdentifierTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccResponseCurveSet16TagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccResponseCurveSet16TagDataEntry.cs index 067be7d216..1a4788aad8 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccResponseCurveSet16TagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccResponseCurveSet16TagDataEntry.cs @@ -5,6 +5,7 @@ namespace ImageSharp { + using System; using System.Linq; /// @@ -13,7 +14,7 @@ namespace ImageSharp /// lutAToBType, lutBToAType or multiProcessElementsType tags so that corrections can /// be made for variation in the device without having to produce a new profile. /// - internal sealed class IccResponseCurveSet16TagDataEntry : IccTagDataEntry + internal sealed class IccResponseCurveSet16TagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -62,5 +63,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccResponseCurveSet16TagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccSignatureTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccSignatureTagDataEntry.cs index 42fd18504e..9ee9c8fa38 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccSignatureTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccSignatureTagDataEntry.cs @@ -5,11 +5,13 @@ namespace ImageSharp { + using System; + /// /// Typically this type is used for registered tags that can /// be displayed on many development systems as a sequence of four characters. /// - internal sealed class IccSignatureTagDataEntry : IccTagDataEntry + internal sealed class IccSignatureTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -47,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccSignatureTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextDescriptionTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextDescriptionTagDataEntry.cs index 19dacb4212..f54818c4d7 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextDescriptionTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextDescriptionTagDataEntry.cs @@ -5,10 +5,12 @@ namespace ImageSharp { + using System; + /// /// The TextDescriptionType contains three types of text description. /// - internal sealed class IccTextDescriptionTagDataEntry : IccTagDataEntry + internal sealed class IccTextDescriptionTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -81,5 +83,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccTextDescriptionTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextTagDataEntry.cs index 746a050f5e..cb102eaaf0 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccTextTagDataEntry.cs @@ -5,10 +5,12 @@ namespace ImageSharp { + using System; + /// /// This is a simple text structure that contains a text string. /// - internal sealed class IccTextTagDataEntry : IccTagDataEntry + internal sealed class IccTextTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -46,5 +48,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccTextTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUFix16ArrayTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUFix16ArrayTagDataEntry.cs index 8ac0995dc6..3c326c9942 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUFix16ArrayTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUFix16ArrayTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type represents an array of doubles (from 32bit values). /// - internal sealed class IccUFix16ArrayTagDataEntry : IccTagDataEntry + internal sealed class IccUFix16ArrayTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccUFix16ArrayTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt16ArrayTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt16ArrayTagDataEntry.cs index ec11e4971a..b290fc5feb 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt16ArrayTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt16ArrayTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type represents an array of unsigned shorts. /// - internal sealed class IccUInt16ArrayTagDataEntry : IccTagDataEntry + internal sealed class IccUInt16ArrayTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccUInt16ArrayTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt32ArrayTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt32ArrayTagDataEntry.cs index 12acf1abef..2cf0b4fcc7 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt32ArrayTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt32ArrayTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type represents an array of unsigned 32bit integers. /// - internal sealed class IccUInt32ArrayTagDataEntry : IccTagDataEntry + internal sealed class IccUInt32ArrayTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccUInt32ArrayTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt64ArrayTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt64ArrayTagDataEntry.cs index ec65f82d5d..6f6ce88bd2 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt64ArrayTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt64ArrayTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type represents an array of unsigned 64bit integers. /// - internal sealed class IccUInt64ArrayTagDataEntry : IccTagDataEntry + internal sealed class IccUInt64ArrayTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccUInt64ArrayTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt8ArrayTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt8ArrayTagDataEntry.cs index f452a825fb..13356dda69 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt8ArrayTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUInt8ArrayTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This type represents an array of bytes. /// - internal sealed class IccUInt8ArrayTagDataEntry : IccTagDataEntry + internal sealed class IccUInt8ArrayTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccUInt8ArrayTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUnknownTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUnknownTagDataEntry.cs index 50dc3a785e..02726b600f 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUnknownTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccUnknownTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Linq; /// /// This tag stores data of an unknown tag data entry /// - internal sealed class IccUnknownTagDataEntry : IccTagDataEntry + internal sealed class IccUnknownTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -48,5 +49,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccUnknownTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccViewingConditionsTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccViewingConditionsTagDataEntry.cs index f279b19c4d..a1a65ed480 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccViewingConditionsTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccViewingConditionsTagDataEntry.cs @@ -5,12 +5,13 @@ namespace ImageSharp { + using System; using System.Numerics; /// /// This type represents a set of viewing condition parameters. /// - internal sealed class IccViewingConditionsTagDataEntry : IccTagDataEntry + internal sealed class IccViewingConditionsTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -65,5 +66,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccViewingConditionsTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } } diff --git a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccXyzTagDataEntry.cs b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccXyzTagDataEntry.cs index e33e3d87b2..77f9ff7069 100644 --- a/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccXyzTagDataEntry.cs +++ b/src/ImageSharp/MetaData/Profiles/ICC/TagDataEntries/IccXyzTagDataEntry.cs @@ -5,13 +5,14 @@ namespace ImageSharp { + using System; using System.Linq; using System.Numerics; /// /// The XYZType contains an array of XYZ values. /// - internal sealed class IccXyzTagDataEntry : IccTagDataEntry + internal sealed class IccXyzTagDataEntry : IccTagDataEntry, IEquatable { /// /// Initializes a new instance of the class. @@ -49,5 +50,11 @@ namespace ImageSharp return false; } + + /// + public bool Equals(IccXyzTagDataEntry other) + { + return this.Equals((IccTagDataEntry)other); + } } }