The spica renderer
independent.h
1 #ifdef _MSC_VER
2 #pragma once
3 #endif
4 
5 #ifndef _SPICA_INDEPENDENT_H_
6 #define _SPICA_INDEPENDENT_H_
7 
8 #include "core/random.h"
9 
10 namespace spica {
11 
15 class SPICA_EXPORTS Independent : public Sampler {
16 public:
17  explicit Independent(uint32_t seed);
18  explicit Independent(RenderParams &params);
19 
20  ~Independent();
21 
22  double get1D() override;
23 
24  std::unique_ptr<Sampler> clone(uint32_t seed = 0) const override;
25 
26 private:
27  Random random_;
28 };
29 
30 SPICA_EXPORT_PLUGIN(Independent, "Random number generator with Mersenne twister.");
31 
32 } // namespace spica
33 
34 #endif // _SPICA_INDEPENDENT_H_
Random number generator with Mersenne twister.
Definition: random.h:17
Random sampler class.
Definition: sampler.h:24
Definition: renderparams.h:27
Independent random sampling with Mersenne Twister.
Definition: independent.h:15