Exemple #1
0
        public void Convert(string outputPath, string description, GlobalImportCommon.FileType fileType)
        {
            var inputPath = outputPath.Replace(".dat", ".dat.tmp");

            using (var reader = new TempPredictionReader(inputPath, description, fileType))
            {
                Console.Write($"- loading {description}... ");
                var tempPredictions = Load(reader);
                Console.WriteLine("finished.");

                Console.Write($"- creating {description} LUT... ");
                var oldLut = TempPrediction.CreateLookupTable(tempPredictions);
                var newLut = TempPrediction.ConvertLookupTable(oldLut);
                Console.WriteLine("finished.");

                Console.Write($"- converting {description} matrices... ");
                var predictionsPerRef = TempPrediction.ConvertMatrices(tempPredictions, oldLut, newLut, _numReferenceSeqs);
                Console.WriteLine("finished.");

                tempPredictions.Clear();

                var header = PredictionCacheHeader.GetHeader(CurrentTimeTicks, reader.Header.GenomeAssembly, _numReferenceSeqs);

                Console.Write($"- writing to {Path.GetFileName(outputPath)}... ");
                using (var writer = new PredictionCacheWriter(outputPath, header))
                {
                    writer.Write(newLut, predictionsPerRef);
                }
                Console.WriteLine("finished.");
            }
        }
Exemple #2
0
        /// <summary>
        /// loads the items from the VEP reader
        /// </summary>
        private static List <TempPrediction> Load(TempPredictionReader reader)
        {
            var values = new List <TempPrediction>();

            while (true)
            {
                var value = reader.Next();
                if (value == null)
                {
                    break;
                }
                values.Add(value);
            }

            return(values);
        }