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
4
#include <
MazeBuilder/create_contract.h
>
5
#include <
MazeBuilder/resource_identifiers.h
>
6
#include <
MazeBuilder/state.h
>
7
8
#include <optional>
9
#include <string>
10
#include <string_view>
11
14
namespace
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
:
29
explicit
pixels_create_state
(
const
runtime_app::context
&ctx,
runtime_stack
*stack);
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
mazes::args
Command-line argument handler with JSON support.
Definition
args.h:19
mazes::configurator
Configuration class for arguments.
Definition
configurator.h:21
mazes::create_contract
Contract for the create function in the runtime.
Definition
create_contract.h:16
mazes::pixels_create_state
State for creating a maze using the pixels algorithm.
Definition
pixels_create_state.h:24
mazes::pixels_create_state::create
std::string_view create(const configurator &config, randomizer &rng) noexcept override
Creates a maze using the specified algorithm and parameters.
mazes::pixels_create_state::update
bool update(const std::optional< args > &args, double delta_time) noexcept override
Updates the state of the maze creation process.
mazes::pixels_create_state::pixels_create_state
pixels_create_state(const runtime_app::context &ctx, runtime_stack *stack)
Construct a new pixels maze creation state.
mazes::randomizer
Provides random-number generating capabilities.
Definition
randomizer.h:15
mazes::resource_management< grid_interface, grid_identifier >
mazes::runtime_stack
Class representing the runtime stack of states in the maze builder application.
Definition
runtime_stack.h:23
create_contract.h
resource_identifiers.h
state.h
mazes::runtime_app::context
struct representing the context passed to states in the runtime_app stack
Definition
runtime_app.h:34
mazes::state
struct representing a state in the runtime stack
Definition
state.h:18
include
MazeBuilder
pixels_create_state.h
Generated by
1.12.0