Maze Builder Docs 8.2.1
Loading...
Searching...
No Matches
mazes::wavefront_object_create_state Class Referencefinal

State for creating a maze using the Wavefront Object algorithm. More...

#include <wavefront_object_create_state.h>

Inheritance diagram for mazes::wavefront_object_create_state:
[legend]
Collaboration diagram for mazes::wavefront_object_create_state:
[legend]

Public Member Functions

 wavefront_object_create_state (const runtime_app::context &ctx, runtime_stack *rs)
 
std::string_view create (const configurator &config, randomizer &rng) noexcept override
 Create a maze using the Wavefront Object algorithm.
 
void draw () const noexcept override
 
bool update (const std::optional< args > &args, double delta_time) noexcept override
 Update the state with the given arguments and elapsed time.
 
- Public Member Functions inherited from mazes::create_contract
- Public Member Functions inherited from mazes::state
 state (const runtime_app::context &c, runtime_stack *rs)
 

Additional Inherited Members

- Public Types inherited from mazes::state
enum class  ID : unsigned int {
  BTING = 0 , DFSING = 1 , EMPTY = 2 , LOADING = 3 ,
  PARSING = 4 , PIXELIZING = 5 , SIDEWINDERING = 6 , STRINGIFYING = 7 ,
  WAVEFRONT_OBJECTIFYING = 8 , TOTAL = 9
}
 
- Protected Member Functions inherited from mazes::state
void request_stack_push (ID state_id) const noexcept
 
void request_stack_pop () const noexcept
 
void request_stack_clear () const noexcept
 
const runtime_app::contextget_context () const noexcept
 
runtime_stackget_stack () const noexcept
 

Detailed Description

State for creating a maze using the Wavefront Object algorithm.

Member Function Documentation

◆ create()

std::string_view mazes::wavefront_object_create_state::create ( const configurator & config,
randomizer & rng )
overridevirtualnoexcept

Create a maze using the Wavefront Object algorithm.

Parameters
a
rows
cols
levels
rng
Returns

Implements mazes::create_contract.

◆ draw()

void mazes::wavefront_object_create_state::draw ( ) const
overridevirtualnoexcept

Implements mazes::state.

◆ update()

bool mazes::wavefront_object_create_state::update ( const std::optional< args > & args,
double delta_time )
overridevirtualnoexcept

Update the state with the given arguments and elapsed time.

Parameters
argsThe optional arguments to pass to the state's update function
delta_timeThe elapsed time since the last update
Returns
True if the state should continue updating, false otherwise

Implements mazes::state.


The documentation for this class was generated from the following file: