LUT class for storing mappings between allele vectors in the merged file and input VCF files Since the #alleles per site is expected to be small, this class sets the number of fields to 10. This makes any subsequent re-allocations unlikely. The function resize_luts_if_needed() will almost always return immediately after failing the if condition.
More...
#include <merged_vcf_lut.h>
|
| MergedVCFAllelesIdxLUT (unsigned numInputGVCFs) |
|
void | resize_luts_if_needed (unsigned numMergedAlleles) |
|
void | reset_luts () |
| : clear all mappings More...
|
|
void | add_input_merged_idx_pair (unsigned inputGVCFIdx, int inputIdx, int mergedIdx) |
|
template<bool M = merged_2_inputs_LUT_is_input_ordered, typename std::enable_if< M >::type * = nullptr> |
int | get_input_idx_for_merged (unsigned inputGVCFIdx, int mergedIdx) const |
| Get field idx for input VCF inputGVCFIdx corresponding to field idx mergedIdx in the mergedVCF file. More...
|
|
template<bool M = merged_2_inputs_LUT_is_input_ordered, typename std::enable_if<!M >::type * = nullptr> |
int | get_input_idx_for_merged (unsigned inputGVCFIdx, int mergedIdx) const |
|
template<bool M = inputs_2_merged_LUT_is_input_ordered, typename std::enable_if< M >::type * = nullptr> |
int | get_merged_idx_for_input (unsigned inputGVCFIdx, int inputIdx) const |
| Get field idx for the merged VCF corresponding to field idx inputIdx in the input VCF of index inputGVCFIdx. More...
|
|
template<bool M = inputs_2_merged_LUT_is_input_ordered, typename std::enable_if<!M >::type * = nullptr> |
int | get_merged_idx_for_input (unsigned inputGVCFIdx, int inputIdx) const |
|
void | reset_merged_idx_for_input (unsigned inputGVCFIdx, int inputIdx) |
| reset/invalidate merged field index for field inputIdx of input VCF inputGVCFIdx More...
|
|
void | reset_input_idx_for_merged (unsigned inputGVCFIdx, int mergedIdx) |
| reset/invalidate the input field index for input VCF inputGVCFIdx for merged field mergedIdx More...
|
|
|
| MergedVCFLUTBase () |
|
| MergedVCFLUTBase (unsigned numInputGVCFs, unsigned numMergedFields) |
|
| ~MergedVCFLUTBase ()=default |
|
void | clear () |
| deallocates memory More...
|
|
template<bool M = inputs_2_merged_LUT_is_input_ordered, typename std::enable_if< M >::type * = nullptr> |
void | resize_inputs_2_merged_lut_if_needed (unsigned numInputGVCFs, unsigned numMergedFields) |
| resize LUT functions More...
|
|
template<bool M = inputs_2_merged_LUT_is_input_ordered, typename std::enable_if<!M >::type * = nullptr> |
void | resize_inputs_2_merged_lut_if_needed (unsigned numInputGVCFs, unsigned numMergedFields) |
|
template<bool M = merged_2_inputs_LUT_is_input_ordered, typename std::enable_if< M >::type * = nullptr> |
void | resize_merged_2_inputs_lut_if_needed (unsigned numInputGVCFs, unsigned numMergedFields) |
|
template<bool M = merged_2_inputs_LUT_is_input_ordered, typename std::enable_if<!M >::type * = nullptr> |
void | resize_merged_2_inputs_lut_if_needed (unsigned numInputGVCFs, unsigned numMergedFields) |
|
void | resize_luts_if_needed (unsigned numInputGVCFs, unsigned numMergedFields) |
|
unsigned | m_num_input_vcfs |
|
unsigned | m_num_merged_fields |
|
template<bool inputs_2_merged_LUT_is_input_ordered, bool merged_2_inputs_LUT_is_input_ordered>
class gamgee::utils::MergedVCFAllelesIdxLUT< inputs_2_merged_LUT_is_input_ordered, merged_2_inputs_LUT_is_input_ordered >
LUT class for storing mappings between allele vectors in the merged file and input VCF files Since the #alleles per site is expected to be small, this class sets the number of fields to 10. This makes any subsequent re-allocations unlikely. The function resize_luts_if_needed() will almost always return immediately after failing the if condition.
template<bool inputs_2_merged_LUT_is_input_ordered, bool merged_2_inputs_LUT_is_input_ordered>
template<bool inputs_2_merged_LUT_is_input_ordered, bool merged_2_inputs_LUT_is_input_ordered>
The documentation for this class was generated from the following file: