DNA: Add dedicated recalc flag to ID

Currently unused, but this is where LIB_TAG_ID_RECALC* flags will go.

Also modified other DNA to make pointer property being followed by pointer.
Makes it easier to keep track of alignment and extend nested structures without
ruining anything.
This commit is contained in:
Sergey Sharybin 2017-12-14 15:12:05 +01:00
parent 99b7dc60be
commit 400d59be9b
4 changed files with 9 additions and 9 deletions

View File

@ -130,11 +130,11 @@ typedef struct ID {
int tag;
int us;
int icon_id;
int recalc;
int pad;
IDProperty *properties;
void *py_instance;
void *pad1;
} ID;
/**

View File

@ -137,6 +137,7 @@ typedef struct Object {
bAnimVizSettings avs; /* settings for visualization of object-transform animation */
bMotionPath *mpath; /* motion path cache for this object */
void *pad1;
ListBase constraintChannels DNA_DEPRECATED; // XXX deprecated... old animation system
ListBase effect DNA_DEPRECATED; // XXX deprecated... keep for readfile
@ -253,8 +254,6 @@ typedef struct Object {
int gameflag;
int gameflag2;
struct BulletSoftBody *bsoft; /* settings for game engine bullet soft body */
char restrictflag; /* for restricting view, select, render etc. accessible in outliner */
char recalc; /* dependency flag */
short softflag; /* softbody settings */
@ -265,6 +264,7 @@ typedef struct Object {
ListBase hooks DNA_DEPRECATED; // XXX deprecated... old animation system
ListBase particlesystem; /* particle systems */
struct BulletSoftBody *bsoft; /* settings for game engine bullet soft body */
struct PartDeflect *pd; /* particle deflector/attractor/collision data */
struct SoftBody *soft; /* if exists, saved in file */
struct Group *dup_group; /* object duplicator for group */
@ -294,6 +294,7 @@ typedef struct Object {
float ima_ofs[2]; /* offset for image empties */
ImageUser *iuser; /* must be non-null when oject is an empty image */
void *pad3;
ListBase lodlevels; /* contains data for levels of detail */
LodLevel *currentlod;

View File

@ -1676,13 +1676,11 @@ typedef struct Scene {
/* Grease Pencil */
struct bGPdata *gpd;
/* Physics simulation settings */
struct PhysicsSettings physics_settings;
/* Movie Tracking */
struct MovieClip *clip; /* active movie clip */
void *pad4;
/* Physics simulation settings */
struct PhysicsSettings physics_settings;
uint64_t customdata_mask; /* XXX. runtime flag for drawing, actually belongs in the window, only used by BKE_object_handle_update() */
uint64_t customdata_mask_modal; /* XXX. same as above but for temp operator use (gl renders) */

View File

@ -51,6 +51,7 @@ typedef struct Text {
ID id;
char *name;
void *compiled;
int flags, nlines;
@ -59,9 +60,9 @@ typedef struct Text {
int curc, selc;
char *undo_buf;
void *pad;
int undo_pos, undo_len;
void *compiled;
double mtime;
} Text;