Blender  V3.3
DNA_ID_enums.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 
8 #pragma once
9 
10 #ifdef __cplusplus
11 extern "C" {
12 #endif
13 
14 enum eIconSizes {
17 
19 };
20 
28 #ifdef __BIG_ENDIAN__
29 /* big endian */
30 # define MAKE_ID2(c, d) ((c) << 8 | (d))
31 #else
32 /* little endian */
33 # define MAKE_ID2(c, d) ((d) << 8 | (c))
34 #endif
35 
44 typedef enum ID_Type {
45  ID_SCE = MAKE_ID2('S', 'C'), /* Scene */
46  ID_LI = MAKE_ID2('L', 'I'), /* Library */
47  ID_OB = MAKE_ID2('O', 'B'), /* Object */
48  ID_ME = MAKE_ID2('M', 'E'), /* Mesh */
49  ID_CU_LEGACY = MAKE_ID2('C', 'U'), /* Curve. ID_CV should be used in the future (see T95355). */
50  ID_MB = MAKE_ID2('M', 'B'), /* MetaBall */
51  ID_MA = MAKE_ID2('M', 'A'), /* Material */
52  ID_TE = MAKE_ID2('T', 'E'), /* Tex (Texture) */
53  ID_IM = MAKE_ID2('I', 'M'), /* Image */
54  ID_LT = MAKE_ID2('L', 'T'), /* Lattice */
55  ID_LA = MAKE_ID2('L', 'A'), /* Light */
56  ID_CA = MAKE_ID2('C', 'A'), /* Camera */
57  ID_IP = MAKE_ID2('I', 'P'), /* Ipo (depreciated, replaced by FCurves) */
58  ID_KE = MAKE_ID2('K', 'E'), /* Key (shape key) */
59  ID_WO = MAKE_ID2('W', 'O'), /* World */
60  ID_SCR = MAKE_ID2('S', 'R'), /* Screen */
61  ID_VF = MAKE_ID2('V', 'F'), /* VFont (Vector Font) */
62  ID_TXT = MAKE_ID2('T', 'X'), /* Text */
63  ID_SPK = MAKE_ID2('S', 'K'), /* Speaker */
64  ID_SO = MAKE_ID2('S', 'O'), /* Sound */
65  ID_GR = MAKE_ID2('G', 'R'), /* Collection */
66  ID_AR = MAKE_ID2('A', 'R'), /* bArmature */
67  ID_AC = MAKE_ID2('A', 'C'), /* bAction */
68  ID_NT = MAKE_ID2('N', 'T'), /* bNodeTree */
69  ID_BR = MAKE_ID2('B', 'R'), /* Brush */
70  ID_PA = MAKE_ID2('P', 'A'), /* ParticleSettings */
71  ID_GD = MAKE_ID2('G', 'D'), /* bGPdata, (Grease Pencil) */
72  ID_WM = MAKE_ID2('W', 'M'), /* WindowManager */
73  ID_MC = MAKE_ID2('M', 'C'), /* MovieClip */
74  ID_MSK = MAKE_ID2('M', 'S'), /* Mask */
75  ID_LS = MAKE_ID2('L', 'S'), /* FreestyleLineStyle */
76  ID_PAL = MAKE_ID2('P', 'L'), /* Palette */
77  ID_PC = MAKE_ID2('P', 'C'), /* PaintCurve */
78  ID_CF = MAKE_ID2('C', 'F'), /* CacheFile */
79  ID_WS = MAKE_ID2('W', 'S'), /* WorkSpace */
80  ID_LP = MAKE_ID2('L', 'P'), /* LightProbe */
81  ID_CV = MAKE_ID2('C', 'V'), /* Curves */
82  ID_PT = MAKE_ID2('P', 'T'), /* PointCloud */
83  ID_VO = MAKE_ID2('V', 'O'), /* Volume */
84  ID_SIM = MAKE_ID2('S', 'I'), /* Simulation (geometry node groups) */
86 
87 /* Only used as 'placeholder' in .blend files for directly linked data-blocks. */
88 #define ID_LINK_PLACEHOLDER MAKE_ID2('I', 'D') /* (internal use only) */
89 
90 /* Deprecated. */
91 #define ID_SCRN MAKE_ID2('S', 'N')
92 
93 /* NOTE: Fake IDs, needed for `g.sipo->blocktype` or outliner. */
94 #define ID_SEQ MAKE_ID2('S', 'Q')
95 /* constraint */
96 #define ID_CO MAKE_ID2('C', 'O')
97 /* pose (action channel, used to be ID_AC in code, so we keep code for backwards compatible). */
98 #define ID_PO MAKE_ID2('A', 'C')
99 /* used in outliner... */
100 #define ID_NLA MAKE_ID2('N', 'L')
101 /* fluidsim Ipo */
102 #define ID_FLUIDSIM MAKE_ID2('F', 'S')
103 
104 #ifdef __cplusplus
105 }
106 #endif
eIconSizes
Definition: DNA_ID_enums.h:14
@ ICON_SIZE_PREVIEW
Definition: DNA_ID_enums.h:16
@ ICON_SIZE_ICON
Definition: DNA_ID_enums.h:15
@ NUM_ICON_SIZES
Definition: DNA_ID_enums.h:18
ID_Type
Definition: DNA_ID_enums.h:44
@ ID_WM
Definition: DNA_ID_enums.h:72
@ ID_CA
Definition: DNA_ID_enums.h:56
@ ID_AR
Definition: DNA_ID_enums.h:66
@ ID_MC
Definition: DNA_ID_enums.h:73
@ ID_CF
Definition: DNA_ID_enums.h:78
@ ID_LI
Definition: DNA_ID_enums.h:46
@ ID_TE
Definition: DNA_ID_enums.h:52
@ ID_IM
Definition: DNA_ID_enums.h:53
@ ID_VO
Definition: DNA_ID_enums.h:83
@ ID_WS
Definition: DNA_ID_enums.h:79
@ ID_NT
Definition: DNA_ID_enums.h:68
@ ID_LA
Definition: DNA_ID_enums.h:55
@ ID_KE
Definition: DNA_ID_enums.h:58
@ ID_TXT
Definition: DNA_ID_enums.h:62
@ ID_SO
Definition: DNA_ID_enums.h:64
@ ID_SCE
Definition: DNA_ID_enums.h:45
@ ID_LS
Definition: DNA_ID_enums.h:75
@ ID_MSK
Definition: DNA_ID_enums.h:74
@ ID_GD
Definition: DNA_ID_enums.h:71
@ ID_CV
Definition: DNA_ID_enums.h:81
@ ID_PAL
Definition: DNA_ID_enums.h:76
@ ID_BR
Definition: DNA_ID_enums.h:69
@ ID_LP
Definition: DNA_ID_enums.h:80
@ ID_WO
Definition: DNA_ID_enums.h:59
@ ID_SIM
Definition: DNA_ID_enums.h:84
@ ID_MA
Definition: DNA_ID_enums.h:51
@ ID_AC
Definition: DNA_ID_enums.h:67
@ ID_SCR
Definition: DNA_ID_enums.h:60
@ ID_CU_LEGACY
Definition: DNA_ID_enums.h:49
@ ID_VF
Definition: DNA_ID_enums.h:61
@ ID_ME
Definition: DNA_ID_enums.h:48
@ ID_IP
Definition: DNA_ID_enums.h:57
@ ID_GR
Definition: DNA_ID_enums.h:65
@ ID_SPK
Definition: DNA_ID_enums.h:63
@ ID_MB
Definition: DNA_ID_enums.h:50
@ ID_LT
Definition: DNA_ID_enums.h:54
@ ID_OB
Definition: DNA_ID_enums.h:47
@ ID_PA
Definition: DNA_ID_enums.h:70
@ ID_PT
Definition: DNA_ID_enums.h:82
@ ID_PC
Definition: DNA_ID_enums.h:77
#define MAKE_ID2(c, d)
Definition: DNA_ID_enums.h:33