From 8ad2966933957ac5d6ff8dcd5e732736fd5e4dc6 Mon Sep 17 00:00:00 2001 From: crupest Date: Sun, 15 May 2022 14:08:06 +0800 Subject: ... --- include/cru/platform/graphics/quartz/Resource.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 include/cru/platform/graphics/quartz/Resource.h (limited to 'include/cru/platform/graphics/quartz/Resource.h') diff --git a/include/cru/platform/graphics/quartz/Resource.h b/include/cru/platform/graphics/quartz/Resource.h new file mode 100644 index 00000000..d28e4055 --- /dev/null +++ b/include/cru/platform/graphics/quartz/Resource.h @@ -0,0 +1,25 @@ +#pragma once +#include "cru/platform/osx/Resource.h" +#include "cru/platform/graphics/Base.h" +#include "cru/platform/graphics/Resource.h" + +namespace cru::platform::graphics::quartz { +class OsxQuartzResource : public platform::osx::OsxResource, + public virtual IGraphicsResource { + public: + explicit OsxQuartzResource(IGraphicsFactory* graphics_factory) + : graphics_factory_(graphics_factory) {} + + CRU_DELETE_COPY(OsxQuartzResource) + CRU_DELETE_MOVE(OsxQuartzResource) + ~OsxQuartzResource() override = default; + + public: + String GetPlatformId() const override { return u"OSX Quartz"; } + + IGraphicsFactory* GetGraphicsFactory() override { return graphics_factory_; } + + private: + IGraphicsFactory* graphics_factory_; +}; +} // namespace cru::platform::graphics::quartz -- cgit v1.2.3