public void AddAnnotation(IVariantFeature variant)
 {
     if (!_hasCustomAnnotations)
     {
         return;
     }
     variant.AddCustomAnnotation(_customAnnotationReaders);
 }
Esempio n. 2
0
 public void AddAnnotation(IVariantFeature variant)
 {
     if (_saReader == null)
     {
         return;
     }
     if (variant.IsStructuralVariant)
     {
         AddOverlappingIntervals(variant);
     }
     else
     {
         variant.SetSupplementaryAnnotation(_saReader);
     }
 }
Esempio n. 3
0
        public void AddAnnotation(IVariantFeature variant)
        {
            if (!_hasIntervals)
            {
                return;
            }

            _intervalForest.GetAllOverlappingValues(variant.ReferenceIndex, variant.OverlapReferenceBegin,
                                                    variant.OverlapReferenceEnd, _overlappingIntervals);
            if (_overlappingIntervals.Count == 0)
            {
                return;
            }

            variant.AddCustomIntervals(_overlappingIntervals);
        }
Esempio n. 4
0
        private void AddOverlappingIntervals(IVariantFeature variant)
        {
            // get overlapping supplementary intervals.
            _overlappingSupplementaryIntervals.Clear();

            var firstAltAllele = variant.FirstAlternateAllele;

            var variantBegin = firstAltAllele.NirvanaVariantType == VariantType.insertion
                ? firstAltAllele.End
                : firstAltAllele.Start;
            var variantEnd = firstAltAllele.End;

            _suppIntervalForest.GetAllOverlappingValues(variant.ReferenceIndex, variantBegin, variantEnd,
                                                        _overlappingSupplementaryIntervals);

            variant.AddSupplementaryIntervals(_overlappingSupplementaryIntervals);
        }
Esempio n. 5
0
        public void AnnotateVariant(IVariantFeature variant, List <Transcript> transcripts,
                                    IAnnotatedVariant annotatedVariant, ICompressedSequence sequence)
        {
            if (variant.IsStructuralVariant)
            {
                return;
            }

            CreateTranscriptDictionary(transcripts);

            foreach (var altAllele in annotatedVariant.AnnotatedAlternateAlleles)
            {
                foreach (var transcript in altAllele.EnsemblTranscripts)
                {
                    var lofteeOut = LofteeAnalysis(transcript, altAllele, sequence);
                    if (lofteeOut != null)
                    {
                        if (transcript.AdditionalInfo == null)
                        {
                            transcript.AdditionalInfo = new Dictionary <string, string>();
                        }
                        transcript.AdditionalInfo["loftee"] = lofteeOut;
                    }
                }


                foreach (var transcript in altAllele.RefSeqTranscripts)
                {
                    var lofteeOut = LofteeAnalysis(transcript, altAllele, sequence);
                    if (lofteeOut != null)
                    {
                        if (transcript.AdditionalInfo == null)
                        {
                            transcript.AdditionalInfo = new Dictionary <string, string>();
                        }
                        transcript.AdditionalInfo["loftee"] = lofteeOut;
                    }
                }
            }
        }