[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [57565] trunk/blender/source/blender/ blenkernel: move modifier callback wrappers into modifier.c
Campbell Barton
ideasman42 at gmail.com
Wed Jun 19 10:00:21 CEST 2013
Revision: 57565
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=57565
Author: campbellbarton
Date: 2013-06-19 08:00:20 +0000 (Wed, 19 Jun 2013)
Log Message:
-----------
move modifier callback wrappers into modifier.c
Modified Paths:
--------------
trunk/blender/source/blender/blenkernel/BKE_modifier.h
trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c
trunk/blender/source/blender/blenkernel/intern/modifier.c
Modified: trunk/blender/source/blender/blenkernel/BKE_modifier.h
===================================================================
--- trunk/blender/source/blender/blenkernel/BKE_modifier.h 2013-06-19 07:45:36 UTC (rev 57564)
+++ trunk/blender/source/blender/blenkernel/BKE_modifier.h 2013-06-19 08:00:20 UTC (rev 57565)
@@ -391,5 +391,30 @@
void modifier_path_init(char *path, int path_maxlen, const char *name);
const char *modifier_path_relbase(struct Object *ob);
+
+/* wrappers for modifier callbacks */
+
+struct DerivedMesh *modwrap_applyModifier(
+ ModifierData *md, struct Object *ob,
+ struct DerivedMesh *dm,
+ ModifierApplyFlag flag);
+
+struct DerivedMesh *modwrap_applyModifierEM(
+ ModifierData *md, struct Object *ob,
+ struct BMEditMesh *em,
+ struct DerivedMesh *dm,
+ ModifierApplyFlag flag);
+
+void modwrap_deformVerts(
+ ModifierData *md, struct Object *ob,
+ struct DerivedMesh *dm,
+ float (*vertexCos)[3], int numVerts,
+ ModifierApplyFlag flag);
+
+void modwrap_deformVertsEM(
+ ModifierData *md, struct Object *ob,
+ struct BMEditMesh *em, struct DerivedMesh *dm,
+ float (*vertexCos)[3], int numVerts);
+
#endif
Modified: trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c 2013-06-19 07:45:36 UTC (rev 57564)
+++ trunk/blender/source/blender/blenkernel/intern/DerivedMesh.c 2013-06-19 08:00:20 UTC (rev 57565)
@@ -845,69 +845,6 @@
return dm;
}
-/***/
-
-/* wrapper around ModifierTypeInfo.applyModifier that ensures valid normals */
-
-static DerivedMesh *modwrap_applyModifier(
- ModifierData *md, Object *ob,
- DerivedMesh *dm,
- ModifierApplyFlag flag)
-{
- ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- BLI_assert(CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
-
- if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
- DM_ensure_normals(dm);
- }
- return mti->applyModifier(md, ob, dm, flag);
-}
-
-static DerivedMesh *modwrap_applyModifierEM(
- ModifierData *md, Object *ob,
- BMEditMesh *em,
- DerivedMesh *dm,
- ModifierApplyFlag flag)
-{
- ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- BLI_assert(CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
-
- if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
- DM_ensure_normals(dm);
- }
- return mti->applyModifierEM(md, ob, em, dm, flag);
-}
-
-static void modwrap_deformVerts(
- ModifierData *md, Object *ob,
- DerivedMesh *dm,
- float (*vertexCos)[3], int numVerts,
- ModifierApplyFlag flag)
-{
- ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- BLI_assert(!dm || CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
-
- if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
- DM_ensure_normals(dm);
- }
- mti->deformVerts(md, ob, dm, vertexCos, numVerts, flag);
-}
-
-static void modwrap_deformVertsEM(
- ModifierData *md, Object *ob,
- BMEditMesh *em, DerivedMesh *dm,
- float (*vertexCos)[3], int numVerts)
-{
- ModifierTypeInfo *mti = modifierType_getInfo(md->type);
- BLI_assert(!dm || CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
-
- if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
- DM_ensure_normals(dm);
- }
- mti->deformVertsEM(md, ob, em, dm, vertexCos, numVerts);
-}
-/* end modifier callback wrappers */
-
DerivedMesh *mesh_create_derived_for_modifier(Scene *scene, Object *ob,
ModifierData *md, int build_shapekey_layers)
{
Modified: trunk/blender/source/blender/blenkernel/intern/modifier.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/modifier.c 2013-06-19 07:45:36 UTC (rev 57564)
+++ trunk/blender/source/blender/blenkernel/intern/modifier.c 2013-06-19 08:00:20 UTC (rev 57565)
@@ -36,7 +36,7 @@
* \ingroup bke
*/
-
+#include <stdlib.h>
#include <stddef.h>
#include <string.h>
#include <stdarg.h>
@@ -60,6 +60,7 @@
#include "BKE_cloth.h"
#include "BKE_key.h"
#include "BKE_multires.h"
+#include "BKE_DerivedMesh.h"
/* may move these, only for modifier_path_relbase */
#include "BKE_global.h" /* ugh, G.main->name only */
@@ -693,3 +694,65 @@
G.relbase_valid ? "//" : BLI_temporary_dir(),
name);
}
+
+
+/* wrapper around ModifierTypeInfo.applyModifier that ensures valid normals */
+
+struct DerivedMesh *modwrap_applyModifier(
+ ModifierData *md, Object *ob,
+ struct DerivedMesh *dm,
+ ModifierApplyFlag flag)
+{
+ ModifierTypeInfo *mti = modifierType_getInfo(md->type);
+ BLI_assert(CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
+
+ if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
+ DM_ensure_normals(dm);
+ }
+ return mti->applyModifier(md, ob, dm, flag);
+}
+
+struct DerivedMesh *modwrap_applyModifierEM(
+ ModifierData *md, Object *ob,
+ struct BMEditMesh *em,
+ DerivedMesh *dm,
+ ModifierApplyFlag flag)
+{
+ ModifierTypeInfo *mti = modifierType_getInfo(md->type);
+ BLI_assert(CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
+
+ if (mti->dependsOnNormals && mti->dependsOnNormals(md)) {
+ DM_ensure_normals(dm);
+ }
+ return mti->applyModifierEM(md, ob, em, dm, flag);
+}
+
+void modwrap_deformVerts(
+ ModifierData *md, Object *ob,
+ DerivedMesh *dm,
+ float (*vertexCos)[3], int numVerts,
+ ModifierApplyFlag flag)
+{
+ ModifierTypeInfo *mti = modifierType_getInfo(md->type);
+ BLI_assert(!dm || CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
+
+ if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
+ DM_ensure_normals(dm);
+ }
+ mti->deformVerts(md, ob, dm, vertexCos, numVerts, flag);
+}
+
+void modwrap_deformVertsEM(
+ ModifierData *md, Object *ob,
+ struct BMEditMesh *em, DerivedMesh *dm,
+ float (*vertexCos)[3], int numVerts)
+{
+ ModifierTypeInfo *mti = modifierType_getInfo(md->type);
+ BLI_assert(!dm || CustomData_has_layer(&dm->polyData, CD_NORMAL) == false);
+
+ if (dm && mti->dependsOnNormals && mti->dependsOnNormals(md)) {
+ DM_ensure_normals(dm);
+ }
+ mti->deformVertsEM(md, ob, em, dm, vertexCos, numVerts);
+}
+/* end modifier callback wrappers */
More information about the Bf-blender-cvs
mailing list