[Bf-blender-cvs] [ec723ad25c7] master: remove foreachObjectLink callback
Jacques Lucke
noreply at git.blender.org
Thu Oct 1 18:06:58 CEST 2020
Commit: ec723ad25c70994ac24b528384ee9df927a3e850
Author: Jacques Lucke
Date: Thu Oct 1 18:05:23 2020 +0200
Branches: master
https://developer.blender.org/rBec723ad25c70994ac24b528384ee9df927a3e850
remove foreachObjectLink callback
This removes `foreachObjectLink` from `ModifierTypeInfo`, `GpencilModifierTypeInfo`
and `ShaderFxTypeInfo`. There is no need to have both, `foreachObjectLink` and `foreachIDLink`.
There is not code that actually depends on `foreachObjectLink`.
Reviewers: brecht
Differential Revision: https://developer.blender.org/D9078
===================================================================
M source/blender/blenkernel/BKE_gpencil_modifier.h
M source/blender/blenkernel/BKE_modifier.h
M source/blender/blenkernel/BKE_shader_fx.h
M source/blender/blenkernel/intern/gpencil_modifier.c
M source/blender/blenkernel/intern/modifier.c
M source/blender/blenkernel/intern/shader_fx.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilarmature.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilarray.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilhook.c
M source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilmirror.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilmultiply.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilnoise.c
M source/blender/gpencil_modifiers/intern/MOD_gpenciloffset.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilsimplify.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilsmooth.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilsubdiv.c
M source/blender/gpencil_modifiers/intern/MOD_gpenciltexture.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilthick.c
M source/blender/gpencil_modifiers/intern/MOD_gpenciltime.c
M source/blender/gpencil_modifiers/intern/MOD_gpenciltint.c
M source/blender/modifiers/intern/MOD_armature.c
M source/blender/modifiers/intern/MOD_array.c
M source/blender/modifiers/intern/MOD_bevel.c
M source/blender/modifiers/intern/MOD_boolean.c
M source/blender/modifiers/intern/MOD_build.c
M source/blender/modifiers/intern/MOD_cast.c
M source/blender/modifiers/intern/MOD_cloth.c
M source/blender/modifiers/intern/MOD_collision.c
M source/blender/modifiers/intern/MOD_correctivesmooth.c
M source/blender/modifiers/intern/MOD_curve.c
M source/blender/modifiers/intern/MOD_datatransfer.c
M source/blender/modifiers/intern/MOD_decimate.c
M source/blender/modifiers/intern/MOD_displace.c
M source/blender/modifiers/intern/MOD_dynamicpaint.c
M source/blender/modifiers/intern/MOD_edgesplit.c
M source/blender/modifiers/intern/MOD_explode.c
M source/blender/modifiers/intern/MOD_fluid.c
M source/blender/modifiers/intern/MOD_hook.c
M source/blender/modifiers/intern/MOD_laplaciandeform.c
M source/blender/modifiers/intern/MOD_laplaciansmooth.c
M source/blender/modifiers/intern/MOD_lattice.c
M source/blender/modifiers/intern/MOD_mask.cc
M source/blender/modifiers/intern/MOD_mesh_to_volume.cc
M source/blender/modifiers/intern/MOD_meshcache.c
M source/blender/modifiers/intern/MOD_meshdeform.c
M source/blender/modifiers/intern/MOD_meshsequencecache.c
M source/blender/modifiers/intern/MOD_mirror.c
M source/blender/modifiers/intern/MOD_multires.c
M source/blender/modifiers/intern/MOD_none.c
M source/blender/modifiers/intern/MOD_normal_edit.c
M source/blender/modifiers/intern/MOD_ocean.c
M source/blender/modifiers/intern/MOD_particleinstance.c
M source/blender/modifiers/intern/MOD_particlesystem.c
M source/blender/modifiers/intern/MOD_remesh.c
M source/blender/modifiers/intern/MOD_screw.c
M source/blender/modifiers/intern/MOD_shapekey.c
M source/blender/modifiers/intern/MOD_shrinkwrap.c
M source/blender/modifiers/intern/MOD_simpledeform.c
M source/blender/modifiers/intern/MOD_simulation.cc
M source/blender/modifiers/intern/MOD_skin.c
M source/blender/modifiers/intern/MOD_smooth.c
M source/blender/modifiers/intern/MOD_softbody.c
M source/blender/modifiers/intern/MOD_solidify.c
M source/blender/modifiers/intern/MOD_subsurf.c
M source/blender/modifiers/intern/MOD_surface.c
M source/blender/modifiers/intern/MOD_surfacedeform.c
M source/blender/modifiers/intern/MOD_triangulate.c
M source/blender/modifiers/intern/MOD_uvproject.c
M source/blender/modifiers/intern/MOD_uvwarp.c
M source/blender/modifiers/intern/MOD_warp.c
M source/blender/modifiers/intern/MOD_wave.c
M source/blender/modifiers/intern/MOD_weighted_normal.c
M source/blender/modifiers/intern/MOD_weightvgedit.c
M source/blender/modifiers/intern/MOD_weightvgmix.c
M source/blender/modifiers/intern/MOD_weightvgproximity.c
M source/blender/modifiers/intern/MOD_weld.c
M source/blender/modifiers/intern/MOD_wireframe.c
M source/blender/shader_fx/intern/FX_shader_blur.c
M source/blender/shader_fx/intern/FX_shader_colorize.c
M source/blender/shader_fx/intern/FX_shader_flip.c
M source/blender/shader_fx/intern/FX_shader_glow.c
M source/blender/shader_fx/intern/FX_shader_pixel.c
M source/blender/shader_fx/intern/FX_shader_rim.c
M source/blender/shader_fx/intern/FX_shader_shadow.c
M source/blender/shader_fx/intern/FX_shader_swirl.c
M source/blender/shader_fx/intern/FX_shader_wave.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_gpencil_modifier.h b/source/blender/blenkernel/BKE_gpencil_modifier.h
index 3ade555b410..e003144047b 100644
--- a/source/blender/blenkernel/BKE_gpencil_modifier.h
+++ b/source/blender/blenkernel/BKE_gpencil_modifier.h
@@ -82,11 +82,6 @@ typedef enum {
eGpencilModifierTypeFlag_NoApply = (1 << 6),
} GpencilModifierTypeFlag;
-/* IMPORTANT! Keep ObjectWalkFunc and IDWalkFunc signatures compatible. */
-typedef void (*GreasePencilObjectWalkFunc)(void *userData,
- struct Object *ob,
- struct Object **obpoin,
- int cb_flag);
typedef void (*GreasePencilIDWalkFunc)(void *userData,
struct Object *ob,
struct ID **idpoin,
@@ -218,26 +213,13 @@ typedef struct GpencilModifierTypeInfo {
*/
bool (*dependsOnTime)(struct GpencilModifierData *md);
- /**
- * Should call the given walk function on with a pointer to each Object
- * pointer that the modifier data stores. This is used for linking on file
- * load and for unlinking objects or forwarding object references.
- *
- * This function is optional.
- */
- void (*foreachObjectLink)(struct GpencilModifierData *md,
- struct Object *ob,
- GreasePencilObjectWalkFunc walk,
- void *userData);
-
/**
* Should call the given walk function with a pointer to each ID
* pointer (i.e. each data-block pointer) that the modifier data
* stores. This is used for linking on file load and for
* unlinking data-blocks or forwarding data-block references.
*
- * This function is optional. If it is not present, foreachObjectLink
- * will be used.
+ * This function is optional.
*/
void (*foreachIDLink)(struct GpencilModifierData *md,
struct Object *ob,
diff --git a/source/blender/blenkernel/BKE_modifier.h b/source/blender/blenkernel/BKE_modifier.h
index b9622f2179a..b2015c4e6d7 100644
--- a/source/blender/blenkernel/BKE_modifier.h
+++ b/source/blender/blenkernel/BKE_modifier.h
@@ -115,11 +115,6 @@ typedef enum {
eModifierTypeFlag_AcceptsBMesh = (1 << 11),
} ModifierTypeFlag;
-/* IMPORTANT! Keep ObjectWalkFunc and IDWalkFunc signatures compatible. */
-typedef void (*ObjectWalkFunc)(void *userData,
- struct Object *ob,
- struct Object **obpoin,
- int cb_flag);
typedef void (*IDWalkFunc)(void *userData, struct Object *ob, struct ID **idpoin, int cb_flag);
typedef void (*TexWalkFunc)(void *userData,
struct Object *ob,
@@ -331,26 +326,13 @@ typedef struct ModifierTypeInfo {
*/
bool (*dependsOnNormals)(struct ModifierData *md);
- /**
- * Should call the given walk function on with a pointer to each Object
- * pointer that the modifier data stores. This is used for linking on file
- * load and for unlinking objects or forwarding object references.
- *
- * This function is optional.
- */
- void (*foreachObjectLink)(struct ModifierData *md,
- struct Object *ob,
- ObjectWalkFunc walk,
- void *userData);
-
/**
* Should call the given walk function with a pointer to each ID
* pointer (i.e. each data-block pointer) that the modifier data
* stores. This is used for linking on file load and for
* unlinking data-blocks or forwarding data-block references.
*
- * This function is optional. If it is not present, foreachObjectLink
- * will be used.
+ * This function is optional.
*/
void (*foreachIDLink)(struct ModifierData *md,
struct Object *ob,
@@ -449,7 +431,6 @@ void BKE_modifier_set_error(struct ModifierData *md, const char *format, ...)
ATTR_PRINTF_FORMAT(2, 3);
bool BKE_modifier_is_preview(struct ModifierData *md);
-void BKE_modifiers_foreach_object_link(struct Object *ob, ObjectWalkFunc walk, void *userData);
void BKE_modifiers_foreach_ID_link(struct Object *ob, IDWalkFunc walk, void *userData);
void BKE_modifiers_foreach_tex_link(struct Object *ob, TexWalkFunc walk, void *userData);
diff --git a/source/blender/blenkernel/BKE_shader_fx.h b/source/blender/blenkernel/BKE_shader_fx.h
index be57521a17c..da14487c1f4 100644
--- a/source/blender/blenkernel/BKE_shader_fx.h
+++ b/source/blender/blenkernel/BKE_shader_fx.h
@@ -62,11 +62,6 @@ typedef enum {
eShaderFxTypeFlag_NoUserAdd = (1 << 5),
} ShaderFxTypeFlag;
-/* IMPORTANT! Keep ObjectWalkFunc and IDWalkFunc signatures compatible. */
-typedef void (*ShaderFxObjectWalkFunc)(void *userData,
- struct Object *ob,
- struct Object **obpoin,
- int cb_flag);
typedef void (*ShaderFxIDWalkFunc)(void *userData,
struct Object *ob,
struct ID **idpoin,
@@ -134,24 +129,12 @@ typedef struct ShaderFxTypeInfo {
*/
bool (*dependsOnTime)(struct ShaderFxData *fx);
- /* Should call the given walk function on with a pointer to each Object
- * pointer that the effect data stores. This is used for linking on file
- * load and for unlinking objects or forwarding object references.
- *
- * This function is optional.
- */
- void (*foreachObjectLink)(struct ShaderFxData *fx,
- struct Object *ob,
- ShaderFxObjectWalkFunc walk,
- void *userData);
-
/* Should call the given walk function with a pointer to each ID
* pointer (i.e. each data-block pointer) that the effect data
* stores. This is used for linking on file load and for
* unlinking data-blocks or forwarding data-block references.
*
- * This function is optional. If it is not present, foreachObjectLink
- * will be used.
+ * This function is optional.
*/
void (*foreachIDLink)(struct ShaderFxData *fx,
struct Object *ob,
diff --git a/source/blender/blenkernel/intern/gpencil_modifier.c b/source/blender/blenkernel/intern/gpencil_modifier.c
index bc74693bbb8..2eccdb872dd 100644
--- a/source/blender/blenkernel/intern/gpencil_modifier.c
+++ b/source/blender/blenkernel/intern/gpencil_modifier.c
@@ -333,10 +333,6 @@ void BKE_gpencil_modifier_free_ex(GpencilModifierData *md, const int flag)
if (mti->foreachIDLink) {
mti->foreachIDLink(md, NULL, modifier_free_data_id_us_cb, NULL);
}
- else if (mti->foreachObjectLink) {
- mti->foreachObjectLink(
- md, NULL, (GreasePencilObjectWalkFunc)modifier_free_data_id_us_cb, NULL);
- }
}
if (mti->freeData) {
@@ -473,10 +469,6 @@ void BKE_gpencil_modifier_copydata_ex(GpencilModifierData *md,
if (mti->foreachIDLink) {
mti->foreachIDLink(target, NULL, gpencil_modifier_copy_data_id_us_cb, NULL);
}
- else if (mti->foreachObjectLink) {
- mti->foreachObjectLink(
- target, NULL, (GreasePencilObjectWalkFunc)gpencil_modifier_copy_data_id_us_cb, NULL);
- }
}
}
@@ -544,11 +536,6 @@ void BKE_gpencil_modifiers_foreach_ID_link(Object *ob, GreasePencilIDWalkFunc wa
if (mti->foreachIDLink) {
mti->foreachIDLink(md, ob, walk, userData);
}
- else if (mti->foreachObjectLink) {
- /* each Object can masquerade as an ID, so this should be OK */
- GreasePencilObjectWalkFunc fp = (GreasePencilObjectWalkFunc)walk;
- mti->foreachObjectLink(md, ob, fp, userData);
- }
}
}
diff --git a/source/blender/blenkernel/intern/modifier.c b/source/blender/blenkernel/intern/modifier.c
index 6185644f5a0..abf4fc82300 100644
--- a/source/blender/blenkernel/intern/modifier.c
+++ b/source/blender/blenkernel/intern/modifier.c
@@ -177,9 +177,6 @@ void BKE_modifier_free_ex(ModifierData *md, const int flag)
if (mti->foreachIDLink) {
mti->foreachIDLink(md, NULL, modifier_free_data_id_us_cb, NULL);
}
- else if (mti->foreachObjectLink) {
- mti->foreachObjectLink(md, NULL, (ObjectWalkFunc)modifier_free_data_id_us_cb, NULL);
- }
}
if (mti->freeData) {
@@ -278,19 +275,6 @@ void BKE_modifiers_clear_errors(Object *ob)
}
}
-void BKE_modifiers_foreach_object_link(Object *ob, ObjectWalkFunc walk, void *userData)
-{
- ModifierData *md = ob->modifiers.first;
-
- for (; md; md = md->next) {
- const ModifierTypeInfo *mti = BKE_modifier_get_info(md->type);
-
- if (mti->foreachObjectLink) {
- mti->foreachObjectLink(md, ob, walk, userData);
- }
- }
-}
-
void BKE_modifiers_foreach_ID_link(Object *ob, IDWalkFunc walk, void *userData)
{
ModifierData *md = ob->modifiers.first;
@@ -301,11 +285,6 @@ void BKE_modifiers_foreach_ID_link(Object *ob, IDWalkFunc walk, void *userData)
if (mti->foreachIDLink) {
mti->foreachIDLink(md, ob, walk, userData);
}
- else if (mti->foreachObjectLink) {
- /* each Object can masquerade as an ID, so this should be OK */
- ObjectWalkFunc fp = (ObjectWalkFunc)walk;
- mti->foreachObjectLink(md, ob, fp, userData);
- }
}
}
@@ -374,9 +353,6 @@ void BKE_modifier_copydata_ex(ModifierData *md, ModifierData *target, const int
if (mti->foreachIDLink) {
mti->foreachIDLink(target, NULL, modifier_copy_data_id_us_cb, NULL);
}
- else if (mti->foreachObjectLink) {
- mti->foreachObjectLink(target, NULL, (ObjectWalkFunc)modifier_copy_data_id_us_cb, NULL);
- }
}
if (flag & LIB_ID_CREATE_NO_MAIN) {
diff --git a/source/blender/blenkernel/intern/shader_fx.c b/source/blender/blenkernel/intern/shader_fx.c
index 4ad67a1dd32..f2cdf08b415 100644
--- a/source/blender/blenkernel/intern/shader_fx.c
+++ b/source/blender/blenkernel/intern/shader_fx.c
@@ -116,9 +116,6 @@ void BKE_shaderfx_free_ex(ShaderFxData *fx, const int flag)
if (fxi->foreachIDLink) {
fxi->foreachIDLink(fx, NULL, shaderfx_free_data_id_us_cb, NULL);
}
- else if (fxi->foreachObjectLink) {
- fxi->foreachObjectLi
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list