Открытые члены | |
void | save_current_context () |
void | restore_previous_context () |
void | reset (GameContext &&context) |
GameContext & | get_current_context () |
|
inline |
установка исходного состояния
void ContextManager::reset | ( | GameContext && | context | ) |
восстановление ранее сохраненного состояния
установка исходного состояния
Стираем старую историю -> запоминаем полученное состояние -> склонируем его в вершину стека состояний
void ContextManager::restore_previous_context | ( | ) |
сохранения текущего контекста на вершину стека
Восстановление предыдущих контекстов
При восстановлении будет "изымать" из истории контексты, пока в истории не останется всего 1 - текущий Если при наличии всего 1 контекста запросят "отмену состояний", то в текущий контекст будет записан m_initial_context