Blender  V3.3
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
PathTraceWorkCPU Class Reference

#include <path_trace_work_cpu.h>

Inheritance diagram for PathTraceWorkCPU:
PathTraceWork

Public Member Functions

 PathTraceWorkCPU (Device *device, Film *film, DeviceScene *device_scene, bool *cancel_requested_flag)
 
virtual void init_execution () override
 
virtual void render_samples (RenderStatistics &statistics, int start_sample, int samples_num, int sample_offset) override
 
virtual void copy_to_display (PathTraceDisplay *display, PassMode pass_mode, int num_samples) override
 
virtual void destroy_gpu_resources (PathTraceDisplay *display) override
 
virtual bool copy_render_buffers_from_device () override
 
virtual bool copy_render_buffers_to_device () override
 
virtual bool zero_render_buffers () override
 
virtual int adaptive_sampling_converge_filter_count_active (float threshold, bool reset) override
 
virtual void cryptomatte_postproces () override
 
- Public Member Functions inherited from PathTraceWork
virtual ~PathTraceWork ()
 
RenderBuffersget_render_buffers ()
 
void set_effective_buffer_params (const BufferParams &effective_full_params, const BufferParams &effective_big_tile_params, const BufferParams &effective_buffer_params)
 
bool has_multiple_works () const
 
virtual void alloc_work_memory ()
 
void copy_to_render_buffers (RenderBuffers *render_buffers)
 
void copy_from_render_buffers (const RenderBuffers *render_buffers)
 
void copy_from_denoised_render_buffers (const RenderBuffers *render_buffers)
 
bool get_render_tile_pixels (const PassAccessor &pass_accessor, const PassAccessor::Destination &destination)
 
bool set_render_tile_pixels (PassAccessor &pass_accessor, const PassAccessor::Source &source)
 
bool is_cancel_requested () const
 
Deviceget_device () const
 

Protected Member Functions

void render_samples_full_pipeline (KernelGlobalsCPU *kernel_globals, const KernelWorkTile &work_tile, const int samples_num)
 
- Protected Member Functions inherited from PathTraceWork
 PathTraceWork (Device *device, Film *film, DeviceScene *device_scene, bool *cancel_requested_flag)
 
PassAccessor::PassAccessInfo get_display_pass_access_info (PassMode pass_mode) const
 
PassAccessor::Destination get_display_destination_template (const PathTraceDisplay *display) const
 

Protected Attributes

const CPUKernelskernels_
 
vector< CPUKernelThreadGlobalskernel_thread_globals_
 
- Protected Attributes inherited from PathTraceWork
Devicedevice_
 
Filmfilm_
 
DeviceScenedevice_scene_
 
unique_ptr< RenderBuffersbuffers_
 
BufferParams effective_full_params_
 
BufferParams effective_big_tile_params_
 
BufferParams effective_buffer_params_
 
boolcancel_requested_flag_ = nullptr
 

Additional Inherited Members

- Static Public Member Functions inherited from PathTraceWork
static unique_ptr< PathTraceWorkcreate (Device *device, Film *film, DeviceScene *device_scene, bool *cancel_requested_flag)
 

Detailed Description

Definition at line 27 of file path_trace_work_cpu.h.

Constructor & Destructor Documentation

◆ PathTraceWorkCPU()

PathTraceWorkCPU::PathTraceWorkCPU ( Device device,
Film film,
DeviceScene device_scene,
bool cancel_requested_flag 
)

Definition at line 43 of file path_trace_work_cpu.cpp.

References DCHECK_EQ, DEVICE_CPU, Device::info, and DeviceInfo::type.

Member Function Documentation

◆ adaptive_sampling_converge_filter_count_active()

int PathTraceWorkCPU::adaptive_sampling_converge_filter_count_active ( float  threshold,
bool  reset 
)
overridevirtual

◆ copy_render_buffers_from_device()

bool PathTraceWorkCPU::copy_render_buffers_from_device ( )
overridevirtual

Implements PathTraceWork.

Definition at line 188 of file path_trace_work_cpu.cpp.

References PathTraceWork::buffers_.

◆ copy_render_buffers_to_device()

bool PathTraceWorkCPU::copy_render_buffers_to_device ( )
overridevirtual

Implements PathTraceWork.

Definition at line 193 of file path_trace_work_cpu.cpp.

References PathTraceWork::buffers_.

◆ copy_to_display()

void PathTraceWorkCPU::copy_to_display ( PathTraceDisplay display,
PassMode  pass_mode,
int  num_samples 
)
overridevirtual

◆ cryptomatte_postproces()

void PathTraceWorkCPU::cryptomatte_postproces ( )
overridevirtual

◆ destroy_gpu_resources()

void PathTraceWorkCPU::destroy_gpu_resources ( PathTraceDisplay display)
overridevirtual

Implements PathTraceWork.

Definition at line 184 of file path_trace_work_cpu.cpp.

◆ init_execution()

void PathTraceWorkCPU::init_execution ( )
overridevirtual

◆ render_samples()

void PathTraceWorkCPU::render_samples ( RenderStatistics statistics,
int  start_sample,
int  samples_num,
int  sample_offset 
)
overridevirtual

◆ render_samples_full_pipeline()

void PathTraceWorkCPU::render_samples_full_pipeline ( KernelGlobalsCPU kernel_globals,
const KernelWorkTile work_tile,
const int  samples_num 
)
protected

◆ zero_render_buffers()

bool PathTraceWorkCPU::zero_render_buffers ( )
overridevirtual

Implements PathTraceWork.

Definition at line 199 of file path_trace_work_cpu.cpp.

References PathTraceWork::buffers_.

Member Data Documentation

◆ kernel_thread_globals_

vector<CPUKernelThreadGlobals> PathTraceWorkCPU::kernel_thread_globals_
protected

◆ kernels_

const CPUKernels& PathTraceWorkCPU::kernels_
protected

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