Пример #1
0
 /// <summary>
 /// sets the underlying data for the compressed sequence
 /// </summary>
 public void Set(int numBases, byte[] buffer, IIntervalSearch <MaskedEntry> maskedIntervalSearch, int sequenceOffset = 0)
 {
     NumBases = numBases;
     _buffer  = buffer;
     _maskedIntervalSearch = maskedIntervalSearch;
     _sequenceOffset       = sequenceOffset;
 }
Пример #2
0
        private void BuildIntervalForests()
        {
            if (_saReaders == null || _saReaders.Count == 0)
            {
                return;
            }

            var smallVariantIntervals = new List <Interval <ISupplementaryInterval> >();
            var svIntervals           = new List <Interval <ISupplementaryInterval> >();
            var allVariantIntervals   = new List <Interval <ISupplementaryInterval> >();

            foreach (var reader in _saReaders)
            {
                if (reader.SmallVariantIntervals != null)
                {
                    smallVariantIntervals.AddRange(reader.SmallVariantIntervals);
                }
                if (reader.SvIntervals != null)
                {
                    svIntervals.AddRange(reader.SvIntervals);
                }
                if (reader.AllVariantIntervals != null)
                {
                    allVariantIntervals.AddRange(reader.AllVariantIntervals);
                }
            }

            _smallVariantIntervalArray = CreateIntervalArray(smallVariantIntervals);
            _svIntervalArray           = CreateIntervalArray(svIntervals);
            _allVariantIntervalArray   = CreateIntervalArray(allVariantIntervals);
        }
Пример #3
0
        public SupplementaryAnnotationProvider(List <string> saDirs)
        {
            Name = "Supplementary annotation provider";
            _currentUcscReferenceName = "";

            _smallVariantIntervalArray = new NullIntervalSearch <ISupplementaryInterval>();
            _svIntervalArray           = new NullIntervalSearch <ISupplementaryInterval>();
            _allVariantIntervalArray   = new NullIntervalSearch <ISupplementaryInterval>();
            _saDirs = saDirs.ToList();
        }
Пример #4
0
 internal void Set(int length, int sequenceOffset, byte[] twoBitBuffer,
                   IntervalArray <MaskedEntry> maskedEntryIntervalArray, Band[] cytogeneticBands)
 {
     Length  = length;
     _buffer = twoBitBuffer;
     _maskedIntervalSearch = maskedEntryIntervalArray;
     _sequenceOffset       = sequenceOffset;
     CytogeneticBands      = cytogeneticBands;
     _useNSequence         = false;
 }
Пример #5
0
        private static void AddIntervals(IAnnotatedPosition annotatedPosition,
                                         IIntervalSearch <ISupplementaryInterval> intervalArray, int begin, int end)
        {
            var intervals = intervalArray.GetAllOverlappingValues(begin, end);

            if (intervals == null)
            {
                return;
            }

            foreach (var overlappingInterval in intervals)
            {
                var reciprocalOverlap = annotatedPosition.Position.Start >= annotatedPosition.Position.End
                                ? null
                                : overlappingInterval.GetReciprocalOverlap(annotatedPosition.AnnotatedVariants[0].Variant);

                annotatedPosition.SupplementaryIntervals.Add(
                    new AnnotatedSupplementaryInterval(overlappingInterval, reciprocalOverlap));
            }
        }
Пример #6
0
 public void Set(int numBases, byte[] buffer, IIntervalSearch <MaskedEntry> maskedIntervalSearch, int sequenceOffset = 0)
 {
     throw new NotImplementedException();
 }
Пример #7
0
 public ReferenceIntervalArrayTests()
 {
     _refIntervalSearch = GetData();
 }