Blender V4.3
BPY_extern.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
9#pragma once
10
11struct ARegionType;
13struct ChannelDriver; /* DNA_anim_types.h */
14struct ID; /* DNA_ID.h */
15struct ListBase; /* DNA_listBase.h */
16struct Object; /* DNA_object_types.h */
17struct PathResolvedRNA;
18struct Text; /* defined in DNA_text_types.h */
19struct bConstraint; /* DNA_constraint_types.h */
20struct bConstraintOb; /* DNA_constraint_types.h */
21struct bConstraintTarget; /* DNA_constraint_types.h */
22struct bContext;
24struct bPythonConstraint; /* DNA_constraint_types.h */
25struct wmWindowManager;
26
27#include "BLI_utildefines.h"
28
30// void BPY_pyconstraint_settings(void *arg1, void *arg2);
33bool BPY_is_pyconstraint(Text *text);
34// void BPY_free_pyconstraint_links(struct Text *text);
35
36/* global interpreter lock */
37
38typedef void *BPy_ThreadStatePtr;
39
48
50#define BPy_BEGIN_ALLOW_THREADS \
51 { \
52 BPy_ThreadStatePtr _bpy_saved_tstate = BPY_thread_save(); \
53 (void)0
54#define BPy_END_ALLOW_THREADS \
55 BPY_thread_restore(_bpy_saved_tstate); \
56 } \
57 (void)0
58
59void BPY_text_free_code(Text *text);
65
66void BPY_app_handlers_reset(bool do_all);
67
71void BPY_driver_exit();
72
78void BPY_driver_reset();
79
84float BPY_driver_exec(PathResolvedRNA *anim_rna,
85 ChannelDriver *driver,
86 ChannelDriver *driver_orig,
87 const AnimationEvalContext *anim_eval_context);
88
93void BPY_DECREF(void *pyob_ptr);
94
95void BPY_DECREF_RNA_INVALIDATE(void *pyob_ptr);
96int BPY_context_member_get(bContext *C, const char *member, bContextDataResult *result);
102
111void BPY_context_dict_clear_members_array(void **dict_p,
112 void *dict_orig,
113 const char *context_members[],
114 uint context_members_len);
115
116void BPY_id_release(ID *id);
117
121bool BPY_string_is_keyword(const char *str);
122
123/* `bpy_rna_callback.cc` */
124
127
128/* I18n for addons */
129#ifdef WITH_INTERNATIONAL
130const char *BPY_app_translations_py_pgettext(const char *msgctxt, const char *msgid);
131#endif
unsigned int uint
void BPY_pyconstraint_exec(bPythonConstraint *con, bConstraintOb *cob, ListBase *targets)
Definition stubs.cc:16
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_id_release(ID *id)
Definition bpy_rna.cc:312
int BPY_context_member_get(bContext *C, const char *member, bContextDataResult *result)
float BPY_driver_exec(PathResolvedRNA *anim_rna, ChannelDriver *driver, ChannelDriver *driver_orig, const AnimationEvalContext *anim_eval_context)
void BPY_modules_update()
void BPY_context_set(bContext *C)
void BPY_DECREF_RNA_INVALIDATE(void *pyob_ptr)
void BPY_pyconstraint_target(bPythonConstraint *con, bConstraintTarget *ct)
Definition stubs.cc:21
void * BPy_ThreadStatePtr
Definition BPY_extern.hh:38
void BPY_context_update(bContext *C)
void BPY_thread_restore(BPy_ThreadStatePtr tstate)
bool BPY_is_pyconstraint(Text *text)
Definition stubs.cc:22
BPy_ThreadStatePtr BPY_thread_save()
void BPY_pyconstraint_update(Object *owner, bConstraint *con)
Definition stubs.cc:26
void BPY_callback_screen_free(ARegionType *art)
void BPY_text_free_code(Text *text)
void BPY_driver_reset()
void BPY_driver_exit()
void BPY_modules_load_user(bContext *C)
void BPY_app_handlers_reset(bool do_all)
void BPY_callback_wm_free(wmWindowManager *wm)
void BPY_DECREF(void *pyob_ptr)
#define str(s)
Definition DNA_ID.h:413