mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-06 19:41:51 +00:00
21 lines
488 B
C++
21 lines
488 B
C++
#pragma once
|
|
|
|
#include "util/ObjectsKeeper.hpp"
|
|
|
|
class Engine;
|
|
class Batch2D;
|
|
|
|
/// @brief Screen is a mainloop state
|
|
class Screen : public util::ObjectsKeeper {
|
|
protected:
|
|
Engine& engine;
|
|
std::unique_ptr<Batch2D> batch;
|
|
public:
|
|
Screen(Engine& engine);
|
|
virtual ~Screen();
|
|
virtual void onOpen() = 0;
|
|
virtual void update(float delta) = 0;
|
|
virtual void draw(float delta) = 0;
|
|
virtual void onEngineShutdown() {};
|
|
virtual const char* getName() const = 0;
|
|
};
|