Blender  V2.93
DNA_ID_enums.h
Go to the documentation of this file.
1 /*
2  * This program is free software; you can redistribute it and/or
3  * modify it under the terms of the GNU General Public License
4  * as published by the Free Software Foundation; either version 2
5  * of the License, or (at your option) any later version.
6  *
7  * This program is distributed in the hope that it will be useful,
8  * but WITHOUT ANY WARRANTY; without even the implied warranty of
9  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
10  * GNU General Public License for more details.
11  *
12  * You should have received a copy of the GNU General Public License
13  * along with this program; if not, write to the Free Software Foundation,
14  * Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
15  */
16 
22 #pragma once
23 
24 #ifdef __cplusplus
25 extern "C" {
26 #endif
27 
28 enum eIconSizes {
31 
33 };
34 
42 #ifdef __BIG_ENDIAN__
43 /* big endian */
44 # define MAKE_ID2(c, d) ((c) << 8 | (d))
45 #else
46 /* little endian */
47 # define MAKE_ID2(c, d) ((d) << 8 | (c))
48 #endif
49 
56 typedef enum ID_Type {
57  ID_SCE = MAKE_ID2('S', 'C'), /* Scene */
58  ID_LI = MAKE_ID2('L', 'I'), /* Library */
59  ID_OB = MAKE_ID2('O', 'B'), /* Object */
60  ID_ME = MAKE_ID2('M', 'E'), /* Mesh */
61  ID_CU = MAKE_ID2('C', 'U'), /* Curve */
62  ID_MB = MAKE_ID2('M', 'B'), /* MetaBall */
63  ID_MA = MAKE_ID2('M', 'A'), /* Material */
64  ID_TE = MAKE_ID2('T', 'E'), /* Tex (Texture) */
65  ID_IM = MAKE_ID2('I', 'M'), /* Image */
66  ID_LT = MAKE_ID2('L', 'T'), /* Lattice */
67  ID_LA = MAKE_ID2('L', 'A'), /* Light */
68  ID_CA = MAKE_ID2('C', 'A'), /* Camera */
69  ID_IP = MAKE_ID2('I', 'P'), /* Ipo (depreciated, replaced by FCurves) */
70  ID_KE = MAKE_ID2('K', 'E'), /* Key (shape key) */
71  ID_WO = MAKE_ID2('W', 'O'), /* World */
72  ID_SCR = MAKE_ID2('S', 'R'), /* Screen */
73  ID_VF = MAKE_ID2('V', 'F'), /* VFont (Vector Font) */
74  ID_TXT = MAKE_ID2('T', 'X'), /* Text */
75  ID_SPK = MAKE_ID2('S', 'K'), /* Speaker */
76  ID_SO = MAKE_ID2('S', 'O'), /* Sound */
77  ID_GR = MAKE_ID2('G', 'R'), /* Collection */
78  ID_AR = MAKE_ID2('A', 'R'), /* bArmature */
79  ID_AC = MAKE_ID2('A', 'C'), /* bAction */
80  ID_NT = MAKE_ID2('N', 'T'), /* bNodeTree */
81  ID_BR = MAKE_ID2('B', 'R'), /* Brush */
82  ID_PA = MAKE_ID2('P', 'A'), /* ParticleSettings */
83  ID_GD = MAKE_ID2('G', 'D'), /* bGPdata, (Grease Pencil) */
84  ID_WM = MAKE_ID2('W', 'M'), /* WindowManager */
85  ID_MC = MAKE_ID2('M', 'C'), /* MovieClip */
86  ID_MSK = MAKE_ID2('M', 'S'), /* Mask */
87  ID_LS = MAKE_ID2('L', 'S'), /* FreestyleLineStyle */
88  ID_PAL = MAKE_ID2('P', 'L'), /* Palette */
89  ID_PC = MAKE_ID2('P', 'C'), /* PaintCurve */
90  ID_CF = MAKE_ID2('C', 'F'), /* CacheFile */
91  ID_WS = MAKE_ID2('W', 'S'), /* WorkSpace */
92  ID_LP = MAKE_ID2('L', 'P'), /* LightProbe */
93  ID_HA = MAKE_ID2('H', 'A'), /* Hair */
94  ID_PT = MAKE_ID2('P', 'T'), /* PointCloud */
95  ID_VO = MAKE_ID2('V', 'O'), /* Volume */
96  ID_SIM = MAKE_ID2('S', 'I'), /* Simulation (geometry node groups) */
98 
99 /* Only used as 'placeholder' in .blend files for directly linked data-blocks. */
100 #define ID_LINK_PLACEHOLDER MAKE_ID2('I', 'D') /* (internal use only) */
101 
102 /* Deprecated. */
103 #define ID_SCRN MAKE_ID2('S', 'N')
104 
105 /* NOTE: Fake IDs, needed for `g.sipo->blocktype` or outliner. */
106 #define ID_SEQ MAKE_ID2('S', 'Q')
107 /* constraint */
108 #define ID_CO MAKE_ID2('C', 'O')
109 /* pose (action channel, used to be ID_AC in code, so we keep code for backwards compatible). */
110 #define ID_PO MAKE_ID2('A', 'C')
111 /* used in outliner... */
112 #define ID_NLA MAKE_ID2('N', 'L')
113 /* fluidsim Ipo */
114 #define ID_FLUIDSIM MAKE_ID2('F', 'S')
115 
116 #ifdef __cplusplus
117 }
118 #endif
eIconSizes
Definition: DNA_ID_enums.h:28
@ ICON_SIZE_PREVIEW
Definition: DNA_ID_enums.h:30
@ ICON_SIZE_ICON
Definition: DNA_ID_enums.h:29
@ NUM_ICON_SIZES
Definition: DNA_ID_enums.h:32
ID_Type
Definition: DNA_ID_enums.h:56
@ ID_WM
Definition: DNA_ID_enums.h:84
@ ID_CA
Definition: DNA_ID_enums.h:68
@ ID_AR
Definition: DNA_ID_enums.h:78
@ ID_MC
Definition: DNA_ID_enums.h:85
@ ID_CF
Definition: DNA_ID_enums.h:90
@ ID_LI
Definition: DNA_ID_enums.h:58
@ ID_TE
Definition: DNA_ID_enums.h:64
@ ID_IM
Definition: DNA_ID_enums.h:65
@ ID_VO
Definition: DNA_ID_enums.h:95
@ ID_WS
Definition: DNA_ID_enums.h:91
@ ID_NT
Definition: DNA_ID_enums.h:80
@ ID_LA
Definition: DNA_ID_enums.h:67
@ ID_KE
Definition: DNA_ID_enums.h:70
@ ID_TXT
Definition: DNA_ID_enums.h:74
@ ID_SO
Definition: DNA_ID_enums.h:76
@ ID_SCE
Definition: DNA_ID_enums.h:57
@ ID_LS
Definition: DNA_ID_enums.h:87
@ ID_MSK
Definition: DNA_ID_enums.h:86
@ ID_GD
Definition: DNA_ID_enums.h:83
@ ID_PAL
Definition: DNA_ID_enums.h:88
@ ID_BR
Definition: DNA_ID_enums.h:81
@ ID_LP
Definition: DNA_ID_enums.h:92
@ ID_HA
Definition: DNA_ID_enums.h:93
@ ID_WO
Definition: DNA_ID_enums.h:71
@ ID_SIM
Definition: DNA_ID_enums.h:96
@ ID_MA
Definition: DNA_ID_enums.h:63
@ ID_AC
Definition: DNA_ID_enums.h:79
@ ID_SCR
Definition: DNA_ID_enums.h:72
@ ID_VF
Definition: DNA_ID_enums.h:73
@ ID_ME
Definition: DNA_ID_enums.h:60
@ ID_IP
Definition: DNA_ID_enums.h:69
@ ID_GR
Definition: DNA_ID_enums.h:77
@ ID_SPK
Definition: DNA_ID_enums.h:75
@ ID_MB
Definition: DNA_ID_enums.h:62
@ ID_LT
Definition: DNA_ID_enums.h:66
@ ID_OB
Definition: DNA_ID_enums.h:59
@ ID_PA
Definition: DNA_ID_enums.h:82
@ ID_PT
Definition: DNA_ID_enums.h:94
@ ID_CU
Definition: DNA_ID_enums.h:61
@ ID_PC
Definition: DNA_ID_enums.h:89
#define MAKE_ID2(c, d)
Definition: DNA_ID_enums.h:47