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

#include <progress.h>

Public Member Functions

 Progress ()
 
 Progress (Progress &progress)
 
Progressoperator= (Progress &progress)
 
void reset ()
 
void set_cancel (const string &cancel_message_)
 
bool get_cancel () const
 
string get_cancel_message () const
 
void set_cancel_callback (function< void()> function)
 
void set_error (const string &error_message_)
 
bool get_error () const
 
string get_error_message () const
 
void set_start_time ()
 
void set_render_start_time ()
 
void add_skip_time (const scoped_timer &start_timer, bool only_render)
 
void get_time (double &total_time_, double &render_time_) const
 
void set_end_time ()
 
void reset_sample ()
 
void set_total_pixel_samples (uint64_t total_pixel_samples_)
 
double get_progress () const
 
void add_samples (uint64_t pixel_samples_, int tile_sample)
 
void add_samples_update (uint64_t pixel_samples_, int tile_sample)
 
void add_finished_tile (bool denoised)
 
int get_current_sample () const
 
int get_rendered_tiles () const
 
int get_denoised_tiles () const
 
void set_status (const string &status_, const string &substatus_="")
 
void set_substatus (const string &substatus_)
 
void set_sync_status (const string &status_, const string &substatus_="")
 
void set_sync_substatus (const string &substatus_)
 
void get_status (string &status_, string &substatus_) const
 
void set_update ()
 
void set_update_callback (function< void()> function)
 

Protected Attributes

thread_mutex progress_mutex
 
thread_mutex update_mutex
 
function< void()> update_cb
 
function< void()> cancel_cb
 
uint64_t pixel_samples
 
uint64_t total_pixel_samples
 
int current_tile_sample
 
int rendered_tiles
 
int denoised_tiles
 
double start_time
 
double render_start_time
 
double end_time
 
string status
 
string substatus
 
string sync_status
 
string sync_substatus
 
volatile bool cancel
 
string cancel_message
 
volatile bool error
 
string error_message
 

Detailed Description

Definition at line 20 of file progress.h.

Constructor & Destructor Documentation

◆ Progress() [1/2]

Progress::Progress ( )
inline

◆ Progress() [2/2]

Progress::Progress ( Progress progress)
inline

Definition at line 44 of file progress.h.

Member Function Documentation

◆ add_finished_tile()

void Progress::add_finished_tile ( bool  denoised)
inline

Definition at line 214 of file progress.h.

References denoised_tiles, lock, progress_mutex, and rendered_tiles.

Referenced by Session::run_update_for_next_iteration().

◆ add_samples()

void Progress::add_samples ( uint64_t  pixel_samples_,
int  tile_sample 
)
inline

◆ add_samples_update()

void Progress::add_samples_update ( uint64_t  pixel_samples_,
int  tile_sample 
)
inline

Definition at line 208 of file progress.h.

References add_samples(), and set_update().

◆ add_skip_time()

void Progress::add_skip_time ( const scoped_timer start_timer,
bool  only_render 
)
inline

◆ get_cancel()

bool Progress::get_cancel ( ) const
inline

◆ get_cancel_message()

string Progress::get_cancel_message ( ) const
inline

Definition at line 98 of file progress.h.

References cancel_message, lock, and progress_mutex.

Referenced by Session::thread_render().

◆ get_current_sample()

int Progress::get_current_sample ( ) const
inline

Definition at line 226 of file progress.h.

References current_tile_sample, lock, and progress_mutex.

Referenced by operator=(), and Session::update_status_time().

◆ get_denoised_tiles()

int Progress::get_denoised_tiles ( ) const
inline

Definition at line 240 of file progress.h.

References denoised_tiles, lock, and progress_mutex.

◆ get_error()

bool Progress::get_error ( ) const
inline

Definition at line 120 of file progress.h.

References error.

Referenced by BlenderSession::check_and_report_session_error().

◆ get_error_message()

string Progress::get_error_message ( ) const
inline

Definition at line 125 of file progress.h.

References error_message, lock, and progress_mutex.

Referenced by BlenderSession::check_and_report_session_error().

◆ get_progress()

double Progress::get_progress ( ) const
inline

◆ get_rendered_tiles()

int Progress::get_rendered_tiles ( ) const
inline

Definition at line 234 of file progress.h.

References lock, progress_mutex, and rendered_tiles.

Referenced by Session::update_status_time().

◆ get_status()

void Progress::get_status ( string &  status_,
string &  substatus_ 
) const
inline

◆ get_time()

void Progress::get_time ( double total_time_,
double render_time_ 
) const
inline

◆ operator=()

Progress& Progress::operator= ( Progress progress)
inline

◆ reset()

void Progress::reset ( )
inline

◆ reset_sample()

void Progress::reset_sample ( )
inline

◆ set_cancel()

void Progress::set_cancel ( const string &  cancel_message_)
inline

◆ set_cancel_callback()

void Progress::set_cancel_callback ( function< void()>  function)
inline

Definition at line 104 of file progress.h.

References cancel_cb.

Referenced by BlenderSession::create_session().

◆ set_end_time()

void Progress::set_end_time ( )
inline

Definition at line 168 of file progress.h.

References end_time, and time_dt().

Referenced by Session::update_status_time().

◆ set_error()

void Progress::set_error ( const string &  error_message_)
inline

◆ set_render_start_time()

void Progress::set_render_start_time ( )
inline

