20 #if !defined(__MITSUBA_BIDIR_RSAMPLER_H_)
21 #define __MITSUBA_BIDIR_RSAMPLER_H_
75 virtual std::string
toString()
const;
virtual Float next1D()=0
Retrieve the next component value from the current sample.
virtual Point2 next2D()=0
Retrieve the next two component values from the current sample.
Random number generator based on SIMD-oriented Fast Mersenne Twister
Definition: random.h:88
virtual void setSampleIndex(size_t sampleIndex)
Manually set the current sample index.
Base class of all sample generators.
Definition: sampler.h:66
virtual void request1DArray(size_t size)
Same as request2DArray(), but in 1D.
void updateSampleIndex(size_t index)
Definition: rsampler.h:86
virtual void generate(const Point2i &offset)
Generate new samples.
virtual void request2DArray(size_t size)
Request that a 2D array will be made available for later consumption by next2DArray().
virtual ref< Sampler > clone()
Create a clone of this sampler.
Abstract seekable stream class.
Definition: stream.h:58
#define MTS_DECLARE_CLASS()
This macro must be used in the initial definition in classes that derive from Object.
Definition: class.h:158
Reference counting helper.
Definition: ref.h:40
Coordinates the serialization and unserialization of object graphs.
Definition: serialization.h:65
virtual void serialize(Stream *stream, InstanceManager *manager) const
Serialize this sampler to a binary data stream.
Specialized sampler implementation used to seed MLT-style algorithm.
Definition: rsampler.h:38
Random * getRandom()
Return the underlying random number generator.
Definition: rsampler.h:78
virtual std::string toString() const
Return a human-readable string representation of the object's contents.
virtual void advance()
Advance to the next sample.