IrradianceCache Class Reference

Inheritance diagram for IrradianceCache:

SurfaceIntegrator Integrator

List of all members.

Public Member Functions

 IrradianceCache (int maxspec, int maxind, float maxerr, int nsamples)
 ~IrradianceCache ()
Spectrum Li (const Scene *scene, const RayDifferential &ray, const Sample *sample, float *alpha) const
void RequestSamples (Sample *sample, const Scene *scene)
void Preprocess (const Scene *)

Private Member Functions

Spectrum IndirectLo (const Point &p, const Normal &n, const Vector &wo, BSDF *bsdf, BxDFType flags, const Sample *sample, const Scene *scene) const
bool InterpolateIrradiance (const Scene *scene, const Point &p, const Normal &n, Spectrum *E) const

Private Attributes

float maxError
int nSamples
int maxSpecularDepth
int maxIndirectDepth
int specularDepth
int * lightSampleOffset
int lightNumOffset
int * bsdfSampleOffset
int * bsdfComponentOffset
Octree< IrradianceSample,
IrradProcess > * 
octree


Detailed Description

Definition at line 34 of file irradiancecache.cpp.


Constructor & Destructor Documentation

IrradianceCache::IrradianceCache ( int  maxspec,
int  maxind,
float  maxerr,
int  nsamples 
)

Definition at line 92 of file irradiancecache.cpp.

References maxError, maxIndirectDepth, maxSpecularDepth, nSamples, and specularDepth.

IrradianceCache::~IrradianceCache (  ) 

Definition at line 317 of file irradiancecache.cpp.

References octree.


Member Function Documentation

Spectrum IrradianceCache::Li ( const Scene scene,
const RayDifferential ray,
const Sample sample,
float *  alpha 
) const [virtual]

void IrradianceCache::RequestSamples ( Sample sample,
const Scene scene 
) [virtual]

void IrradianceCache::Preprocess ( const Scene scene  )  [virtual]

Reimplemented from Integrator.

Definition at line 310 of file irradiancecache.cpp.

References octree, BBox::pMax, BBox::pMin, and Scene::WorldBound().

Spectrum IrradianceCache::IndirectLo ( const Point p,
const Normal n,
const Vector wo,
BSDF bsdf,
BxDFType  flags,
const Sample sample,
const Scene scene 
) const [private]

bool IrradianceCache::InterpolateIrradiance ( const Scene scene,
const Point p,
const Normal n,
Spectrum E 
) const [private]


Member Data Documentation

float IrradianceCache::maxError [private]

Definition at line 44 of file irradiancecache.cpp.

Referenced by IndirectLo(), InterpolateIrradiance(), and IrradianceCache().

Definition at line 45 of file irradiancecache.cpp.

Referenced by IndirectLo(), and IrradianceCache().

Definition at line 46 of file irradiancecache.cpp.

Referenced by IrradianceCache(), and Li().

Definition at line 46 of file irradiancecache.cpp.

Referenced by IndirectLo(), and IrradianceCache().

int IrradianceCache::specularDepth [mutable, private]

Definition at line 47 of file irradiancecache.cpp.

Referenced by IrradianceCache(), and Li().

Definition at line 49 of file irradiancecache.cpp.

Referenced by Li(), and RequestSamples().

Definition at line 49 of file irradiancecache.cpp.

Referenced by RequestSamples().

Definition at line 50 of file irradiancecache.cpp.

Referenced by Li(), and RequestSamples().

Definition at line 50 of file irradiancecache.cpp.

Referenced by Li(), and RequestSamples().


The documentation for this class was generated from the following file:

Generated on Mon Jul 20 17:31:55 2009 for pbrt by  doxygen 1.5.6