Blender  V3.3
BKE_callbacks.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
7 #pragma once
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 struct Depsgraph;
14 struct ID;
15 struct Main;
16 struct PointerRNA;
17 
74 typedef enum {
107 } eCbEvent;
108 
109 typedef struct bCallbackFuncStore {
111  void (*func)(struct Main *, struct PointerRNA **, int num_pointers, void *arg);
112  void *arg;
113  short alloc;
115 
116 void BKE_callback_exec(struct Main *bmain,
117  struct PointerRNA **pointers,
118  int num_pointers,
119  eCbEvent evt);
120 void BKE_callback_exec_null(struct Main *bmain, eCbEvent evt);
121 void BKE_callback_exec_id(struct Main *bmain, struct ID *id, eCbEvent evt);
122 void BKE_callback_exec_id_depsgraph(struct Main *bmain,
123  struct ID *id,
124  struct Depsgraph *depsgraph,
125  eCbEvent evt);
126 void BKE_callback_add(bCallbackFuncStore *funcstore, eCbEvent evt);
127 void BKE_callback_remove(bCallbackFuncStore *funcstore, eCbEvent evt);
128 
129 void BKE_callback_global_init(void);
134 
135 #ifdef __cplusplus
136 }
137 #endif
struct bCallbackFuncStore bCallbackFuncStore
void BKE_callback_add(bCallbackFuncStore *funcstore, eCbEvent evt)
Definition: callbacks.c:72
void BKE_callback_exec_id_depsgraph(struct Main *bmain, struct ID *id, struct Depsgraph *depsgraph, eCbEvent evt)
Definition: callbacks.c:56
void BKE_callback_global_finalize(void)
Definition: callbacks.c:105
void BKE_callback_remove(bCallbackFuncStore *funcstore, eCbEvent evt)
Definition: callbacks.c:79
void BKE_callback_exec_null(struct Main *bmain, eCbEvent evt)
Definition: callbacks.c:41
eCbEvent
Definition: BKE_callbacks.h:74
@ BKE_CB_EVT_LOAD_FACTORY_STARTUP_POST
Definition: BKE_callbacks.h:96
@ BKE_CB_EVT_REDO_POST
Definition: BKE_callbacks.h:91
@ BKE_CB_EVT_TOT
@ BKE_CB_EVT_LOAD_FACTORY_USERDEF_POST
Definition: BKE_callbacks.h:95
@ BKE_CB_EVT_RENDER_COMPLETE
Definition: BKE_callbacks.h:82
@ BKE_CB_EVT_DEPSGRAPH_UPDATE_PRE
Definition: BKE_callbacks.h:92
@ BKE_CB_EVT_SAVE_PRE
Definition: BKE_callbacks.h:86
@ BKE_CB_EVT_RENDER_POST
Definition: BKE_callbacks.h:78
@ BKE_CB_EVT_RENDER_STATS
Definition: BKE_callbacks.h:80
@ BKE_CB_EVT_RENDER_PRE
Definition: BKE_callbacks.h:77
@ BKE_CB_EVT_RENDER_WRITE
Definition: BKE_callbacks.h:79
@ BKE_CB_EVT_VERSION_UPDATE
Definition: BKE_callbacks.h:94
@ BKE_CB_EVT_XR_SESSION_START_PRE
Definition: BKE_callbacks.h:97
@ BKE_CB_EVT_ANNOTATION_POST
Definition: BKE_callbacks.h:99
@ BKE_CB_EVT_COMPOSITE_PRE
@ BKE_CB_EVT_SAVE_POST
Definition: BKE_callbacks.h:87
@ BKE_CB_EVT_OBJECT_BAKE_CANCEL
@ BKE_CB_EVT_LOAD_POST
Definition: BKE_callbacks.h:85
@ BKE_CB_EVT_OBJECT_BAKE_COMPLETE
@ BKE_CB_EVT_LOAD_PRE
Definition: BKE_callbacks.h:84
@ BKE_CB_EVT_REDO_PRE
Definition: BKE_callbacks.h:90
@ BKE_CB_EVT_RENDER_INIT
Definition: BKE_callbacks.h:81
@ BKE_CB_EVT_RENDER_CANCEL
Definition: BKE_callbacks.h:83
@ BKE_CB_EVT_COMPOSITE_CANCEL
@ BKE_CB_EVT_COMPOSITE_POST
@ BKE_CB_EVT_FRAME_CHANGE_PRE
Definition: BKE_callbacks.h:75
@ BKE_CB_EVT_UNDO_PRE
Definition: BKE_callbacks.h:88
@ BKE_CB_EVT_UNDO_POST
Definition: BKE_callbacks.h:89
@ BKE_CB_EVT_OBJECT_BAKE_PRE
@ BKE_CB_EVT_FRAME_CHANGE_POST
Definition: BKE_callbacks.h:76
@ BKE_CB_EVT_DEPSGRAPH_UPDATE_POST
Definition: BKE_callbacks.h:93
@ BKE_CB_EVT_ANNOTATION_PRE
Definition: BKE_callbacks.h:98
void BKE_callback_exec_id(struct Main *bmain, struct ID *id, eCbEvent evt)
Definition: callbacks.c:46
void BKE_callback_exec(struct Main *bmain, struct PointerRNA **pointers, int num_pointers, eCbEvent evt)
Definition: callbacks.c:27
void BKE_callback_global_init(void)
Definition: callbacks.c:100
struct Depsgraph Depsgraph
Definition: DEG_depsgraph.h:35
const Depsgraph * depsgraph
SyclQueue void void size_t num_bytes void
Definition: DNA_ID.h:368
Definition: BKE_main.h:121
struct bCallbackFuncStore * prev
void(* func)(struct Main *, struct PointerRNA **, int num_pointers, void *arg)
struct bCallbackFuncStore * next