From 318b44fe5d142ca1ac29a6933da8cd9e2c439e9a Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Wed, 9 May 2012 15:00:26 +0000 Subject: Refactor of modifiers' apply function: now use a single bit-flag parameter to pass options, instead of having one parameter per boolean flag (i.e. replaces current useRenderParams and isFinalCalc by a single ModifierApplyFlag flag. ModifierApplyFlag is an enum defined in BKE_modifier.h). This way we won't anymore have to edit all modifier files when e.g. adding a new control flag! Should have no effect over modifier behavior. --- source/blender/blenkernel/BKE_modifier.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'source/blender/blenkernel/BKE_modifier.h') diff --git a/source/blender/blenkernel/BKE_modifier.h b/source/blender/blenkernel/BKE_modifier.h index b4320b7025a..db57d411f31 100644 --- a/source/blender/blenkernel/BKE_modifier.h +++ b/source/blender/blenkernel/BKE_modifier.h @@ -109,6 +109,12 @@ typedef void (*ObjectWalkFunc)(void *userData, struct Object *ob, struct Object typedef void (*IDWalkFunc)(void *userData, struct Object *ob, struct ID **idpoin); typedef void (*TexWalkFunc)(void *userData, struct Object *ob, struct ModifierData *md, const char *propname); +typedef enum ModifierApplyFlag { + MOD_APPLY_RENDER = 1 << 0, /* Render time. */ + MOD_APPLY_USECACHE = 1 << 1, /* Last modifier in stack. */ +} ModifierApplyFlag; + + typedef struct ModifierTypeInfo { /* The user visible name for this modifier */ char name[32]; @@ -142,7 +148,7 @@ typedef struct ModifierTypeInfo { void (*deformVerts)(struct ModifierData *md, struct Object *ob, struct DerivedMesh *derivedData, float (*vertexCos)[3], int numVerts, - int useRenderParams, int isFinalCalc); + ModifierApplyFlag flag); /* Like deformMatricesEM but called from object mode (for supporting modifiers in sculpt mode) */ void (*deformMatrices)( @@ -187,7 +193,7 @@ typedef struct ModifierTypeInfo { struct DerivedMesh *(*applyModifier)( struct ModifierData *md, struct Object *ob, struct DerivedMesh *derivedData, - int useRenderParams, int isFinalCalc); + ModifierApplyFlag flag); /* Like applyModifier but called during editmode (for supporting * modifiers). -- cgit v1.2.3