Lidgren.Network.NetIncomingMessage.ReadBits C# (CSharp) Méthode

ReadBits() public méthode

Reads the specified number of bits into a preallocated array
public ReadBits ( byte into, int offset, int numberOfBits ) : void
into byte The destination array
offset int The offset where to start writing in the destination array
numberOfBits int The number of bits to read
Résultat void
        public void ReadBits(byte[] into, int offset, int numberOfBits)
        {
            NetException.Assert(m_bitLength - m_readPosition >= numberOfBits, c_readOverflowError);
            NetException.Assert(offset + NetUtility.BytesToHoldBits(numberOfBits) <= into.Length);

            int numberOfWholeBytes = numberOfBits / 8;
            int extraBits = numberOfBits - (numberOfWholeBytes * 8);

            NetBitWriter.ReadBytes(m_data, numberOfWholeBytes, m_readPosition, into, offset);
            m_readPosition += (8 * numberOfWholeBytes);

            if (extraBits > 0)
                into[offset + numberOfWholeBytes] = ReadByte(extraBits);

            return;
        }