System.Collections.BitArray.Set C# (CSharp) Method

Set() public method

public Set ( int index, bool value ) : void
index int
value bool
return void
        public void Set(int index, bool value)
        {
            if (index < 0 || index >= Length)
            {
                throw new ArgumentOutOfRangeException(nameof(index), index, SR.ArgumentOutOfRange_Index);
            }
            Contract.EndContractBlock();

            if (value)
            {
                m_array[index / 32] |= (1 << (index % 32));
            }
            else
            {
                m_array[index / 32] &= ~(1 << (index % 32));
            }

            _version++;
        }

Usage Example

示例#1
0
        internal byte[] ToArray()
        {
            var list = new List<byte>();
            list.Add(ExtensionIntroducer);
            list.Add(GraphicControlLabel);
            list.Add(BlockSize);

            //Packed fields
            var bitArray = new BitArray(8);

            //Reserved for future use. Hahahaha. Yeah...
            bitArray.Set(0, false);
            bitArray.Set(1, false);
            bitArray.Set(2, false);

            var pixelBits = GifMethods.ToBitValues((int)DisposalMethod);

            bitArray.Set(3, pixelBits[0]);
            bitArray.Set(4, pixelBits[1]);
            bitArray.Set(5, pixelBits[2]);

            //User Input Flag.
            bitArray.Set(6, false);

            //Transparent Color Flag, uses tranparency?
            bitArray.Set(7, HasTransparency);

            list.Add(GifMethods.ConvertToByte(bitArray));
            list.AddRange(BitConverter.GetBytes(Delay));
            list.Add(TransparentIndex);
            list.Add(Terminator);

            return list.ToArray();
        }
All Usage Examples Of System.Collections.BitArray::Set