Application.h 358 bytes
#pragma once
#include <States/IState.h>
class Application: public IStateManager{
private:
    void set_next_state(std::unique_ptr<IState>&& ptr_state) override;
    void apply_differ_state_change() noexcept;
public:
    Application();
    int run();
private:
    std::unique_ptr<IState> m_ptr_state_next;
    std::unique_ptr<IState> m_ptr_state_current;