From 647975324c1a06c865b50f91de378c1743ce3eb8 Mon Sep 17 00:00:00 2001 From: Brad Macdonald Date: Wed, 26 Jul 2023 13:54:20 -0600 Subject: [PATCH] adds hdf5suite and example .hdf file --- src/dcqc/file.py | 1 + src/dcqc/suites/suites.py | 4 ++++ tests/data/test.hdf | Bin 0 -> 30275 bytes 3 files changed, 5 insertions(+) create mode 100644 tests/data/test.hdf diff --git a/src/dcqc/file.py b/src/dcqc/file.py index 55a8afd..c26115e 100644 --- a/src/dcqc/file.py +++ b/src/dcqc/file.py @@ -112,6 +112,7 @@ def get_file_type(cls, file_type: str) -> FileType: FileType("CSV", (".csv"), "format_3752") FileType("BAM", (".bam"), "format_2572") FileType("FASTQ", (".fastq", ".fastq.gz", ".fq", ".fq.gz"), "format_1930") +FileType("HDF5", (".hdf", ".hdf5", ".h5", ".he5"), "format_3590") # TODO: Leverage post-init function in dataclasses diff --git a/src/dcqc/suites/suites.py b/src/dcqc/suites/suites.py index 4d3d5fe..dc28755 100644 --- a/src/dcqc/suites/suites.py +++ b/src/dcqc/suites/suites.py @@ -53,3 +53,7 @@ class TXTSuite(FileSuite): class CSVSuite(FileSuite): file_type = FileType.get_file_type("CSV") + + +class HDF5Suite(FileSuite): + file_type = FileType.get_file_type("HDF5") diff --git a/tests/data/test.hdf b/tests/data/test.hdf new file mode 100644 index 0000000000000000000000000000000000000000..4674fdde19487d5c28b44f54562fbe5118284e0d GIT binary patch literal 30275 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 E0NB#lt^fc4 literal 0 HcmV?d00001