Table of Contents

Class BitSource

Namespace
ZXing.Common
Assembly
zxing.dll

This provides an easy abstraction to read bits at a time from a sequence of bytes, where the number of bits read is not often a multiple of 8.

       <p>This class is thread-safe but not reentrant. Unless the caller modifies the bytes array
       it passed in, in which case all bets are off.</p>
public sealed class BitSource
Inheritance
BitSource
Inherited Members

Constructors

BitSource(byte[])

public BitSource(byte[] bytes)

Parameters

bytes byte[]

bytes from which this will read bits. Bits will be read from the first byte first. Bits are read within a byte from most-significant to least-significant bit.

Properties

BitOffset

index of next bit in current byte which would be read by the next call to {@link #readBits(int)}.

public int BitOffset { get; }

Property Value

int

ByteOffset

index of next byte in input byte array which would be read by the next call to {@link #readBits(int)}.

public int ByteOffset { get; }

Property Value

int

Methods

available()

public int available()

Returns

int

number of bits that can be read successfully

readBits(int)

public int readBits(int numBits)

Parameters

numBits int

number of bits to read

Returns

int

int representing the bits read. The bits will appear as the least-significant bits of the int

Exceptions

ArgumentException

if numBits isn't in [1,32] or more than is available