diff options
author | Yuqian Yang <crupest@crupest.life> | 2025-09-12 00:42:36 +0800 |
---|---|---|
committer | Yuqian Yang <crupest@crupest.life> | 2025-09-12 00:42:36 +0800 |
commit | 27f153af927c056af5cec70db5f011752e29b156 (patch) | |
tree | cdbe0a61f037cd1641f23f681d221a3206454411 /src/platform/bootstrap/GraphicsBootstrap.cpp | |
parent | 7c135df9b8057e1de3ea6a73fb785d5622b519d4 (diff) | |
download | cru-27f153af927c056af5cec70db5f011752e29b156.tar.gz cru-27f153af927c056af5cec70db5f011752e29b156.tar.bz2 cru-27f153af927c056af5cec70db5f011752e29b156.zip |
Organize bootstrap and graphics demos.
Diffstat (limited to 'src/platform/bootstrap/GraphicsBootstrap.cpp')
-rw-r--r-- | src/platform/bootstrap/GraphicsBootstrap.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/platform/bootstrap/GraphicsBootstrap.cpp b/src/platform/bootstrap/GraphicsBootstrap.cpp new file mode 100644 index 00000000..cce42af8 --- /dev/null +++ b/src/platform/bootstrap/GraphicsBootstrap.cpp @@ -0,0 +1,25 @@ +#include "cru/platform/bootstrap/GraphicsBootstrap.h" + +#if defined(_WIN32) +#include "cru/platform/graphics/direct2d/Factory.h" +#elif defined(__APPLE__) +#include "cru/platform/graphics/quartz/Factory.h" +#elif defined(__unix) +#include "cru/platform/graphics/cairo/CairoGraphicsFactory.h" +#else +#endif + +namespace cru::platform::bootstrap { +CRU_PLATFORM_GRAPHICS_BOOTSTRAP_API cru::platform::graphics::IGraphicsFactory* +CreateGraphicsFactory() { +#if defined(_WIN32) + return new cru::platform::graphics::direct2d::DirectGraphicsFactory(); +#elif defined(__APPLE__) + return new cru::platform::graphics::quartz::QuartzGraphicsFactory(); +#elif defined(__unix) + return new cru::platform::graphics::cairo::CairoGraphicsFactory(); +#else + NotImplemented(); +#endif +} +} // namespace cru::platform::bootstrap |