aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/scene.hpp
blob: ca494cbe862c5c9aae43a96bc8f3d59a157f30ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#pragma once

#include "interfaces/cursor.hpp"
#include "interfaces/matrix.hpp"
#include "interfaces/window.hpp"

#include <memory>
#include <string_view>

class IScene
{
public:
	virtual ~IScene() = default;

	virtual void enter() = 0;

	virtual void leave() = 0;
};

using ISceneFactory = std::shared_ptr<IScene> (*)();