Exemplo n.º 1
0
        private void saveButton_Click(object sender, RoutedEventArgs e)
        {
            if (sequenceTextBox.Text != null)
            {
                InitializeSaveSequenceFileDialog();

                if (saveSequenceFileDialog.ShowDialog() == true)
                {
                    try
                    {
                        Fragment toSave = new Fragment();
                        toSave.Name = sequenceName;
                        ISequence seq = new Bio.Sequence(Alphabets.DNA, sequence);
                        toSave.Sequence = seq;
                        toSave.Length   = sequence.Length;
                        ISequenceFormatter formatter = SequenceFormatters.FindFormatterByFileName(saveSequenceFileDialog.FileName);
                        formatter.Write(seq);
                        formatter.Close();
                        //toSave.Construct.SaveAsBio(saveSequenceFileDialog.FileName);
                    }
                    catch (Exception ex)
                    {
                        MessageBoxResult result = ModernDialog.ShowMessage(ex.Message, "Exception", MessageBoxButton.OK);
                    }
                }
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Save in one of .NET Bio supported formats like fasta or GenBank.
        /// </summary>
        /// <param name="path">Filename.</param>
        public void SaveAsBio(String path)
        {
            ISequenceFormatter formatter = SequenceFormatters.FindFormatterByFileName(path);

            formatter.Write(this.Sequence);
            formatter.Close();
        }
Exemplo n.º 3
0
        public static void ConvertFromOneFormatToAnother(string inputFileName, string outputFileName, ISequenceFormatter targetFormatter)
        {
            var parser       = SequenceParsers.FindParserByFileName(inputFileName);
            var sequenceList = parser.Parse();
            var sequences    = Helper.ConvertIenumerableToList(sequenceList);

            targetFormatter.Open(outputFileName);

            foreach (var sequence in sequences)
            {
                targetFormatter.Write(sequence);
            }

            targetFormatter.Close();
            targetFormatter.Dispose();
        }
        static void Main(string[] args)
        {
            if (args.Length != 2)
            {
                Console.WriteLine("Need source and destination filenames.");
                return;
            }

            string sourceFilename = args[0];
            string destFilename   = args[1];

            ISequenceParser parser = SequenceParsers.FindParserByFileName(sourceFilename);

            if (parser == null)
            {
                parser = SequenceParsers.All.FirstOrDefault(
                    sp => sp.SupportedFileTypes.Contains(Path.GetExtension(sourceFilename)));
                if (parser == null)
                {
                    Console.WriteLine("Failed to locate parser for {0}", sourceFilename);
                    return;
                }
                parser.Open(sourceFilename);
            }

            ISequenceFormatter formatter = SequenceFormatters.FindFormatterByFileName(destFilename);

            if (formatter == null)
            {
                formatter = SequenceFormatters.All.FirstOrDefault(
                    sp => sp.SupportedFileTypes.Contains(Path.GetExtension(destFilename)));
                if (formatter == null)
                {
                    Console.WriteLine("Failed to locate formatter for {0}", destFilename);
                    return;
                }
                formatter.Open(destFilename);
            }

            foreach (var sequence in parser.Parse())
            {
                formatter.Write(sequence);
            }

            parser.Close();
            formatter.Close();
        }
Exemplo n.º 5
0
        /// <summary>
        /// Trim all sequences
        /// </summary>
        public void TrimAll()
        {
            //foreach (var seqObj in Sequences)
            Parallel.ForEach(this.Sequences, (seqObj) =>
            {
                if (Worker != null && WorkerArgs != null)
                {
                    if (Worker.CancellationPending)
                    {
                        WorkerArgs.Cancel = true;
                        return;
                    }
                }


                // call Trim() to perform specific trimming function
                // and return the new Seq object
                var trimmedSeqObj = Trim(seqObj);

                // write the sequence
                if (trimmedSeqObj != null)
                {
                    lock (FilteredWriter)
                    {
                        FilteredWriter.Write(trimmedSeqObj);
                    }
                    TrimCount++;
                }
                else    // discard the read
                {
                    if (DiscardedWriter != null)
                    {
                        lock (DiscardedWriter)
                        {
                            DiscardedWriter.Write(seqObj);
                        }
                    }
                    DiscardCount++;
                }
                Counted++;
            }
                             );
        }
        private void save_Click(object sender, RoutedEventArgs e)
        {
            if (changeTextBox.Text != null)
            {
                InitializeSaveSequenceFileDialog();

                if (saveEditSequenceFileDialog.ShowDialog() == true)
                {
                    try
                    {
                        string             sequenceToSave = changeTextBox.Text;
                        ISequence          seq            = new Bio.Sequence(Alphabets.DNA, sequenceToSave);
                        ISequenceFormatter formatter      = SequenceFormatters.FindFormatterByFileName(saveEditSequenceFileDialog.FileName);
                        formatter.Write(seq);
                        formatter.Close();
                    }
                    catch (Exception ex)
                    {
                        MessageBoxResult result = ModernDialog.ShowMessage(ex.Message, "Exception", MessageBoxButton.OK);
                    }
                }
            }
        }
Exemplo n.º 7
0
        public static void ConvertFromOneFormatToAnother(string inputFileName, string outputFileName, ISequenceFormatter targetFormatter)
        {
            var parser = SequenceParsers.FindParserByFileName(inputFileName);
            var sequenceList = parser.Parse();
            var sequences = Helper.ConvertIenumerableToList(sequenceList);

            targetFormatter.Open(outputFileName);

            foreach (var sequence in sequences)
            {
                targetFormatter.Write(sequence);
            }

            targetFormatter.Close();
            targetFormatter.Dispose();
        }