Exemplo n.º 1
0
        internal void ReadUcrBgTagDataEntry(byte[] data, IccUcrBgTagDataEntry expected, uint size)
        {
            IccDataReader reader = CreateReader(data);

            IccUcrBgTagDataEntry output = reader.ReadUcrBgTagDataEntry(size);

            Assert.Equal(expected, output);
        }
        internal void WriteUcrBgTagDataEntry(byte[] expected, IccUcrBgTagDataEntry data, uint size)
        {
            IccDataWriter writer = CreateWriter();

            writer.WriteUcrBgTagDataEntry(data);
            byte[] output = writer.GetData();

            Assert.Equal(expected, output);
        }
        /// <summary>
        /// Writes a <see cref="IccUcrBgTagDataEntry"/>
        /// </summary>
        /// <param name="value">The entry to write</param>
        /// <returns>The number of bytes written</returns>
        public int WriteUcrBgTagDataEntry(IccUcrBgTagDataEntry value)
        {
            int count = 0;

            count += this.WriteUInt32((uint)value.UcrCurve.Length);
            for (int i = 0; i < value.UcrCurve.Length; i++)
            {
                count += this.WriteUInt16(value.UcrCurve[i]);
            }

            count += this.WriteUInt32((uint)value.BgCurve.Length);
            for (int i = 0; i < value.BgCurve.Length; i++)
            {
                count += this.WriteUInt16(value.BgCurve[i]);
            }

            count += this.WriteAsciiString(value.Description + '\0');

            return(count);
        }