Blender  V2.93
Public Types | Public Member Functions | Public Attributes | Protected Attributes | List of all members
DeviceTask Class Reference

#include <device_task.h>

Public Types

enum  Type { RENDER , FILM_CONVERT , SHADER , DENOISE_BUFFER }
 

Public Member Functions

 DeviceTask (Type type=RENDER)
 
int get_subtask_count (int num, int max_size=0) const
 
void split (list< DeviceTask > &tasks, int num, int max_size=0) const
 
void update_progress (RenderTile *rtile, int pixel_samples=-1)
 

Public Attributes

Type type
 
int x
 
int y
 
int w
 
int h
 
device_ptr rgba_byte
 
device_ptr rgba_half
 
device_ptr buffer
 
int sample
 
int num_samples
 
int offset
 
int stride
 
device_ptr shader_input
 
device_ptr shader_output
 
int shader_eval_type
 
int shader_filter
 
int shader_x
 
int shader_w
 
RenderBuffersbuffers
 
function< bool(Device *device, RenderTile &, uint)> acquire_tile
 
function< void(long, int)> update_progress_sample
 
function< void(RenderTile &)> update_tile_sample
 
function< void(RenderTile &)> release_tile
 
function< bool()> get_cancel
 
function< bool()> get_tile_stolen
 
function< void(RenderTileNeighbors &, Device *)> map_neighbor_tiles
 
function< void(RenderTileNeighbors &, Device *)> unmap_neighbor_tiles
 
uint tile_types
 
DenoiseParams denoising
 
bool denoising_from_render
 
vector< int > denoising_frames
 
int pass_stride
 
int frame_stride
 
int target_pass_stride
 
int pass_denoising_data
 
int pass_denoising_clean
 
bool need_finish_queue
 
bool integrator_branched
 
AdaptiveSampling adaptive_sampling
 

Protected Attributes

double last_update_time
 

Detailed Description

Definition at line 130 of file device_task.h.

Member Enumeration Documentation

◆ Type

Enumerator
RENDER 
FILM_CONVERT 
SHADER 
DENOISE_BUFFER 

Definition at line 132 of file device_task.h.

Constructor & Destructor Documentation

◆ DeviceTask()

CCL_NAMESPACE_BEGIN DeviceTask::DeviceTask ( Type  type = RENDER)
explicit

Definition at line 31 of file device_task.cpp.

References last_update_time, and time_dt().

Member Function Documentation

◆ get_subtask_count()

int DeviceTask::get_subtask_count ( int  num,
int  max_size = 0 
) const

Definition at line 62 of file device_task.cpp.

References h, max, min, RENDER, SHADER, shader_w, type, and w.

Referenced by split().

◆ split()

void DeviceTask::split ( list< DeviceTask > &  tasks,
int  num,
int  max_size = 0 
) const

Definition at line 90 of file device_task.cpp.

References get_subtask_count(), h, RENDER, SHADER, shader_w, shader_x, blender::compositor::task, type, and y.

Referenced by shade_background_pixels().

◆ update_progress()

void DeviceTask::update_progress ( RenderTile rtile,
int  pixel_samples = -1 
)

Member Data Documentation

◆ acquire_tile

function<bool(Device *device, RenderTile &, uint)> DeviceTask::acquire_tile

Definition at line 158 of file device_task.h.

◆ adaptive_sampling

AdaptiveSampling DeviceTask::adaptive_sampling

Definition at line 180 of file device_task.h.

◆ buffer

device_ptr DeviceTask::buffer

Definition at line 138 of file device_task.h.

Referenced by MultiDevice::task_add().

◆ buffers

RenderBuffers* DeviceTask::buffers

Definition at line 149 of file device_task.h.

◆ denoising

DenoiseParams DeviceTask::denoising

Definition at line 168 of file device_task.h.

◆ denoising_frames

vector<int> DeviceTask::denoising_frames

Definition at line 170 of file device_task.h.

◆ denoising_from_render

bool DeviceTask::denoising_from_render

Definition at line 169 of file device_task.h.

◆ frame_stride

int DeviceTask::frame_stride

Definition at line 173 of file device_task.h.

◆ get_cancel

function<bool()> DeviceTask::get_cancel

