#include <sampling.h>
Public Member Functions | |
Sample (SurfaceIntegrator *surf, VolumeIntegrator *vol, const Scene *scene) | |
u_int | Add1D (u_int num) |
u_int | Add2D (u_int num) |
u_int | AddxD (vector< u_int > &structure, u_int num) |
void | AddContribution (float x, float y, const XYZColor &c, float a, float zd=0, int b=0, int g=0) const |
void | AddContribution (float x, float y, const XYZColor &c, float a, float zd, float v, int b=0, int g=0) const |
~Sample () | |
Public Attributes | |
Sampler * | sampler |
SamplingType | sampling |
float | imageX |
float | imageY |
float | lensU |
float | lensV |
float | time |
float | wavelengths |
float | singleWavelength |
int | stamp |
vector< u_int > | n1D |
vector< u_int > | n2D |
vector< u_int > | nxD |
vector< u_int > | dxD |
vector< vector< u_int > > | sxD |
float ** | oneD |
float ** | twoD |
float ** | xD |
int ** | timexD |
vector< Contribution > | contributions |
Definition at line 44 of file sampling.h.
Sample::Sample | ( | SurfaceIntegrator * | surf, | |
VolumeIntegrator * | vol, | |||
const Scene * | scene | |||
) |
lux::Sample::~Sample | ( | ) | [inline] |
Definition at line 75 of file sampling.h.
References lux::FreeAligned(), oneD, and timexD.
Definition at line 50 of file sampling.h.
References n1D.
Referenced by lux::SingleScattering::RequestSamples(), lux::PhotonIntegrator::RequestSamples(), lux::MLTPathIntegrator::RequestSamples(), lux::IrradianceCache::RequestSamples(), lux::IGIIntegrator::RequestSamples(), lux::EmissionIntegrator::RequestSamples(), lux::DistributedPath::RequestSamples(), and lux::BidirIntegrator::RequestSamples().
Definition at line 54 of file sampling.h.
References n2D.
Referenced by lux::PhotonIntegrator::RequestSamples(), lux::MLTPathIntegrator::RequestSamples(), lux::IrradianceCache::RequestSamples(), lux::IGIIntegrator::RequestSamples(), lux::DistributedPath::RequestSamples(), and lux::BidirIntegrator::RequestSamples().
void lux::Sample::AddContribution | ( | float | x, | |
float | y, | |||
const XYZColor & | c, | |||
float | a, | |||
float | zd, | |||
float | v, | |||
int | b = 0 , |
|||
int | g = 0 | |||
) | const [inline] |
Definition at line 71 of file sampling.h.
References b, contributions, and blender::g.
void lux::Sample::AddContribution | ( | float | x, | |
float | y, | |||
const XYZColor & | c, | |||
float | a, | |||
float | zd = 0 , |
|||
int | b = 0 , |
|||
int | g = 0 | |||
) | const [inline] |
Definition at line 67 of file sampling.h.
References b, contributions, and blender::g.
Referenced by getDirectLight(), lux::PathIntegrator::Li(), lux::IGIIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DistributedPath::Li(), lux::DirectLightingIntegrator::Li(), and lux::BidirIntegrator::Li().
Definition at line 58 of file sampling.h.
Referenced by lux::PathIntegrator::RequestSamples(), lux::ExPhotonIntegrator::RequestSamples(), lux::DirectLightingIntegrator::RequestSamples(), and lux::BidirIntegrator::RequestSamples().
vector<Contribution> lux::Sample::contributions [mutable] |
Definition at line 103 of file sampling.h.
Referenced by AddContribution(), lux::Sampler::AddSample(), lux::MetropolisSampler::AddSample(), and lux::ERPTSampler::AddSample().
vector<u_int> lux::Sample::dxD |
Definition at line 99 of file sampling.h.
Referenced by AddxD(), lux::Sampler::GetLazyValues(), lux::RandomSampler::GetLazyValues(), lux::MetropolisSampler::GetLazyValues(), lux::LDSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), lux::LDSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
float lux::Sample::imageX [mutable] |
Definition at line 93 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), generateEyePath(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::ProjectiveCamera::GenerateSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::PathIntegrator::Li(), lux::IGIIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DistributedPath::Li(), lux::DirectLightingIntegrator::Li(), and lux::BidirIntegrator::Li().
float lux::Sample::imageY [mutable] |
Definition at line 93 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), generateEyePath(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::ProjectiveCamera::GenerateSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::PathIntegrator::Li(), lux::IGIIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::DistributedPath::Li(), lux::DirectLightingIntegrator::Li(), and lux::BidirIntegrator::Li().
float lux::Sample::lensU |
Definition at line 94 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), generateEyePath(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::BidirIntegrator::Li().
float lux::Sample::lensV |
Definition at line 94 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), generateEyePath(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::BidirIntegrator::Li().
vector<u_int> lux::Sample::n1D |
Definition at line 99 of file sampling.h.
Referenced by Add1D(), lux::RandomSampler::GetNextSample(), lux::LDSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
vector<u_int> lux::Sample::n2D |
Definition at line 99 of file sampling.h.
Referenced by Add2D(), lux::RandomSampler::GetNextSample(), lux::LDSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
vector<u_int> lux::Sample::nxD |
Definition at line 99 of file sampling.h.
Referenced by AddxD(), lux::LDSampler::GetLazyValues(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), initERPT(), initMetropolis(), and Sample().
float** lux::Sample::oneD |
Definition at line 101 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::BidirIntegrator::generatePath(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::SingleScattering::Li(), lux::PhotonIntegrator::Li(), lux::PathIntegrator::Li(), lux::MLTPathIntegrator::Li(), lux::IGIIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::EmissionIntegrator::Li(), lux::BidirIntegrator::Li(), lux::DistributedPath::LiInternal(), Sample(), lux::SingleScattering::Transmittance(), lux::EmissionIntegrator::Transmittance(), and ~Sample().
Definition at line 88 of file sampling.h.
Referenced by generateEyePath(), generateLightPath(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), lux::PathIntegrator::Li(), lux::BidirIntegrator::Li(), lux::ExPhotonIntegrator::LiDirectLightingMode(), lux::DirectLightingIntegrator::LiInternal(), lux::ExPhotonIntegrator::LiPathMode(), and Sample().
Definition at line 89 of file sampling.h.
Definition at line 96 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::RenderThread::render().
int lux::Sample::stamp [mutable] |
Definition at line 98 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::MetropolisSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), lux::MetropolisSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and Sample().
vector<vector<u_int> > lux::Sample::sxD |
Definition at line 100 of file sampling.h.
Referenced by AddxD(), lux::LDSampler::GetLazyValues(), and lux::LDSampler::GetNextSample().
float lux::Sample::time |
Definition at line 95 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RealisticCamera::GenerateRay(), lux::PerspectiveCamera::GenerateRay(), lux::OrthoCamera::GenerateRay(), lux::EnvironmentCamera::GenerateRay(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::Metropolis::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::RenderThread::render().
Definition at line 102 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::MetropolisSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), lux::MetropolisSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), Sample(), and ~Sample().
float ** lux::Sample::twoD |
Definition at line 101 of file sampling.h.
Referenced by lux::BidirIntegrator::generatePath(), lux::RandomSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::PhotonIntegrator::Li(), lux::PathIntegrator::Li(), lux::MLTPathIntegrator::Li(), lux::IGIIntegrator::Li(), lux::ExPhotonIntegrator::Li(), lux::BidirIntegrator::Li(), lux::DistributedPath::LiInternal(), and Sample().
float lux::Sample::wavelengths |
Definition at line 96 of file sampling.h.
Referenced by lux::MetropolisSampler::AddSample(), lux::ERPTSampler::AddSample(), lux::RandomSampler::GetNextSample(), lux::MetropolisSampler::GetNextSample(), lux::LDSampler::GetNextSample(), lux::ERPTSampler::GetNextSample(), and lux::RenderThread::render().
float ** lux::Sample::xD |
Definition at line 101 of file sampling.h.
Referenced by lux::Sampler::GetLazyValues(), lux::RandomSampler::GetLazyValues(), lux::MetropolisSampler::GetLazyValues(), lux::LDSampler::GetLazyValues(), lux::ERPTSampler::GetLazyValues(), and Sample().