MobileRT  1.0
A multi platform C++ CPU progressive Ray Tracer.
Components::HaltonSeq Class Referencefinal

#include <HaltonSeq.hpp>

Inheritance diagram for Components::HaltonSeq:
Inheritance graph
Collaboration diagram for Components::HaltonSeq:
Collaboration graph

Public Member Functions

 HaltonSeq ()=default
 
 HaltonSeq (::std::uint32_t width, ::std::uint32_t height, ::std::uint32_t samples)
 
 HaltonSeq (const HaltonSeq &haltonSeq)=delete
 
 HaltonSeq (HaltonSeq &&haltonSeq) noexcept=delete
 
 ~HaltonSeq () final=default
 
HaltonSeqoperator= (const HaltonSeq &haltonSeq)=delete
 
HaltonSeqoperator= (HaltonSeq &&haltonSeq) noexcept=delete
 
float getSample (::std::uint32_t sample) final
 
- Public Member Functions inherited from MobileRT::Sampler
 Sampler ()=default
 
 Sampler (::std::uint32_t width, ::std::uint32_t height, ::std::uint32_t samples)
 
 Sampler (const Sampler &sampler)=delete
 
 Sampler (Sampler &&sampler) noexcept=delete
 
virtual ~Sampler ()
 
Sampleroperator= (const Sampler &sampler)=delete
 
Sampleroperator= (Sampler &&sampler) noexcept=delete
 
void resetSampling ()
 
void stopSampling ()
 
float getSample ()
 

Additional Inherited Members

- Public Attributes inherited from MobileRT::Sampler
::std::atomic<::std::uint32_t > sample_ {}
 
const ::std::uint32_t domainSize_ {::std::numeric_limits<::std::uint32_t>::max()}
 
::std::uint32_t samples_ {::std::numeric_limits<::std::uint32_t>::max()}
 
- Protected Member Functions inherited from MobileRT::Sampler
template<const ::std::size_t S>
float getSampleFromArray (const ::std::array< float, S > &values)
 

Detailed Description

This sampler returns the Halton sequence.

Constructor & Destructor Documentation

◆ HaltonSeq() [1/4]

Components::HaltonSeq::HaltonSeq ( )
explicitdefault

◆ HaltonSeq() [2/4]

Components::HaltonSeq::HaltonSeq ( ::std::uint32_t  width,
::std::uint32_t  height,
::std::uint32_t  samples 
)
explicit

◆ HaltonSeq() [3/4]

Components::HaltonSeq::HaltonSeq ( const HaltonSeq haltonSeq)
delete

◆ HaltonSeq() [4/4]

Components::HaltonSeq::HaltonSeq ( HaltonSeq &&  haltonSeq)
deletenoexcept

◆ ~HaltonSeq()

Components::HaltonSeq::~HaltonSeq ( )
finaldefault

Member Function Documentation

◆ getSample()

float HaltonSeq::getSample ( ::std::uint32_t  sample)
finalvirtual

Calculates a new sample.

Parameters
sampleThe index of the desired sample.
Returns
A random value between 0 and 1.

Implements MobileRT::Sampler.

Here is the call graph for this function:

◆ operator=() [1/2]

HaltonSeq& Components::HaltonSeq::operator= ( const HaltonSeq haltonSeq)
delete

◆ operator=() [2/2]

HaltonSeq& Components::HaltonSeq::operator= ( HaltonSeq &&  haltonSeq)
deletenoexcept

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