PixelBullet  0.0.1
A C++ game engine
Loading...
Searching...
No Matches
graphics_renderer_binding_internal.h
1#pragma once
2
3#include "pixelbullet/application/launch_gpu_defaults_internal.h"
4#include "pixelbullet/graphics/graphics.h"
5#include "pixelbullet/graphics/render_device.h"
6#include "pixelbullet/graphics/render_target.h"
7
8#include <volk.h>
9
10#include <memory>
11#include <optional>
12#include <string_view>
13
14namespace pixelbullet
15{
16class Renderer;
17
19{
20public:
21 static const RenderDevice& GetRenderDevice(const Graphics& graphics) noexcept;
22 static RenderDevice& GetRenderDevice(Graphics& graphics) noexcept;
23 static std::optional<RenderTargetView> GetRenderTarget(const Graphics& graphics, std::string_view name);
24 static const application_internal::ResolvedLaunchGpuDefaults& GetLaunchGpuDefaults(const Graphics& graphics) noexcept;
25 static const VkPhysicalDeviceProperties& GetActivePhysicalDeviceProperties(const Graphics& graphics) noexcept;
26 static void SetLaunchGpuDefaults(Graphics& graphics, const application_internal::ResolvedLaunchGpuDefaults& resolved_defaults);
27 static void InstallRenderer(Graphics& graphics, std::unique_ptr<Renderer>&& renderer);
28 static void ClearRenderer(Graphics& graphics);
29};
30} // namespace pixelbullet
Definition graphics_renderer_binding_internal.h:19
Host-facing graphics subsystem shell.
Definition graphics.h:21
Definition render_device.h:15
Definition renderer.h:15
Definition launch_gpu_defaults_internal.h:35