private static List <Creation.ReferenceSequence> CreateReferenceSequences(IEnumerable <FastaSequence> fastaSequences, IReadOnlyList <List <Band> > cytogeneticBandsByRef) { var referenceSequences = new List <Creation.ReferenceSequence>(); foreach (var fastaSequence in fastaSequences) { Band[] cytogeneticBands = cytogeneticBandsByRef[fastaSequence.Chromosome.Index].ToArray(); (byte[] buffer, MaskedEntry[] maskedEntries) = TwoBitCompressor.Compress(fastaSequence.Bases); var referenceSequence = new Creation.ReferenceSequence(buffer, maskedEntries, cytogeneticBands, 0, fastaSequence.Bases.Length); referenceSequences.Add(referenceSequence); } return(referenceSequences); }
private static Creation.ReferenceSequence CreateReferenceSequence(FastaSequence fastaSequence, List <Band> cytogeneticBands) { Band[] bands = cytogeneticBands.ToArray(); (byte[] buffer, MaskedEntry[] maskedEntries) = TwoBitCompressor.Compress(fastaSequence.Bases); return(new Creation.ReferenceSequence(buffer, maskedEntries, bands, _beginPosition - 1, fastaSequence.Bases.Length)); }
private static Creation.ReferenceSequence CreateReferenceSequence(FastaSequence fastaSequence) { (byte[] buffer, MaskedEntry[] maskedEntries) = TwoBitCompressor.Compress(fastaSequence.Bases); return(new Creation.ReferenceSequence(buffer, maskedEntries, new Band[0], 0, fastaSequence.Bases.Length)); }