diff options
author | Jacques Lucke <jacques@blender.org> | 2020-10-01 19:05:23 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2020-10-01 19:05:23 +0300 |
commit | ec723ad25c70994ac24b528384ee9df927a3e850 (patch) | |
tree | e1813df5859367fbaa9d5e785a0ed977bac696ca /source/blender/blenkernel | |
parent | cbbd5283a345957583eaff55752d6ec52162db88 (diff) |
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
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r-- | source/blender/blenkernel/BKE_gpencil_modifier.h | 20 | ||||
-rw-r--r-- | source/blender/blenkernel/BKE_modifier.h | 21 | ||||
-rw-r--r-- | source/blender/blenkernel/BKE_shader_fx.h | 19 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/gpencil_modifier.c | 13 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/modifier.c | 24 | ||||
-rw-r--r-- | source/blender/blenkernel/intern/shader_fx.c | 12 |
6 files changed, 3 insertions, 106 deletions
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, @@ -219,25 +214,12 @@ 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, @@ -332,25 +327,12 @@ 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->foreachObjectLink(fx, NULL, (ShaderFxObjectWalkFunc)shaderfx_free_data_id_us_cb, NULL); - } } if (fxi->freeData) { @@ -222,10 +219,6 @@ void BKE_shaderfx_copydata_ex(ShaderFxData *fx, ShaderFxData *target, const int if (fxi->foreachIDLink) { fxi->foreachIDLink(target, NULL, shaderfx_copy_data_id_us_cb, NULL); } - else if (fxi->foreachObjectLink) { - fxi->foreachObjectLink( - target, NULL, (ShaderFxObjectWalkFunc)shaderfx_copy_data_id_us_cb, NULL); - } } } @@ -270,11 +263,6 @@ void BKE_shaderfx_foreach_ID_link(Object *ob, ShaderFxIDWalkFunc walk, void *use if (fxi->foreachIDLink) { fxi->foreachIDLink(fx, ob, walk, userData); } - else if (fxi->foreachObjectLink) { - /* each Object can masquerade as an ID, so this should be OK */ - ShaderFxObjectWalkFunc fp = (ShaderFxObjectWalkFunc)walk; - fxi->foreachObjectLink(fx, ob, fp, userData); - } } } |