Blender  V3.3
asset_type.cc
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
7 #include "BLI_utildefines.h"
8 
9 #include "DNA_userdef_types.h"
10 
11 #include "BKE_lib_id.h"
12 
13 #include "ED_asset_type.h"
14 
16 {
17  /* Remember to update #ED_ASSET_TYPE_IDS_NON_EXPERIMENTAL_UI_STRING and
18  * #ED_ASSET_TYPE_IDS_NON_EXPERIMENTAL_FLAGS() with this! */
19  return ELEM(GS(id->name), ID_MA, ID_GR, ID_OB, ID_AC, ID_WO, ID_NT);
20 }
21 
23 {
24  if (!BKE_id_can_be_asset(id)) {
25  return false;
26  }
27 
28  if (U.experimental.use_extended_asset_browser) {
29  /* The "Extended Asset Browser" experimental feature flag enables all asset types that can
30  * technically be assets. */
31  return true;
32  }
33 
35 }
36 
38 {
39  if (U.experimental.use_extended_asset_browser) {
40  return FILTER_ID_ALL;
41  }
42 
44 }
bool BKE_id_can_be_asset(const struct ID *id)
#define ELEM(...)
#define FILTER_ID_ALL
Definition: DNA_ID.h:939
@ ID_NT
Definition: DNA_ID_enums.h:68
@ ID_WO
Definition: DNA_ID_enums.h:59
@ ID_MA
Definition: DNA_ID_enums.h:51
@ ID_AC
Definition: DNA_ID_enums.h:67
@ ID_GR
Definition: DNA_ID_enums.h:65
@ ID_OB
Definition: DNA_ID_enums.h:47
#define ED_ASSET_TYPE_IDS_NON_EXPERIMENTAL_FLAGS
Definition: ED_asset_type.h:18
bool ED_asset_type_is_supported(const ID *id)
Definition: asset_type.cc:22
int64_t ED_asset_types_supported_as_filter_flags()
Definition: asset_type.cc:37
bool ED_asset_type_id_is_non_experimental(const ID *id)
Definition: asset_type.cc:15
unsigned int U
Definition: btGjkEpa3.h:78
#define GS(x)
Definition: iris.c:225
__int64 int64_t
Definition: stdint.h:89
Definition: DNA_ID.h:368
char name[66]
Definition: DNA_ID.h:378