Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
Emitter.h File Reference
#include "Math/math_fwd.h"
#include "Math/math.h"
#include "Math/Color/Spectrum.h"
#include "Utility/TBitFlags.h"
#include <Common/primitive_type.h>

Go to the source code of this file.

Classes

class  ph::Emitter
 An electromagnetic energy emitting source. The emitted energy can be captured by a Receiver. More...
 

Namespaces

namespace  ph
 The root for all renderer implementations.
 
namespace  ph::detail
 Implementation detail mainly for internal usages.
 

Typedefs

using ph::detail::EmitterFlagIntType = uint8
 
using ph::EmitterFeatureSet = TEnumFlags<EEmitterFeatureSet>
 

Enumerations

enum class  ph::EEmitterFeatureSet : detail::EmitterFlagIntType {
  ph::ZeroBounceSample = detail::efs_zero_bounce_sample_bits , ph::BsdfSample = detail::efs_bsdf_sample_bits , ph::DirectSample = detail::efs_direct_sample_bits , ph::EmissionSample = detail::efs_emission_sample_bits ,
  ph::Default
}
 Runtime features of an emitter. More...
 

Functions

 ph::PH_DEFINE_INLINE_ENUM_FLAG_OPERATORS (EEmitterFeatureSet)
 

Variables

constexpr auto ph::detail::efs_zero_bounce_sample_bits = math::flag_bit<uint8, 1>()
 
constexpr auto ph::detail::efs_bsdf_sample_bits = math::flag_bit<uint8, 2>()
 
constexpr auto ph::detail::efs_direct_sample_bits = math::flag_bit<uint8, 3>()
 
constexpr auto ph::detail::efs_emission_sample_bits = math::flag_bit<uint8, 4>()