Пример #1
0
        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));
        }
Пример #2
0
 private AssemblyDataStore(string description, EnsemblGtf ensemblGtf, RefSeqGff refSeqGff, GlobalCache globalCache)
 {
     _description = description;
     EnsemblGtf   = ensemblGtf;
     RefSeqGff    = refSeqGff;
     _globalCache = globalCache;
 }