SWFProcessing.SWFModeller.SWFDataTypeWriter.WriteUBits C# (CSharp) Method

WriteUBits() public method

public WriteUBits ( uint value, int numBits ) : void
value uint
numBits int
return void
        public void WriteUBits(uint value, int numBits)
        {
            int bitPos = 8 - this.bitCount;
            int bitNum = numBits;

            while (bitNum > 0)
            {
                while (bitPos > 0 && bitNum > 0)
                {
                    if ((value & (1 << (bitNum - 1))) != 0)
                    {
                        this.buffer = this.buffer | (1 << (bitPos - 1));
                    }

                    bitNum--;
                    bitPos--;
                    this.bitCount++;
                }

                if (bitPos == 0)
                {
                    this.Align8();
                    if (bitNum > 0)
                    {
                        bitPos = 8;
                    }
                }
            }
        }