Changeset View
Changeset View
Standalone View
Standalone View
source/blender/makesdna/DNA_ID.h
| Show First 20 Lines • Show All 121 Lines • ▼ Show 20 Lines | typedef struct ID { | ||||
| char name[66]; /* MAX_ID_NAME */ | char name[66]; /* MAX_ID_NAME */ | ||||
| /** | /** | ||||
| * LIB_... flags report on status of the datablock this ID belongs to (persistent, saved to and read from .blend). | * LIB_... flags report on status of the datablock this ID belongs to (persistent, saved to and read from .blend). | ||||
| */ | */ | ||||
| short flag; | short flag; | ||||
| /** | /** | ||||
| * LIB_TAG_... tags (runtime only, cleared at read time). | * LIB_TAG_... tags (runtime only, cleared at read time). | ||||
| */ | */ | ||||
| short tag; | int tag; | ||||
| short pad_s1; | |||||
| int us; | int us; | ||||
| int icon_id; | int icon_id; | ||||
| IDProperty *properties; | IDProperty *properties; | ||||
| } ID; | } ID; | ||||
| /** | /** | ||||
| * For each library file used, a Library struct is added to Main | * For each library file used, a Library struct is added to Main | ||||
| * WARNING: readfile.c, expand_doit() reads this struct without DNA check! | * WARNING: readfile.c, expand_doit() reads this struct without DNA check! | ||||
| ▲ Show 20 Lines • Show All 205 Lines • ▼ Show 20 Lines | enum { | ||||
| /* RESET_AFTER_USE tag existing data before linking so we know what is new. */ | /* RESET_AFTER_USE tag existing data before linking so we know what is new. */ | ||||
| LIB_TAG_PRE_EXISTING = 1 << 11, | LIB_TAG_PRE_EXISTING = 1 << 11, | ||||
| /* RESET_AFTER_USE, used by update code (depsgraph). */ | /* RESET_AFTER_USE, used by update code (depsgraph). */ | ||||
| LIB_TAG_ID_RECALC = 1 << 12, | LIB_TAG_ID_RECALC = 1 << 12, | ||||
| LIB_TAG_ID_RECALC_DATA = 1 << 13, | LIB_TAG_ID_RECALC_DATA = 1 << 13, | ||||
| LIB_TAG_ANIM_NO_RECALC = 1 << 14, | LIB_TAG_ANIM_NO_RECALC = 1 << 14, | ||||
| LIB_TAG_ID_RECALC_ALL = (LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA), | LIB_TAG_ID_RECALC_ALL = (LIB_TAG_ID_RECALC | LIB_TAG_ID_RECALC_DATA), | ||||
| /* RESET_NEVER tag datablock for freeing behavior (usually set when copying real one into temp/runtime one). */ | |||||
| LIB_TAG_FREE_NO_MAIN = 1 << 16, /* Datablock is not listed in Main database. */ | |||||
| LIB_TAG_FREE_NO_USER_REFCOUNT = 1 << 17, /* Datablock does not refcount usages of other IDs. */ | |||||
| /* Datablock was not allocated by standard system (BKE_libblock_alloc), do not free its memory | |||||
| * (usual type-specific freeing is called though). */ | |||||
| LIB_TAG_FREE_NOT_ALLOCATED = 1 << 18, | |||||
| }; | }; | ||||
| /* To filter ID types (filter_id) */ | /* To filter ID types (filter_id) */ | ||||
| /* XXX We cannot put all needed IDs inside an enum... | /* XXX We cannot put all needed IDs inside an enum... | ||||
| * We'll have to see whether we can fit all needed ones inside 32 values, | * We'll have to see whether we can fit all needed ones inside 32 values, | ||||
| * or if we need to fallback to longlong defines :/ | * or if we need to fallback to longlong defines :/ | ||||
| */ | */ | ||||
| enum { | enum { | ||||
| ▲ Show 20 Lines • Show All 76 Lines • Show Last 20 Lines | |||||