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

#include <work_tile_scheduler.h>

Public Member Functions

 WorkTileScheduler ()
 
void set_accelerated_rt (bool state)
 
void set_max_num_path_states (int max_num_path_states)
 
void reset (const BufferParams &buffer_params, int sample_start, int samples_num, 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
 

Detailed Description

Definition at line 17 of file work_tile_scheduler.h.

Constructor & Destructor Documentation

◆ WorkTileScheduler()

CCL_NAMESPACE_BEGIN WorkTileScheduler::WorkTileScheduler ( )

Definition at line 14 of file work_tile_scheduler.cpp.

Member Function Documentation

◆ get_work()

bool WorkTileScheduler::get_work ( KernelWorkTile work_tile,
const int  max_work_size = 0 
)

◆ reset()

void WorkTileScheduler::reset ( const BufferParams buffer_params,
int  sample_start,
int  samples_num,
int  sample_offset,
float  scrambling_distance 
)

◆ reset_scheduler_state()

void WorkTileScheduler::reset_scheduler_state ( )
protected

◆ set_accelerated_rt()

void WorkTileScheduler::set_accelerated_rt ( bool  state)

Definition at line 18 of file work_tile_scheduler.cpp.

References accelerated_rt_.

Referenced by PathTraceWorkGPU::render_samples().

◆ set_max_num_path_states()

void WorkTileScheduler::set_max_num_path_states ( int  max_num_path_states)

Definition at line 23 of file work_tile_scheduler.cpp.

References max_num_path_states_.

Referenced by PathTraceWorkGPU::render_samples().

Member Data Documentation

◆ accelerated_rt_

bool WorkTileScheduler::accelerated_rt_ = false
protected

Definition at line 49 of file work_tile_scheduler.h.

Referenced by reset_scheduler_state(), and set_accelerated_rt().

◆ image_full_offset_px_

int2 WorkTileScheduler::image_full_offset_px_ = make_int2(0, 0)
protected

Definition at line 59 of file work_tile_scheduler.h.

Referenced by get_work(), and reset().

◆ image_size_px_

int2 WorkTileScheduler::image_size_px_ = make_int2(0, 0)
protected

Definition at line 62 of file work_tile_scheduler.h.

Referenced by get_work(), reset(), and reset_scheduler_state().

◆ max_num_path_states_

int WorkTileScheduler::max_num_path_states_ = 0
protected

Definition at line 56 of file work_tile_scheduler.h.

Referenced by get_work(), reset_scheduler_state(), and set_max_num_path_states().

◆ next_work_index_

int WorkTileScheduler::next_work_index_ = 0
protected

Definition at line 95 of file work_tile_scheduler.h.

Referenced by get_work(), and reset_scheduler_state().

◆ num_tiles_per_sample_range_

int WorkTileScheduler::num_tiles_per_sample_range_ = 0
protected

Definition at line 93 of file work_tile_scheduler.h.

Referenced by get_work(), and reset_scheduler_state().

◆ num_tiles_x_

int WorkTileScheduler::num_tiles_x_
protected

Definition at line 82 of file work_tile_scheduler.h.

Referenced by get_work(), and reset_scheduler_state().

◆ num_tiles_y_

int WorkTileScheduler::num_tiles_y_
protected

Definition at line 82 of file work_tile_scheduler.h.

Referenced by reset_scheduler_state().

◆ offset_

int WorkTileScheduler::offset_
protected

Definition at line 66 of file work_tile_scheduler.h.

Referenced by get_work(), and reset().

◆ sample_offset_

int WorkTileScheduler::sample_offset_ = 0
protected

Definition at line 76 of file work_tile_scheduler.h.

Referenced by get_work(), and reset().

◆ sample_start_

int WorkTileScheduler::sample_start_ = 0
protected

Definition at line 74 of file work_tile_scheduler.h.

Referenced by get_work(), and reset().

◆ samples_num_

int WorkTileScheduler::samples_num_ = 0
protected

Definition at line 75 of file work_tile_scheduler.h.

Referenced by get_work(), reset(), and reset_scheduler_state().

◆ scrambling_distance_

float WorkTileScheduler::scrambling_distance_
protected

Definition at line 69 of file work_tile_scheduler.h.

Referenced by reset(), and reset_scheduler_state().

◆ stride_

int WorkTileScheduler::stride_
protected

Definition at line 66 of file work_tile_scheduler.h.

Referenced by get_work(), and reset().

◆ tile_size_

TileSize WorkTileScheduler::tile_size_
protected

Definition at line 79 of file work_tile_scheduler.h.

Referenced by get_work(), and reset_scheduler_state().

◆ total_tiles_num_

int WorkTileScheduler::total_tiles_num_ = 0
protected

Definition at line 89 of file work_tile_scheduler.h.

Referenced by reset_scheduler_state().

◆ total_work_size_

int WorkTileScheduler::total_work_size_ = 0
protected

Definition at line 96 of file work_tile_scheduler.h.

Referenced by get_work(), and reset_scheduler_state().


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