Animatroller.Framework.Expander.DmxPacketManager.GetContentSize C# (CSharp) Method

GetContentSize() protected method

protected GetContentSize ( byte buf, int size ) : int?
buf byte
size int
return int?
        protected override int? GetContentSize(byte[] buf, int size)
        {
            // 0 = Start of message (0x7E) (already checked when we get here)
            // 1 = Label
            // 2 = Length LSB
            // 3 = Length MSB
            // 3+length = Payload
            // n = End of message (0xE7)

            // Need at least 3 bytes
            if (size < 3)
            {
                return null;
            }

            this.label = buf[0];
            return buf[1] + (buf[2] << 8) + 3;    // 3 for label + length LSB/MSB
        }