project-kyoku/include/core/game.h

25 lines
412 B
C++

#pragma once
#include "core/gameevent.h"
#include "core/updatedata.h"
namespace kku
{
/// Game
///
/// Functional aggregation of
/// logic for actual game mode
class Game
{
public:
virtual ~Game() = default;
virtual void run() = 0;
virtual void input(GameEvent &&inputdata) = 0;
virtual void update(UpdateData &&updatedata) = 0;
virtual void display() const = 0;
};
} // namespace kku