@@ -104,6 +104,12 @@ def version(self, reference_genome: ReferenceGenome) -> str:
104
104
)
105
105
return version
106
106
107
+ def dataset_types (
108
+ self ,
109
+ reference_genome : ReferenceGenome ,
110
+ ) -> frozenset [DatasetType ]:
111
+ return CONFIG [self ][reference_genome ][DATASET_TYPES ]
112
+
107
113
@property
108
114
def enums (self ) -> dict | None :
109
115
return CONFIG [self ].get (ENUMS )
@@ -143,11 +149,9 @@ def get_ht(
143
149
if enum_selects :
144
150
ht = ht .transmute (** enum_selects )
145
151
ht = filter_contigs (ht , reference_genome )
146
- # Reference Datasets are DatasetType agnostic, but these
147
- # methods (in theory) support SV/GCNV. SNV_INDEL
148
- # is passed as a proxy for non-SV/GCNV.
149
- validate_allele_type (ht , DatasetType .SNV_INDEL )
150
- validate_no_duplicate_variants (ht , reference_genome , DatasetType .SNV_INDEL )
152
+ for dataset_type in self .dataset_types (reference_genome ):
153
+ validate_allele_type (ht , dataset_type )
154
+ validate_no_duplicate_variants (ht , reference_genome , dataset_type )
151
155
# NB: we do not filter with "filter" here
152
156
# ReferenceDatasets are DatasetType agnostic and that
153
157
# filter is only used at annotation time.
0 commit comments