20 #if !defined(__MITSUBA_RENDER_GATHERPROC_H_)
21 #define __MITSUBA_RENDER_GATHERPROC_H_
66 size_t granularity,
int maxDepth,
int rrDepth,
bool isLocal,
67 bool autoCancel,
const void *progressReporterPayload);
114 return (gen < needed && (gen == 0 || gen < shot/1024));
ref< PhotonMap > m_photonMap
Definition: gatherproc.h:118
bool unsuccessful(size_t needed, size_t gen, size_t shot)
Checks if the configuration of needed, generated and shot photons indicates an unsuccessful progress ...
Definition: gatherproc.h:113
int m_rrDepth
Definition: gatherproc.h:121
PhotonMap * getPhotonMap()
Definition: gatherproc.h:73
Process for parallel photon map construction.
Definition: gatherproc.h:35
virtual bool isLocal() const
Is this process strictly local?
size_t m_photonCount
Definition: gatherproc.h:119
int m_maxDepth
Definition: gatherproc.h:120
virtual void processResult(const WorkResult *result, bool cancelled)=0
Called whenever a work unit has been completed.
bool m_isLocal
Definition: gatherproc.h:122
Surface photons (all of them, even direct illumination)
Definition: gatherproc.h:43
Caustic photons (indirect on diffuse surfaces, last bounce was through a delta BSDF) ...
Definition: gatherproc.h:41
Abstract work result – represents the result of a processed WorkUnit instance.
Definition: sched.h:80
Abstract work unit – represents a small amount of information that encodes part of a larger processin...
Definition: sched.h:47
Surface photons (indirect on diffuse surfaces, last bounce was not through a delta BSDF) ...
Definition: gatherproc.h:39
size_t getExcessPhotons() const
Return the number of discarded photons.
Definition: gatherproc.h:83
virtual EStatus generateWork(WorkUnit *unit, int worker)
Generate a piece of work.
#define MTS_DECLARE_CLASS()
This macro must be used in the initial definition in classes that derive from Object.
Definition: class.h:158
Implementation of the photon map data structure.
Definition: photonmap.h:34
Reference counting helper.
Definition: ref.h:40
bool m_autoCancel
Definition: gatherproc.h:123
size_t m_numShot
Definition: gatherproc.h:124
EGatherType
Definition: gatherproc.h:37
EGatherType m_type
Definition: gatherproc.h:117
virtual ref< WorkProcessor > createWorkProcessor() const =0
Create an instance of the algorithm responsible for executing the work units of this parallel process...
Abstract parallel particle tracing process.
Definition: particleproc.h:45
size_t getShotParticles() const
Lists the nuber of particles that had to be shot in order to fill the photon map. ...
Definition: gatherproc.h:89