Merging r46111 through r46136 from trunk into soc-2011-tomato
[blender-staging.git] / source / blender / makesdna / DNA_object_fluidsim.h
index 022dc53848f267c76f6ed09729b6910446e3c092..dc4e4f54fd7fede5b44159f57cab77c7e422aca5 100644 (file)
@@ -1,6 +1,4 @@
 /*
- *
- *
  * ***** BEGIN GPL LICENSE BLOCK *****
  *
  * This program is free software; you can redistribute it and/or
  *  \ingroup DNA
  */
 
-#ifndef DNA_OBJECT_FLUIDSIM_H
-#define DNA_OBJECT_FLUIDSIM_H
+#ifndef __DNA_OBJECT_FLUIDSIM_H__
+#define __DNA_OBJECT_FLUIDSIM_H__
 
 #include "DNA_ID.h"
+#include "DNA_defs.h"
 
 #ifdef __cplusplus
 extern "C" {
@@ -49,16 +48,16 @@ typedef struct FluidVertexVelocity {
        
 typedef struct FluidsimSettings {
        struct FluidsimModifierData *fmd; /* for fast RNA access */
-       /* domain,fluid or obstacle */
+       /* domain, fluid or obstacle */
        short type;
-       /* display advanced options in fluid sim tab (on=1,off=0)*/
+       /* display advanced options in fluid sim tab (on=1, off=0)*/
        short show_advancedoptions;
 
        /* domain object settings */
        /* resolutions */
        short resolutionxyz;
        short previewresxyz;
-       /* size of the domain in real units (meters along largest resolution x,y,z extent) */
+       /* size of the domain in real units (meters along largest resolution x, y, z extent) */
        float realsize;
        /* show original meshes, preview or final sim */
        short guiDisplayMode;
@@ -66,7 +65,7 @@ typedef struct FluidsimSettings {
 
        /* fluid properties */
        float viscosityValue;
-       short viscosityMode;
+       short viscosityMode DNA_DEPRECATED;
        short viscosityExponent;
        /* gravity strength */
        float grav[3];
@@ -74,6 +73,9 @@ typedef struct FluidsimSettings {
        float animStart, animEnd;
        /* bake start end time (in blender frames) */
        int bakeStart, bakeEnd;
+       /* offset for baked frames */
+       int frameOffset;
+       int pad;
        /* g star param (LBM compressibility) */
        float gstar;
        /* activate refinement? */
@@ -81,7 +83,7 @@ typedef struct FluidsimSettings {
        
        /* fluid object type settings */
        /* gravity strength */
-       float iniVelx,iniVely,iniVelz;
+       float iniVelx, iniVely, iniVelz;
 
        /* store pointer to original mesh (for replacing the current one) */
        struct Mesh *orgMesh;
@@ -89,8 +91,8 @@ typedef struct FluidsimSettings {
        struct Mesh *meshBB;
 
        /* store output path, and file prefix for baked fluid surface */
-       /* strlens; 80= FILE_MAXFILE, 160= FILE_MAXDIR */
-       char surfdataPath[240];
+       /* strlens; 256= FILE_MAXFILE, 768= FILE_MAXDIR */
+       char surfdataPath[1024];
 
        /* store start coords of axis aligned bounding box together with size */
        /* values are inited during derived mesh display */
@@ -102,8 +104,8 @@ typedef struct FluidsimSettings {
        /* additional flags depending on the type, lower short contains flags
         * to check validity, higher short additional flags */
        short typeFlags;
-       /* switch off velocity genration, volume init type for fluid/obstacles (volume=1,shell=2,both=3) */
-       char  domainNovecgen,volumeInitType;
+       /* switch off velocity genration, volume init type for fluid/obstacles (volume=1, shell=2, both=3) */
+       char  domainNovecgen, volumeInitType;
 
        /* boundary "stickiness" for part slip values */
        float partSlipValue;
@@ -140,8 +142,8 @@ typedef struct FluidsimSettings {
 
        int lastgoodframe;
        
-       int pad;
-
+       /* Simulation/flow rate control (i.e. old "Fac-Time") */
+       float animRate;
 } FluidsimSettings;
 
 /* ob->fluidsimSettings defines */