public int AddCoordinates(EnsemblGtf ensemblGtf, RefSeqGff refSeqGff) { foreach (var hgncGene in HgncGenes) { var(refSeqGenes, ensemblGene, numMatches) = GetGenes(hgncGene.EntrezGeneId, refSeqGff.EntrezGeneIdToGene, hgncGene.EnsemblId, ensemblGtf.EnsemblIdToGene); switch (numMatches) { case 0: break; case 1: if (ensemblGene == null) { AddCoordinatesFromGene(hgncGene, refSeqGenes[0]); } else { AddCoordinatesFromGene(hgncGene, ensemblGene); } break; default: AddCoordinatesFromMultipleGenes(hgncGene, ensemblGene, refSeqGenes); break; } } return(HgncGenes.Count(hgncGene => hgncGene.Start != 1 && hgncGene.End != -1)); }
private AssemblyDataStore(string description, EnsemblGtf ensemblGtf, RefSeqGff refSeqGff, GlobalCache globalCache) { _description = description; EnsemblGtf = ensemblGtf; RefSeqGff = refSeqGff; _globalCache = globalCache; }