Blender
V3.3
|
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "MEM_guardedalloc.h"
#include "BLI_listbase.h"
#include "BLI_string.h"
#include "BLI_utildefines.h"
#include "IMB_imbuf.h"
#include "IMB_moviecache.h"
#include "BKE_addon.h"
#include "BKE_blender.h"
#include "BKE_blender_user_menu.h"
#include "BKE_blender_version.h"
#include "BKE_blendfile.h"
#include "BKE_brush.h"
#include "BKE_cachefile.h"
#include "BKE_callbacks.h"
#include "BKE_global.h"
#include "BKE_idprop.h"
#include "BKE_image.h"
#include "BKE_layer.h"
#include "BKE_main.h"
#include "BKE_node.h"
#include "BKE_report.h"
#include "BKE_scene.h"
#include "BKE_screen.h"
#include "BKE_studiolight.h"
#include "DEG_depsgraph.h"
#include "RE_pipeline.h"
#include "RE_texture.h"
#include "SEQ_sequencer.h"
#include "BLF_api.h"
Go to the source code of this file.
Classes | |
struct | AtExitData |
Macros | |
#define | U BLI_STATIC_ASSERT(false, "Global 'U' not allowed, only use arguments passed in!") |
#define | DATA_SWAP(id) |
#define | LIST_SWAP(id) |
#define | FLAG_SWAP(id, ty, flags) |
Functions | |
Blender Free on Exit | |
void | BKE_blender_free (void) |
Blender #Global Initialize/Clear | |
void | BKE_blender_globals_init (void) |
void | BKE_blender_globals_clear (void) |
Blender Preferences | |
static void | keymap_item_free (wmKeyMapItem *kmi) |
void | BKE_blender_userdef_data_swap (UserDef *userdef_a, UserDef *userdef_b) |
void | BKE_blender_userdef_data_set (UserDef *userdef) |
void | BKE_blender_userdef_data_set_and_free (UserDef *userdef) |
static void | userdef_free_keymaps (UserDef *userdef) |
static void | userdef_free_keyconfig_prefs (UserDef *userdef) |
static void | userdef_free_user_menus (UserDef *userdef) |
static void | userdef_free_addons (UserDef *userdef) |
void | BKE_blender_userdef_data_free (UserDef *userdef, bool clear_fonts) |
Blender Preferences (Application Templates) | |
void | BKE_blender_userdef_app_template_data_swap (UserDef *userdef_a, UserDef *userdef_b) |
void | BKE_blender_userdef_app_template_data_set (UserDef *userdef) |
void | BKE_blender_userdef_app_template_data_set_and_free (UserDef *userdef) |
Variables | |
Global | G |
UserDef | U |
Blender Version Access | |
static char | blender_version_string [48] = "" |
static void | blender_version_init (void) |
const char * | BKE_blender_version_string (void) |
void | BKE_blender_version_blendfile_string_from_values (char *str_buff, const size_t str_buff_len, const short file_version, const short file_subversion) |
bool | BKE_blender_version_is_alpha (void) |
Blender's AtExit | |
| |
static struct AtExitData * | g_atexit = NULL |
void | BKE_blender_atexit_register (void(*func)(void *user_data), void *user_data) |
void | BKE_blender_atexit_unregister (void(*func)(void *user_data), const void *user_data) |
void | BKE_blender_atexit (void) |
Application level startup/shutdown functionality.
Definition in file blender.c.
#define U BLI_STATIC_ASSERT(false, "Global 'U' not allowed, only use arguments passed in!") |
Definition at line 421 of file blender.c.
References free(), AtExitData::func, g_atexit, AtExitData::next, NULL, and AtExitData::user_data.
Referenced by BlendfileLoadingBaseTest::TearDownTestCase(), and WM_exit_ex().
Definition at line 396 of file blender.c.
References AtExitData::func, g_atexit, AtExitData::next, AtExitData::user_data, and user_data.
Referenced by blender::bke::AssetLibraryService::allocate_service_instance(), ensure_ed_screen_context_functions(), and main().
Definition at line 405 of file blender.c.
References free(), AtExitData::func, g_atexit, AtExitData::next, AtExitData::user_data, and user_data.
Referenced by main().
Only to be called on exit Blender.
Definition at line 58 of file blender.c.
References BKE_brush_system_exit(), BKE_cachefiles_exit(), BKE_callback_global_finalize(), BKE_main_free(), BKE_node_system_exit(), BKE_spacetypes_free(), BKE_studiolight_free(), DEG_free_node_types(), Global::file, G, G_MAIN, IMB_exit(), IMB_moviecache_destruct(), Global::log, NULL, and RE_texture_rng_exit().
Referenced by BlendfileLoadingBaseTest::TearDownTestCase(), and WM_exit_ex().
Definition at line 182 of file blender.c.
References BKE_main_free(), G_MAIN, and NULL.
Referenced by setup_app_data().
Definition at line 161 of file blender.c.
References BKE_main_new(), blender_version_init(), Global::f, G, G_FLAG_SCRIPT_AUTOEXEC, G_MAIN, Global::ima, Global::level, and Global::log.
Referenced by main(), and BlendfileLoadingBaseTest::SetUpTestCase().
Definition at line 369 of file blender.c.
References BKE_blender_userdef_app_template_data_swap(), and BKE_blender_userdef_data_free().
Referenced by BKE_blender_userdef_app_template_data_set_and_free().
Definition at line 375 of file blender.c.
References BKE_blender_userdef_app_template_data_set(), and MEM_freeN.
Referenced by wm_homefile_read_ex().
void BKE_blender_userdef_app_template_data_swap | ( | struct UserDef * | userdef_a, |
struct UserDef * | userdef_b | ||
) |
Write U from userdef. This function defines which settings a template will override for the user preferences.
Definition at line 312 of file blender.c.
References DATA_SWAP, FLAG_SWAP, LIST_SWAP, USER_SAVE_PROMPT, USER_SHOW_GIZMO_NAVIGATE, and USER_SPLASH_DISABLE.
Referenced by BKE_blender_userdef_app_template_data_set(), and BKE_blendfile_userdef_write_app_template().
When loading a new userdef from file, or when exiting Blender.
Definition at line 278 of file blender.c.
References UserDef::asset_libraries, UserDef::autoexec_paths, BLF_default_set(), BLF_unload_id(), BLI_freelistN(), LISTBASE_FOREACH, UserDef::themes, UserDef::uifonts, UserDef::uistyles, userdef_free_addons(), userdef_free_keyconfig_prefs(), userdef_free_keymaps(), and userdef_free_user_menus().
Referenced by BKE_blender_userdef_app_template_data_set(), BKE_blender_userdef_data_set(), BKE_blendfile_userdef_write_app_template(), and WM_exit_ex().
Definition at line 210 of file blender.c.
References BKE_blender_userdef_data_free(), and BKE_blender_userdef_data_swap().
Referenced by BKE_blender_userdef_data_set_and_free().
Definition at line 216 of file blender.c.
References BKE_blender_userdef_data_set(), and MEM_freeN.
Referenced by setup_app_userdef(), and wm_homefile_read_ex().
Definition at line 205 of file blender.c.
References SWAP.
Referenced by BKE_blender_userdef_data_set().
void BKE_blender_version_blendfile_string_from_values | ( | char * | str_buff, |
const size_t | str_buff_len, | ||
const short | file_version, | ||
const short | file_subversion | ||
) |
Fill in given string buffer with user-readable formated file version and subversion (if provided).
str_buff | a char buffer where the formated string is written, minimal recommended size is 8, or 16 if subversion is provided. |
file_subversion | the file subversion, if given value < 0, it is ignored, and only the file_version is used. |
Definition at line 129 of file blender.c.
References BLI_snprintf().
Referenced by file_forwardcompat_detailed_info_show(), is_minversion_older_than_blender(), and uiTemplateStatusInfo().
Definition at line 149 of file blender.c.
References BLENDER_VERSION_CYCLE, STREQ, and STRINGIFY.
Referenced by BLO_sanitize_experimental_features_userpref_blend().
const char* BKE_blender_version_string | ( | void | ) |
User readable version string.
Definition at line 124 of file blender.c.
References blender_version_string.
Referenced by arg_handle_debug_mode_set(), arg_handle_print_help(), blender::io::alembic::create_abc_metadata(), ED_info_statusbar_string_ex(), blender::io::usd::export_startjob(), DocumentExporter::exportCurrentScene(), make_app_info(), print_version_full(), print_version_short(), blender::io::obj::TEST_F(), wm_block_create_splash(), blender::io::obj::OBJWriter::write_header(), and blender::io::obj::MTLWriter::write_header().
Definition at line 96 of file blender.c.
References ARRAY_SIZE, BLENDER_VERSION, BLENDER_VERSION_CYCLE, BLENDER_VERSION_PATCH, blender_version_string, BLI_assert_msg, BLI_snprintf(), STREQ, and STRINGIFY.
Referenced by BKE_blender_globals_init().
|
static |
Definition at line 195 of file blender.c.
References IDP_FreeProperty(), MEM_freeN, wmKeyMapItem::properties, and wmKeyMapItem::ptr.
Referenced by userdef_free_keymaps().
Definition at line 269 of file blender.c.
References UserDef::addons, BKE_addon_free(), BLI_listbase_clear(), and ListBase::first.
Referenced by BKE_blender_userdef_data_free().
Definition at line 249 of file blender.c.
References BLI_listbase_clear(), ListBase::first, IDP_FreeProperty(), MEM_freeN, and UserDef::user_keyconfig_prefs.
Referenced by BKE_blender_userdef_data_free().
Definition at line 222 of file blender.c.
References BLI_freelistN(), BLI_listbase_clear(), ListBase::first, keymap_item_free(), LISTBASE_FOREACH, MEM_freeN, and UserDef::user_keymaps.
Referenced by BKE_blender_userdef_data_free().
Definition at line 260 of file blender.c.
References BKE_blender_user_menu_item_free_list(), ListBase::first, MEM_freeN, and UserDef::user_menus.
Referenced by BKE_blender_userdef_data_free().
|
static |
Definition at line 94 of file blender.c.
Referenced by BKE_blender_version_string(), and blender_version_init().
Global G |
Defined in blender.c
Definition at line 51 of file blender.c.
Referenced by BKE_blender_free(), and BKE_blender_globals_init().
|
static |
Referenced by BKE_blender_atexit(), BKE_blender_atexit_register(), and BKE_blender_atexit_unregister().