47 {
ID_AC,
"ACTION", ICON_ACTION,
"Action",
""},
48 {
ID_AR,
"ARMATURE", ICON_ARMATURE_DATA,
"Armature",
""},
49 {
ID_BR,
"BRUSH", ICON_BRUSH_DATA,
"Brush",
""},
50 {
ID_CA,
"CAMERA", ICON_CAMERA_DATA,
"Camera",
""},
51 {
ID_CF,
"CACHEFILE", ICON_FILE,
"Cache File",
""},
52 {
ID_CU,
"CURVE", ICON_CURVE_DATA,
"Curve",
""},
53 {
ID_VF,
"FONT", ICON_FONT_DATA,
"Font",
""},
54 {
ID_GD,
"GREASEPENCIL", ICON_GREASEPENCIL,
"Grease Pencil",
""},
55 {
ID_GR,
"COLLECTION", ICON_OUTLINER_COLLECTION,
"Collection",
""},
56 {
ID_IM,
"IMAGE", ICON_IMAGE_DATA,
"Image",
""},
57 {
ID_KE,
"KEY", ICON_SHAPEKEY_DATA,
"Key",
""},
58 {
ID_LA,
"LIGHT", ICON_LIGHT_DATA,
"Light",
""},
59 {
ID_LI,
"LIBRARY", ICON_LIBRARY_DATA_DIRECT,
"Library",
""},
60 {
ID_LS,
"LINESTYLE", ICON_LINE_DATA,
"Line Style",
""},
61 {
ID_LT,
"LATTICE", ICON_LATTICE_DATA,
"Lattice",
""},
62 {
ID_MSK,
"MASK", ICON_MOD_MASK,
"Mask",
""},
63 {
ID_MA,
"MATERIAL", ICON_MATERIAL_DATA,
"Material",
""},
64 {
ID_MB,
"META", ICON_META_DATA,
"Metaball",
""},
65 {
ID_ME,
"MESH", ICON_MESH_DATA,
"Mesh",
""},
66 {
ID_MC,
"MOVIECLIP", ICON_TRACKER,
"Movie Clip",
""},
67 {
ID_NT,
"NODETREE", ICON_NODETREE,
"Node Tree",
""},
68 {
ID_OB,
"OBJECT", ICON_OBJECT_DATA,
"Object",
""},
69 {
ID_PC,
"PAINTCURVE", ICON_CURVE_BEZCURVE,
"Paint Curve",
""},
70 {
ID_PAL,
"PALETTE", ICON_COLOR,
"Palette",
""},
71 {
ID_PA,
"PARTICLE", ICON_PARTICLE_DATA,
"Particle",
""},
72 {
ID_LP,
"LIGHT_PROBE", ICON_LIGHTPROBE_CUBEMAP,
"Light Probe",
""},
73 {
ID_SCE,
"SCENE", ICON_SCENE_DATA,
"Scene",
""},
74 {
ID_SIM,
"SIMULATION", ICON_PHYSICS,
"Simulation",
""},
75 {
ID_SO,
"SOUND", ICON_SOUND,
"Sound",
""},
76 {
ID_SPK,
"SPEAKER", ICON_SPEAKER,
"Speaker",
""},
77 {
ID_TXT,
"TEXT", ICON_TEXT,
"Text",
""},
78 {
ID_TE,
"TEXTURE", ICON_TEXTURE_DATA,
"Texture",
""},
79 {
ID_HA,
"HAIR", ICON_HAIR_DATA,
"Hair",
""},
80 {
ID_PT,
"POINTCLOUD", ICON_POINTCLOUD_DATA,
"Point Cloud",
""},
81 {
ID_VO,
"VOLUME", ICON_VOLUME_DATA,
"Volume",
""},
82 {
ID_WM,
"WINDOWMANAGER", ICON_WINDOW,
"Window Manager",
""},
83 {
ID_WO,
"WORLD", ICON_WORLD_DATA,
"World",
""},
84 {
ID_WS,
"WORKSPACE", ICON_WORKSPACE,
"Workspace",
""},
93 "Does nothing, prevents adding actual overrides (NOT USED)"},
98 "Replace value of reference by overriding one"},
103 "Stores and apply difference between reference and local value (NOT USED)"},
108 "Stores and apply difference between reference and local value (NOT USED)"},
113 "Stores and apply multiplication factor between reference and local value (NOT USED)"},
118 "Insert a new item into collection after the one referenced in subitem_reference_name or "
124 "Insert a new item into collection after the one referenced in subitem_reference_name or "
125 "_index (NOT USED)"},
153 void rna_ID_override_library_property_operation_refname_get(
PointerRNA *
ptr,
char *value)
159 int rna_ID_override_library_property_operation_refname_length(
PointerRNA *
ptr)
165 void rna_ID_override_library_property_operation_locname_get(
PointerRNA *
ptr,
char *value)
171 int rna_ID_override_library_property_operation_locname_length(
PointerRNA *
ptr)
187 return strlen(
id->
name + 2);
295 # ifdef WITH_HAIR_NODES
309 if (base_type == &RNA_MovieClip) {
333 # ifdef WITH_POINT_CLOUD
347 # ifdef WITH_GEOMETRY_NODES
405 # ifdef WITH_HAIR_NODES
427 return &RNA_MovieClip;
443 # ifdef WITH_POINT_CLOUD
455 # ifdef WITH_GEOMETRY_NODES
524 const char *identifier,
535 if (validate(&dummyptr,
data,
NULL) != 0) {
546 "Registering id property class: '%s' is too long, maximum length is %d",
565 static ID *rna_ID_copy(
ID *
id,
Main *bmain)
578 static ID *rna_ID_override_create(
ID *
id,
Main *bmain,
bool remap_local_usages)
584 if (remap_local_usages) {
590 if (remap_local_usages) {
596 static void rna_ID_override_template_create(
ID *
id,
ReportList *reports)
598 if (!
U.experimental.use_override_templates) {
603 BKE_report(reports,
RPT_ERROR,
"Unable to create override template for linked data-blocks");
608 reports,
RPT_ERROR,
"Unable to create override template for overridden data-blocks");
619 override_library, rna_path, &created);
622 BKE_report(reports,
RPT_DEBUG,
"No new override property created, property already exists");
632 const char *subitem_refname,
633 const char *subitem_locname,
634 int subitem_refindex,
635 int subitem_locindex)
650 BKE_report(reports,
RPT_DEBUG,
"No new override operation created, operation already exists");
655 static void rna_ID_update_tag(
ID *
id,
Main *bmain,
ReportList *reports,
int flag)
660 Curve *cu = ob->data;
661 freedisplist(&cu->disp);
684 allow_flag = OB_RECALC_ALL | PSYS_RECALC;
696 if (flag & ~allow_flag) {
700 "%s is not compatible with %s 'refresh' options",
702 allow_flag ?
"the specified" :
"any");
710 static void rna_ID_user_clear(
ID *
id)
716 static void rna_ID_user_remap(
ID *
id,
Main *bmain,
ID *new_id)
725 static struct ID *rna_ID_make_local(
struct ID *
self,
Main *bmain,
bool clear_proxy)
735 static AnimData *rna_ID_animation_data_create(
ID *
id,
Main *bmain)
742 static void rna_ID_animation_data_free(
ID *
id,
Main *bmain)
773 if (totcol && (key >= 0 && key < *totcol)) {
784 static void rna_IDMaterials_append_id(
ID *
id,
Main *bmain,
Material *ma)
796 const short totcol_orig = *totcol;
798 index_i += (*totcol);
801 if ((index_i < 0) || (index_i >= (*totcol))) {
808 if (*totcol == totcol_orig) {
820 static void rna_IDMaterials_clear_id(
ID *
id,
Main *bmain)
829 static void rna_Library_filepath_set(
PointerRNA *
ptr,
const char *value)
875 values[0] = prv_img->
w[
size];
876 values[1] = prv_img->
h[
size];
890 if (values[0] && values[1]) {
891 prv_img->
rect[
size] =
MEM_callocN(values[0] * values[1] *
sizeof(
unsigned int),
"prv_rect");
893 prv_img->
w[
size] = values[0];
894 prv_img->
h[
size] = values[1];
900 static int rna_ImagePreview_pixels_get_length(
PointerRNA *
ptr,
929 memcpy(values, prv_img->
rect[
size], prv_img->
w[
size] * prv_img->
h[
size] *
sizeof(
unsigned int));
941 memcpy(prv_img->
rect[
size], values, prv_img->
w[
size] * prv_img->
h[
size] *
sizeof(
unsigned int));
945 static int rna_ImagePreview_pixels_float_get_length(
PointerRNA *
ptr,
970 unsigned char *
data = (
unsigned char *)prv_img->
rect[
size];
982 for (i = 0; i <
len; i++) {
983 values[i] =
data[i] * (1.0f / 255.0f);
987 static void rna_ImagePreview_pixels_float_set(
PointerRNA *
ptr,
994 unsigned char *
data = (
unsigned char *)prv_img->
rect[
size];
1004 for (i = 0; i <
len; i++) {
1010 static void rna_ImagePreview_is_image_custom_set(
PointerRNA *
ptr,
bool value)
1015 static void rna_ImagePreview_image_size_get(
PointerRNA *
ptr,
int *values)
1020 static void rna_ImagePreview_image_size_set(
PointerRNA *
ptr,
const int *values)
1025 static int rna_ImagePreview_image_pixels_get_length(
PointerRNA *
ptr,
1031 static void rna_ImagePreview_image_pixels_get(
PointerRNA *
ptr,
int *values)
1036 static void rna_ImagePreview_image_pixels_set(
PointerRNA *
ptr,
const int *values)
1041 static int rna_ImagePreview_image_pixels_float_get_length(
PointerRNA *
ptr,
1047 static void rna_ImagePreview_image_pixels_float_get(
PointerRNA *
ptr,
float *values)
1052 static void rna_ImagePreview_image_pixels_float_set(
PointerRNA *
ptr,
const float *values)
1057 static void rna_ImagePreview_is_icon_custom_set(
PointerRNA *
ptr,
bool value)
1062 static void rna_ImagePreview_icon_size_get(
PointerRNA *
ptr,
int *values)
1067 static void rna_ImagePreview_icon_size_set(
PointerRNA *
ptr,
const int *values)
1072 static int rna_ImagePreview_icon_pixels_get_length(
PointerRNA *
ptr,
1078 static void rna_ImagePreview_icon_pixels_get(
PointerRNA *
ptr,
int *values)
1083 static void rna_ImagePreview_icon_pixels_set(
PointerRNA *
ptr,
const int *values)
1088 static int rna_ImagePreview_icon_pixels_float_get_length(
PointerRNA *
ptr,
1094 static void rna_ImagePreview_icon_pixels_float_get(
PointerRNA *
ptr,
float *values)
1099 static void rna_ImagePreview_icon_pixels_float_set(
PointerRNA *
ptr,
const float *values)
1110 static void rna_ImagePreview_icon_reload(
PreviewImage *prv)
1135 static void rna_Library_version_get(
PointerRNA *
ptr,
int *value)
1138 value[0] =
lib->versionfile / 100;
1139 value[1] =
lib->versionfile % 100;
1140 value[2] =
lib->subversionfile;
1155 srna,
"ID Property",
"Property that stores arbitrary, user defined properties");
1198 "rna_IDPArray_begin",
1199 "rna_iterator_array_next",
1200 "rna_iterator_array_end",
1201 "rna_iterator_array_get",
1202 "rna_IDPArray_length",
1230 srna,
"rna_PropertyGroup_register",
"rna_PropertyGroup_unregister",
NULL);
1257 parm =
RNA_def_pointer(func,
"material",
"Material",
"",
"Material to add");
1265 parm =
RNA_def_pointer(func,
"material",
"Material",
"",
"Material to remove");
1288 "True if this preview image has been modified by py script,"
1289 "and is no more auto-generated by Blender");
1292 srna,
"image_size", 2,
NULL, 0, 0,
"Image Size",
"Width and height in pixels", 0, 0);
1295 prop,
"rna_ImagePreview_image_size_get",
"rna_ImagePreview_image_size_set",
NULL);
1303 prop,
"rna_ImagePreview_image_pixels_get",
"rna_ImagePreview_image_pixels_set",
NULL);
1309 prop,
"Float Image Pixels",
"Image pixels components, as floats (RGBA concatenated values)");
1312 "rna_ImagePreview_image_pixels_float_get",
1313 "rna_ImagePreview_image_pixels_float_set",
1321 "True if this preview icon has been modified by py script,"
1322 "and is no more auto-generated by Blender");
1325 srna,
"icon_size", 2,
NULL, 0, 0,
"Icon Size",
"Width and height in pixels", 0, 0);
1328 prop,
"rna_ImagePreview_icon_size_get",
"rna_ImagePreview_icon_size_set",
NULL);
1336 prop,
"rna_ImagePreview_icon_pixels_get",
"rna_ImagePreview_icon_pixels_set",
NULL);
1342 prop,
"Float Icon Pixels",
"Icon pixels components, as floats (RGBA concatenated values)");
1345 "rna_ImagePreview_icon_pixels_float_get",
1346 "rna_ImagePreview_icon_pixels_float_set",
1355 "Unique integer identifying this preview as an icon (zero means invalid)",
1375 "For templates, prevents the user from removing predefined operation (NOT USED)"},
1380 "Prevents the user from modifying that override operation (NOT USED)"},
1386 "ID Library Override Property Operation",
1387 "Description of an override operation over an overridden property");
1394 "What override operation is performed");
1398 srna,
"flag", override_library_property_flag_items, 0,
"Flags",
"Optional flags (NOT USED)");
1402 "subitem_reference_name",
1405 "Subitem Reference Name",
1406 "Used to handle insertions into collection");
1409 "rna_ID_override_library_property_operation_refname_get",
1410 "rna_ID_override_library_property_operation_refname_length",
1414 "subitem_local_name",
1417 "Subitem Local Name",
1418 "Used to handle insertions into collection");
1421 "rna_ID_override_library_property_operation_locname_get",
1422 "rna_ID_override_library_property_operation_locname_length",
1426 "subitem_reference_index",
1430 "Subitem Reference Index",
1431 "Used to handle insertions into collection",
1437 "subitem_local_index",
1441 "Subitem Local Index",
1442 "Used to handle insertions into collection",
1460 func =
RNA_def_function(srna,
"add",
"rna_ID_override_library_property_operations_add");
1468 "What override operation is performed");
1471 "subitem_reference_name",
1474 "Subitem Reference Name",
1475 "Used to handle insertions into collection");
1477 "subitem_local_name",
1480 "Subitem Local Name",
1481 "Used to handle insertions into collection");
1483 "subitem_reference_index",
1487 "Subitem Reference Index",
1488 "Used to handle insertions into collection",
1492 "subitem_local_index",
1496 "Subitem Local Index",
1497 "Used to handle insertions into collection",
1502 "IDOverrideLibraryPropertyOperation",
1504 "Created operation");
1515 srna,
"ID Library Override Property",
"Description of an overridden property");
1524 "RNA path leading to that property, from owning ID");
1529 "IDOverrideLibraryPropertyOperation",
1531 "List of overriding operations for a property");
1549 func =
RNA_def_function(srna,
"add",
"rna_ID_override_library_properties_add");
1551 func,
"Add a property to the override library when it doesn't exist yet");
1555 "IDOverrideLibraryProperty",
1557 "Newly created override property or existing one");
1560 func,
"rna_path",
NULL, 256,
"RNA Path",
"RNA-Path of the property to add");
1571 srna,
"ID Library Override",
"Struct gathering all data needed by overridden linked IDs");
1574 srna,
"reference",
"ID",
"Reference ID",
"Linked ID used as reference by this override");
1578 "IDOverrideLibraryProperty",
1580 "List of overridden properties");
1603 "Base type for data-blocks, defining a unique name, linking from other libraries "
1604 "and garbage collection");
1620 prop,
"Full Name",
"Unique data-block ID name, including library one is any");
1629 "Whether this ID is runtime-only, evaluated data-block, or actual data from .blend file");
1638 "Actual data-block from .blend file (Main database) that generated that evaluated one");
1661 "This data-block is not an independent one, but is actually a sub-data of another ID "
1662 "(typical example: root node trees or master collections)");
1669 "Tools can use this to tag data for their own purposes "
1670 "(initial state is undefined)");
1689 srna,
"override_library",
"IDOverrideLibrary",
"Library Override",
"Library override data");
1697 "Preview image and icon of this data-block (None if not supported for this type of data)");
1705 func,
"Get corresponding evaluated ID from the given dependency graph");
1707 func,
"depsgraph",
"Depsgraph",
"",
"Dependency graph to perform lookup in");
1714 func,
"Create a copy of this data-block (not supported for all data-blocks)");
1719 func =
RNA_def_function(srna,
"override_create",
"rna_ID_override_create");
1721 "Create an overridden local copy of this linked data-block (not "
1722 "supported for all data-blocks)");
1724 parm =
RNA_def_pointer(func,
"id",
"ID",
"",
"New overridden local copy of the ID");
1727 "remap_local_usages",
1730 "Whether local usages of the linked ID should be remapped to the new "
1731 "library override of it");
1733 func =
RNA_def_function(srna,
"override_template_create",
"rna_ID_override_template_create");
1739 "Clear the user count of a data-block so its not saved, "
1740 "on reload the data will be removed");
1744 func,
"Replace all usage in the .blend file of this ID by new given one");
1752 "Make this datablock local, return local one "
1753 "(may be a copy of the original, in case it is also indirectly used)");
1760 "Whether to clear proxies (the default behavior, "
1761 "note that if object has to be duplicated to be made local, proxies are always cleared)");
1762 parm =
RNA_def_pointer(func,
"id",
"ID",
"",
"This ID, or the new ID if it was copied");
1767 "Count the number of times that ID uses/references given one");
1776 "Number of usages/references of given id by current data-block",
1781 func =
RNA_def_function(srna,
"animation_data_create",
"rna_ID_animation_data_create");
1784 func,
"Create animation data to this ID, note that not all ID types support this");
1785 parm =
RNA_def_pointer(func,
"anim_data",
"AnimData",
"",
"New animation data or NULL");
1788 func =
RNA_def_function(srna,
"animation_data_clear",
"rna_ID_animation_data_free");
1795 "Tag the ID to update its display data, "
1796 "e.g. when calling :class:`bpy.types.Scene.update`");
1797 RNA_def_enum_flag(func,
"refresh", update_flag_items, 0,
"",
"Type of updates to perform");
1835 "Version of Blender the library .blend was saved with",
1867 srna,
"Unknown Type",
"Stub RNA type used for pointers to unknown or internal data");
bool id_can_have_animdata(const struct ID *id)
void BKE_animdata_free(struct ID *id, const bool do_id_user)
struct AnimData * BKE_animdata_add_id(struct ID *id)
bool BKE_vfont_is_builtin(struct VFont *vfont)
bool BKE_vfont_to_curve(struct Object *ob, int mode)
struct PreviewImage * BKE_previewimg_id_ensure(struct ID *id)
void BKE_previewimg_ensure(struct PreviewImage *prv, const int size)
void BKE_previewimg_clear(struct PreviewImage *prv)
void BKE_previewimg_clear_single(struct PreviewImage *prv, enum eIconSizes size)
int BKE_icon_preview_ensure(struct ID *id, struct PreviewImage *preview)
#define IDP_IDPArray(prop)
struct IDProperty * IDP_GetProperties(struct ID *id, const bool create_if_needed) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
struct ID * BKE_id_copy(struct Main *bmain, const struct ID *id)
void id_us_min(struct ID *id)
void BKE_main_id_tag_all(struct Main *mainvar, const int tag, const bool value)
void id_fake_user_set(struct ID *id)
bool BKE_lib_id_make_local(struct Main *bmain, struct ID *id, const bool test, const int flags)
@ LIB_ID_MAKELOCAL_OBJECT_NO_PROXY_CLEARING
bool BKE_id_is_in_global_main(struct ID *id)
void BKE_id_full_name_get(char name[MAX_ID_FULL_NAME], const struct ID *id, char separator_char)
void BKE_id_clear_newpoin(struct ID *id)
void BLI_libblock_ensure_unique_name(struct Main *bmain, const char *name) ATTR_NONNULL()
void id_fake_user_clear(struct ID *id)
struct IDOverrideLibraryProperty * BKE_lib_override_library_property_get(struct IDOverrideLibrary *override, const char *rna_path, bool *r_created)
struct ID * BKE_lib_override_library_create_from_id(struct Main *bmain, struct ID *reference_id, const bool do_tagged_remap)
bool BKE_lib_override_library_template_create(struct ID *id)
struct IDOverrideLibraryPropertyOperation * BKE_lib_override_library_property_operation_get(struct IDOverrideLibraryProperty *override_property, const short operation, const char *subitem_refname, const char *subitem_locname, const int subitem_refindex, const int subitem_locindex, const bool strict, bool *r_strict, bool *r_created)
void void BKE_libblock_remap(struct Main *bmain, void *old_idv, void *new_idv, const short remap_flags) ATTR_NONNULL(1
@ ID_REMAP_SKIP_NEVER_NULL_USAGE
@ ID_REMAP_SKIP_INDIRECT_USAGE
void BKE_library_filepath_set(struct Main *bmain, struct Library *lib, const char *filepath)
General operations, lookup, etc. for materials.
void BKE_id_material_assign(struct Main *bmain, struct ID *id, struct Material *ma, short act)
void BKE_id_material_append(struct Main *bmain, struct ID *id, struct Material *ma)
short * BKE_id_material_len_p(struct ID *id)
struct Material * BKE_id_material_pop(struct Main *bmain, struct ID *id, int index)
void BKE_id_material_clear(struct Main *bmain, struct ID *id)
General operations, lookup, etc. for blender objects.
void BKE_report(ReportList *reports, ReportType type, const char *message)
void BKE_reportf(ReportList *reports, ReportType type, const char *format,...) ATTR_PRINTF_FORMAT(3
void BLI_kdtree_nd_() free(KDTree *tree)
size_t BLI_strnlen(const char *str, const size_t maxlen) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL()
char * BLI_strncpy(char *__restrict dst, const char *__restrict src, const size_t maxncpy) ATTR_NONNULL()
char * BLI_strncpy_utf8(char *__restrict dst, const char *__restrict src, size_t maxncpy) ATTR_NONNULL()
struct Depsgraph Depsgraph
void DEG_id_tag_update_ex(struct Main *bmain, struct ID *id, int flag)
void DEG_id_tag_update(struct ID *id, int flag)
void DEG_relations_tag_update(struct Main *bmain)
struct ID * DEG_get_evaluated_id(const struct Depsgraph *depsgraph, struct ID *id)
struct ID * DEG_get_original_id(struct ID *id)
ID and Library types, which are fundamental for sdna.
#define ID_IS_OVERRIDABLE_LIBRARY(_id)
#define ID_IS_LINKED(_id)
@ IDOVERRIDE_LIBRARY_FLAG_LOCKED
@ IDOVERRIDE_LIBRARY_FLAG_MANDATORY
#define ID_IS_OVERRIDE_LIBRARY(_id)
struct IDProperty IDProperty
@ IDOVERRIDE_LIBRARY_OP_MULTIPLY
@ IDOVERRIDE_LIBRARY_OP_INSERT_AFTER
@ IDOVERRIDE_LIBRARY_OP_NOOP
@ IDOVERRIDE_LIBRARY_OP_SUBTRACT
@ IDOVERRIDE_LIBRARY_OP_ADD
@ IDOVERRIDE_LIBRARY_OP_INSERT_BEFORE
@ IDOVERRIDE_LIBRARY_OP_REPLACE
Object is a sort of wrapper for general info.
_GL_VOID GLfloat value _GL_VOID_RET _GL_VOID const GLuint GLboolean *residences _GL_BOOL_RET _GL_VOID GLsizei GLfloat GLfloat GLfloat GLfloat const GLubyte *bitmap _GL_VOID_RET _GL_VOID GLenum type
short RNA_type_to_ID_code(const StructRNA *type)
StructRNA RNA_ImagePreview
StructRNA RNA_WindowManager
StructRNA RNA_GreasePencil
StructRNA RNA_FreestyleLineStyle
StructRNA * ID_code_to_RNA_type(short idcode)
StructRNA RNA_ParticleSettings
#define RNA_MAX_ARRAY_DIMENSION
void(* StructFreeFunc)(void *data)
int(* StructValidateFunc)(struct PointerRNA *ptr, void *data, int *have_function)
@ STRUCT_NO_DATABLOCK_IDPROPERTIES
int(* StructCallbackFunc)(struct bContext *C, struct PointerRNA *ptr, struct FunctionRNA *func, ParameterList *list)
@ PROPOVERRIDE_NO_COMPARISON
return(oflags[bm->toolflag_index].f &oflag) !=0
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
SIMD_FORCE_INLINE btScalar length(const btQuaternion &q)
Return the length of a quaternion.
const Depsgraph * depsgraph
void *(* MEM_callocN)(size_t len, const char *str)
MINLINE unsigned char unit_float_to_uchar_clamp(float val)
static void rna_def_ID_override_library(BlenderRNA *brna)
static const EnumPropertyItem rna_enum_override_library_property_operation_items[]
static void rna_def_ID_override_library_property_operation(BlenderRNA *brna)
static void rna_def_ID_override_library_property(BlenderRNA *brna)
const EnumPropertyItem rna_enum_id_type_items[]
static void rna_def_ID_override_library_properties(BlenderRNA *brna, PropertyRNA *cprop)
void RNA_def_ID(BlenderRNA *brna)
static void rna_def_ID(BlenderRNA *brna)
static void rna_def_ID_properties(BlenderRNA *brna)
static void rna_def_idproperty_wrap_ptr(BlenderRNA *brna)
static void rna_def_image_preview(BlenderRNA *brna)
static void rna_def_library(BlenderRNA *brna)
static void rna_def_ID_override_library_property_operations(BlenderRNA *brna, PropertyRNA *cprop)
static void rna_def_ID_materials(BlenderRNA *brna)
const char * RNA_struct_identifier(const StructRNA *type)
void RNA_pointer_create(ID *id, StructRNA *type, void *data, PointerRNA *r_ptr)
void rna_iterator_array_begin(CollectionPropertyIterator *iter, void *ptr, int itemsize, int length, bool free_ptr, IteratorSkipFunc skip)
PointerRNA rna_pointer_inherit_refine(PointerRNA *ptr, StructRNA *type, void *data)
const StructRNA * RNA_struct_base_child_of(const StructRNA *type, const StructRNA *parent_type)
void RNA_def_struct_refine_func(StructRNA *srna, const char *refine)
void RNA_def_property_pointer_sdna(PropertyRNA *prop, const char *structname, const char *propname)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_enum_flag(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
void RNA_def_struct_flag(StructRNA *srna, int flag)
void RNA_def_property_boolean_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t bit)
void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_def_property_ui_text(PropertyRNA *prop, const char *name, const char *description)
void RNA_def_property_string_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_ui_icon(PropertyRNA *prop, int icon, int consecutive)
FunctionRNA * RNA_def_function(StructRNA *srna, const char *identifier, const char *call)
void RNA_def_property_srna(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_funcs(PropertyRNA *prop, const char *begin, const char *next, const char *end, const char *get, const char *length, const char *lookupint, const char *lookupstring, const char *assignint)
void RNA_def_struct_ui_text(StructRNA *srna, const char *name, const char *description)
void RNA_def_property_boolean_funcs(PropertyRNA *prop, const char *get, const char *set)
void RNA_def_struct_register_funcs(StructRNA *srna, const char *reg, const char *unreg, const char *instance)
void RNA_def_property_dynamic_array_funcs(PropertyRNA *prop, const char *getlength)
void RNA_def_property_multi_array(PropertyRNA *prop, int dimension, const int length[])
StructRNA * RNA_def_struct_ptr(BlenderRNA *brna, const char *identifier, StructRNA *srnafrom)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_string_maxlength(PropertyRNA *prop, int maxlength)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_property_update(PropertyRNA *prop, int noteflag, const char *func)
void RNA_def_property_editable_func(PropertyRNA *prop, const char *editable)
PropertyRNA * RNA_def_property(StructOrFunctionRNA *cont_, const char *identifier, int type, int subtype)
PropertyRNA * RNA_def_int_vector(StructOrFunctionRNA *cont_, const char *identifier, int len, const int *default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
void RNA_def_struct_name_property(struct StructRNA *srna, struct PropertyRNA *prop)
void RNA_def_function_flag(FunctionRNA *func, int flag)
void RNA_def_property_clear_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *type_fn, const char *poll)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_def_property_int_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_def_struct_ui_icon(StructRNA *srna, int icon)
void RNA_struct_free(BlenderRNA *brna, StructRNA *srna)
PropertyRNA * RNA_def_string(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
void RNA_def_struct_idprops_func(StructRNA *srna, const char *idproperties)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
PropertyRNA * RNA_def_int(StructOrFunctionRNA *cont_, const char *identifier, int default_value, int hardmin, int hardmax, const char *ui_name, const char *ui_description, int softmin, int softmax)
void RNA_def_property_subtype(PropertyRNA *prop, PropertySubType subtype)
PropertyRNA * RNA_def_collection(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_enum(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_int_sdna(PropertyRNA *prop, const char *structname, const char *propname)
void RNA_def_property_override_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
void RNA_def_parameter_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
void rna_PropertyGroup_unregister(struct Main *bmain, struct StructRNA *type)
void rna_ID_name_set(struct PointerRNA *ptr, const char *value)
int rna_ID_name_length(struct PointerRNA *ptr)
struct StructRNA * rna_PropertyGroup_register(struct Main *bmain, struct ReportList *reports, void *data, const char *identifier, StructValidateFunc validate, StructCallbackFunc call, StructFreeFunc free)
int rna_IDMaterials_assign_int(struct PointerRNA *ptr, int key, const struct PointerRNA *assign_ptr)
struct IDProperty * rna_ID_idprops(struct PointerRNA *ptr, bool create)
struct StructRNA * rna_ID_refine(struct PointerRNA *ptr)
struct StructRNA * rna_PropertyGroup_refine(struct PointerRNA *ptr)
StructRNA RNA_PropertyGroup
void rna_ID_name_get(struct PointerRNA *ptr, char *value)
void rna_ID_fake_user_set(struct PointerRNA *ptr, bool value)
void ** rna_ID_instance(PointerRNA *ptr)
struct IDProperty * rna_PropertyGroup_idprops(struct PointerRNA *ptr, bool create)
char * subitem_local_name
char * subitem_reference_name
void WM_main_add_notifier(unsigned int type, void *reference)