Refactor: Make stats_draw a base render method

Should be no functional changes.
This commit is contained in:
Sergey Sharybin
2023-08-11 12:46:03 +02:00
committed by Sergey Sharybin
parent ed058088b3
commit 0193c5029b
6 changed files with 18 additions and 8 deletions
@@ -280,7 +280,7 @@ static void prepare(Render *re, ViewLayer *view_layer, Depsgraph *depsgraph)
{
// load mesh
re->i.infostr = TIP_("Freestyle: Mesh loading");
re->stats_draw_cb(re->sdh, &re->i);
re->stats_draw(&re->i);
re->i.infostr = nullptr;
if (controller->LoadMesh(re, view_layer, depsgraph)) {
/* Returns if scene cannot be loaded or if empty. */
@@ -467,7 +467,7 @@ static void prepare(Render *re, ViewLayer *view_layer, Depsgraph *depsgraph)
// compute view map
re->i.infostr = TIP_("Freestyle: View map creation");
re->stats_draw_cb(re->sdh, &re->i);
re->stats_draw(&re->i);
re->i.infostr = nullptr;
controller->ComputeViewMap();
}
@@ -641,7 +641,7 @@ void FRS_do_stroke_rendering(Render *re, ViewLayer *view_layer)
if (controller->_ViewMap) {
// render strokes
re->i.infostr = TIP_("Freestyle: Stroke rendering");
re->stats_draw_cb(re->sdh, &re->i);
re->stats_draw(&re->i);
re->i.infostr = nullptr;
g_freestyle.scene = DEG_get_evaluated_scene(depsgraph);
int strokeCount = controller->DrawStrokes();
@@ -30,7 +30,7 @@ class RenderMonitor {
{
if (_re && !info.empty()) {
_re->i.infostr = info.c_str();
_re->stats_draw_cb(_re->sdh, &_re->i);
_re->stats_draw(&_re->i);
_re->i.infostr = nullptr;
}
}
+1 -1
View File
@@ -477,7 +477,7 @@ void RE_engine_update_stats(RenderEngine *engine, const char *stats, const char
if (re) {
re->i.statstr = stats;
re->i.infostr = info;
re->stats_draw_cb(re->sdh, &re->i);
re->stats_draw(&re->i);
re->i.infostr = nullptr;
re->i.statstr = nullptr;
}
+3 -3
View File
@@ -1200,7 +1200,7 @@ static void render_compositor_stats(void *arg, const char *str)
RenderStats i;
memcpy(&i, &re->i, sizeof(i));
i.infostr = str;
re->stats_draw_cb(re->sdh, &i);
re->stats_draw(&i);
}
/* Render compositor nodes, along with any scenes required for them.
@@ -1464,7 +1464,7 @@ static void do_render_full_pipeline(Render *re)
render_seq = true;
}
re->stats_draw_cb(re->sdh, &re->i);
re->stats_draw(&re->i);
re->display_update_cb(re->duh, re->result, nullptr);
}
else {
@@ -1473,7 +1473,7 @@ static void do_render_full_pipeline(Render *re)
re->i.lastframetime = PIL_check_seconds_timer() - re->i.starttime;
re->stats_draw_cb(re->sdh, &re->i);
re->stats_draw(&re->i);
/* save render result stamp if needed */
if (re->result != nullptr) {
@@ -41,6 +41,13 @@ Render::~Render()
render_result_free(pushedresult);
}
void Render::stats_draw(RenderStats *render_stats)
{
if (stats_draw_cb) {
stats_draw_cb(sdh, render_stats);
}
}
void Render::progress(float progress)
{
if (progress_cb) {
@@ -49,6 +49,7 @@ struct BaseRender {
const char *view_name) = 0;
virtual void compositor_free() = 0;
virtual void stats_draw(RenderStats *render_stats) = 0;
virtual void progress(float progress) = 0;
virtual void draw_lock() = 0;
@@ -96,6 +97,7 @@ struct ViewRender : public BaseRender {
}
void compositor_free() override {}
void stats_draw(RenderStats * /*render_stats*/) override {}
void progress(const float /*progress*/) override {}
void draw_lock() override {}
@@ -132,6 +134,7 @@ struct Render : public BaseRender {
const char *view_name) override;
void compositor_free() override;
void stats_draw(RenderStats *render_stats) override;
void progress(float progress) override;
void draw_lock() override;