BACnet.Tagging.TagWriter.WriteEnumerated C# (CSharp) Method

WriteEnumerated() public method

Writes an enumerated value to the stream
public WriteEnumerated ( uint value, byte tag = 255 ) : void
value uint The value to write
tag byte The tag number, or 255 fo an application tag
return void
        public void WriteEnumerated(uint value, byte tag = 255)
        {
            int length = 0;

            if (value < (1 << 8))
                length = 1;
            else if (value < (1 << 16))
                length = 2;
            else if (value < (1 << 24))
                length = 3;
            else
                length = 4;

            _writeLengthHeader(tag, ApplicationTag.Enumerated, length);
            for(int i = 0; i < length; i++)
            {
                _writer.Write((byte)value);
                value >>= 8;
            }
        }