Exemplo n.º 1
0
        public void Run(IEnumerable <string> args)
        {
            Console.WriteLine(helpText);
            IInitialSettings settings = new InitialSettings();

            while (true)
            {
                var input = Console.ReadLine();
                if (input == null)
                {
                    continue;
                }
                if (input.Length == 0)
                {
                    Console.WriteLine("Empty input, please input command");
                    continue;
                }
                if (input == "help")
                {
                    Console.WriteLine(helpText);
                    continue;
                }
                if (input == "exit")
                {
                    break;
                }
                if (input == "draw")
                {
                    if (settings.InputFilePath == null || settings.OutputFilePath == null)
                    {
                        Console.WriteLine("Please enter paths for input and output files");
                    }
                    else
                    {
                        imageCreator.CreateImage(settings);
                        Console.WriteLine("Image saved");
                    }
                    continue;
                }
                var result = TryChangeSettings(input, settings);
                if (result.IsSuccess)
                {
                    settings = result.Value;
                }
                else
                {
                    Console.WriteLine(result.Error);
                }
            }
        }
Exemplo n.º 2
0
        public void Run(IEnumerable <string> args)
        {
            Console.WriteLine(helpText);
            IInitialSettings settings = new InitialSettings();

            while (true)
            {
                var input = Console.ReadLine();
                if (input == null)
                {
                    continue;
                }
                if (input.Length == 0)
                {
                    Console.WriteLine("Empty input, please input command");
                    continue;
                }
                if (input == "help")
                {
                    Console.WriteLine(helpText);
                    continue;
                }
                if (input == "exit")
                {
                    break;
                }
                if (input == "draw")
                {
                    if (settings.InputFilePath == null || settings.OutputFilePath == null)
                    {
                        Console.WriteLine("Please enter paths for input and output files");
                    }
                    else
                    {
                        imageCreator.CreateImage(settings)
                        .Then(r => Console.WriteLine("Image saved"))
                        .OnFail(Console.WriteLine);
                    }
                    continue;
                }

                TryChangeSettings(input, settings)
                .Then(s => settings = s)
                .OnFail(Console.WriteLine);
            }
        }
Exemplo n.º 3
0
        public void GetCurrentImage(IImageCreator imageCreator)
        {
            if (_filterGraph != null)
            {
                GraphState currentState = GraphState;

                IntPtr           dibFull = IntPtr.Zero;
                IntPtr           dibDataOnly;
                BITMAPINFOHEADER header;
                try
                {
                    if (_filterGraph.Renderer is VideoRenderer)
                    {
                        if (currentState != GraphState.Paused)
                        {
                            PauseGraph();
                        }
                    }

                    if (_filterGraph.Renderer.GetCurrentImage(out header, out dibFull, out dibDataOnly))
                    {
                        imageCreator.CreateImage(ref header, dibDataOnly);
                    }
                }
                finally
                {
                    Marshal.FreeCoTaskMem(dibFull);
                    if (GraphState != currentState)
                    {
                        switch (currentState)
                        {
                        case GraphState.Running:
                            ResumeGraph();
                            break;

                        case GraphState.Stopped:
                            StopGraph();
                            break;
                        }
                    }
                }
            }
        }
Exemplo n.º 4
0
        public async Task <IActionResult> Create(SupportedLanguages language, [FromBody] string code)
        {
            if (string.IsNullOrWhiteSpace(code))
            {
                return(this.BadRequest());
            }

            try
            {
                var imageTag = await imageCreator.CreateImage(language, Test);

                return(this.Ok(new { Tag = imageTag }));
            }
            catch (Exception ex)
            {
                this.logger.LogWarning(ex, "Не удалось создать образ из кода.");
                return(this.StatusCode((int)HttpStatusCode.InternalServerError));
            }
        }
Exemplo n.º 5
0
        public void Run(IEnumerable <string> args)
        {
            var settings = GetSettings(args);

            imageCreator.CreateImage(settings);
        }
Exemplo n.º 6
0
        public void ImageCreator_ShouldSaveImage()
        {
            imageCreator.CreateImage(settings);

            File.Exists(settings.OutputFilePath).Should().BeTrue();
        }
Exemplo n.º 7
0
 public void Run(IEnumerable <string> args)
 {
     GetSettings(args)
     .Then(settings => imageCreator.CreateImage(settings))
     .OnFail(Console.WriteLine);
 }