Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h')
-rw-r--r--source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h b/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
index c818c1f7064..d1a30652b36 100644
--- a/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
+++ b/source/blender/depsgraph/intern/eval/deg_eval_runtime_backup.h
@@ -46,6 +46,17 @@ class RuntimeBackup {
/* Restore fields to the given ID. */
void restore_to_id(ID *id);
+ /* Denotes whether init_from_id did put anything into the backup storage.
+ * This will not be the case when init_from_id() is called for an ID which has never been
+ * copied-on-write. In this case there is no need to backup or restore anything.
+ *
+ * It also allows to have restore() logic to be symmetrical to init() without need to worry
+ * that init() might not have happenned.
+ *
+ * In practice this is used by audio system to lock audio while scene is going through
+ * copy-on-write mechanism. */
+ bool have_backup;
+
AnimationBackup animation_backup;
SceneBackup scene_backup;
SoundBackup sound_backup;