bcf_hdr_subset

bcf_hdr_subset() - creates a new copy of the header removing unwanted samples @param n: number of samples to keep @param samples: names of the samples to keep @param imap: mapping from index in @samples to the sample index in the original file

Sample names not present in h0 are ignored. The number of unmatched samples can be checked by comparing n and bcf_hdr_nsamples(out_hdr). This function can be used to reorder samples. See also bcf_subset() which subsets individual records. The bcf_hdr_t struct returned by a successful call should be freed via bcf_hdr_destroy() when it is no longer needed. NOTE: char *const* samples really exmplifies what I hate about C pointers My interpretation of this is it is equivalent to char **samples, but that the outer pointer is const which in D would be const(char *)*samples. I don't know what it implies about constancy of *samples or samples.

extern (C)
bcf_hdr_subset
(
const(bcf_hdr_t)* h0
,
int n
,
const(char*)* samples
,
int* imap
)

Meta