コード例 #1
0
ファイル: OutBitStream.cs プロジェクト: Svengali/brook-dotnet
        public void WriteFromStream(IInBitStream inBitStream, int bitCount)
        {
            const int ChunkBitSize = AccumulatorSize;
            var       restBitCount = bitCount % ChunkBitSize;
            var       chunkCount   = bitCount / ChunkBitSize;

            for (var i = 0; i < chunkCount; ++i)
            {
                var data = inBitStream.ReadRawBits(ChunkBitSize);
                WriteRawBits(data, ChunkBitSize);
            }

            if (restBitCount > 0)
            {
                var restData = inBitStream.ReadRawBits(restBitCount);
                WriteRawBits(restData, restBitCount);
            }
        }