2020-02-25 00:44:40 +01:00
|
|
|
#pragma once
|
|
|
|
|
#include "MinimalEngine.h"
|
|
|
|
|
#include "GraphicsResources.h"
|
2020-03-02 19:07:49 +01:00
|
|
|
#include "Containers/Array.h"
|
2020-02-25 00:44:40 +01:00
|
|
|
|
|
|
|
|
namespace Seele {
|
|
|
|
|
class Window;
|
|
|
|
|
class Graphics
|
|
|
|
|
{
|
|
|
|
|
public:
|
2020-03-02 19:07:49 +01:00
|
|
|
virtual void init(GraphicsInitializer initializer) = 0;
|
2020-03-05 11:43:38 +01:00
|
|
|
virtual void beginFrame(void* windowHandle) = 0;
|
|
|
|
|
virtual void endFrame(void* windowHandle) = 0;
|
2020-03-02 19:07:49 +01:00
|
|
|
virtual void* createWindow(const WindowCreateInfo& createInfo) = 0;
|
2020-03-05 11:43:38 +01:00
|
|
|
protected:
|
2020-02-25 00:44:40 +01:00
|
|
|
Graphics();
|
|
|
|
|
~Graphics();
|
2020-03-02 19:07:49 +01:00
|
|
|
friend class Window;
|
2020-02-25 00:44:40 +01:00
|
|
|
};
|
|
|
|
|
}
|