Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2020-12-15 02:47:58 +0300
committerCampbell Barton <ideasman42@gmail.com>2020-12-15 04:34:14 +0300
commit525364be31aafa547f4b17b9947074ed5a5b2570 (patch)
tree1826a3cb8ae72f0f2c936c419366323c88b21215 /source/blender/blenkernel/BKE_idprop.h
parent15f2f69694cb23d04989d3faea4853468a3b140a (diff)
Cleanup: reduce indirect DNA header inclusion
Remove DNA headers, using forward declarations where possible. Also removed duplicate header, header including it's self and unnecessary inclusion of libc system headers from BKE header.
Diffstat (limited to 'source/blender/blenkernel/BKE_idprop.h')
-rw-r--r--source/blender/blenkernel/BKE_idprop.h78
1 files changed, 40 insertions, 38 deletions
diff --git a/source/blender/blenkernel/BKE_idprop.h b/source/blender/blenkernel/BKE_idprop.h
index 9c250240e5e..bcf35bf1197 100644
--- a/source/blender/blenkernel/BKE_idprop.h
+++ b/source/blender/blenkernel/BKE_idprop.h
@@ -20,8 +20,6 @@
* \ingroup bke
*/
-#include "DNA_ID.h"
-
#include "BLI_compiler_attrs.h"
#ifdef __cplusplus
@@ -57,9 +55,9 @@ typedef union IDPropertyTemplate {
/* ----------- Property Array Type ---------- */
-IDProperty *IDP_NewIDPArray(const char *name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
-IDProperty *IDP_CopyIDPArray(const IDProperty *array, const int flag) ATTR_WARN_UNUSED_RESULT
- ATTR_NONNULL();
+struct IDProperty *IDP_NewIDPArray(const char *name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
+struct IDProperty *IDP_CopyIDPArray(const struct IDProperty *array,
+ const int flag) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
/* shallow copies item */
void IDP_SetIndexArray(struct IDProperty *prop, int index, struct IDProperty *item) ATTR_NONNULL();
@@ -74,7 +72,9 @@ void IDP_ResizeArray(struct IDProperty *prop, int newlen);
void IDP_FreeArray(struct IDProperty *prop);
/* ---------- String Type ------------ */
-IDProperty *IDP_NewString(const char *st, const char *name, int maxlen) ATTR_WARN_UNUSED_RESULT
+struct IDProperty *IDP_NewString(const char *st,
+ const char *name,
+ int maxlen) ATTR_WARN_UNUSED_RESULT
ATTR_NONNULL(2 /* 'name 'arg */); /* maxlen excludes '\0' */
void IDP_AssignString(struct IDProperty *prop, const char *st, int maxlen)
ATTR_NONNULL(); /* maxlen excludes '\0' */
@@ -84,9 +84,9 @@ void IDP_FreeString(struct IDProperty *prop) ATTR_NONNULL();
/*-------- ID Type -------*/
-typedef void (*IDPWalkFunc)(void *userData, IDProperty *idp);
+typedef void (*IDPWalkFunc)(void *userData, struct IDProperty *idp);
-void IDP_AssignID(IDProperty *prop, ID *id, const int flag);
+void IDP_AssignID(struct IDProperty *prop, struct ID *id, const int flag);
/*-------- Group Functions -------*/
@@ -100,10 +100,10 @@ void IDP_ReplaceInGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_
void IDP_ReplaceInGroup_ex(struct IDProperty *group,
struct IDProperty *prop,
struct IDProperty *prop_exist);
-void IDP_MergeGroup(IDProperty *dest, const IDProperty *src, const bool do_overwrite)
+void IDP_MergeGroup(struct IDProperty *dest, const struct IDProperty *src, const bool do_overwrite)
ATTR_NONNULL();
-void IDP_MergeGroup_ex(IDProperty *dest,
- const IDProperty *src,
+void IDP_MergeGroup_ex(struct IDProperty *dest,
+ const struct IDProperty *src,
const bool do_overwrite,
const int flag) ATTR_NONNULL();
bool IDP_AddToGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
@@ -113,11 +113,13 @@ bool IDP_InsertToGroup(struct IDProperty *group,
void IDP_RemoveFromGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
void IDP_FreeFromGroup(struct IDProperty *group, struct IDProperty *prop) ATTR_NONNULL();
-IDProperty *IDP_GetPropertyFromGroup(const struct IDProperty *prop,
- const char *name) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
-IDProperty *IDP_GetPropertyTypeFromGroup(const struct IDProperty *prop,
- const char *name,
- const char type) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
+struct IDProperty *IDP_GetPropertyFromGroup(const struct IDProperty *prop,
+ const char *name) ATTR_WARN_UNUSED_RESULT
+ ATTR_NONNULL();
+struct IDProperty *IDP_GetPropertyTypeFromGroup(const struct IDProperty *prop,
+ const char *name,
+ const char type) ATTR_WARN_UNUSED_RESULT
+ ATTR_NONNULL();
/*-------- Main Functions --------*/
struct IDProperty *IDP_GetProperties(struct ID *id,
@@ -127,10 +129,10 @@ struct IDProperty *IDP_CopyProperty(const struct IDProperty *prop) ATTR_WARN_UNU
ATTR_NONNULL();
struct IDProperty *IDP_CopyProperty_ex(const struct IDProperty *prop,
const int flag) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
-void IDP_CopyPropertyContent(IDProperty *dst, IDProperty *src) ATTR_NONNULL();
+void IDP_CopyPropertyContent(struct IDProperty *dst, struct IDProperty *src) ATTR_NONNULL();
-bool IDP_EqualsProperties_ex(IDProperty *prop1,
- IDProperty *prop2,
+bool IDP_EqualsProperties_ex(struct IDProperty *prop1,
+ struct IDProperty *prop2,
const bool is_strict) ATTR_WARN_UNUSED_RESULT;
bool IDP_EqualsProperties(struct IDProperty *prop1,
@@ -142,12 +144,12 @@ struct IDProperty *IDP_New(const char type,
void IDP_FreePropertyContent_ex(struct IDProperty *prop, const bool do_id_user);
void IDP_FreePropertyContent(struct IDProperty *prop);
-void IDP_FreeProperty_ex(IDProperty *prop, const bool do_id_user);
+void IDP_FreeProperty_ex(struct IDProperty *prop, const bool do_id_user);
void IDP_FreeProperty(struct IDProperty *prop);
-void IDP_ClearProperty(IDProperty *prop);
+void IDP_ClearProperty(struct IDProperty *prop);
-void IDP_Reset(IDProperty *prop, const IDProperty *reference);
+void IDP_Reset(struct IDProperty *prop, const struct IDProperty *reference);
#define IDP_Int(prop) ((prop)->data.val)
#define IDP_Array(prop) ((prop)->data.pointer)
@@ -155,29 +157,29 @@ void IDP_Reset(IDProperty *prop, const IDProperty *reference);
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 201112L)
# define IDP_Float(prop) \
_Generic((prop), \
- IDProperty *: (*(float *)&(prop)->data.val), \
- const IDProperty *: (*(const float *)&(prop)->data.val))
+ struct IDProperty *: (*(float *)&(prop)->data.val), \
+ const struct IDProperty *: (*(const float *)&(prop)->data.val))
# define IDP_Double(prop) \
_Generic((prop), \
- IDProperty *: (*(double *)&(prop)->data.val), \
- const IDProperty *: (*(const double *)&(prop)->data.val))
+ struct IDProperty *: (*(double *)&(prop)->data.val), \
+ const struct IDProperty *: (*(const double *)&(prop)->data.val))
# define IDP_String(prop) \
_Generic((prop), \
- IDProperty *: ((char *) (prop)->data.pointer), \
- const IDProperty *: ((const char *) (prop)->data.pointer))
+ struct IDProperty *: ((char *) (prop)->data.pointer), \
+ const struct IDProperty *: ((const char *) (prop)->data.pointer))
# define IDP_IDPArray(prop) \
_Generic((prop), \
- IDProperty *: ((IDProperty *) (prop)->data.pointer), \
- const IDProperty *: ((const IDProperty *) (prop)->data.pointer))
+ struct IDProperty *: ((struct IDProperty *) (prop)->data.pointer), \
+ const struct IDProperty *: ((const struct IDProperty *) (prop)->data.pointer))
# define IDP_Id(prop) \
_Generic((prop), \
- IDProperty *: ((ID *) (prop)->data.pointer), \
- const IDProperty *: ((const ID *) (prop)->data.pointer))
+ struct IDProperty *: ((ID *) (prop)->data.pointer), \
+ const struct IDProperty *: ((const ID *) (prop)->data.pointer))
#else
# define IDP_Float(prop) (*(float *)&(prop)->data.val)
# define IDP_Double(prop) (*(double *)&(prop)->data.val)
# define IDP_String(prop) ((char *)(prop)->data.pointer)
-# define IDP_IDPArray(prop) ((IDProperty *)(prop)->data.pointer)
+# define IDP_IDPArray(prop) ((struct IDProperty *)(prop)->data.pointer)
# define IDP_Id(prop) ((ID *)(prop)->data.pointer)
#endif
@@ -185,7 +187,7 @@ void IDP_Reset(IDProperty *prop, const IDProperty *reference);
* Call a callback for each idproperty in the hierarchy under given root one (included).
*
*/
-typedef void (*IDPForeachPropertyCallback)(IDProperty *id_property, void *user_data);
+typedef void (*IDPForeachPropertyCallback)(struct IDProperty *id_property, void *user_data);
void IDP_foreach_property(struct IDProperty *id_property_root,
const int type_filter,
@@ -194,18 +196,18 @@ void IDP_foreach_property(struct IDProperty *id_property_root,
/* Format IDProperty as strings */
char *IDP_reprN(const struct IDProperty *prop, uint *r_len);
-void IDP_repr_fn(const IDProperty *prop,
+void IDP_repr_fn(const struct IDProperty *prop,
void (*str_append_fn)(void *user_data, const char *str, uint str_len),
void *user_data);
void IDP_print(const struct IDProperty *prop);
void IDP_BlendWrite(struct BlendWriter *writer, const struct IDProperty *prop);
void IDP_BlendReadData_impl(struct BlendDataReader *reader,
- IDProperty **prop,
+ struct IDProperty **prop,
const char *caller_func_id);
#define IDP_BlendDataRead(reader, prop) IDP_BlendReadData_impl(reader, prop, __func__)
-void IDP_BlendReadLib(struct BlendLibReader *reader, IDProperty *prop);
-void IDP_BlendReadExpand(struct BlendExpander *expander, IDProperty *prop);
+void IDP_BlendReadLib(struct BlendLibReader *reader, struct IDProperty *prop);
+void IDP_BlendReadExpand(struct BlendExpander *expander, struct IDProperty *prop);
#ifdef __cplusplus
}