public static EosImageQuality Create(long bitMask) { var quality = new EosImageQuality { PrimaryImageSize = (EosImageSize)((bitMask >> 24) & 0xFF), PrimaryImageFormat = (EosImageFormat)((bitMask >> 20) & 0xF), PrimaryCompressLevel = (EosCompressLevel)((bitMask >> 16) & 0xF), SecondaryImageSize = (EosImageSize)((bitMask >> 8) & 0xF), SecondaryImageFormat = (EosImageFormat)((bitMask >> 4) & 0xF), SecondaryCompressLevel = (EosCompressLevel)(bitMask & 0xF), }; return quality; }
public static EosImageQuality Create(long bitMask) { var quality = new EosImageQuality { PrimaryImageSize = (EosImageSize)((bitMask >> 24) & 0xFF), PrimaryImageFormat = (EosImageFormat)((bitMask >> 20) & 0xF), PrimaryCompressLevel = (EosCompressLevel)((bitMask >> 16) & 0xF), SecondaryImageSize = (EosImageSize)((bitMask >> 8) & 0xF), SecondaryImageFormat = (EosImageFormat)((bitMask >> 4) & 0xF), SecondaryCompressLevel = (EosCompressLevel)(bitMask & 0xF), }; return(quality); }
private static void AssertConversion(long expectedValue, EosImageQuality expectedQuality) { var actualQuality = EosImageQuality.Create(expectedValue); Assert.AreEqual(expectedQuality.PrimaryCompressLevel, actualQuality.PrimaryCompressLevel, "PrimaryCompressLevel"); Assert.AreEqual(expectedQuality.PrimaryImageFormat, actualQuality.PrimaryImageFormat, "PrimaryImageFormat"); Assert.AreEqual(expectedQuality.PrimaryImageSize, actualQuality.PrimaryImageSize, "PrimaryImageSize"); Assert.AreEqual(expectedQuality.SecondaryCompressLevel, actualQuality.SecondaryCompressLevel, "SecondaryCompressLevel"); Assert.AreEqual(expectedQuality.SecondaryImageFormat, actualQuality.SecondaryImageFormat, "SecondaryImageFormat"); Assert.AreEqual(expectedQuality.SecondaryImageSize, actualQuality.SecondaryImageSize, "SecondaryImageSize"); var actualValue = actualQuality.ToBitMask(); Assert.AreEqual(expectedValue, actualValue, "ToBitMask"); }