[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