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/builder/deg_builder_relations.h')
-rw-r--r--source/blender/depsgraph/intern/builder/deg_builder_relations.h52
1 files changed, 39 insertions, 13 deletions
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_relations.h b/source/blender/depsgraph/intern/builder/deg_builder_relations.h
index 4a8e91f18db..2b9ba3edffb 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.h
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.h
@@ -49,14 +49,19 @@
#include "intern/nodes/deg_node_operation.h"
struct Base;
+struct bArmature;
struct bGPdata;
struct CacheFile;
+struct Camera;
struct ListBase;
struct GHash;
struct ID;
struct FCurve;
-struct Group;
+struct Collection;
struct Key;
+struct Lamp;
+struct LayerCollection;
+struct LightProbe;
struct Main;
struct Mask;
struct Material;
@@ -68,7 +73,10 @@ struct Object;
struct bPoseChannel;
struct bConstraint;
struct ParticleSystem;
+struct ParticleSettings;
struct Scene;
+struct Speaker;
+struct ViewLayer;
struct Tex;
struct World;
struct EffectorWeights;
@@ -191,10 +199,21 @@ struct DepsgraphRelationBuilder
const char *description,
bool check_unique = false);
- void build_scene(Scene *scene);
- void build_group(Object *object, Group *group);
- void build_object(Object *object);
+ void build_id(ID *id);
+ void build_layer_collections(ListBase *lb);
+ void build_view_layer(Scene *scene, ViewLayer *view_layer);
+ void build_collection(eDepsNode_CollectionOwner owner_type,
+ Object *object,
+ Collection *collection);
+ void build_object(Base *base, Object *object);
+ void build_object_flags(Base *base, Object *object);
void build_object_data(Object *object);
+ void build_object_data_camera(Object *object);
+ void build_object_data_geometry(Object *object);
+ void build_object_data_geometry_datablock(ID *obdata);
+ void build_object_data_lamp(Object *object);
+ void build_object_data_lightprobe(Object *object);
+ void build_object_data_speaker(Object *object);
void build_object_parent(Object *object);
void build_constraints(ID *id,
eDepsNode_Type component_type,
@@ -218,6 +237,7 @@ struct DepsgraphRelationBuilder
void build_world(World *world);
void build_rigidbody(Scene *scene);
void build_particles(Object *object);
+ void build_particle_settings(ParticleSettings *part);
void build_particles_visualization_object(Object *object,
ParticleSystem *psys,
Object *draw_object);
@@ -232,25 +252,29 @@ struct DepsgraphRelationBuilder
RootPChanMap *root_map);
void build_rig(Object *object);
void build_proxy_rig(Object *object);
- void build_shapekeys(ID *obdata, Key *key);
- void build_obdata_geom(Object *object);
- void build_camera(Object *object);
- void build_lamp(Object *object);
+ void build_shapekeys(Key *key);
+ void build_armature(bArmature *armature);
+ void build_camera(Camera *camera);
+ void build_lamp(Lamp *lamp);
void build_nodetree(bNodeTree *ntree);
void build_material(Material *ma);
void build_texture(Tex *tex);
- void build_texture_stack(MTex **texture_stack);
void build_compositor(Scene *scene);
void build_gpencil(bGPdata *gpd);
void build_cachefile(CacheFile *cache_file);
void build_mask(Mask *mask);
void build_movieclip(MovieClip *clip);
+ void build_lightprobe(LightProbe *probe);
+ void build_speaker(Speaker *speaker);
+
+ void build_nested_datablock(ID *owner, ID *id);
+ void build_nested_nodetree(ID *owner, bNodeTree *ntree);
+ void build_nested_shapekey(ID *owner, Key *key);
void add_collision_relations(const OperationKey &key,
Scene *scene,
Object *object,
- Group *group,
- int layer,
+ Collection *collection,
bool dupli,
const char *name);
void add_forcefield_relations(const OperationKey &key,
@@ -258,8 +282,10 @@ struct DepsgraphRelationBuilder
Object *object,
ParticleSystem *psys,
EffectorWeights *eff,
- bool add_absorption,
- const char *name);
+ bool add_absorption, const char *name);
+
+ void build_copy_on_write_relations();
+ void build_copy_on_write_relations(IDDepsNode *id_node);
template <typename KeyType>
OperationDepsNode *find_operation_node(const KeyType &key);