Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
Observer.h
Go to the documentation of this file.
1#pragma once
2
4#include "SDL/sdl_interface.h"
5
6#include <memory>
7
8namespace ph
9{
10
12{
13public:
15
16public:
17 inline Observer() = default;
18
19 void cook(const CoreCookingContext& ctx, CoreCookedUnit& cooked) override = 0;
20
21 ESdlTypeCategory getDynamicCategory() const override;
22
23public:
25 {
26 ClassType clazz("observer");
27 clazz.docName("Observer");
28 clazz.description("A tool for observing the incoming energy of the scene.");
29 return clazz;
30 }
31};
32
33// In-header Implementations:
34
36{
37 return CATEGORY;
38}
39
40}// end namespace ph
Definition CoreCookedUnit.h:19
Definition CoreCookingContext.h:15
Core SDL resource abstraction. This class does not provide static/dynamic category information....
Definition CoreSdlResource.h:16
Definition Observer.h:12
ESdlTypeCategory getDynamicCategory() const override
Definition Observer.h:35
void cook(const CoreCookingContext &ctx, CoreCookedUnit &cooked) override=0
PH_DEFINE_SDL_CLASS(TSdlOwnerClass< Observer >)
Definition Observer.h:24
static constexpr ESdlTypeCategory CATEGORY
Definition Observer.h:14
Observer()=default
SDL binding type for a canonical SDL resource class.
Definition TSdlOwnerClass.h:23
The root for all renderer implementations.
Definition EEngineProject.h:6
ESdlTypeCategory
Definition ESdlTypeCategory.h:15