Maze Builder Docs 8.2.1
Loading...
Searching...
No Matches
pixels_create_state.h
Go to the documentation of this file.
1#ifndef PIXELS_CREATE_STATE_H
2#define PIXELS_CREATE_STATE_H
3
6#include <MazeBuilder/state.h>
7
8#include <optional>
9#include <string>
10#include <string_view>
11
14namespace mazes
15{
16 class args;
17 class configurator;
18 class randomizer;
19 class runtime_stack;
20 struct context;
21
23 class pixels_create_state final : public create_contract, public state
24 {
25 public:
30
38 [[nodiscard]] std::string_view create(const configurator &config, randomizer &rng) noexcept override;
39
40 void draw() const noexcept override;
41
46 [[nodiscard]] bool update(const std::optional<args> &args, double delta_time) noexcept override;
47
48 private:
49 grid_manager *grid_mapper;
50 processed_text_manager *processed_text_mapper;
51 grid_identifier m_grid_id{grid_identifier::BASIC};
52 std::string m_result;
53 int m_image_width{0};
54 int m_image_height{0};
55 };
56} // namespace mazes
57
58#endif // PIXELS_CREATE_STATE_H
Command-line argument handler with JSON support.
Definition args.h:19
Configuration class for arguments.
Definition configurator.h:21
Contract for the create function in the runtime.
Definition create_contract.h:16
State for creating a maze using the pixels algorithm.
Definition pixels_create_state.h:24
std::string_view create(const configurator &config, randomizer &rng) noexcept override
Creates a maze using the specified algorithm and parameters.
bool update(const std::optional< args > &args, double delta_time) noexcept override
Updates the state of the maze creation process.
pixels_create_state(const runtime_app::context &ctx, runtime_stack *stack)
Construct a new pixels maze creation state.
Provides random-number generating capabilities.
Definition randomizer.h:15
Class representing the runtime stack of states in the maze builder application.
Definition runtime_stack.h:23
struct representing the context passed to states in the runtime_app stack
Definition runtime_app.h:34
struct representing a state in the runtime stack
Definition state.h:18