gunz_cm.compressions.bsc_decoder#

Module contents#

BSC Decoder wrapper for GZCM v3 compression.

Uses BSC CLI subprocess with LD_LIBRARY_PATH for libomp.

Examples

class gunz_cm.compressions.bsc_decoder.BscDecoder(tile_size: int = 512, resolution: int = 50000, dtype: ~numpy.dtype = <class 'numpy.uint32'>)[source]#

Bases: object

BSC decoder for contact matrix tiles.

Uses bsc CLI subprocess for true BSC (Block Sorting Compression) decompression.

Parameters:
  • tile_size (int, default=512) – Tile size for block processing.

  • resolution (int, default=50000) – Hi-C resolution in bp.

  • dtype (np.dtype, default=np.uint32) – Data type for decoded tiles.

Examples

decode_tile(payload: bytes) ndarray[source]#

Decode a single BSC-compressed tile.

Parameters:

payload (bytes) – BSC-compressed bitstream.

Returns:

Decoded contact matrix tile.

Return type:

np.ndarray

Examples

decode_tiles(payloads: list[bytes]) ndarray[source]#

Decode multiple tiles into a 4D array.

Parameters:

payloads (list[bytes]) – List of encoded bitstreams.

Returns:

4D array of decoded tiles (n_tile_rows, n_tile_cols, tile_size, tile_size).

Return type:

np.ndarray

Examples