|
Blender V5.0
|
#include <work_tile_scheduler.h>
Public Member Functions | |
| WorkTileScheduler () | |
| void | set_accelerated_rt (bool accelerated_rt) |
| void | set_max_num_path_states (const int max_num_path_states) |
| void | reset (const BufferParams &buffer_params, const int sample_start, const int samples_num, const int sample_offset, float scrambling_distance) |
| bool | get_work (KernelWorkTile *work_tile, const int max_work_size=0) |
Protected Member Functions | |
| void | reset_scheduler_state () |
Protected Attributes | |
| bool | accelerated_rt_ = false |
| int | max_num_path_states_ = 0 |
| int2 | image_full_offset_px_ = make_int2(0, 0) |
| int2 | image_size_px_ = make_int2(0, 0) |
| int | offset_ |
| int | stride_ |
| float | scrambling_distance_ |
| int | sample_start_ = 0 |
| int | samples_num_ = 0 |
| int | sample_offset_ = 0 |
| TileSize | tile_size_ |
| int | num_tiles_x_ |
| int | num_tiles_y_ |
| int | total_tiles_num_ = 0 |
| int | num_tiles_per_sample_range_ = 0 |
| int | next_work_index_ = 0 |
| int | total_work_size_ = 0 |
Definition at line 19 of file work_tile_scheduler.h.
|
default |
| bool WorkTileScheduler::get_work | ( | KernelWorkTile * | work_tile, |
| const int | max_work_size = 0 ) |
Definition at line 85 of file work_tile_scheduler.cpp.
References DCHECK_GT, DCHECK_NE, KernelWorkTile::h, image_full_offset_px_, image_size_px_, max_num_path_states_, min, next_work_index_, KernelWorkTile::num_samples, num_tiles_per_sample_range_, num_tiles_x_, KernelWorkTile::offset, offset_, KernelWorkTile::sample_offset, sample_offset_, sample_start_, samples_num_, KernelWorkTile::start_sample, KernelWorkTile::stride, stride_, tile_index, tile_size_, total_work_size_, KernelWorkTile::w, KernelWorkTile::x, and KernelWorkTile::y.
| void WorkTileScheduler::reset | ( | const BufferParams & | buffer_params, |
| const int | sample_start, | ||
| const int | samples_num, | ||
| const int | sample_offset, | ||
| float | scrambling_distance ) |
Definition at line 26 of file work_tile_scheduler.cpp.
References BufferParams::full_x, BufferParams::full_y, BufferParams::height, image_full_offset_px_, image_size_px_, make_int2(), BufferParams::offset, offset_, reset_scheduler_state(), sample_offset_, sample_start_, samples_num_, scrambling_distance_, BufferParams::stride, stride_, and BufferParams::width.
|
protected |
Definition at line 51 of file work_tile_scheduler.cpp.
References accelerated_rt_, divide_up(), image_size_px_, LOG_DEBUG, max_num_path_states_, next_work_index_, num_tiles, num_tiles_per_sample_range_, num_tiles_x_, num_tiles_y_, samples_num_, scrambling_distance_, tile_calculate_best_size(), tile_size_, total_tiles_num_, and total_work_size_.
Referenced by reset().
| void WorkTileScheduler::set_accelerated_rt | ( | bool | accelerated_rt | ) |
Definition at line 16 of file work_tile_scheduler.cpp.
References accelerated_rt_.
| void WorkTileScheduler::set_max_num_path_states | ( | const int | max_num_path_states | ) |
Definition at line 21 of file work_tile_scheduler.cpp.
References max_num_path_states_.
|
protected |
Definition at line 51 of file work_tile_scheduler.h.
Referenced by reset_scheduler_state(), and set_accelerated_rt().
Definition at line 61 of file work_tile_scheduler.h.
Referenced by get_work(), and reset().
Definition at line 64 of file work_tile_scheduler.h.
Referenced by get_work(), reset(), and reset_scheduler_state().
|
protected |
Definition at line 58 of file work_tile_scheduler.h.
Referenced by get_work(), reset_scheduler_state(), and set_max_num_path_states().
|
protected |
Definition at line 97 of file work_tile_scheduler.h.
Referenced by get_work(), and reset_scheduler_state().
|
protected |
Definition at line 95 of file work_tile_scheduler.h.
Referenced by get_work(), and reset_scheduler_state().
|
protected |
Definition at line 84 of file work_tile_scheduler.h.
Referenced by get_work(), and reset_scheduler_state().
|
protected |
Definition at line 84 of file work_tile_scheduler.h.
Referenced by reset_scheduler_state().
|
protected |
Definition at line 68 of file work_tile_scheduler.h.
Referenced by get_work(), and reset().
|
protected |
Definition at line 78 of file work_tile_scheduler.h.
Referenced by get_work(), and reset().
|
protected |
Definition at line 76 of file work_tile_scheduler.h.
Referenced by get_work(), and reset().
|
protected |
Definition at line 77 of file work_tile_scheduler.h.
Referenced by get_work(), reset(), and reset_scheduler_state().
|
protected |
Definition at line 71 of file work_tile_scheduler.h.
Referenced by reset(), and reset_scheduler_state().
|
protected |
Definition at line 68 of file work_tile_scheduler.h.
Referenced by get_work(), and reset().
|
protected |
Definition at line 81 of file work_tile_scheduler.h.
Referenced by get_work(), and reset_scheduler_state().
|
protected |
Definition at line 91 of file work_tile_scheduler.h.
Referenced by reset_scheduler_state().
|
protected |
Definition at line 98 of file work_tile_scheduler.h.
Referenced by get_work(), and reset_scheduler_state().