Trait SamplerIntegrator
Source pub trait SamplerIntegrator: Integrator + Sync {
// Required methods
fn li(
&self,
ray: &RayDifferential,
scene: &Scene,
sampler: &mut dyn Sampler,
arena: &mut MemoryArena,
depth: i32,
) -> Spectrum;
fn get_sampler(&self) -> Arc<RwLock<dyn Sampler>>;
fn get_pixel_bounds(&self) -> Bounds2i;
// Provided methods
fn preprocess(&mut self, _scene: &Scene, _sampler: &mut dyn Sampler) { ... }
fn specular_reflect(
&self,
ray: &RayDifferential,
isect: &SurfaceInteraction,
scene: &Scene,
sampler: &mut dyn Sampler,
arena: &mut MemoryArena,
depth: i32,
) -> Spectrum { ... }
fn specular_transmit(
&self,
ray: &RayDifferential,
isect: &SurfaceInteraction,
scene: &Scene,
sampler: &mut dyn Sampler,
arena: &mut MemoryArena,
depth: i32,
) -> Spectrum { ... }
}