Example #1
0
        private async void btnCreateFile_Click(object sender, EventArgs e)
        {
            FrequencyGenerator fg    = new FrequencyGenerator();
            Stopwatch          watch = new Stopwatch();

            lblStatus.Text = "Calculating Frequencies...";
            watch.Start();
            await Task.Run(() => fg.GenerateFromImage(ImageData.ImageMatrix));

            lblStatus.Text = "Constructing Tree...";
            HuffmanTree tree = new HuffmanTree(fg);
            await Task.Run(() => tree.ConstructTree());

            BinaryFile file = new BinaryFile(ImageData.ImageMatrix, ImageData.InitialSeed, ImageData.TapPosition, ImageData.Width, ImageData.Height, ImageData.NumberOfBits, tree);

            lblStatus.Text = "Creating Binary File.";
            await Task.Run(() => file.Create(txtFileName.Text));

            watch.Stop();
            lblStatus.Text       = "Binary File Created.";
            lblTimeTaken.Visible = true;
            string te = watch.Elapsed.ToString(@"m\:ss");

            lblTimeTaken.Text = te;
        }
        private void btnColorFrequencies_Click(object sender, EventArgs e)
        {
            FrequencyGenerator fg = new FrequencyGenerator();

            fg.GenerateFromImage(ImageMatrix);
            ColorFrequenciesForm frequenciesForm = new ColorFrequenciesForm(fg);

            frequenciesForm.Show();
        }
        private void btnCompress_Click(object sender, EventArgs e)
        {
            FrequencyGenerator fg = new FrequencyGenerator();

            fg.GenerateFromImage(ImageMatrix);
            HuffmanTree tree = new HuffmanTree(fg);

            tree.ConstructTree();
            ImageData        data         = new ImageData(ImageWidth, ImageHeight, TapPosition, InitialSeed, NumberOfBits, ImageMatrix);
            CompressFileForm compressForm = new CompressFileForm(data, tree);

            compressForm.Show();
        }
        private void btnConstructHuffmanTree_Click(object sender, EventArgs e)
        {
            FrequencyGenerator fg = new FrequencyGenerator();

            fg.GenerateFromImage(ImageMatrix);
            HuffmanTree tree = new HuffmanTree(fg);

            tree.ConstructTree();
            tree.GetStringRepresentation();
            HuffmanTreeForm treeConstructionForm = new HuffmanTreeForm(tree);

            treeConstructionForm.Show();
        }