opynsim
Unofficial C++ Documentation
Loading...
Searching...
No Matches
liboscar
graphics
scene
cached_scene_renderer.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <memory>
4
#include <span>
5
6
namespace
osc
{
class
RenderTexture; }
7
namespace
osc
{
struct
SceneDecoration; }
8
namespace
osc
{
class
SceneCache; }
9
namespace
osc
{
struct
SceneRendererParams; }
10
11
namespace
osc
12
{
13
// a cached version of `SceneRenderer` that will re-render if either
14
// the `SceneDecoration`s or the `SceneRendererParams` change
15
class
CachedSceneRenderer
final
{
16
public
:
17
explicit
CachedSceneRenderer
(
SceneCache
&);
18
CachedSceneRenderer
(
const
CachedSceneRenderer
&) =
delete
;
19
CachedSceneRenderer
(
CachedSceneRenderer
&&)
noexcept
;
20
CachedSceneRenderer
&
operator
=(
const
CachedSceneRenderer
&) =
delete
;
21
CachedSceneRenderer
&
operator
=(
CachedSceneRenderer
&&)
noexcept
;
22
~
CachedSceneRenderer
()
noexcept
;
23
24
RenderTexture
&
render
(std::
span
<
const
SceneDecoration
>,
const
SceneRendererParams
&);
25
26
private
:
27
class
Impl
;
28
std::
unique_ptr
<
Impl
> impl_;
29
};
30
}
osc::CachedSceneRenderer
Definition
cached_scene_renderer.h:15
osc::CachedSceneRenderer::CachedSceneRenderer
CachedSceneRenderer(CachedSceneRenderer &&) noexcept
osc::CachedSceneRenderer::CachedSceneRenderer
CachedSceneRenderer(SceneCache &)
osc::CachedSceneRenderer::CachedSceneRenderer
CachedSceneRenderer(const CachedSceneRenderer &)=delete
osc::CachedSceneRenderer::render
RenderTexture & render(std::span< const SceneDecoration >, const SceneRendererParams &)
osc::RenderTexture
Definition
render_texture.h:18
osc::SceneCache
Definition
scene_cache.h:25
osc
Definition
custom_decoration_generator.h:5
osc::to
constexpr U to(T &&value)
Definition
conversion.h:56
osc::SceneDecoration
Definition
scene_decoration.h:15
osc::SceneRendererParams
Definition
scene_renderer_params.h:13
Generated by
1.9.8