diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2018-11-07 18:06:36 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2018-11-07 22:58:53 +0300 |
commit | 1ff8be24ef8970f140865dfb118112ec08e7dfad (patch) | |
tree | 38905213208df3eee8a1c9452e5fb0b5976aceca /source/blender/blenkernel/BKE_main.h | |
parent | 4b2110fc86e59136efd7ea294453678e848b4b74 (diff) |
Cleanup/Refactor: move Main stuff into BKE's new main.c file (and header).
We already had a BKE_main.h header, no reason not to put there
Main-specific functions, BKE_library has already more than enough to
handle with IDs and library management!
Diffstat (limited to 'source/blender/blenkernel/BKE_main.h')
-rw-r--r-- | source/blender/blenkernel/BKE_main.h | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/source/blender/blenkernel/BKE_main.h b/source/blender/blenkernel/BKE_main.h index 492962f3b00..e5a816b92ce 100644 --- a/source/blender/blenkernel/BKE_main.h +++ b/source/blender/blenkernel/BKE_main.h @@ -42,15 +42,20 @@ */ #include "DNA_listBase.h" +#include "BLI_compiler_attrs.h" +#include "BLI_sys_types.h" + #ifdef __cplusplus extern "C" { #endif +struct BlendThumbnail; +struct BLI_mempool; struct Depsgraph; +struct GHash; +struct ImBuf; struct Library; struct MainLock; -struct GHash; -struct BLI_mempool; /* Blender thumbnail, as written on file (width, height, and data as char RGBA). */ /* We pack pixel data after that struct. */ @@ -134,6 +139,27 @@ typedef struct Main { struct MainLock *lock; } Main; +struct Main *BKE_main_new(void); +void BKE_main_free(struct Main *mainvar); + +void BKE_main_lock(struct Main *bmain); +void BKE_main_unlock(struct Main *bmain); + +void BKE_main_relations_create(struct Main *bmain); +void BKE_main_relations_free(struct Main *bmain); + +struct BlendThumbnail *BKE_main_thumbnail_from_imbuf(struct Main *bmain, struct ImBuf *img); +struct ImBuf *BKE_main_thumbnail_to_imbuf(struct Main *bmain, struct BlendThumbnail *data); +void BKE_main_thumbnail_create(struct Main *bmain); + +const char *BKE_main_blendfile_path(const struct Main *bmain) ATTR_NONNULL(); +const char *BKE_main_blendfile_path_from_global(void); + +struct ListBase *which_libbase(struct Main *mainlib, short type); + +#define MAX_LIBARRAY 37 +int set_listbasepointers(struct Main *main, struct ListBase *lb[MAX_LIBARRAY]); + #define MAIN_VERSION_ATLEAST(main, ver, subver) \ ((main)->versionfile > (ver) || (main->versionfile == (ver) && (main)->subversionfile >= (subver))) |