[#30503] Callback for render job completion
from Jason van Gumster (thefallenweeble) adds render_complete and render_cancel callbacks to bpy.app.handlers
This commit is contained in:
@@ -42,6 +42,8 @@ typedef enum {
|
||||
BLI_CB_EVT_RENDER_PRE,
|
||||
BLI_CB_EVT_RENDER_POST,
|
||||
BLI_CB_EVT_RENDER_STATS,
|
||||
BLI_CB_EVT_RENDER_COMPLETE,
|
||||
BLI_CB_EVT_RENDER_CANCEL,
|
||||
BLI_CB_EVT_LOAD_PRE,
|
||||
BLI_CB_EVT_LOAD_POST,
|
||||
BLI_CB_EVT_SAVE_PRE,
|
||||
|
||||
@@ -47,6 +47,8 @@ static PyStructSequence_Field app_cb_info_fields[] = {
|
||||
{(char *)"render_pre", (char *)"Callback list - on render (before)"},
|
||||
{(char *)"render_post", (char *)"Callback list - on render (after)"},
|
||||
{(char *)"render_stats", (char *)"Callback list - on printing render statistics"},
|
||||
{(char *)"render_complete", (char *)"Callback list - on completion of render job"},
|
||||
{(char *)"render_cancel", (char *)"Callback list - on cancelling a render job"},
|
||||
{(char *)"load_pre", (char *)"Callback list - on loading a new blend file (before)"},
|
||||
{(char *)"load_post", (char *)"Callback list - on loading a new blend file (after)"},
|
||||
{(char *)"save_pre", (char *)"Callback list - on saving a blend file (before)"},
|
||||
|
||||
@@ -2022,6 +2022,8 @@ void RE_BlenderFrame(Render *re, Main *bmain, Scene *scene, SceneRenderLayer *sr
|
||||
BLI_exec_cb(re->main, (ID *)scene, BLI_CB_EVT_RENDER_POST); /* keep after file save */
|
||||
}
|
||||
|
||||
BLI_exec_cb(re->main, (ID *)scene, G.afbreek ? BLI_CB_EVT_RENDER_CANCEL : BLI_CB_EVT_RENDER_COMPLETE);
|
||||
|
||||
/* UGLY WARNING */
|
||||
G.rendering= 0;
|
||||
}
|
||||
@@ -2239,6 +2241,8 @@ void RE_BlenderAnim(Render *re, Main *bmain, Scene *scene, Object *camera_overri
|
||||
|
||||
re->flag &= ~R_ANIMATION;
|
||||
|
||||
BLI_exec_cb(re->main, (ID *)scene, G.afbreek ? BLI_CB_EVT_RENDER_CANCEL : BLI_CB_EVT_RENDER_COMPLETE);
|
||||
|
||||
/* UGLY WARNING */
|
||||
G.rendering= 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user