/// <summary> /// Apply a list of variants to intervals within this gene model /// </summary> /// <param name="variants"></param> /// <returns></returns> public List <Transcript> ApplyVariants(List <Variant> variants) { // Must add variants before applying them to this gene model if (PreviouslyAddedVariants != variants) { AddVariantAnnotations(variants); } return(ApplyVariants(variants, Genes.SelectMany(g => g.Transcripts).ToList())); }
public void RebuildModelFollowingGenes() { var activeModels = Genes.SelectMany(g => g.Parts.Where(p => p.Active)).Select(gp => gp.Model); var collectionToAdd = _settings.CombinationCollection(_model); collectionToAdd.Clear(); foreach (var activeModel in activeModels) { collectionToAdd.Add(activeModel); } }
public List <Protein> Translate(bool translateCodingDomains, HashSet <string> incompleteTranscriptAccessions = null, Dictionary <string, string> selenocysteineContaining = null) { return(Genes.SelectMany(g => g.Translate(translateCodingDomains, incompleteTranscriptAccessions, selenocysteineContaining)).ToList()); }