aboutsummaryrefslogtreecommitdiff
path: root/src/commands/toggle_pause.hpp
blob: 43502f8502eecae16903a5e1969b045a5715214a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#pragma once

#include "interfaces/command.hpp"
#include "interfaces/generation_tracker.hpp"
#include "interfaces/status_manager.hpp"

#include <memory>

class TogglePauseCommand : public ICommand
{
public:
	explicit TogglePauseCommand(
		std::shared_ptr<IGenerationTracker> generation_tracker,
		std::shared_ptr<IStatusManager> status_manager
	) noexcept;

	void execute() noexcept override;

private:
	std::shared_ptr<IGenerationTracker> _generation_tracker;
	std::shared_ptr<IStatusManager> _status_manager;
};