Merge branch 'master' into blender2.8
[blender.git] / source / blender / depsgraph / intern / nodes / deg_node_component.h
index 702697eba3a61a8f53f92dec96f447e8107b925d..882a16adf8222102053bb56263c36be4eecd4aab 100644 (file)
@@ -139,7 +139,7 @@ struct ComponentDepsNode : public DepsNode {
        OperationDepsNode *get_entry_operation();
        OperationDepsNode *get_exit_operation();
 
-       void finalize_build();
+       void finalize_build(Depsgraph *graph);
 
        IDDepsNode *owner;
 
@@ -159,9 +159,7 @@ struct ComponentDepsNode : public DepsNode {
        OperationDepsNode *exit_operation;
 
        // XXX: a poll() callback to check if component's first node can be started?
-
-       /* Temporary bitmask, used during graph construction. */
-       unsigned int layers;
+       virtual bool depends_on_cow() { return true; }
 };
 
 /* ---------------------------------------- */
@@ -185,14 +183,18 @@ struct ComponentDepsNode : public DepsNode {
        }
 
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Animation);
+DEG_COMPONENT_NODE_DECLARE_GENERIC(BatchCache);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Cache);
+DEG_COMPONENT_NODE_DECLARE_GENERIC(CopyOnWrite);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Geometry);
+DEG_COMPONENT_NODE_DECLARE_GENERIC(LayerCollections);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Parameters);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Particles);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Proxy);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Pose);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Sequencer);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Shading);
+DEG_COMPONENT_NODE_DECLARE_GENERIC(ShadingParameters);
 DEG_COMPONENT_NODE_DECLARE_GENERIC(Transform);
 
 /* Bone Component */