seismicrna.core.io package

Subpackages

Submodules

class seismicrna.core.io.batch.MutsBatchIO(*args, region: Region, **kwargs)

Bases: MutsBatch, ReadBatchIO, ABC

Pickled file of a batch of mutational data.

class seismicrna.core.io.batch.ReadBatchIO(*, batch: int, **kwargs)

Bases: ReadBatch, BrickleIO, ABC

Pickled file of a batch of data.

classmethod btype()
class seismicrna.core.io.brickle.BrickleIO

Bases: FileIO, ABC

Brotli-compressed file of a pickled object (brickle).

classmethod load(file: Path, **kwargs)

Load from a compressed pickle file.

save(top: Path, *args, **kwargs)

Save to a pickle file compressed with Brotli.

class seismicrna.core.io.brickle.RefBrickleIO(*args, ref: str, **kwargs)

Bases: SampleBrickleIO, RefFileIO, ABC

class seismicrna.core.io.brickle.RegBrickleIO(*args, reg: str, **kwargs)

Bases: RefBrickleIO, RegFileIO, ABC

class seismicrna.core.io.brickle.SampleBrickleIO(*args, sample: str, branches: dict[str, str], **kwargs)

Bases: SampleFileIO, BrickleIO, ABC

seismicrna.core.io.brickle.load_brickle(file: str | Path, data_type: type[BrickleIO], checksum: str)

Unpickle and return an object from a Brotli-compressed file.

seismicrna.core.io.brickle.save_brickle(item: BrickleIO, file: str | Path, brotli_level: int = 10, force: bool = False)

Pickle an object, compress with Brotli, and save to a file.

exception seismicrna.core.io.checksum.BadChecksumError

Bases: ValueError

A file or piece of data has the wrong checksum.

seismicrna.core.io.checksum.calc_sha512_bytes(data: bytes)

Calculate the SHA-512 checksum of a bytestring.

Parameters:

data (bytes) – Data of which to calculate the checksum

Return type:

SHA-512 checksum as a hexadecimal string.

seismicrna.core.io.checksum.calc_sha512_path(path: str | Path, chunk_size: int = 8192)

Calculate the SHA-512 checksum of a file.

Parameters:
  • path (str | Path) – File path

  • chunk_size (int) – Size of chunks to read when processing a file

Return type:

SHA-512 checksum as a hexadecimal string.

class seismicrna.core.io.file.FileIO

Bases: HasFilePath, ABC

Object that can be saved to and loaded from a file path.

abstractmethod classmethod load(file: Path)

Load an object from a file.

abstractmethod save(top: Path, **kwargs)

Save the object to a file.

class seismicrna.core.io.file.RefFileIO

Bases: SampleFileIO, HasRefFilePath, ABC

class seismicrna.core.io.file.RegFileIO

Bases: RefFileIO, HasRegFilePath, ABC

class seismicrna.core.io.file.SampleFileIO

Bases: FileIO, HasSampleFilePath, ABC

class seismicrna.core.io.seq.RefseqIO(*args, refseq: DNA, **kwargs)

Bases: RefFileIO, BrickleIO

classmethod get_file_seg_type()

Type of the last segment in the path.

classmethod get_step()

Step of the workflow.

property refseq