[Bf-blender-cvs] [76d52cbcb42] master: Cleanup: Comment COW/LOCALIZED ID tags.

Bastien Montagne noreply at git.blender.org
Tue Aug 10 10:07:17 CEST 2021


Commit: 76d52cbcb42381d2ceb71f6aacbf6753906e01d0
Author: Bastien Montagne
Date:   Tue Aug 10 10:04:57 2021 +0200
Branches: master
https://developer.blender.org/rB76d52cbcb42381d2ceb71f6aacbf6753906e01d0

Cleanup: Comment COW/LOCALIZED ID tags.

This was really missing there (some COW tags behavior was also
documented in some code using them, like in `sound.c`, but not in their
definition).

Ref. T88555.

===================================================================

M	source/blender/makesdna/DNA_ID.h

===================================================================

diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h
index f7f4b0e6104..3995e98f34d 100644
--- a/source/blender/makesdna/DNA_ID.h
+++ b/source/blender/makesdna/DNA_ID.h
@@ -563,13 +563,32 @@ enum {
   /**
    * The data-block is a copy-on-write/localized version.
    *
+   * RESET_NEVER
+   *
    * \warning This should not be cleared on existing data.
    * If support for this is needed, see T88026 as this flag controls memory ownership
    * of physics *shared* pointers.
    */
   LIB_TAG_COPIED_ON_WRITE = 1 << 12,
-
+  /**
+   * The data-block is not the original COW ID created by the depsgraph, but has be re-allocated
+   * during the evaluation process of another ID.
+   *
+   * RESET_NEVER
+   *
+   * Typical example is object data, when evaluating the object's modifier stack the final obdata
+   * can be different than the COW initial obdata ID.
+   */
   LIB_TAG_COPIED_ON_WRITE_EVAL_RESULT = 1 << 13,
+
+  /**
+   * The data-block is fully outside of any ID management area, and should be considered as a
+   * purely independent data.
+   *
+   * RESET_NEVER
+   *
+   * NOTE: Only used by nodegroups currently.
+   */
   LIB_TAG_LOCALIZED = 1 << 14,
 
   /* RESET_NEVER tag data-block for freeing etc. behavior



More information about the Bf-blender-cvs mailing list