[Bf-blender-cvs] [ecaab96e0bd] temp-T73411-add-scene-parameters: WIP: Adding const Scene* to many areas.
Jeroen Bakker
noreply at git.blender.org
Thu Sep 8 22:33:45 CEST 2022
Commit: ecaab96e0bd615eb69895f9adc6d186bb2fece0d
Author: Jeroen Bakker
Date: Thu Sep 8 22:32:40 2022 +0200
Branches: temp-T73411-add-scene-parameters
https://developer.blender.org/rBecaab96e0bd615eb69895f9adc6d186bb2fece0d
WIP: Adding const Scene* to many areas.
===================================================================
M source/blender/blenkernel/BKE_collection.h
M source/blender/blenkernel/BKE_collision.h
M source/blender/blenkernel/BKE_effect.h
M source/blender/blenkernel/BKE_layer.h
M source/blender/blenkernel/BKE_object.h
M source/blender/blenkernel/BKE_scene.h
M source/blender/blenkernel/intern/blender_copybuffer.c
M source/blender/blenkernel/intern/collection.c
M source/blender/blenkernel/intern/collision.c
M source/blender/blenkernel/intern/effect.c
M source/blender/blenkernel/intern/layer.c
M source/blender/blenkernel/intern/layer_utils.c
M source/blender/blenkernel/intern/object.cc
M source/blender/draw/engines/overlay/overlay_edit_uv.c
M source/blender/draw/intern/draw_manager.c
M source/blender/editors/animation/anim_markers.c
M source/blender/editors/armature/armature_add.c
M source/blender/editors/armature/armature_edit.c
M source/blender/editors/armature/armature_naming.c
M source/blender/editors/armature/armature_relations.c
M source/blender/editors/armature/armature_select.c
M source/blender/editors/armature/editarmature_undo.c
M source/blender/editors/armature/pose_edit.c
M source/blender/editors/armature/pose_select.c
M source/blender/editors/armature/pose_slide.c
M source/blender/editors/armature/pose_transform.c
M source/blender/editors/armature/pose_utils.c
M source/blender/editors/curve/editcurve.c
M source/blender/editors/curve/editcurve_query.c
M source/blender/editors/curve/editcurve_select.c
M source/blender/editors/curve/editcurve_undo.c
M source/blender/editors/curve/editfont.c
M source/blender/editors/curves/intern/curves_ops.cc
M source/blender/editors/gpencil/gpencil_mesh.cc
M source/blender/editors/gpencil/gpencil_ops_versioning.c
M source/blender/editors/gpencil/gpencil_trace_ops.c
M source/blender/editors/include/ED_armature.h
M source/blender/editors/include/ED_object.h
M source/blender/editors/include/ED_transform.h
M source/blender/editors/include/ED_undo.h
M source/blender/editors/interface/interface_ops.cc
M source/blender/editors/lattice/editlattice_select.c
M source/blender/editors/lattice/editlattice_tools.c
M source/blender/editors/lattice/editlattice_undo.c
M source/blender/editors/mesh/editmesh_bevel.c
M source/blender/editors/mesh/editmesh_bisect.c
M source/blender/editors/mesh/editmesh_extrude.c
M source/blender/editors/mesh/editmesh_extrude_screw.c
M source/blender/editors/mesh/editmesh_extrude_spin.c
M source/blender/editors/mesh/editmesh_inset.c
M source/blender/editors/mesh/editmesh_intersect.c
M source/blender/editors/mesh/editmesh_knife.c
M source/blender/editors/mesh/editmesh_knife_project.c
M source/blender/editors/mesh/editmesh_loopcut.c
M source/blender/editors/mesh/editmesh_path.c
M source/blender/editors/mesh/editmesh_polybuild.c
M source/blender/editors/mesh/editmesh_rip.c
M source/blender/editors/mesh/editmesh_rip_edge.c
M source/blender/editors/mesh/editmesh_select.c
M source/blender/editors/mesh/editmesh_select_similar.c
M source/blender/editors/mesh/editmesh_tools.c
M source/blender/editors/mesh/editmesh_undo.c
M source/blender/editors/mesh/editmesh_utils.c
M source/blender/editors/mesh/mesh_intern.h
M source/blender/editors/metaball/editmball_undo.c
M source/blender/editors/metaball/mball_edit.c
M source/blender/editors/object/object_add.cc
M source/blender/editors/object/object_constraint.c
M source/blender/editors/object/object_edit.c
M source/blender/editors/object/object_hook.c
M source/blender/editors/object/object_modes.c
M source/blender/editors/object/object_modifier.cc
M source/blender/editors/object/object_random.c
M source/blender/editors/object/object_relations.c
M source/blender/editors/object/object_select.c
M source/blender/editors/object/object_transform.cc
M source/blender/editors/object/object_utils.c
M source/blender/editors/render/render_preview.cc
M source/blender/editors/screen/area.c
M source/blender/editors/screen/screen_context.c
M source/blender/editors/screen/screen_edit.c
M source/blender/editors/space_image/image_ops.c
M source/blender/editors/space_info/info_stats.cc
M source/blender/editors/space_outliner/outliner_collections.cc
M source/blender/editors/space_outliner/outliner_select.cc
M source/blender/editors/space_view3d/space_view3d.c
M source/blender/editors/space_view3d/view3d_gizmo_preselect_type.c
M source/blender/editors/space_view3d/view3d_navigate.c
M source/blender/editors/space_view3d/view3d_select.cc
M source/blender/editors/space_view3d/view3d_snap.c
M source/blender/editors/space_view3d/view3d_view.c
M source/blender/editors/transform/transform_convert.c
M source/blender/editors/transform/transform_convert_object.c
M source/blender/editors/transform/transform_gizmo_2d.c
M source/blender/editors/transform/transform_gizmo_3d.c
M source/blender/editors/transform/transform_orientations.c
M source/blender/editors/transform/transform_orientations.h
M source/blender/editors/transform/transform_snap.c
M source/blender/editors/undo/ed_undo.c
M source/blender/editors/uvedit/uvedit_buttons.c
M source/blender/editors/uvedit/uvedit_ops.c
M source/blender/editors/uvedit/uvedit_path.c
M source/blender/editors/uvedit/uvedit_rip.c
M source/blender/editors/uvedit/uvedit_select.c
M source/blender/editors/uvedit/uvedit_smart_stitch.c
M source/blender/editors/uvedit/uvedit_unwrap_ops.c
M source/blender/io/alembic/intern/alembic_capi.cc
M source/blender/io/collada/BlenderContext.cpp
M source/blender/io/collada/BlenderContext.h
M source/blender/io/collada/DocumentImporter.cpp
M source/blender/io/collada/ExportSettings.h
M source/blender/io/collada/SceneExporter.cpp
M source/blender/io/collada/collada.cpp
M source/blender/io/stl/importer/stl_import.cc
M source/blender/io/usd/intern/usd_capi_import.cc
M source/blender/io/wavefront_obj/importer/obj_importer.cc
M source/blender/makesrna/intern/rna_layer.c
M source/blender/render/intern/pipeline.cc
M source/blender/windowmanager/WM_toolsystem.h
M source/blender/windowmanager/intern/wm_draw.c
M source/blender/windowmanager/intern/wm_event_system.cc
M source/blender/windowmanager/intern/wm_files_link.c
M source/blender/windowmanager/intern/wm_operator_utils.c
M source/blender/windowmanager/intern/wm_toolsystem.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_collection.h b/source/blender/blenkernel/BKE_collection.h
index 4346c2a3d23..dd7866d83e5 100644
--- a/source/blender/blenkernel/BKE_collection.h
+++ b/source/blender/blenkernel/BKE_collection.h
@@ -216,7 +216,8 @@ struct ListBase BKE_collection_object_cache_get(struct Collection *collection);
ListBase BKE_collection_object_cache_instanced_get(struct Collection *collection);
void BKE_collection_object_cache_free(struct Collection *collection);
-struct Base *BKE_collection_or_layer_objects(const struct ViewLayer *view_layer,
+struct Base *BKE_collection_or_layer_objects(const struct Scene *scene,
+ struct ViewLayer *view_layer,
struct Collection *collection);
/* Editing. */
@@ -239,7 +240,8 @@ const char *BKE_collection_ui_name_get(struct Collection *collection);
* Select all the objects in this Collection (and its nested collections) for this ViewLayer.
* Return true if any object was selected.
*/
-bool BKE_collection_objects_select(struct ViewLayer *view_layer,
+bool BKE_collection_objects_select(const struct Scene *scene,
+ struct ViewLayer *view_layer,
struct Collection *collection,
bool deselect);
diff --git a/source/blender/blenkernel/BKE_collision.h b/source/blender/blenkernel/BKE_collision.h
index b93babaaefa..291d76df4c8 100644
--- a/source/blender/blenkernel/BKE_collision.h
+++ b/source/blender/blenkernel/BKE_collision.h
@@ -17,6 +17,7 @@ struct Depsgraph;
struct MVert;
struct MVertTri;
struct Object;
+struct Scene;
////////////////////////////////////////
// used for collisions in collision.c
diff --git a/source/blender/blenkernel/BKE_effect.h b/source/blender/blenkernel/BKE_effect.h
index 113f9ac3b4c..3226455a183 100644
--- a/source/blender/blenkernel/BKE_effect.h
+++ b/source/blender/blenkernel/BKE_effect.h
@@ -103,6 +103,7 @@ void BKE_partdeflect_free(struct PartDeflect *pd);
* lookup of effectors during evaluation.
*/
struct ListBase *BKE_effector_relations_create(struct Depsgraph *depsgraph,
+ const struct Scene *scene,
struct ViewLayer *view_layer,
struct Collection *collection);
void BKE_effector_relations_free(struct ListBase *lb);
diff --git a/source/blender/blenkernel/BKE_layer.h b/source/blender/blenkernel/BKE_layer.h
index 8bc89c56450..4fd7868afeb 100644
--- a/source/blender/blenkernel/BKE_layer.h
+++ b/source/blender/blenkernel/BKE_layer.h
@@ -78,7 +78,9 @@ void BKE_view_layer_free_ex(struct ViewLayer *view_layer, bool do_id_user);
/**
* Tag all the selected objects of a render-layer.
*/
-void BKE_view_layer_selected_objects_tag(struct ViewLayer *view_layer, int tag);
+void BKE_view_layer_selected_objects_tag(const struct Scene *scene,
+ struct ViewLayer *view_layer,
+ int tag);
/**
* Fallback for when a Scene has no camera to use.
@@ -87,14 +89,14 @@ void BKE_view_layer_selected_objects_tag(struct ViewLayer *view_layer, int tag);
* If rendering you pass the scene active layer, when viewing in the viewport
* you want to get #ViewLayer from context.
*/
-struct Object *BKE_view_layer_camera_find(struct ViewLayer *view_layer);
+struct Object *BKE_view_layer_camera_find(const struct Scene *scene, struct ViewLayer *view_layer);
/**
* Find the #ViewLayer a #LayerCollection belongs to.
*/
struct ViewLayer *BKE_view_layer_find_from_collection(const struct Scene *scene,
struct LayerCollection *lc);
struct Base *BKE_view_layer_base_find(struct ViewLayer *view_layer, struct Object *ob);
-void BKE_view_layer_base_deselect_all(struct ViewLayer *view_layer);
+void BKE_view_layer_base_deselect_all(const struct Scene *scene, struct ViewLayer *view_layer);
void BKE_view_layer_base_select_and_set_active(struct ViewLayer *view_layer, struct Base *selbase);
@@ -161,7 +163,9 @@ void BKE_scene_collection_sync(const struct Scene *scene);
* and on file loaded in case linked data changed or went missing.
*/
void BKE_layer_collection_sync(const struct Scene *scene, struct ViewLayer *view_layer);
-void BKE_layer_collection_local_sync(struct ViewLayer *view_layer, const struct View3D *v3d);
+void BKE_layer_collection_local_sync(const struct Scene *scene,
+ struct ViewLayer *view_layer,
+ const struct View3D *v3d);
/**
* Sync the local collection for all the 3D Viewports.
*/
@@ -192,10 +196,12 @@ bool BKE_scene_has_object(struct Scene *scene, struct Object *ob);
* It also select the objects that are in nested collections.
* \note Recursive.
*/
-bool BKE_layer_collection_objects_select(struct ViewLayer *view_layer,
+bool BKE_layer_collection_objects_select(const struct Scene *scene,
+ struct ViewLayer *view_layer,
struct LayerCollection *lc,
bool deselect);
-bool BKE_layer_collection_has_selected_objects(struct ViewLayer *view_layer,
+bool BKE_layer_collection_has_selected_objects(const struct Scene *scene,
+ struct ViewLayer *view_layer,
struct LayerCollection *lc);
bool BKE_layer_collection_has_layer_collection(struct LayerCollection *lc_parent,
struct LayerCollection *lc_child);
@@ -226,7 +232,8 @@ void BKE_layer_collection_isolate_global(struct Scene *scene,
*
* Same as #BKE_layer_collection_isolate_local but for a viewport
*/
-void BKE_layer_collection_isolate_local(struct ViewLayer *view_layer,
+void BKE_layer_collection_isolate_local(const struct Scene *scene,
+ struct ViewLayer *view_layer,
const struct View3D *v3d,
struct LayerCollection *lc,
bool extend);
@@ -235,7 +242,8 @@ void BKE_layer_collection_isolate_local(struct ViewLayer *view_layer,
* Don't change the collection children enable/disable state,
* but it may change it for the collection itself.
*/
-void BKE_layer_collection_set_visible(struct ViewLayer *view_layer,
+void BKE_layer_collection_set_visible(const struct Scene *scene,
+ struct ViewLayer *view_layer,
struct LayerCollection *lc,
bool visible,
bool hierarchy);
@@ -256,7 +264,9 @@ void BKE_layer_eval_view_layer_indexed(struct Depsgraph *depsgraph,
/* .blend file I/O */
-void BKE_view_layer_blend_write(struct BlendWriter *writer, struct ViewLayer *view_layer);
+void BKE_view_layer_blend_write(struct BlendWriter *writer,
+ const struct Scene *scene,
+ struct ViewLayer *view_layer);
void BKE_view_layer_blend_read_data(struct BlendDataReader *reader, struct ViewLayer *view_layer);
void BKE_view_layer_blend_read_lib(struct BlendLibReader *reader,
struct Library *lib,
@@ -352,7 +362,8 @@ void BKE_view_layer_visible_bases_iterator_end(BLI_Iterator *iter);
} \
((void)0)
-#define FOREACH_BASE_IN_MODE_BEGIN(_view_layer, _v3d, _object_type, _object_mode, _instance) \
+#define FOREACH_BASE_IN_MODE_BEGIN( \
+ _scene, _view_layer, _v3d, _object_type, _object_mode, _instance) \
{ \
struct ObjectsInModeIteratorData data_; \
memset(&data_, 0, sizeof(data_)); \
@@ -360,6 +371,7 @@ void BKE_view_layer_visible_bases_iterator_end(BLI_Iterator *iter);
data_.object_type = _object_type; \
data_.view_layer = _view_layer; \
data_.v3d = _v3d; \
+ UNUSED_VARS(_scene); \
data_.base_active = _view_layer->basact; \
ITER_BEGIN (BKE_view_layer_bases_in_mode_iterator_begin, \
BKE_view_layer_bases_in_mode_iterator_next, \
@@ -373,21 +385,22 @@ void BKE_view_layer_visible_bases_iterator_end(BLI_Iterator *iter);
} \
((void)0)
-#define FOREACH_BASE_IN_EDIT_MODE_BEGIN(_view_layer, _v3d, _instance) \
- FOREACH_BASE_IN_MODE_BEGIN (_view_layer, _v3d, -1, OB_MODE_EDIT, _instance)
+#define FOREACH_BASE_IN_EDIT_MODE_BEGIN(_scene, _view_layer, _v3d, _instance) \
+ FOREACH_BASE_IN_MODE_BEGIN (_scene, _view_layer, _v3d, -1, OB_MODE_EDIT, _instance)
#define FOREACH_BASE_IN_EDIT_MODE_END FOREACH_BASE_IN_MODE_END
-#define FOREACH_OBJECT_IN_MODE_BEGIN(_view_layer, _v3d, _object_type, _object_mode, _instance) \
- FOREACH_BASE_IN_MODE_BEGIN (_view_layer, _v3d, _object_type, _object_mode, _base) { \
+#define FOREACH_OBJECT_IN_MODE_BEGIN( \
+ _scene, _view_layer, _v3d, _object_type, _object_mode, _instance) \
+ FOREACH_BASE_IN_MODE_BEGIN (_scene, _view_layer, _v3d, _object_type, _object_mode, _base) { \
Object *_instance = _base->object;
#define FOREACH_OBJECT_IN_MODE_END \
} \
FOREACH_BASE_IN_MODE_END
-#define FOREACH_OBJECT_IN_EDIT_MODE_BEGIN(_view_layer, _v3d, _instance) \
- FOREACH_BASE_IN_EDIT_MODE_BEGIN (_view_layer, _v3d, _base) { \
+#define FOREACH_OBJECT_IN_EDIT_MODE_BEGIN(_scene, _view_layer, _v3d, _instance) \
+ FOREACH_BASE_IN_EDIT_MODE_BEGIN (_scene, _view_layer, _v3d, _base) { \
Object *_instance = _base->object;
#define FOREACH_OBJECT_IN_EDIT_MODE_END \
@@ -404,7 +417,7 @@ void BKE_view_layer_visible_bases_iterator_end(BLI_Iterator *iter);
#define FOREACH_SELECTED_BASE_END ITER_END
-#define FOREACH_VISIBLE_BASE_BEGIN(_view_layer, _v3d, _instance) \
+#define FOREACH_VISIBLE_BASE_BEGIN(_scene, _view_layer, _v3d, _instance) \
{ \
struct ObjectsVisibleIteratorData data_ = {NULL}; \
data_.view_layer = _view_layer; \
@@ -421,10 +434,11 @@ void BKE_view_layer_visible_bases_iterator_end(BLI_Iterator *iter);
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list