Depsgraph: Cleanup, use less explicit checks of LIB_TAG_ID_RECALC_DATA
authorSergey Sharybin <sergey.vfx@gmail.com>
Wed, 13 Dec 2017 13:39:56 +0000 (14:39 +0100)
committerSergey Sharybin <sergey.vfx@gmail.com>
Wed, 13 Dec 2017 13:43:32 +0000 (14:43 +0100)
This is a part of ongoing work in Blender 2.8, where we need to replace

  `object->id.tag & LIB_TAG_ID_RECALC_DATA`

with

  `object->data->id.tag & LIB_TAG_ID_RECALC`

Should be no user measurable difference.

source/blender/blenkernel/intern/depsgraph.c
source/blender/blenkernel/intern/mask.c
source/blender/blenloader/intern/readfile.c
source/blender/depsgraph/intern/depsgraph_tag.cc

index 30b7f15da7cefc43de2439dacdd440e7062db49f..e9b83b27ef2175886e0524494c7824a1e3970f92 100644 (file)
@@ -1532,7 +1532,7 @@ static bool check_object_tagged_for_update(Object *object)
 
        if (ELEM(object->type, OB_MESH, OB_CURVE, OB_SURF, OB_FONT, OB_MBALL, OB_LATTICE)) {
                ID *data_id = object->data;
-               return (data_id->tag & (LIB_TAG_ID_RECALC_DATA | LIB_TAG_ID_RECALC)) != 0;
+               return (data_id->tag & LIB_TAG_ID_RECALC_ALL) != 0;
        }
 
        return false;
@@ -2825,8 +2825,7 @@ void DAG_ids_flush_tagged(Main *bmain)
 
                if (id && bmain->id_tag_update[BKE_idcode_to_index(GS(id->name))]) {
                        for (; id; id = id->next) {
-                               if (id->tag & (LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA)) {
-                                       
+                               if (id->tag & LIB_TAG_ID_RECALC_ALL) {
                                        for (dsl = listbase.first; dsl; dsl = dsl->next)
                                                dag_id_flush_update(bmain, dsl->scene, id);
                                        
@@ -2946,13 +2945,12 @@ void DAG_ids_clear_recalc(Main *bmain)
 
                if (id && bmain->id_tag_update[BKE_idcode_to_index(GS(id->name))]) {
                        for (; id; id = id->next) {
-                               if (id->tag & (LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA))
-                                       id->tag &= ~(LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA);
+                               id->tag &= ~LIB_TAG_ID_RECALC_ALL;
 
                                /* some ID's contain semi-datablock nodetree */
                                ntree = ntreeFromID(id);
-                               if (ntree && (ntree->id.tag & (LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA)))
-                                       ntree->id.tag &= ~(LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA);
+                               if (ntree)
+                                       ntree->id.tag &= ~LIB_TAG_ID_RECALC_ALL;
                        }
                }
        }
index b8a241ed9568b2cc2b15aa064db04e53dad0ca09..cd697cadc0e0acf3243b98a8f6505e60ffc23d35 100644 (file)
@@ -1463,7 +1463,7 @@ void BKE_mask_update_scene(Main *bmain, Scene *scene)
        Mask *mask;
 
        for (mask = bmain->mask.first; mask; mask = mask->id.next) {
-               if (mask->id.tag & (LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA)) {
+               if (mask->id.tag & LIB_TAG_ID_RECALC_ALL) {
                        bool do_new_frame = (mask->id.tag & LIB_TAG_ID_RECALC_DATA) != 0;
                        BKE_mask_evaluate_all_masks(bmain, CFRA, do_new_frame);
                }
index 5e12fc969ab1c43fff0d5eb89eb8b5123a93bdeb..b6543fc8662e3bb79ee0236e700d257395fb0e38 100644 (file)
@@ -3077,7 +3077,7 @@ static void direct_link_nodetree(FileData *fd, bNodeTree *ntree)
        ntree->adt = newdataadr(fd, ntree->adt);
        direct_link_animdata(fd, ntree->adt);
        
-       ntree->id.tag &= ~(LIB_TAG_ID_RECALC|LIB_TAG_ID_RECALC_DATA);
+       ntree->id.tag &= ~LIB_TAG_ID_RECALC_ALL;
 
        link_list(fd, &ntree->nodes);
        for (node = ntree->nodes.first; node; node = node->next) {
index eafb091e53ad227da099d51be9c7edd9a64fe0da..8f91a82676007ac7f2a9e3c4473c8f42a7ddb029 100644 (file)
@@ -409,12 +409,12 @@ void DEG_ids_clear_recalc(Main *bmain)
 
                if (id && bmain->id_tag_update[BKE_idcode_to_index(GS(id->name))]) {
                        for (; id; id = (ID *)id->next) {
-                               id->tag &= ~(LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA);
+                               id->tag &= ~LIB_TAG_ID_RECALC_ALL;
 
                                /* Some ID's contain semi-datablock nodetree */
                                ntree = ntreeFromID(id);
                                if (ntree != NULL) {
-                                       ntree->id.tag &= ~(LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA);
+                                       ntree->id.tag &= ~LIB_TAG_ID_RECALC_ALL;
                                }
                        }
                }