diff options
Diffstat (limited to 'source/blender/depsgraph/intern/nodes/deg_node_id.h')
-rw-r--r-- | source/blender/depsgraph/intern/nodes/deg_node_id.h | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/source/blender/depsgraph/intern/nodes/deg_node_id.h b/source/blender/depsgraph/intern/nodes/deg_node_id.h index 55022916c4d..12dbc16b4fa 100644 --- a/source/blender/depsgraph/intern/nodes/deg_node_id.h +++ b/source/blender/depsgraph/intern/nodes/deg_node_id.h @@ -47,7 +47,11 @@ struct IDDepsNode : public DepsNode { }; void init(const ID *id, const char *subdata); + void init_copy_on_write(ID *id_cow_hint = NULL); ~IDDepsNode(); + void destroy(); + + virtual string identifier() const; ComponentDepsNode *find_component(eDepsNode_Type type, const char *name = "") const; @@ -56,23 +60,23 @@ struct IDDepsNode : public DepsNode { void tag_update(Depsgraph *graph); - void finalize_build(); + void finalize_build(Depsgraph *graph); /* ID Block referenced. */ - ID *id; + ID *id_orig; + ID *id_cow; /* Hash to make it faster to look up components. */ GHash *components; - /* Layers of this node with accumulated layers of it's output relations. */ - unsigned int layers; - /* Additional flags needed for scene evaluation. * TODO(sergey): Only needed for until really granular updates * of all the entities. */ int eval_flags; + eDepsNode_LinkedState_Type linked_state; + DEG_DEPSNODE_DECLARE; }; |