Exemple #1
0
        public void AddVariantData(VariantFeature variant)
        {
            //add CytoGenetic band
            CytogeneticBand = variant.CytogeneticBand;

            // populating supplementary interval specific fields
            PopulateSuppIntervalFields(variant.GetSupplementaryIntervals());

            foreach (var altAllele in variant.AlternateAlleles)
            {
                var jsonVariant = new JsonVariant(altAllele, variant);

                AnnotatedAlternateAlleles.Add(jsonVariant);

                // custom intervals are not part of SA as they are a separate data structure
                AddCustomIntervals(altAllele, jsonVariant);

                if (altAllele.SupplementaryAnnotationPosition == null)
                {
                    continue;
                }

                var sa = altAllele.SupplementaryAnnotationPosition;

                sa.AddSaPositionToVariant(jsonVariant);
            }
        }
Exemple #2
0
        private static void AddCustomIntervals(VariantAlternateAllele altAllele, JsonVariant jsonVariant)
        {
            // adding the custom intervals
            if (altAllele.CustomIntervals == null)
            {
                return;
            }
            jsonVariant.CustomIntervals.Clear();

            foreach (var custInterval in altAllele.CustomIntervals)
            {
                jsonVariant.CustomIntervals.Add(custInterval);
            }
        }
Exemple #3
0
        private void FindCorrespondingJsonVariant(VariantAlternateAllele altAllele)
        {
            _currJsonVariant = null;
            foreach (var annotatedAllele in AnnotatedAlternateAlleles)
            {
                var jsonVariant = annotatedAllele as JsonVariant;

                if (jsonVariant?.ReferenceBegin != altAllele.Start)
                {
                    continue;
                }
                if (jsonVariant.SaAltAllele != altAllele.SuppAltAllele)
                {
                    continue;
                }

                _currJsonVariant = jsonVariant;
            }
        }