10#include <Common/assertion.h>
55 bool inferMeasurability =
true);
80 operator bool ()
const;
84 bool m_isMeasurable{
false};
108 this->context = std::move(
context);
156 const bool inferMeasurabilityFromThis)
160 if(inferMeasurabilityFromThis)
169 PH_ASSERT(m_isMeasurable);
177 return m_isMeasurable;
182 m_isMeasurable = measurability;
190inline BsdfEvalOutput::operator bool ()
const
192 return isMeasurable();
Output for BsdfEvalQuery.
Definition BsdfEvalQuery.h:47
void setMeasurability(bool measurability)
Set measurability directly.
Definition BsdfEvalQuery.h:180
const math::Spectrum & getBsdf() const
Definition BsdfEvalQuery.h:166
bool isMeasurable() const
Tells whether this evaluation has potential to contribute. All evaluated data should be usable if tru...
Definition BsdfEvalQuery.h:175
void setBsdf(const math::Spectrum &bsdf, bool inferMeasurability=true)
Definition BsdfEvalQuery.h:154
Information for obtaining a sample value from BSDF.
Definition BsdfEvalQuery.h:90
Input inputs
Definition BsdfEvalQuery.h:96
Output outputs
Definition BsdfEvalQuery.h:97
BsdfQueryContext context
Definition BsdfEvalQuery.h:95
The environment a BSDF query is performed under.
Definition BsdfQueryContext.h:13
Output for BsdfSampleQuery.
Definition BsdfSampleQuery.h:45
Information for generating a BSDF sample.
Definition BsdfSampleQuery.h:141
General information about a ray-surface intersection event.
Definition SurfaceHit.h:59
SurfaceHitReason getReason() const
Definition SurfaceHit.h:164
constexpr bool hasExactly(const FlagsSet &flagsSet) const
Checks whether this instance contains exactly the specified flags. No more, no less.
Definition TBitFlags.ipp:99
std::string toString() const
Definition TArithmeticArrayBase.ipp:825
bool isFinite() const
Definition TArithmeticArrayBase.ipp:585
Definition TTristimulusSpectrum.h:11
T lengthSquared() const
Definition TVectorNBase.ipp:44
The root for all renderer implementations.
Definition EEngineProject.h:6