#pragma once
/*
ApplicationFramework
by John Ryland
Copyright (c) 2023
*/
////////////////////////////////////////////////////////////////////////////////////
// Window Render Surface System Interface
#include "ICoreSystem.h"
namespace ApplicationFramework {
class IWindow;
class IWindowSystem;
class IRenderSystem;
class IWindowRenderSurfaceSystem : public ICoreSystem
{
public:
IWindowRenderSurfaceSystem(IWindowSystem* windowSystem, IRenderSystem* renderSystem) {}
virtual void* CreateWindowSurface(IWindow* window) = 0;
virtual void DestroyWindowSurface(IWindow* window, void* surface) = 0;
};
} // ApplicationFramework namespace