Definition at line 141 of file progress.h.

References lock, progress_mutex, render_start_time, and time_dt().

Referenced by Session::do_delayed_reset().

◆ set_start_time()

void Progress::set_start_time ( )
inline

Definition at line 133 of file progress.h.

References end_time, lock, progress_mutex, start_time, and time_dt().

Referenced by Session::do_delayed_reset().

◆ set_status()

void Progress::set_status ( const string &  status_,
const string &  substatus_ = "" 
)
inline

◆ set_substatus()

void Progress::set_substatus ( const string &  substatus_)
inline

Definition at line 259 of file progress.h.

References lock, progress_mutex, set_update(), and substatus.

Referenced by BVH2::build(), BVHBuild::progress_update(), and BVH2::refit().

◆ set_sync_status()

void Progress::set_sync_status ( const string &  status_,
const string &  substatus_ = "" 
)
inline

Definition at line 269 of file progress.h.

References lock, progress_mutex, set_update(), sync_status, and sync_substatus.

◆ set_sync_substatus()

void Progress::set_sync_substatus ( const string &  substatus_)
inline

Definition at line 280 of file progress.h.

References lock, progress_mutex, set_update(), and sync_substatus.

◆ set_total_pixel_samples()

void Progress::set_total_pixel_samples ( uint64_t  total_pixel_samples_)
inline

Definition at line 183 of file progress.h.

References lock, progress_mutex, and total_pixel_samples.

Referenced by Session::do_delayed_reset().

◆ set_update()

void Progress::set_update ( )
inline

◆ set_update_callback()

void Progress::set_update_callback ( function< void()>  function)
inline

Definition at line 314 of file progress.h.

References update_cb.

Referenced by BlenderSession::bake(), BlenderSession::create_session(), and session_init().

Member Data Documentation

◆ cancel

volatile bool Progress::cancel
protected

Definition at line 348 of file progress.h.

Referenced by get_cancel(), Progress(), reset(), set_cancel(), and set_error().

◆ cancel_cb

function<void()> Progress::cancel_cb
protected

Definition at line 323 of file progress.h.

Referenced by get_cancel(), Progress(), and set_cancel_callback().

◆ cancel_message

string Progress::cancel_message
protected

Definition at line 349 of file progress.h.

Referenced by get_cancel_message(), Progress(), reset(), set_cancel(), and set_error().

◆ current_tile_sample

int Progress::current_tile_sample
protected

Definition at line 332 of file progress.h.

Referenced by add_samples(), get_current_sample(), operator=(), Progress(), reset(), and reset_sample().

◆ denoised_tiles

int Progress::denoised_tiles
protected

Definition at line 336 of file progress.h.

Referenced by add_finished_tile(), get_denoised_tiles(), Progress(), reset(), and reset_sample().

◆ end_time

double Progress::end_time
protected

Definition at line 340 of file progress.h.

Referenced by get_time(), Progress(), reset(), set_end_time(), and set_start_time().

◆ error

volatile bool Progress::error
protected

Definition at line 351 of file progress.h.

Referenced by get_error(), Progress(), reset(), and set_error().

◆ error_message

string Progress::error_message
protected

Definition at line 352 of file progress.h.

Referenced by get_error_message(), Progress(), reset(), and set_error().

◆ pixel_samples

uint64_t Progress::pixel_samples
protected

Definition at line 329 of file progress.h.

Referenced by add_samples(), get_progress(), operator=(), Progress(), reset(), and reset_sample().

◆ progress_mutex

thread_mutex Progress::progress_mutex
mutableprotected

◆ render_start_time

double Progress::render_start_time
protected

Definition at line 338 of file progress.h.

Referenced by add_skip_time(), get_time(), Progress(), reset(), and set_render_start_time().

◆ rendered_tiles

int Progress::rendered_tiles
protected

Definition at line 336 of file progress.h.

Referenced by add_finished_tile(), get_rendered_tiles(), Progress(), reset(), and reset_sample().

◆ start_time

double Progress::start_time
protected

Definition at line 338 of file progress.h.

Referenced by add_skip_time(), get_time(), Progress(), reset(), and set_start_time().

◆ status

string Progress::status
protected

Definition at line 342 of file progress.h.

Referenced by get_status(), operator=(), Progress(), reset(), and set_status().

◆ substatus

string Progress::substatus
protected

Definition at line 343 of file progress.h.

Referenced by get_status(), operator=(), Progress(), reset(), set_status(), and set_substatus().

◆ sync_status

string Progress::sync_status
protected

Definition at line 345 of file progress.h.

Referenced by get_status(), Progress(), reset(), and set_sync_status().

◆ sync_substatus

string Progress::sync_substatus
protected

Definition at line 346 of file progress.h.

Referenced by get_status(), Progress(), reset(), set_sync_status(), and set_sync_substatus().

◆ total_pixel_samples

uint64_t Progress::total_pixel_samples
protected

Definition at line 329 of file progress.h.

Referenced by get_progress(), operator=(), Progress(), reset(), and set_total_pixel_samples().

◆ update_cb

function<void()> Progress::update_cb
protected

Definition at line 322 of file progress.h.

Referenced by Progress(), set_update(), and set_update_callback().

◆ update_mutex

thread_mutex Progress::update_mutex
mutableprotected

Definition at line 321 of file progress.h.

Referenced by set_update().


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