Move BKE_main_idmap and BKE_main_namemap to be fully cpp headers.

NOTE: `BKE_main.h` is currently used by `writeffmpeg.c`, so not trivial
to make it a full CPP header file for now.

Pull Request: https://projects.blender.org/blender/blender/pulls/115485
This commit is contained in:
Bastien Montagne
2023-11-27 16:21:49 +01:00
committed by Gitea
parent f1c0bce651
commit dad1eea511
22 changed files with 47 additions and 70 deletions
@@ -19,10 +19,6 @@
#include "BLI_compiler_attrs.h"
#ifdef __cplusplus
extern "C" {
#endif
struct ID;
struct IDNameLib_Map;
struct Main;
@@ -43,31 +39,23 @@ enum {
* \param create_valid_ids_set: If \a true, generate a reference to prevent freed memory accesses.
* \param old_bmain: If not NULL, its IDs will be added the valid references set.
*/
struct IDNameLib_Map *BKE_main_idmap_create(struct Main *bmain,
bool create_valid_ids_set,
struct Main *old_bmain,
int idmap_types) ATTR_WARN_UNUSED_RESULT
ATTR_NONNULL(1);
void BKE_main_idmap_destroy(struct IDNameLib_Map *id_map) ATTR_NONNULL();
IDNameLib_Map *BKE_main_idmap_create(Main *bmain,
bool create_valid_ids_set,
Main *old_bmain,
int idmap_types) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1);
void BKE_main_idmap_destroy(IDNameLib_Map *id_map) ATTR_NONNULL();
void BKE_main_idmap_insert_id(struct IDNameLib_Map *id_map, struct ID *id) ATTR_NONNULL();
void BKE_main_idmap_remove_id(struct IDNameLib_Map *id_map, struct ID *id) ATTR_NONNULL();
void BKE_main_idmap_insert_id(IDNameLib_Map *id_map, ID *id) ATTR_NONNULL();
void BKE_main_idmap_remove_id(IDNameLib_Map *id_map, ID *id) ATTR_NONNULL();
struct Main *BKE_main_idmap_main_get(struct IDNameLib_Map *id_map) ATTR_WARN_UNUSED_RESULT
ATTR_NONNULL();
Main *BKE_main_idmap_main_get(IDNameLib_Map *id_map) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL();
struct ID *BKE_main_idmap_lookup_name(struct IDNameLib_Map *id_map,
short id_type,
const char *name,
const struct Library *lib) ATTR_WARN_UNUSED_RESULT
ATTR_NONNULL(1, 3);
struct ID *BKE_main_idmap_lookup_id(struct IDNameLib_Map *id_map,
const struct ID *id) ATTR_WARN_UNUSED_RESULT
ID *BKE_main_idmap_lookup_name(IDNameLib_Map *id_map,
short id_type,
const char *name,
const Library *lib) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1, 3);
ID *BKE_main_idmap_lookup_id(IDNameLib_Map *id_map, const ID *id) ATTR_WARN_UNUSED_RESULT
ATTR_NONNULL(1, 2);
struct ID *BKE_main_idmap_lookup_uuid(struct IDNameLib_Map *id_map,
uint session_uuid) ATTR_WARN_UNUSED_RESULT ATTR_NONNULL(1);
#ifdef __cplusplus
}
#endif
ID *BKE_main_idmap_lookup_uuid(IDNameLib_Map *id_map, uint session_uuid) ATTR_WARN_UNUSED_RESULT
ATTR_NONNULL(1);
@@ -20,16 +20,12 @@
#include "BLI_compiler_attrs.h"
#ifdef __cplusplus
extern "C" {
#endif
struct ID;
struct Main;
struct UniqueName_Map;
struct UniqueName_Map *BKE_main_namemap_create(void) ATTR_WARN_UNUSED_RESULT;
void BKE_main_namemap_destroy(struct UniqueName_Map **r_name_map) ATTR_NONNULL();
UniqueName_Map *BKE_main_namemap_create(void) ATTR_WARN_UNUSED_RESULT;
void BKE_main_namemap_destroy(UniqueName_Map **r_name_map) ATTR_NONNULL();
/**
* Destroy all name_maps in given bmain:
@@ -38,7 +34,7 @@ void BKE_main_namemap_destroy(struct UniqueName_Map **r_name_map) ATTR_NONNULL()
* readfile code).
* - In all of the libraries IDs (for linked IDs).
*/
void BKE_main_namemap_clear(struct Main *bmain) ATTR_NONNULL();
void BKE_main_namemap_clear(Main *bmain) ATTR_NONNULL();
/**
* Ensures the given name is unique within the given ID type.
@@ -50,18 +46,15 @@ void BKE_main_namemap_clear(struct Main *bmain) ATTR_NONNULL();
*
* \return true if the name had to be adjusted for uniqueness.
*/
bool BKE_main_namemap_get_name(struct Main *bmain,
struct ID *id,
char *name,
const bool do_unique_in_bmain) ATTR_NONNULL();
bool BKE_main_namemap_get_name(Main *bmain, ID *id, char *name, const bool do_unique_in_bmain)
ATTR_NONNULL();
/**
* Remove a given name from usage.
*
* Call this whenever deleting or renaming an object.
*/
void BKE_main_namemap_remove_name(struct Main *bmain, struct ID *id, const char *name)
ATTR_NONNULL();
void BKE_main_namemap_remove_name(Main *bmain, ID *id, const char *name) ATTR_NONNULL();
/**
* Check that all ID names in given `bmain` are unique (per ID type and library), and that existing
@@ -69,7 +62,7 @@ void BKE_main_namemap_remove_name(struct Main *bmain, struct ID *id, const char
*
* This is typically called within an assert, or in tests.
*/
bool BKE_main_namemap_validate(struct Main *bmain) ATTR_NONNULL();
bool BKE_main_namemap_validate(Main *bmain) ATTR_NONNULL();
/**
* Same as #BKE_main_namemap_validate, but also fixes any issue by re-generating all name maps,
@@ -77,8 +70,4 @@ bool BKE_main_namemap_validate(struct Main *bmain) ATTR_NONNULL();
*
* This is typically only used in `do_versions` code to fix broken files.
*/
bool BKE_main_namemap_validate_and_fix(struct Main *bmain) ATTR_NONNULL();
#ifdef __cplusplus
}
#endif
bool BKE_main_namemap_validate_and_fix(Main *bmain) ATTR_NONNULL();
+2 -2
View File
@@ -424,8 +424,8 @@ set(SRC
BKE_lightprobe.h
BKE_linestyle.h
BKE_main.h
BKE_main_idmap.h
BKE_main_namemap.h
BKE_main_idmap.hh
BKE_main_namemap.hh
BKE_mask.h
BKE_material.h
BKE_mball.h
@@ -48,8 +48,8 @@
#include "BKE_lib_query.h"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_main_idmap.h"
#include "BKE_main_namemap.h"
#include "BKE_main_idmap.hh"
#include "BKE_main_namemap.hh"
#include "BKE_preferences.h"
#include "BKE_report.h"
#include "BKE_scene.h"
@@ -43,7 +43,7 @@
#include "BKE_lib_query.h"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_material.h"
#include "BKE_object.hh"
#include "BKE_report.h"
+1 -1
View File
@@ -54,7 +54,7 @@
#include "BKE_lib_query.h"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_node.h"
#include "BKE_rigidbody.h"
@@ -31,7 +31,7 @@
#include "BKE_lib_override.hh"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "lib_intern.h"
@@ -11,7 +11,7 @@
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "DNA_ID.h"
#include "DNA_mesh_types.h"
@@ -39,7 +39,7 @@
#include "BKE_lib_query.h"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_node.hh"
#include "BKE_report.h"
#include "BKE_scene.h"
+1 -1
View File
@@ -27,7 +27,7 @@
#include "BKE_lib_query.h"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_packedFile.h"
/* Unused currently. */
+2 -2
View File
@@ -24,8 +24,8 @@
#include "BKE_lib_id.h"
#include "BKE_lib_query.h"
#include "BKE_main.h"
#include "BKE_main_idmap.h"
#include "BKE_main_namemap.h"
#include "BKE_main_idmap.hh"
#include "BKE_main_namemap.hh"
#include "IMB_imbuf.h"
#include "IMB_imbuf_types.h"
@@ -17,7 +17,7 @@
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_main_idmap.h" /* own include */
#include "BKE_main_idmap.hh" /* own include */
/** \file
* \ingroup bke
@@ -9,7 +9,7 @@
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BLI_assert.h"
#include "BLI_bitmap.h"
+2 -2
View File
@@ -75,8 +75,8 @@
#include "BKE_lib_query.h"
#include "BKE_lib_remap.h"
#include "BKE_main.h" /* for Main */
#include "BKE_main_idmap.h"
#include "BKE_main_namemap.h"
#include "BKE_main_idmap.hh"
#include "BKE_main_namemap.hh"
#include "BKE_material.h"
#include "BKE_mesh.hh"
#include "BKE_modifier.hh"
@@ -72,7 +72,7 @@
#include "BKE_lib_id.h"
#include "BKE_lib_override.hh"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_mesh.hh"
#include "BKE_modifier.hh"
#include "BKE_nla.h"
@@ -24,7 +24,7 @@
#include "BKE_lib_id.h"
#include "BKE_lib_override.hh"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_mesh_legacy_convert.hh"
#include "BKE_node.hh"
#include "BKE_node_runtime.hh"
@@ -53,7 +53,7 @@
#include "BKE_layer.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_material.h"
#include "BKE_mesh.hh"
#include "BKE_node.hh"
@@ -109,7 +109,7 @@
#include "BKE_lib_override.hh"
#include "BKE_lib_query.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_node.hh"
#include "BKE_packedFile.h"
#include "BKE_report.h"
@@ -56,7 +56,7 @@
#include "BKE_idtype.h"
#include "BKE_lib_id.h"
#include "BKE_main.h"
#include "BKE_main_idmap.h"
#include "BKE_main_idmap.hh"
#include "BKE_preferences.h"
#include "BKE_preview_image.hh"
@@ -38,7 +38,7 @@
#include "BKE_lib_override.hh"
#include "BKE_library.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_modifier.hh"
#include "BKE_node.hh"
#include "BKE_object.hh"
+1 -1
View File
@@ -18,7 +18,7 @@
#include "BKE_icons.h"
#include "BKE_lib_id.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_object.hh"
#include "RNA_access.hh"
@@ -75,7 +75,7 @@
#include "BKE_lib_override.hh"
#include "BKE_lib_remap.h"
#include "BKE_main.h"
#include "BKE_main_namemap.h"
#include "BKE_main_namemap.hh"
#include "BKE_packedFile.h"
#include "BKE_report.h"
#include "BKE_scene.h"