MatrixInt.BitPack Method

Overload List

#SignatureDescription
1TMtxInt BitPack(TMtxInt Src)Converts Src to packed bit storage.
2TMtxVecInt BitPack(TMtxVecInt Src, Int32 SrcIndex, Int32 Index, Int32 Len)Converts Src to packed bit storage.

Overload 1: TMtxInt BitPack(TMtxInt Src)

Converts Src to packed bit storage.

#NameTypeDescription
1SrcTMtxIntsource TMtxInt

Result: stored in self (calling object), returns self for chaining

Remarks:

If Src[i] <> 0 then bit at index "i" in the calling vector is set to 1. If Src.Length is not divisable with 32, the remaining bits in the last sample are left at 0. The storage precision of the calling object is set to prInt32. The size of the calling object is adjusted automatically. Packing if array with precision other than Int32 is 8x slower. Packing of array with precision other than Int32 is 8x slower.

Overload 2: TMtxVecInt BitPack(TMtxVecInt Src, Int32 SrcIndex, Int32 Index, Int32 Len)

Converts Src to packed bit storage.

#NameTypeDescription
1SrcTMtxVecIntsource TVecInt or TMtxInt
2SrcIndexInt32source start index
3IndexInt32start index
4LenInt32element count

Result: stored in self (calling object), returns self for chaining

Remarks:

Returns the result of bit packing the Src values [SrcIndex]..[SrcIndex+Len-1] and stored in the calling object bits from [0]..[0+Len-1]. If Len is not divisable with 32, the remaining bits in the last sample are left at 0. The storage precision of the calling object is set to prInt32. The size of the calling object is adjusted automatically. Packing of array with precision other than Int32 is 8x slower.