Definition at line 162 of file device_task.h.

Referenced by shade_background_pixels().

◆ get_tile_stolen

function<bool()> DeviceTask::get_tile_stolen

Definition at line 163 of file device_task.h.

◆ h

int DeviceTask::h

Definition at line 135 of file device_task.h.

Referenced by get_subtask_count(), and split().

◆ integrator_branched

bool DeviceTask::integrator_branched

Definition at line 179 of file device_task.h.

◆ last_update_time

double DeviceTask::last_update_time
protected

Definition at line 183 of file device_task.h.

Referenced by DeviceTask(), and update_progress().

◆ map_neighbor_tiles

function<void(RenderTileNeighbors &, Device *)> DeviceTask::map_neighbor_tiles

Definition at line 164 of file device_task.h.

◆ need_finish_queue

bool DeviceTask::need_finish_queue

Definition at line 178 of file device_task.h.

◆ num_samples

int DeviceTask::num_samples

Definition at line 140 of file device_task.h.

Referenced by shade_background_pixels().

◆ offset

int DeviceTask::offset

Definition at line 141 of file device_task.h.

◆ pass_denoising_clean

int DeviceTask::pass_denoising_clean

Definition at line 176 of file device_task.h.

◆ pass_denoising_data

int DeviceTask::pass_denoising_data

Definition at line 175 of file device_task.h.

◆ pass_stride

int DeviceTask::pass_stride

Definition at line 172 of file device_task.h.

◆ release_tile

function<void(RenderTile &)> DeviceTask::release_tile

Definition at line 161 of file device_task.h.

◆ rgba_byte

device_ptr DeviceTask::rgba_byte

Definition at line 136 of file device_task.h.

Referenced by MultiDevice::task_add().

◆ rgba_half

device_ptr DeviceTask::rgba_half

Definition at line 137 of file device_task.h.

Referenced by MultiDevice::task_add().

◆ sample

int DeviceTask::sample

Definition at line 139 of file device_task.h.

◆ shader_eval_type

int DeviceTask::shader_eval_type

Definition at line 145 of file device_task.h.

Referenced by shade_background_pixels().

◆ shader_filter

int DeviceTask::shader_filter

Definition at line 146 of file device_task.h.

◆ shader_input

device_ptr DeviceTask::shader_input

Definition at line 143 of file device_task.h.

Referenced by shade_background_pixels(), and MultiDevice::task_add().

◆ shader_output

device_ptr DeviceTask::shader_output

Definition at line 144 of file device_task.h.

Referenced by shade_background_pixels(), and MultiDevice::task_add().

◆ shader_w

int DeviceTask::shader_w

Definition at line 147 of file device_task.h.

Referenced by get_subtask_count(), shade_background_pixels(), split(), and update_progress().

◆ shader_x

int DeviceTask::shader_x

Definition at line 147 of file device_task.h.

Referenced by shade_background_pixels(), and split().

◆ stride

int DeviceTask::stride

Definition at line 141 of file device_task.h.

◆ target_pass_stride

int DeviceTask::target_pass_stride

Definition at line 174 of file device_task.h.

◆ tile_types

uint DeviceTask::tile_types

Definition at line 167 of file device_task.h.

◆ type

Type DeviceTask::type

Definition at line 133 of file device_task.h.

Referenced by get_subtask_count(), split(), and update_progress().

◆ unmap_neighbor_tiles

function<void(RenderTileNeighbors &, Device *)> DeviceTask::unmap_neighbor_tiles

Definition at line 165 of file device_task.h.

◆ update_progress_sample

function<void(long, int)> DeviceTask::update_progress_sample

Definition at line 159 of file device_task.h.

Referenced by update_progress().

◆ update_tile_sample

function<void(RenderTile &)> DeviceTask::update_tile_sample

Definition at line 160 of file device_task.h.

Referenced by Session::render(), and update_progress().

◆ w

int DeviceTask::w

Definition at line 135 of file device_task.h.

Referenced by get_subtask_count().

◆ x

int DeviceTask::x

Definition at line 135 of file device_task.h.

◆ y

int DeviceTask::y

Definition at line 135 of file device_task.h.

Referenced by split().


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