Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
spectrum_fwd.h
Go to the documentation of this file.
1#pragma once
2
4
5#include <Common/config.h>
6
7#include <cstddef>
8#include <array>
9
10namespace ph::math
11{
12
13template<typename Derived, EColorSpace COLOR_SPACE, typename T, std::size_t N>
14class TSpectrumBase;
15
16template<EColorSpace COLOR_SPACE, typename T>
17class TTristimulusSpectrum;
18
19template<EColorSpace COLOR_SPACE, typename T, CSpectralSampleProps Props>
20class TSampledSpectrum;
21
23
25
30
31#if PH_RENDER_MODE == PH_RENDER_MODE_LINEAR_SRGB
32
34
35#elif PH_RENDER_MODE == PH_RENDER_MODE_ACES
36
38
39#elif PH_RENDER_MODE == PH_RENDER_MODE_SPECTRAL
40
42
43#elif PH_RENDER_MODE == PH_RENDER_MODE_FULL_SPECTRAL
44
45// TODO
46
47#else
48
50
51#endif
52
53}// end namespace ph::math
Definition color_basics.h:29
Definition TSampledSpectrum.h:14
Definition TTristimulusSpectrum.h:11
Math functions and utilities.
Definition TransformInfo.h:10
TTristimulusSpectrum< EColorSpace::Linear_sRGB, ColorValue > LinearSRGBSpectrum
Definition spectrum_fwd.h:22
TSampledSpectrum< EColorSpace::Spectral, ColorValue, DefaultSpectralSampleProps > SampledSpectrum
Definition spectrum_fwd.h:26
real ColorValue
Definition color_basics.h:42
TTristimulusSpectrum< EColorSpace::ACEScg, ColorValue > ACESSpectrum
Definition spectrum_fwd.h:24