62 #define BPy_BEGIN_ALLOW_THREADS \
64 BPy_ThreadStatePtr _bpy_saved_tstate = BPY_thread_save(); \
66 #define BPy_END_ALLOW_THREADS \
67 BPY_thread_restore(_bpy_saved_tstate); \
91 #define BPY_context_dict_clear_members(C, ...) \
92 BPY_context_dict_clear_members_array(&((C)->data.py_context), \
93 (C)->data.py_context_orig, \
94 ((const char *[]){__VA_ARGS__}), \
95 VA_NARGS_COUNT(__VA_ARGS__))
98 const char *context_members[],
99 uint context_members_len);
110 #ifdef WITH_INTERNATIONAL
111 const char *BPY_app_translations_py_pgettext(
const char *msgctxt,
const char *msgid);
int BPY_context_member_get(struct bContext *C, const char *member, struct bContextDataResult *result)
BPy_ThreadStatePtr BPY_thread_save(void)
void BPY_modules_load_user(struct bContext *C)
void BPY_pyconstraint_target(struct bPythonConstraint *con, struct bConstraintTarget *ct)
bool BPY_string_is_keyword(const char *str)
void BPY_context_dict_clear_members_array(void **dict_p, void *dict_orig, const char *context_members[], uint context_members_len)
void BPY_app_handlers_reset(const short do_all)
void BPY_pyconstraint_exec(struct bPythonConstraint *con, struct bConstraintOb *cob, struct ListBase *targets)
void BPY_context_update(struct bContext *C)
void BPY_text_free_code(struct Text *text)
void BPY_DECREF_RNA_INVALIDATE(void *pyob_ptr)
void BPY_modules_update(void)
void * BPy_ThreadStatePtr
void BPY_context_set(struct bContext *C)
void BPY_thread_restore(BPy_ThreadStatePtr tstate)
int BPY_is_pyconstraint(struct Text *text)
void BPY_driver_reset(void)
void BPY_pyconstraint_update(struct Object *owner, struct bConstraint *con)
void BPY_callback_screen_free(struct ARegionType *art)
void BPY_id_release(struct ID *id)
float BPY_driver_exec(struct PathResolvedRNA *anim_rna, struct ChannelDriver *driver, struct ChannelDriver *driver_orig, const struct AnimationEvalContext *anim_eval_context)
void BPY_callback_wm_free(struct wmWindowManager *wm)
void BPY_DECREF(void *pyob_ptr)