Skip to content

Commit

Permalink
Reduce bytes for numIndividuals (#6)
Browse files Browse the repository at this point in the history
Compatible change; numIndividuals will never need 64 bits.
  • Loading branch information
dcdehaas authored Dec 10, 2024
1 parent 2342527 commit 8b1995d
Show file tree
Hide file tree
Showing 2 changed files with 6 additions and 1 deletion.
6 changes: 5 additions & 1 deletion pyigd/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ class IGDConstants:
NUM_HEADER_BYTES = 128
INDEX_ENTRY_BYTES = 16

HEADER_FORMAT = "QQIIQQQQQQQQQQQQQ"
HEADER_FORMAT = "QQIIQIIQQQQQQQQQQQ"
HEADER_MAGIC = 0x3A0C6FD7945A3481
SUPPORTED_FILE_VERSION = 4

Expand All @@ -105,6 +105,7 @@ def __init__(self, file_obj: BinaryIO):
_,
self._num_var,
self._num_idv,
_,
self._flags,
self._fp_idx,
self._fp_vars,
Expand Down Expand Up @@ -413,6 +414,7 @@ class IGDHeader:
sparse_threshold: int
num_variants: int
num_individuals: int
reserved: int
flags: int
fp_index: int
fp_variants: int
Expand All @@ -428,6 +430,7 @@ def pack(self) -> bytes:
self.sparse_threshold,
self.num_variants,
self.num_individuals,
0,
self.flags,
self.fp_index,
self.fp_variants,
Expand Down Expand Up @@ -491,6 +494,7 @@ def __init__(
sparse_threshold=sparse_threshold,
num_variants=0,
num_individuals=individuals,
reserved=0,
flags=0 if not phased else IGDConstants.FLAG_IS_PHASED,
fp_index=0,
fp_variants=0,
Expand Down
1 change: 1 addition & 0 deletions test/test_reader.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ def make_header(
variants,
individuals,
0,
0,
fp_idx,
fp_vars,
fp_indv,
Expand Down

0 comments on commit 8b1995d

Please sign in to comment.