38 # define ASSERT_SOFT_HARD_LIMITS \
39 if (softmin < hardmin || softmax > hardmax) { \
40 CLOG_ERROR(&LOG, "error with soft/hard limits: %s.%s", CONTAINER_RNA_ID(cont), identifier); \
41 BLI_assert_msg(0, "invalid soft/hard limits"); \
45 # define ASSERT_SOFT_HARD_LIMITS (void)0
60 .make_overridable =
false,
79 "dna_type=%s, dna_offset=%d, dna_struct=%s, dna_name=%s, id=%s\n",
92 # define DESCR_CHECK(description, id1, id2) \
93 if (description && (description)[0]) { \
94 int i = strlen(description); \
95 if (i > 3 && (description)[i - 1] == '.' && (description)[i - 3] != '.') { \
97 "'%s' description from '%s' '%s' ends with a '.' !", \
106 # define DESCR_CHECK(description, id1, id2)
116 if (listbase->
last) {
117 ((
Link *)listbase->
last)->next = link;
120 listbase->
first = link;
122 listbase->
last = link;
136 if (listbase->
last == link) {
139 if (listbase->
first == link) {
148 for (link = listbase->
first; link; link = link->
next) {
168 for (link = listbase->
first; link; link =
next) {
214 g_version_data.struct_map_static_from_alias, struct_name, (
void *)struct_name);
230 for (; dsrna; dsrna = dsrna->
cont.
prev) {
231 if (dsrna->
srna == srna) {
252 for (; dprop; dprop = dprop->
prev) {
253 if (dprop->
prop == prop) {
259 for (; dsrna; dsrna = dsrna->
cont.
prev) {
261 for (; dprop; dprop = dprop->
prev) {
262 if (dprop->
prop == prop) {
309 for (; dfunc; dfunc = dfunc->
cont.
prev) {
310 if (dfunc->
func == func) {
316 for (; dsrna; dsrna = dsrna->
cont.
prev) {
318 for (; dfunc; dfunc = dfunc->
cont.
prev) {
319 if (dfunc->
func == func) {
342 for (; dfunc; dfunc = dfunc->
cont.
prev) {
344 for (; dparm; dparm = dparm->
prev) {
345 if (dparm->
prop == parm) {
352 for (; dsrna; dsrna = dsrna->
cont.
prev) {
354 for (; dfunc; dfunc = dfunc->
cont.
prev) {
356 for (; dparm; dparm = dparm->
prev) {
357 if (dparm->
prop == parm) {
407 while (name[0] ==
'*') {
410 while (oname[0] ==
'*') {
415 if (name[
a] ==
'[' && oname[
a] == 0) {
418 if (name[
a] ==
'[' && oname[
a] ==
'[') {
424 if (name[
a] != oname[
a]) {
429 if (name[
a] == 0 && oname[
a] ==
'.') {
432 if (name[
a] == 0 && oname[
a] ==
'-' && oname[
a + 1] ==
'>') {
436 return (name[
a] == oname[
a]);
440 const char *structname,
441 const char *membername,
446 int b, structnr, cmp;
455 if (structnr == -1) {
471 smember->
name = dnaname;
475 if (strstr(membername,
"[")) {
483 for (
b = 0; dnaname[
b] ==
'*';
b++) {
491 smember->
name = dnaname;
497 membername = strstr(membername,
".") + strlen(
".");
504 smember->
name = dnaname;
513 membername = strstr(membername,
"->") + strlen(
"->");
539 static const char *kwlist[] = {
541 "and",
"as",
"assert",
"async",
"await",
"break",
"class",
"continue",
"def",
542 "del",
"elif",
"else",
"except",
"finally",
"for",
"from",
"global",
"if",
543 "import",
"in",
"is",
"lambda",
"nonlocal",
"not",
"or",
"pass",
"raise",
544 "return",
"try",
"while",
"with",
"yield",
NULL,
547 if (!isalpha(identifier[0])) {
548 strcpy(
error,
"first character failed isalpha() check");
552 for (
a = 0; identifier[
a];
a++) {
554 if (isalpha(identifier[
a]) && isupper(identifier[
a])) {
555 strcpy(
error,
"property names must contain lower case characters only");
560 if (identifier[
a] ==
'_') {
564 if (identifier[
a] ==
' ') {
565 strcpy(
error,
"spaces are not okay in identifier names");
569 if (isalnum(identifier[
a]) == 0) {
570 strcpy(
error,
"one of the characters failed an isalnum() check and is not an underscore");
575 for (
a = 0; kwlist[
a];
a++) {
576 if (
STREQ(identifier, kwlist[
a])) {
577 strcpy(
error,
"this keyword is reserved by python");
583 static const char *kwlist_prop[] = {
592 for (
a = 0; kwlist_prop[
a];
a++) {
593 if (
STREQ(identifier, kwlist_prop[
a])) {
594 strcpy(
error,
"this keyword is reserved by python");
608 static const char *kwlist[] = {
610 "and",
"as",
"assert",
"break",
"class",
"continue",
"def",
"del",
611 "elif",
"else",
"except",
"finally",
"for",
"from",
"global",
"if",
612 "import",
"in",
"is",
"lambda",
"nonlocal",
"not",
"or",
"pass",
613 "raise",
"return",
"try",
"while",
"with",
"yield",
NULL,
616 if (!isalpha(identifier[0])) {
621 for (
a = 0; identifier[
a];
a++) {
623 if (isalpha(identifier[
a]) && isupper(identifier[
a])) {
625 identifier[
a] = tolower(identifier[
a]);
629 if (identifier[
a] ==
'_') {
633 if (identifier[
a] ==
' ') {
638 if (isalnum(identifier[
a]) == 0) {
644 for (
a = 0; kwlist[
a];
a++) {
645 if (
STREQ(identifier, kwlist[
a])) {
649 identifier[strlen(identifier) - 1] =
'_';
655 static const char *kwlist_prop[] = {
664 for (
a = 0; kwlist_prop[
a];
a++) {
665 if (
STREQ(identifier, kwlist_prop[
a])) {
669 identifier[strlen(identifier) - 1] =
'_';
683 const char *error_message =
NULL;
693 CLOG_ERROR(&
LOG,
"Failed to decode SDNA: %s.", error_message);
787 fprintf(stderr,
"%s '%s' freed while holding a python reference.", srna->
identifier);
793 nextprop = prop->
next;
806 nextparm = parm->
next;
822 rna_brna_structs_remove_and_free(brna, srna);
853 for (srna = brna->
structs.
first; srna; srna = nextsrna) {
892 if (ds->
srna == srna) {
921 memcpy(srna, srnafrom,
sizeof(
StructRNA));
927 srna->
base = srnafrom;
943 srna->
name = identifier;
948 srna->
icon = ICON_DOT;
989 "rna_builtin_properties_begin",
990 "rna_builtin_properties_next",
991 "rna_iterator_listbase_end",
992 "rna_builtin_properties_get",
995 "rna_builtin_properties_lookup_string",
1020 pprop->
type = &RNA_Struct;
1087 CLOG_ERROR(&
LOG,
"%s base struct must know DNA already.", structname);
1140 srna->
flag &= ~flag;
1218 if (identifier[0] !=
'\0') {
1258 const char *identifier,
1293 "runtime property identifier \"%s.%s\" - %s",
1309 "subtype does not apply to 'PROP_BOOLEAN' \"%s.%s\"",
1322 "subtype does not apply to 'PROP_INT' \"%s.%s\"",
1387 prop->
name = identifier;
1497 prop->
flag &= ~flag;
1522 prop->
flag |= flag_property;
1530 prop->
flag &= ~flag_property;
1545 "\"%s.%s\", array length must be zero of greater.",
1554 "\"%s.%s\", array length must be smaller than %d.",
1564 "\"%s.%s\", array dimensions has been set to %u but would be overwritten as 1.",
1572 switch (prop->
type) {
1582 "\"%s.%s\", only boolean/int/float can be array.",
1605 "\"%s.%s\", array dimension must be between 1 and %d.",
1613 switch (prop->
type) {
1620 "\"%s.%s\", only boolean/int/float can be array.",
1634 for (i = 1; i < dimension; i++) {
1656 if (consecutive != 0) {
1659 if (consecutive < 0) {
1675 if (step < 0 || step > 100) {
1691 switch (prop->
type) {
1696 iprop->
step = (int)step;
1719 switch (prop->
type) {
1748 switch (prop->
type) {
1781 switch (prop->
type) {
1812 switch (prop->
type) {
1822 "\"%s.%s\", this struct type (probably an Operator, Keymap or UserPreference) "
1823 "does not accept ID pointer properties.",
1843 "\"%s.%s\", invalid type for struct type.",
1858 switch (prop->
type) {
1875 int i, defaultfound = 0;
1877 switch (prop->
type) {
1885 if (item[i].identifier[0]) {
1889 "\"%s.%s\", enum identifiers must not contain spaces.",
1901 if (!defaultfound) {
1903 if (item[i].identifier[0]) {
1924 switch (prop->
type) {
1941 switch (prop->
type) {
1965 switch (prop->
type) {
1982 switch (prop->
type) {
2004 switch (prop->
type) {
2026 switch (prop->
type) {
2047 switch (prop->
type) {
2069 switch (prop->
type) {
2073 if (value ==
NULL) {
2075 "\"%s.%s\", NULL string passed (don't call in this case).",
2084 "\"%s.%s\", empty string passed (don't call in this case).",
2109 int i, defaultfound = 0;
2111 switch (prop->
type) {
2119 for (i = 0; i < eprop->
totitem; i++) {
2127 "\"%s.%s\", default includes unused bits (%d).",
2135 for (i = 0; i < eprop->
totitem; i++) {
2141 if (!defaultfound && eprop->
totitem) {
2165 const char *structname,
2166 const char *propname)
2205 "\"%s.%s\" (identifier \"%s\") not found. Struct must be in DNA.",
2237 const char *structname,
2238 const char *propname,
2262 "%s.%s is a '%s' but wrapped as type '%s'.",
2282 bool has_default =
true;
2284 has_default =
false;
2286 fprintf(stderr,
"%s default: unsupported boolean array default\n", __func__);
2291 bprop->
defaultvalue = *(
const char *)default_data & bit;
2294 bprop->
defaultvalue = *(
const short *)default_data & bit;
2297 bprop->
defaultvalue = *(
const int *)default_data & bit;
2300 has_default =
false;
2303 stderr,
"%s default: unsupported boolean type (%s)\n", __func__, dp->
dnatype);
2328 const char *structname,
2329 const char *propname,
2366 "%s.%s is a '%s' but wrapped as type '%s'.",
2411 bool has_default =
true;
2417 for (
int i = 0; i < prop->
totarraylength && default_data < default_data_end; i++) {
2418 defaultarray[i] = *(
const char *)default_data;
2426 for (
int i = 0; i < prop->
totarraylength && default_data < default_data_end; i++) {
2428 *(
const ushort *)default_data;
2435 memcpy(defaultarray, default_data,
MIN2(size_final, dp->
dnasize));
2439 has_default =
false;
2442 "%s default: unsupported int array type (%s)\n",
2450 fprintf(stderr,
"value=(");
2454 fprintf(stderr,
"), ");
2465 *(
const short *)default_data :
2466 *(
const ushort *)default_data;
2470 *(
const uint *)default_data;
2473 has_default =
false;
2475 fprintf(stderr,
"%s default: unsupported int type (%s)\n", __func__, dp->
dnatype);
2517 "%s.%s is a '%s' but wrapped as type '%s'.",
2541 bool has_default =
true;
2545 float *defaultarray =
rna_calloc(size_final);
2546 memcpy(defaultarray, default_data,
MIN2(size_final, dp->
dnasize));
2550 has_default =
false;
2553 "%s default: unsupported float array type (%s)\n",
2561 fprintf(stderr,
"value=(");
2565 fprintf(stderr,
"), ");
2578 has_default =
false;
2581 stderr,
"%s default: unsupported float type (%s)\n", __func__, dp->
dnatype);
2624 CLOG_ERROR(&
LOG,
"\"%s.%s\", array not supported for enum type.", structname, propname);
2637 bool has_default =
true;
2648 has_default =
false;
2650 fprintf(stderr,
"%s default: unsupported enum type (%s)\n", __func__, dp->
dnatype);
2670 const char *structname,
2671 const char *propname)
2683 int defaultvalue_mask = 0;
2685 for (
int i = 0; i < eprop->
totitem; i++) {
2730 fprintf(stderr,
"value=\"%s\", ", sprop->
defaultvalue);
2762 CLOG_ERROR(&
LOG,
"\"%s.%s\", array not supported for pointer type.", structname, propname);
2770 const char *structname,
2771 const char *propname,
2772 const char *lengthpropname)
2795 CLOG_ERROR(&
LOG,
"\"%s.%s\", array of collections not supported.", structname, propname);
2807 if (dp && lengthpropname) {
2816 if (lengthpropname[0] == 0 ||
2818 if (lengthpropname[0] == 0) {
2841 CLOG_ERROR(&
LOG,
"\"%s.%s\" not found.", structname, lengthpropname);
2913 prop->
update = (
void *)func;
2953 switch (prop->
type) {
2995 if (getfunc || setfunc) {
3018 if (getfunc || setfunc) {
3040 switch (prop->
type) {
3089 if (getfunc || setfunc) {
3116 if (getfunc || setfunc) {
3138 switch (prop->
type) {
3187 if (getfunc || setfunc) {
3214 if (getfunc || setfunc) {
3236 switch (prop->
type) {
3275 if (getfunc || setfunc) {
3297 switch (prop->
type) {
3330 switch (prop->
type) {
3334 if (search !=
NULL) {
3363 if (getfunc || setfunc) {
3379 sprop->
search = search_fn;
3380 if (search_fn !=
NULL) {
3386 PropertyRNA *prop,
const char *get,
const char *set,
const char *type_fn,
const char *poll)
3395 switch (prop->
type) {
3426 const char *lookupint,
3427 const char *lookupstring,
3428 const char *assignint)
3437 switch (prop->
type) {
3494 const char *identifier,
3496 const char *ui_name,
3497 const char *ui_description)
3510 const char *identifier,
3512 bool *default_value,
3513 const char *ui_name,
3514 const char *ui_description)
3523 if (default_value) {
3532 const char *identifier,
3534 bool *default_value,
3535 const char *ui_name,
3536 const char *ui_description)
3545 if (default_value) {
3554 const char *identifier,
3556 bool *default_value,
3557 const char *ui_name,
3558 const char *ui_description)
3567 if (default_value) {
3576 const char *identifier,
3578 bool *default_value,
3579 const char *ui_name,
3580 const char *ui_description)
3589 if (default_value) {
3598 const char *identifier,
3602 const char *ui_name,
3603 const char *ui_description,
3614 if (hardmin != hardmax) {
3624 const char *identifier,
3626 const int *default_value,
3629 const char *ui_name,
3630 const char *ui_description,
3643 if (default_value) {
3646 if (hardmin != hardmax) {
3656 const char *identifier,
3658 const int *default_value,
3661 const char *ui_name,
3662 const char *ui_description,
3675 if (default_value) {
3678 if (hardmin != hardmax) {
3688 const char *identifier,
3689 const char *default_value,
3691 const char *ui_name,
3692 const char *ui_description)
3703 if (default_value) {
3712 const char *identifier,
3713 const char *default_value,
3715 const char *ui_name,
3716 const char *ui_description)
3727 if (default_value) {
3736 const char *identifier,
3737 const char *default_value,
3739 const char *ui_name,
3740 const char *ui_description)
3751 if (default_value) {
3760 const char *identifier,
3761 const char *default_value,
3763 const char *ui_name,
3764 const char *ui_description)
3775 if (default_value) {
3784 const char *identifier,
3787 const char *ui_name,
3788 const char *ui_description)
3793 if (items ==
NULL) {
3807 const char *identifier,
3810 const char *ui_name,
3811 const char *ui_description)
3816 if (items ==
NULL) {
3837 const char *identifier,
3838 float default_value,
3841 const char *ui_name,
3842 const char *ui_description,
3853 if (hardmin != hardmax) {
3863 const char *identifier,
3865 const float *default_value,
3868 const char *ui_name,
3869 const char *ui_description,
3882 if (default_value) {
3885 if (hardmin != hardmax) {
3895 const char *identifier,
3897 const float *default_value,
3900 const char *ui_name,
3901 const char *ui_description,
3923 const char *identifier,
3925 const float *default_value,
3928 const char *ui_name,
3929 const char *ui_description,
3942 if (default_value) {
3945 if (hardmin != hardmax) {
3955 const char *identifier,
3958 const float *default_value,
3961 const char *ui_name,
3962 const char *ui_description,
3968 const int length[2] = {rows, columns};
3974 if (default_value) {
3977 if (hardmin != hardmax) {
3987 const char *identifier,
3989 const float *default_value,
3992 const char *ui_name,
3993 const char *ui_description,
4017 const char *identifier,
4019 const float *default_value,
4022 const char *ui_name,
4023 const char *ui_description,
4035 if (default_value) {
4043 if (hardmin != hardmax) {
4053 const char *identifier,
4054 float default_value,
4057 const char *ui_name,
4058 const char *ui_description,
4077 const char *identifier,
4079 const float *default_value,
4082 const char *ui_name,
4083 const char *ui_description,
4096 if (default_value) {
4099 if (hardmin != hardmax) {
4109 const char *identifier,
4110 float default_value,
4113 const char *ui_name,
4114 const char *ui_description,
4125 if (hardmax < 2.0f) {
4127 "Percentage property with incorrect range: %s.%s",
4135 if (hardmin != hardmax) {
4145 const char *identifier,
4146 float default_value,
4149 const char *ui_name,
4150 const char *ui_description,
4161 if (hardmin != hardmax) {
4171 const char *identifier,
4173 const char *ui_name,
4174 const char *ui_description)
4187 const char *identifier,
4189 const char *ui_name,
4190 const char *ui_description)
4206 const char *identifier,
4208 const char *ui_name,
4209 const char *ui_description)
4222 const char *identifier,
4224 const char *ui_name,
4225 const char *ui_description)
4316 "\"%s.%s\", dynamic values are not allowed as strict returns, "
4317 "use RNA_def_function_output instead.",
4322 if (
ret->arraydimension) {
4324 "\"%s.%s\", arrays are not allowed as strict returns, "
4325 "use RNA_def_function_output instead.",
4367 return sizeof(int) *
len;
4377 return sizeof(
bool);
4382 return sizeof(
float);
4390 return sizeof(
char *);
4403 return sizeof(
void *);
4412 return sizeof(
void *);
4421 return sizeof(
void *);
4430 const int alignment =
sizeof(
void *);
4431 return (
size + alignment - 1) & ~(alignment - 1);
4447 else if (tot >= 8 && (tot & (tot - 1)) == 0) {
4455 (*items)[tot] = *item;
4478 if (item->
value == value) {
4582 switch (prop->
type) {
4608 "RNA_def_property_store");
4613 if (
array[
a].identifier) {
4619 if (
array[
a].description) {
4660 g_py_data_clear_fn = py_data_clear_fn;
4668 if (g_py_data_clear_fn) {
4669 g_py_data_clear_fn(prop);
4685 switch (prop->
type) {
4771 PropertyRNA *prop = rna_def_property_find_py_id(cont, identifier);
4774 rna_def_property_free(cont, prop);
4785 const char *identifier,
4789 PropertyRNA *prop = rna_def_property_find_py_id(cont, identifier);
4808 rna_def_property_free(cont, prop);
4817 return "PROP_BOOLEAN";
4821 return "PROP_FLOAT";
4823 return "PROP_STRING";
4827 return "PROP_POINTER";
4829 return "PROP_COLLECTION";
4832 return "PROP_UNKNOWN";
typedef float(TangentPoint)[2]
#define BLI_assert_unreachable()
GHash * BLI_ghash_str_new_ex(const char *info, unsigned int nentries_reserve) ATTR_MALLOC ATTR_WARN_UNUSED_RESULT
bool BLI_ghash_reinsert(GHash *gh, void *key, void *val, GHashKeyFreeFP keyfreefp, GHashValFreeFP valfreefp)
void * BLI_ghash_lookup(const GHash *gh, const void *key) ATTR_WARN_UNUSED_RESULT
void * BLI_ghash_lookup_default(const GHash *gh, const void *key, void *val_default) ATTR_WARN_UNUSED_RESULT
void * BLI_ghash_replace_key(GHash *gh, void *key)
bool BLI_ghash_remove(GHash *gh, const void *key, GHashKeyFreeFP keyfreefp, GHashValFreeFP valfreefp)
void BLI_ghash_insert(GHash *gh, void *key, void *val)
void BLI_ghash_free(GHash *gh, GHashKeyFreeFP keyfreefp, GHashValFreeFP valfreefp)
void * BLI_findstring_ptr(const struct ListBase *listbase, const char *id, int offset) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
BLI_INLINE void BLI_listbase_clear(struct ListBase *lb)
int BLI_findindex(const struct ListBase *listbase, const void *vlink) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1)
char * BLI_strdup(const char *str) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL() ATTR_MALLOC
#define POINTER_OFFSET(v, ofs)
#define BLT_I18NCONTEXT_DEFAULT_BPYRNA
#define CLOG_ERROR(clg_ref,...)
#define CLOG_WARN(clg_ref,...)
const void * DNA_default_table[SDNA_TYPE_MAX]
blenloader genfile private function prototypes
void DNA_sdna_free(struct SDNA *sdna)
const unsigned char DNAstr[]
struct SDNA * DNA_sdna_from_data(const void *data, int data_len, bool do_endian_swap, bool data_alloc, const char **r_error_message)
int DNA_elem_size_nr(const struct SDNA *sdna, short type, short name)
void DNA_sdna_alias_data_ensure(struct SDNA *sdna)
int DNA_struct_find_nr(const struct SDNA *sdna, const char *str)
_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
Read Guarded memory(de)allocation.
in reality light always falls off quadratically Particle Retrieve the data of the particle that spawned the object instance
int RNA_def_property_free_identifier(StructOrFunctionRNA *cont_, const char *identifier)
void RNA_def_struct_free_pointers(BlenderRNA *brna, StructRNA *srna)
#define IS_DNATYPE_BOOLEAN_COMPAT(_str)
void RNA_def_property_duplicate_pointers(StructOrFunctionRNA *cont_, PropertyRNA *prop)
void RNA_def_property_free_pointers_set_py_data_callback(void(*py_data_clear_fn)(PropertyRNA *prop))
#define IS_DNATYPE_FLOAT_COMPAT(_str)
void RNA_def_property_free_identifier_deferred_finish(StructOrFunctionRNA *cont_, void *handle)
#define IS_DNATYPE_INT_COMPAT(_str)
void RNA_def_func_duplicate_pointers(FunctionRNA *func)
#define RNA_MAX_ARRAY_LENGTH
void RNA_def_struct_duplicate_pointers(BlenderRNA *brna, StructRNA *srna)
void RNA_def_property_free_pointers(PropertyRNA *prop)
void RNA_def_func_free_pointers(FunctionRNA *func)
int RNA_def_property_free_identifier_deferred_prepare(StructOrFunctionRNA *cont_, const char *identifier, void **handle)
#define RNA_MAX_ARRAY_DIMENSION
struct StructRNA *(* StructRegisterFunc)(struct Main *bmain, struct ReportList *reports, void *data, const char *identifier, StructValidateFunc validate, StructCallbackFunc call, StructFreeFunc free)
int(* EnumPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop)
float(* FloatPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop)
@ STRUCT_PUBLIC_NAMESPACE
@ STRUCT_NO_DATABLOCK_IDPROPERTIES
@ STRUCT_PUBLIC_NAMESPACE_INHERIT
void **(* StructInstanceFunc)(PointerRNA *ptr)
void(* IntPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, int value)
void(* EnumPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, int value)
void(* IntPropertyRangeFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, int *min, int *max, int *softmin, int *softmax)
void(* StringPropertySearchFunc)(const struct bContext *C, struct PointerRNA *ptr, struct PropertyRNA *prop, const char *edit_text, StringPropertySearchVisitFunc visit_fn, void *visit_user_data)
void(* IntArrayPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, int *values)
eStringPropertySearchFlag
@ PROP_STRING_SEARCH_SUPPORTED
void(* FloatPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, float value)
#define RNA_ENUM_ITEM_SEPR
struct ParameterDynAlloc ParameterDynAlloc
struct PointerRNA PointerRNA
void(* CallFunc)(struct bContext *C, struct ReportList *reports, PointerRNA *ptr, ParameterList *parms)
void(* FloatPropertyRangeFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, float *min, float *max, float *softmin, float *softmax)
#define RNA_TRANSLATION_PREC_DEFAULT
void(* BooleanArrayPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, const bool *values)
void(* FloatArrayPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, const float *values)
bool(* BooleanPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop)
void(* BooleanArrayPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, bool *values)
void(* StringPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, char *value)
void(* StringPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, const char *value)
@ PROPOVERRIDE_OVERRIDABLE_LIBRARY
void(* IntArrayPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, const int *values)
void(* StructUnregisterFunc)(struct Main *bmain, struct StructRNA *type)
int(* StringPropertyLengthFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop)
int(* IntPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop)
const EnumPropertyItem *(* EnumPropertyItemFunc)(struct bContext *C, PointerRNA *ptr, struct PropertyRNA *prop, bool *r_free)
void(* FloatArrayPropertyGetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, float *values)
void(* BooleanPropertySetFunc)(struct PointerRNA *ptr, struct PropertyRNA *prop, bool value)
#define UI_PRECISION_FLOAT_MAX
static DBVT_INLINE btScalar size(const btDbvtVolume &a)
SyclQueue void void size_t num_bytes void
const char * DNA_struct_rename_legacy_hack_static_from_alias(const char *name)
void DNA_alias_maps(enum eDNA_RenameDir version_dir, GHash **r_struct_map, GHash **r_elem_map)
int DNA_elem_array_size(const char *str)
@ DNA_RENAME_STATIC_FROM_ALIAS
ccl_gpu_kernel_postfix ccl_global float int int int int float bool int offset
void * rna_calloc(int buffer_len)
void(* MEM_freeN)(void *vmemh)
void *(* MEM_recallocN_id)(void *vmemh, size_t len, const char *str)
void *(* MEM_callocN)(size_t len, const char *str)
void *(* MEM_mallocN)(size_t len, const char *str)
static void error(const char *str)
IMETHOD Vector diff(const Vector &a, const Vector &b, double dt=1)
T length(const vec_base< T, Size > &a)
static const pxr::TfToken b("b", pxr::TfToken::Immortal)
void RNA_struct_py_type_set(StructRNA *srna, void *py_type)
void RNA_struct_blender_type_set(StructRNA *srna, void *blender_type)
void * RNA_struct_py_type_get(StructRNA *srna)
StructDefRNA * rna_find_struct_def(StructRNA *srna)
PropertyRNA * RNA_def_string_file_name(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
PropertyRNA * RNA_def_float(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_enum_items_add(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item)
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_layer_member(StructOrFunctionRNA *cont_, const char *identifier, int len, bool *default_value, const char *ui_name, const char *ui_description)
void RNA_define_lib_overridable(const bool make_overridable)
void RNA_def_property_struct_runtime(StructOrFunctionRNA *cont, PropertyRNA *prop, StructRNA *type)
void RNA_def_struct_path_func(StructRNA *srna, const char *path)
void RNA_define_animate_sdna(bool animate)
PropertyRNA * RNA_def_boolean(StructOrFunctionRNA *cont_, const char *identifier, bool default_value, const char *ui_name, const char *ui_description)
void rna_freelinkN(ListBase *listbase, void *vlink)
PropertyRNA * RNA_def_enum_flag(StructOrFunctionRNA *cont_, const char *identifier, const EnumPropertyItem *items, int default_value, const char *ui_name, const char *ui_description)
static PropertyDefRNA * rna_def_property_sdna(PropertyRNA *prop, const char *structname, const char *propname)
PropertyRNA * RNA_def_pointer(StructOrFunctionRNA *cont_, const char *identifier, const char *type, const char *ui_name, const char *ui_description)
struct DNAStructMember DNAStructMember
void RNA_def_property_string_search_func_runtime(PropertyRNA *prop, StringPropertySearchFunc search_fn, const eStringPropertySearchFlag search_flag)
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_parameter_clear_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
PropertyRNA * RNA_def_int_array(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_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set)
const float rna_default_quaternion[4]
void RNA_def_property_float_default(PropertyRNA *prop, float value)
static void rna_remlink(ListBase *listbase, void *vlink)
void RNA_def_function_return(FunctionRNA *func, PropertyRNA *ret)
PropertyRNA * RNA_def_float_array(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
PropertyRNA * RNA_def_float_matrix(StructOrFunctionRNA *cont_, const char *identifier, int rows, int columns, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_property_enum_default(PropertyRNA *prop, int value)
void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
void RNA_define_verify_sdna(bool verify)
PropertyRNA * RNA_def_float_distance(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void rna_freelistN(ListBase *listbase)
void RNA_def_property_string_search_func(PropertyRNA *prop, const char *search, const eStringPropertySearchFlag search_flag)
void RNA_def_property_enum_native_type(PropertyRNA *prop, const char *native_enum_type)
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)
const int rna_matrix_dimsize_4x2[]
void RNA_def_property_ui_icon(PropertyRNA *prop, int icon, int consecutive)
void RNA_def_struct_property_tags(StructRNA *srna, const EnumPropertyItem *prop_tag_defines)
PropertyRNA * RNA_def_string_file_path(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
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_int_funcs_runtime(PropertyRNA *prop, IntPropertyGetFunc getfunc, IntPropertySetFunc setfunc, IntPropertyRangeFunc rangefunc)
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)
const float rna_default_scale_3d[3]
void RNA_def_function_output(FunctionRNA *UNUSED(func), PropertyRNA *ret)
#define ASSERT_SOFT_HARD_LIMITS
PropertyDefRNA * rna_find_struct_property_def(StructRNA *srna, PropertyRNA *prop)
void RNA_def_property_boolean_default(PropertyRNA *prop, bool value)
void RNA_def_property_boolean_funcs(PropertyRNA *prop, const char *get, const char *set)
PropertyRNA * RNA_def_collection_runtime(StructOrFunctionRNA *cont_, const char *identifier, StructRNA *type, const char *ui_name, const char *ui_description)
void RNA_def_struct_register_funcs(StructRNA *srna, const char *reg, const char *unreg, const char *instance)
void RNA_identifier_sanitize(char *identifier, int property)
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[])
void RNA_def_property_enum_funcs_runtime(PropertyRNA *prop, EnumPropertyGetFunc getfunc, EnumPropertySetFunc setfunc, EnumPropertyItemFunc itemfunc)
PropertyRNA * RNA_def_float_vector(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_property_boolean_array_funcs_runtime(PropertyRNA *prop, BooleanArrayPropertyGetFunc getfunc, BooleanArrayPropertySetFunc setfunc)
#define DESCR_CHECK(description, id1, id2)
void RNA_def_struct_identifier(BlenderRNA *brna, StructRNA *srna, const char *identifier)
static int rna_member_cmp(const char *name, const char *oname)
void RNA_def_property_int_default(PropertyRNA *prop, int value)
const float rna_default_axis_angle[4]
StructRNA * RNA_def_struct_ptr(BlenderRNA *brna, const char *identifier, StructRNA *srnafrom)
void RNA_def_property_editable_array_func(PropertyRNA *prop, const char *editable)
PropertyRNA * RNA_def_boolean_vector(StructOrFunctionRNA *cont_, const char *identifier, int len, bool *default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_enum_items(PropertyRNA *prop, const EnumPropertyItem *item)
void RNA_def_struct_sdna(StructRNA *srna, const char *structname)
void RNA_def_py_data(PropertyRNA *prop, void *py_data)
void RNA_def_struct_clear_flag(StructRNA *srna, int flag)
void RNA_def_property_array(PropertyRNA *prop, int length)
void RNA_def_property_range(PropertyRNA *prop, double min, double max)
static bool debugSRNA_defaults
void RNA_def_struct_identifier_no_struct_map(StructRNA *srna, const char *identifier)
void RNA_def_property_poll_runtime(PropertyRNA *prop, const void *func)
PropertyRNA * RNA_def_float_factor(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_property_string_maxlength(PropertyRNA *prop, int maxlength)
void RNA_def_struct_sdna_from(StructRNA *srna, const char *structname, const char *propname)
void RNA_def_property_struct_type(PropertyRNA *prop, const char *type)
void RNA_def_property_collection_sdna(PropertyRNA *prop, const char *structname, const char *propname, const char *lengthpropname)
GHash * struct_map_static_from_alias
void RNA_def_function_ui_description(FunctionRNA *func, const char *description)
void RNA_def_property_update(PropertyRNA *prop, int noteflag, const char *func)
const int rna_matrix_dimsize_4x4[]
void RNA_def_property_enum_funcs(PropertyRNA *prop, const char *get, const char *set, const char *item)
static size_t rna_property_type_sizeof(PropertyType type)
PropertyRNA * RNA_def_float_percentage(StructOrFunctionRNA *cont_, const char *identifier, float default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_property_editable_func(PropertyRNA *prop, const char *editable)
void RNA_def_property_float_funcs_runtime(PropertyRNA *prop, FloatPropertyGetFunc getfunc, FloatPropertySetFunc setfunc, FloatPropertyRangeFunc rangefunc)
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_property_enum_bitflag_sdna(PropertyRNA *prop, const char *structname, const char *propname)
static FunctionRNA * rna_def_function(StructRNA *srna, const char *identifier)
void RNA_def_property_int_array_default(PropertyRNA *prop, const int *array)
void RNA_free(BlenderRNA *brna)
void RNA_enum_item_end(EnumPropertyItem **items, int *totitem)
void RNA_def_struct_name_property(struct StructRNA *srna, struct PropertyRNA *prop)
static int DNA_struct_find_nr_wrapper(const struct SDNA *sdna, const char *struct_name)
void RNA_def_function_flag(FunctionRNA *func, int flag)
static int rna_find_sdna_member(SDNA *sdna, const char *structname, const char *membername, DNAStructMember *smember, int *offset)
static ContainerDefRNA * rna_find_container_def(ContainerRNA *cont)
void RNA_def_property_clear_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_struct_free_extension(StructRNA *srna, ExtensionRNA *rna_ext)
static struct @1144 g_version_data
void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *type_fn, const char *poll)
static int rna_validate_identifier(const char *identifier, char *error, bool property)
StructRNA * RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *from)
void RNA_def_property_enum_sdna(PropertyRNA *prop, const char *structname, const char *propname)
PropertyRNA * RNA_def_float_translation(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_enum_item_add(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item)
PropertyRNA * RNA_def_string_dir_path(StructOrFunctionRNA *cont_, const char *identifier, const char *default_value, int maxlen, const char *ui_name, const char *ui_description)
void RNA_def_property_int_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range)
PropertyRNA * RNA_def_pointer_runtime(StructOrFunctionRNA *cont_, const char *identifier, StructRNA *type, const char *ui_name, const char *ui_description)
const int rna_matrix_dimsize_3x3[]
int rna_parameter_size(PropertyRNA *parm)
void RNA_define_free(BlenderRNA *UNUSED(brna))
void RNA_def_property_string_default(PropertyRNA *prop, const char *value)
void RNA_def_struct_ui_icon(StructRNA *srna, int icon)
FunctionDefRNA * rna_find_function_def(FunctionRNA *func)
FunctionRNA * RNA_def_function_runtime(StructRNA *srna, const char *identifier, CallFunc call)
void RNA_def_property_int_array_funcs_runtime(PropertyRNA *prop, IntArrayPropertyGetFunc getfunc, IntArrayPropertySetFunc setfunc, IntPropertyRangeFunc rangefunc)
void RNA_def_property_float_array_funcs_runtime(PropertyRNA *prop, FloatArrayPropertyGetFunc getfunc, FloatArrayPropertySetFunc setfunc, FloatPropertyRangeFunc rangefunc)
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)
PropertyRNA * RNA_def_float_color(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
static void print_default_info(const PropertyDefRNA *dp)
void RNA_def_struct_idprops_func(StructRNA *srna, const char *idproperties)
void RNA_def_property_override_funcs(PropertyRNA *prop, const char *diff, const char *store, const char *apply)
void RNA_def_property_translation_context(PropertyRNA *prop, const char *context)
PropertyRNA * RNA_def_float_vector_xyz(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
PropertyDefRNA * rna_find_parameter_def(PropertyRNA *parm)
static StructDefRNA * rna_find_def_struct(StructRNA *srna)
void RNA_def_property_ui_scale_type(PropertyRNA *prop, PropertyScaleType ui_scale_type)
void RNA_def_property_flag(PropertyRNA *prop, PropertyFlag flag)
void RNA_def_property_override_clear_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
void RNA_def_property_update_runtime(PropertyRNA *prop, const void *func)
void RNA_enum_item_add_separator(EnumPropertyItem **items, int *totitem)
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_enum_funcs(PropertyRNA *prop, EnumPropertyItemFunc itemfunc)
BlenderRNA * RNA_create(void)
static void rna_brna_structs_add(BlenderRNA *brna, StructRNA *srna)
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)
PropertyDefRNA * rna_findlink(ListBase *listbase, const char *identifier)
void RNA_def_property_float_sdna(PropertyRNA *prop, const char *structname, const char *propname)
PropertyRNA * RNA_def_boolean_layer(StructOrFunctionRNA *cont_, const char *identifier, int len, bool *default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_boolean_array_default(PropertyRNA *prop, const bool *array)
void RNA_def_property_boolean_funcs_runtime(PropertyRNA *prop, BooleanPropertyGetFunc getfunc, BooleanPropertySetFunc setfunc)
void RNA_enum_items_add_value(EnumPropertyItem **items, int *totitem, const EnumPropertyItem *item, int value)
PropertyRNA * RNA_def_boolean_array(StructOrFunctionRNA *cont_, const char *identifier, int len, bool *default_value, const char *ui_name, const char *ui_description)
void RNA_def_property_ui_range(PropertyRNA *prop, double min, double max, double step, int precision)
PropertyRNA * RNA_def_float_rotation(StructOrFunctionRNA *cont_, const char *identifier, int len, const float *default_value, float hardmin, float hardmax, const char *ui_name, const char *ui_description, float softmin, float softmax)
void RNA_def_property_tags(PropertyRNA *prop, int tags)
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)
const char * RNA_property_typename(PropertyType type)
void RNA_def_struct_translation_context(StructRNA *srna, const char *context)
void RNA_def_property_float_array_default(PropertyRNA *prop, const float *array)
int rna_parameter_size_pad(const int size)
void RNA_def_property_boolean_negative_sdna(PropertyRNA *prop, const char *structname, const char *propname, int64_t booleanbit)
void RNA_def_struct_nested(BlenderRNA *brna, StructRNA *srna, const char *structname)
void RNA_define_fallback_property_update(int noteflag, const char *updatefunc)
void RNA_def_property_string_funcs_runtime(PropertyRNA *prop, StringPropertyGetFunc getfunc, StringPropertyLengthFunc lengthfunc, StringPropertySetFunc setfunc)
void RNA_def_property_override_flag(PropertyRNA *prop, PropertyOverrideFlag flag)
void rna_addtail(ListBase *listbase, void *vlink)
void RNA_def_parameter_flags(PropertyRNA *prop, PropertyFlag flag_property, ParameterFlag flag_parameter)
PointerRNA rna_builtin_properties_get(struct CollectionPropertyIterator *iter)
void rna_builtin_properties_next(struct CollectionPropertyIterator *iter)
void rna_builtin_properties_begin(struct CollectionPropertyIterator *iter, struct PointerRNA *ptr)
PointerRNA rna_builtin_type_get(struct PointerRNA *ptr)
StructRNA *(* PropPointerTypeFunc)(struct PointerRNA *ptr)
void(* PropIntSetFunc)(struct PointerRNA *ptr, int value)
void(* PropBooleanArrayGetFunc)(struct PointerRNA *ptr, bool *values)
struct IntPropertyRNA IntPropertyRNA
void(* PropEnumSetFunc)(struct PointerRNA *ptr, int value)
int(* PropArrayLengthGetFunc)(const struct PointerRNA *ptr, int length[RNA_MAX_ARRAY_DIMENSION])
bool(* RNAPropOverrideApply)(struct Main *bmain, struct PointerRNA *ptr_dst, struct PointerRNA *ptr_src, struct PointerRNA *ptr_storage, struct PropertyRNA *prop_dst, struct PropertyRNA *prop_src, struct PropertyRNA *prop_storage, int len_dst, int len_src, int len_storage, struct PointerRNA *ptr_item_dst, struct PointerRNA *ptr_item_src, struct PointerRNA *ptr_item_storage, struct IDOverrideLibraryPropertyOperation *opop)
int(* PropCollectionAssignIntFunc)(struct PointerRNA *ptr, int key, const struct PointerRNA *assign_ptr)
void(* PropIntArrayGetFunc)(struct PointerRNA *ptr, int *values)
PointerRNA(* PropCollectionGetFunc)(struct CollectionPropertyIterator *iter)
void(* PropStringSetFunc)(struct PointerRNA *ptr, const char *value)
bool(* PropPointerPollFunc)(struct PointerRNA *ptr, const PointerRNA value)
@ PROP_INTERN_PTR_OWNERSHIP_FORCED
@ PROP_INTERN_FREE_POINTERS
void(* PropFloatRangeFunc)(struct PointerRNA *ptr, float *min, float *max, float *softmin, float *softmax)
int(* PropStringLengthFunc)(struct PointerRNA *ptr)
void(* PropCollectionNextFunc)(struct CollectionPropertyIterator *iter)
struct StructRNA *(* StructRefineFunc)(struct PointerRNA *ptr)
int(* PropCollectionLengthFunc)(struct PointerRNA *ptr)
void(* PropPointerSetFunc)(struct PointerRNA *ptr, const PointerRNA value, struct ReportList *reports)
int(* RNAPropOverrideDiff)(struct Main *bmain, struct PropertyRNAOrID *prop_a, struct PropertyRNAOrID *prop_b, int mode, struct IDOverrideLibrary *override, const char *rna_path, size_t rna_path_len, int flags, bool *r_override_changed)
char *(* StructPathFunc)(const struct PointerRNA *ptr)
struct IDProperty **(* IDPropertiesFunc)(struct PointerRNA *ptr)
struct PointerPropertyRNA PointerPropertyRNA
bool(* RNAPropOverrideStore)(struct Main *bmain, struct PointerRNA *ptr_local, struct PointerRNA *ptr_reference, struct PointerRNA *ptr_storage, struct PropertyRNA *prop_local, struct PropertyRNA *prop_reference, struct PropertyRNA *prop_storage, int len_local, int len_reference, int len_storage, struct IDOverrideLibraryPropertyOperation *opop)
void(* PropFloatSetFunc)(struct PointerRNA *ptr, float value)
void(* PropBooleanArraySetFunc)(struct PointerRNA *ptr, const bool *values)
struct FloatPropertyRNA FloatPropertyRNA
void(* PropStringGetFunc)(struct PointerRNA *ptr, char *value)
const EnumPropertyItem *(* PropEnumItemFunc)(struct bContext *C, struct PointerRNA *ptr, struct PropertyRNA *prop, bool *r_free)
void(* PropIntArraySetFunc)(struct PointerRNA *ptr, const int *values)
bool(* PropBooleanGetFunc)(struct PointerRNA *ptr)
int(* ItemEditableFunc)(struct PointerRNA *ptr, int index)
void(* PropBooleanSetFunc)(struct PointerRNA *ptr, bool value)
void(* PropFloatArraySetFunc)(struct PointerRNA *ptr, const float *values)
struct EnumPropertyRNA EnumPropertyRNA
struct CollectionPropertyRNA CollectionPropertyRNA
int(* PropEnumGetFunc)(struct PointerRNA *ptr)
PointerRNA(* PropPointerGetFunc)(struct PointerRNA *ptr)
void(* PropCollectionBeginFunc)(struct CollectionPropertyIterator *iter, struct PointerRNA *ptr)
void(* PropIntRangeFunc)(struct PointerRNA *ptr, int *min, int *max, int *softmin, int *softmax)
void(* PropCollectionEndFunc)(struct CollectionPropertyIterator *iter)
int(* PropCollectionLookupStringFunc)(struct PointerRNA *ptr, const char *key, struct PointerRNA *r_ptr)
struct BoolPropertyRNA BoolPropertyRNA
#define CONTAINER_RNA_ID(cont)
struct StringPropertyRNA StringPropertyRNA
int(* PropCollectionLookupIntFunc)(struct PointerRNA *ptr, int key, struct PointerRNA *r_ptr)
void(* PropFloatArrayGetFunc)(struct PointerRNA *ptr, float *values)
void(* UpdateFunc)(struct Main *bmain, struct Scene *active_scene, struct PointerRNA *ptr)
int(* EditableFunc)(struct PointerRNA *ptr, const char **r_info)
float(* PropFloatGetFunc)(struct PointerRNA *ptr)
int(* PropIntGetFunc)(struct PointerRNA *ptr)
struct AllocDefRNA * next
struct StructRNA * laststruct
struct BlenderDefRNA::@1145 fallback
struct BlenderDefRNA::@1145::@1146 property_update
struct GHash * structs_map
PropBooleanArraySetFuncEx setarray_ex
PropBooleanArrayGetFuncEx getarray_ex
PropBooleanArraySetFunc setarray
const bool * defaultarray
PropBooleanSetFuncEx set_ex
PropBooleanGetFuncEx get_ex
PropBooleanArrayGetFunc getarray
PropCollectionNextFunc next
PropCollectionLookupStringFunc lookupstring
PropCollectionLengthFunc length
struct StructRNA * item_type
PropCollectionLookupIntFunc lookupint
PropCollectionBeginFunc begin
PropCollectionAssignIntFunc assignint
PropCollectionEndFunc end
PropCollectionGetFunc get
const EnumPropertyItem * item
const char * native_enum_type
PropFloatSetFuncEx set_ex
PropertyScaleType ui_scale_type
PropFloatRangeFuncEx range_ex
PropFloatArrayGetFuncEx getarray_ex
PropFloatArraySetFuncEx setarray_ex
PropFloatArrayGetFunc getarray
const float * defaultarray
PropFloatArraySetFunc setarray
PropFloatGetFuncEx get_ex
PropIntRangeFuncEx range_ex
PropIntArrayGetFunc getarray
PropIntArrayGetFuncEx getarray_ex
PropIntArraySetFunc setarray
PropIntArraySetFuncEx setarray_ex
PropertyScaleType ui_scale_type
PropPointerTypeFunc type_fn
const char * dnastructfromprop
const char * dnastructname
struct ContainerRNA * cont
const char * dnalengthstructname
const char * dnalengthname
struct PropertyRNA * prop
const char * dnastructfromname
struct PropertyDefRNA * prev
ItemEditableFunc itemeditable
PropArrayLengthGetFunc getlength
const char * translation_context
RNAPropOverrideApply override_apply
unsigned int arraydimension
struct PropertyRNA * next
RNAPropOverrideStore override_store
RNAPropOverrideDiff override_diff
unsigned int arraylength[RNA_MAX_ARRAY_DIMENSION]
unsigned int totarraylength
SDNA_StructMember members[]
const char * defaultvalue
PropStringLengthFuncEx length_ex
PropStringLengthFunc length
PropStringGetFuncEx get_ex
PropStringSetFuncEx set_ex
StringPropertySearchFunc search
eStringPropertySearchFlag search_flag
StructUnregisterFunc unreg
StructInstanceFunc instance
struct StructRNA * nested
const char * translation_context
const EnumPropertyItem * prop_tag_defines
PropertyRNA * nameproperty
IDPropertiesFunc idproperties
PropertyRNA * iteratorproperty