Animatroller.Framework.Import.DmxPlayback.ReadFrame C# (CSharp) Method

ReadFrame() private method

private ReadFrame ( BinaryReader binRead ) : DmxFrame
binRead System.IO.BinaryReader
return Animatroller.Framework.Import.FileFormat.DmxFrame
        private DmxFrame ReadFrame(BinaryReader binRead)
        {
            var target = new DmxFrame();
            target.Start = binRead.ReadByte();
            target.TimestampMS = (uint)binRead.ReadInt32();
            target.Universe = (ushort)binRead.ReadInt16();
            switch (target.Start)
            {
                case 1:
                    target.Len = (ushort)binRead.ReadInt16();
                    target.Data = binRead.ReadBytes(target.Len);
                    break;

                case 2:
                    break;

                default:
                    throw new ArgumentException("Invalid data");
            }
            target.End = binRead.ReadByte();

            if (target.End != 4)
                throw new ArgumentException("Invalid data");

            return target;
        }