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
3
#include "
EngineEnv/CoreSdlResource.h
"
4
#include "
SDL/sdl_interface.h
"
5
6
#include <memory>
7
8
namespace
ph
9
{
10
11
class
Observer
:
public
CoreSdlResource
12
{
13
public
:
14
static
constexpr
ESdlTypeCategory
CATEGORY
=
ESdlTypeCategory::Ref_Observer
;
15
16
public
:
17
inline
Observer
() =
default
;
18
19
void
cook
(
const
CoreCookingContext
& ctx,
CoreCookedUnit
& cooked)
override
= 0;
20
21
ESdlTypeCategory
getDynamicCategory
()
const override
;
22
23
public
:
24
PH_DEFINE_SDL_CLASS
(
TSdlOwnerClass<Observer>
)
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
35
inline
ESdlTypeCategory
Observer::getDynamicCategory
()
const
36
{
37
return
CATEGORY
;
38
}
39
40
}
// end namespace ph
CoreSdlResource.h
ph::CoreCookedUnit
Definition
CoreCookedUnit.h:19
ph::CoreCookingContext
Definition
CoreCookingContext.h:15
ph::CoreSdlResource
Core SDL resource abstraction. This class does not provide static/dynamic category information....
Definition
CoreSdlResource.h:16
ph::Observer
Definition
Observer.h:12
ph::Observer::getDynamicCategory
ESdlTypeCategory getDynamicCategory() const override
Definition
Observer.h:35
ph::Observer::cook
void cook(const CoreCookingContext &ctx, CoreCookedUnit &cooked) override=0
ph::Observer::PH_DEFINE_SDL_CLASS
PH_DEFINE_SDL_CLASS(TSdlOwnerClass< Observer >)
Definition
Observer.h:24
ph::Observer::CATEGORY
static constexpr ESdlTypeCategory CATEGORY
Definition
Observer.h:14
ph::Observer::Observer
Observer()=default
ph::TSdlOwnerClass
SDL binding type for a canonical SDL resource class.
Definition
TSdlOwnerClass.h:23
ph
The root for all renderer implementations.
Definition
EEngineProject.h:6
ph::ESdlTypeCategory
ESdlTypeCategory
Definition
ESdlTypeCategory.h:15
ph::ESdlTypeCategory::Ref_Observer
@ Ref_Observer
sdl_interface.h
Source
EngineEnv
Observer
Observer.h
Generated by
1.11.0