22#include <api/common/types/enums.pb.h>
23#include <api/board/board_types.pb.h>
24#include <api/schematic/schematic_types.pb.h>
40 case types::KiCadObjectType::KOT_PCB_PAD:
return PCB_PAD_T;
41 case types::KiCadObjectType::KOT_PCB_SHAPE:
return PCB_SHAPE_T;
43 case types::KiCadObjectType::KOT_PCB_FIELD:
return PCB_FIELD_T;
45 case types::KiCadObjectType::KOT_PCB_TEXT:
return PCB_TEXT_T;
46 case types::KiCadObjectType::KOT_PCB_TEXTBOX:
return PCB_TEXTBOX_T;
47 case types::KiCadObjectType::KOT_PCB_TABLE:
return PCB_TABLE_T;
49 case types::KiCadObjectType::KOT_PCB_TRACE:
return PCB_TRACE_T;
50 case types::KiCadObjectType::KOT_PCB_VIA:
return PCB_VIA_T;
51 case types::KiCadObjectType::KOT_PCB_ARC:
return PCB_ARC_T;
52 case types::KiCadObjectType::KOT_PCB_MARKER:
return PCB_MARKER_T;
54 case types::KiCadObjectType::KOT_PCB_ZONE:
return PCB_ZONE_T;
55 case types::KiCadObjectType::KOT_PCB_GROUP:
return PCB_GROUP_T;
56 case types::KiCadObjectType::KOT_SCH_GROUP:
return SCH_GROUP_T;
57 case types::KiCadObjectType::KOT_SCH_MARKER:
return SCH_MARKER_T;
58 case types::KiCadObjectType::KOT_SCH_JUNCTION:
return SCH_JUNCTION_T;
62 case types::KiCadObjectType::KOT_SCH_LINE:
return SCH_LINE_T;
63 case types::KiCadObjectType::KOT_SCH_SHAPE:
return SCH_SHAPE_T;
64 case types::KiCadObjectType::KOT_SCH_BITMAP:
return SCH_BITMAP_T;
65 case types::KiCadObjectType::KOT_SCH_TEXTBOX:
return SCH_TEXTBOX_T;
66 case types::KiCadObjectType::KOT_SCH_TEXT:
return SCH_TEXT_T;
67 case types::KiCadObjectType::KOT_SCH_TABLE:
return SCH_TABLE_T;
69 case types::KiCadObjectType::KOT_SCH_LABEL:
return SCH_LABEL_T;
73 case types::KiCadObjectType::KOT_SCH_FIELD:
return SCH_FIELD_T;
74 case types::KiCadObjectType::KOT_SCH_SYMBOL:
return SCH_SYMBOL_T;
76 case types::KiCadObjectType::KOT_SCH_SHEET:
return SCH_SHEET_T;
77 case types::KiCadObjectType::KOT_SCH_PIN:
return SCH_PIN_T;
78 case types::KiCadObjectType::KOT_LIB_SYMBOL:
return LIB_SYMBOL_T;
79 case types::KiCadObjectType::KOT_WSG_LINE:
return WSG_LINE_T;
80 case types::KiCadObjectType::KOT_WSG_RECT:
return WSG_RECT_T;
81 case types::KiCadObjectType::KOT_WSG_POLY:
return WSG_POLY_T;
82 case types::KiCadObjectType::KOT_WSG_TEXT:
return WSG_TEXT_T;
83 case types::KiCadObjectType::KOT_WSG_BITMAP:
return WSG_BITMAP_T;
84 case types::KiCadObjectType::KOT_WSG_PAGE:
return WSG_PAGE_T;
86 case types::KiCadObjectType::KOT_UNKNOWN:
return TYPE_NOT_INIT;
89 "Unhandled case in FromProtoEnum<types::KiCadObjectType>" );
100 case PCB_PAD_T:
return types::KiCadObjectType::KOT_PCB_PAD;
101 case PCB_SHAPE_T:
return types::KiCadObjectType::KOT_PCB_SHAPE;
103 case PCB_FIELD_T:
return types::KiCadObjectType::KOT_PCB_FIELD;
104 case PCB_GENERATOR_T:
return types::KiCadObjectType::KOT_PCB_GENERATOR;
105 case PCB_TEXT_T:
return types::KiCadObjectType::KOT_PCB_TEXT;
106 case PCB_TEXTBOX_T:
return types::KiCadObjectType::KOT_PCB_TEXTBOX;
107 case PCB_TABLE_T:
return types::KiCadObjectType::KOT_PCB_TABLE;
108 case PCB_TABLECELL_T:
return types::KiCadObjectType::KOT_PCB_TABLECELL;
109 case PCB_TRACE_T:
return types::KiCadObjectType::KOT_PCB_TRACE;
110 case PCB_VIA_T:
return types::KiCadObjectType::KOT_PCB_VIA;
111 case PCB_ARC_T:
return types::KiCadObjectType::KOT_PCB_ARC;
112 case PCB_MARKER_T:
return types::KiCadObjectType::KOT_PCB_MARKER;
113 case PCB_DIMENSION_T:
return types::KiCadObjectType::KOT_PCB_DIMENSION;
114 case PCB_ZONE_T:
return types::KiCadObjectType::KOT_PCB_ZONE;
115 case PCB_GROUP_T:
return types::KiCadObjectType::KOT_PCB_GROUP;
116 case SCH_MARKER_T:
return types::KiCadObjectType::KOT_SCH_MARKER;
117 case SCH_JUNCTION_T:
return types::KiCadObjectType::KOT_SCH_JUNCTION;
121 case SCH_LINE_T:
return types::KiCadObjectType::KOT_SCH_LINE;
122 case SCH_SHAPE_T:
return types::KiCadObjectType::KOT_SCH_SHAPE;
123 case SCH_BITMAP_T:
return types::KiCadObjectType::KOT_SCH_BITMAP;
124 case SCH_TEXTBOX_T:
return types::KiCadObjectType::KOT_SCH_TEXTBOX;
125 case SCH_TEXT_T:
return types::KiCadObjectType::KOT_SCH_TEXT;
126 case SCH_TABLE_T:
return types::KiCadObjectType::KOT_SCH_TABLE;
127 case SCH_TABLECELL_T:
return types::KiCadObjectType::KOT_SCH_TABLECELL;
128 case SCH_LABEL_T:
return types::KiCadObjectType::KOT_SCH_LABEL;
130 case SCH_GROUP_T:
return types::KiCadObjectType::KOT_SCH_GROUP;
133 case SCH_FIELD_T:
return types::KiCadObjectType::KOT_SCH_FIELD;
134 case SCH_SYMBOL_T:
return types::KiCadObjectType::KOT_SCH_SYMBOL;
135 case SCH_SHEET_PIN_T:
return types::KiCadObjectType::KOT_SCH_SHEET_PIN;
136 case SCH_SHEET_T:
return types::KiCadObjectType::KOT_SCH_SHEET;
137 case SCH_PIN_T:
return types::KiCadObjectType::KOT_SCH_PIN;
138 case LIB_SYMBOL_T:
return types::KiCadObjectType::KOT_LIB_SYMBOL;
139 case WSG_LINE_T:
return types::KiCadObjectType::KOT_WSG_LINE;
140 case WSG_RECT_T:
return types::KiCadObjectType::KOT_WSG_RECT;
141 case WSG_POLY_T:
return types::KiCadObjectType::KOT_WSG_POLY;
142 case WSG_TEXT_T:
return types::KiCadObjectType::KOT_WSG_TEXT;
143 case WSG_BITMAP_T:
return types::KiCadObjectType::KOT_WSG_BITMAP;
144 case WSG_PAGE_T:
return types::KiCadObjectType::KOT_WSG_PAGE;
146 wxCHECK_MSG(
false, types::KiCadObjectType::KOT_UNKNOWN,
147 "Unhandled case in ToProtoEnum<KICAD_T>");
159 case board::types::BoardLayer::BL_F_Cu:
return F_Cu;
160 case board::types::BoardLayer::BL_In1_Cu:
return In1_Cu;
161 case board::types::BoardLayer::BL_In2_Cu:
return In2_Cu;
162 case board::types::BoardLayer::BL_In3_Cu:
return In3_Cu;
163 case board::types::BoardLayer::BL_In4_Cu:
return In4_Cu;
164 case board::types::BoardLayer::BL_In5_Cu:
return In5_Cu;
165 case board::types::BoardLayer::BL_In6_Cu:
return In6_Cu;
166 case board::types::BoardLayer::BL_In7_Cu:
return In7_Cu;
167 case board::types::BoardLayer::BL_In8_Cu:
return In8_Cu;
168 case board::types::BoardLayer::BL_In9_Cu:
return In9_Cu;
169 case board::types::BoardLayer::BL_In10_Cu:
return In10_Cu;
170 case board::types::BoardLayer::BL_In11_Cu:
return In11_Cu;
171 case board::types::BoardLayer::BL_In12_Cu:
return In12_Cu;
172 case board::types::BoardLayer::BL_In13_Cu:
return In13_Cu;
173 case board::types::BoardLayer::BL_In14_Cu:
return In14_Cu;
174 case board::types::BoardLayer::BL_In15_Cu:
return In15_Cu;
175 case board::types::BoardLayer::BL_In16_Cu:
return In16_Cu;
176 case board::types::BoardLayer::BL_In17_Cu:
return In17_Cu;
177 case board::types::BoardLayer::BL_In18_Cu:
return In18_Cu;
178 case board::types::BoardLayer::BL_In19_Cu:
return In19_Cu;
179 case board::types::BoardLayer::BL_In20_Cu:
return In20_Cu;
180 case board::types::BoardLayer::BL_In21_Cu:
return In21_Cu;
181 case board::types::BoardLayer::BL_In22_Cu:
return In22_Cu;
182 case board::types::BoardLayer::BL_In23_Cu:
return In23_Cu;
183 case board::types::BoardLayer::BL_In24_Cu:
return In24_Cu;
184 case board::types::BoardLayer::BL_In25_Cu:
return In25_Cu;
185 case board::types::BoardLayer::BL_In26_Cu:
return In26_Cu;
186 case board::types::BoardLayer::BL_In27_Cu:
return In27_Cu;
187 case board::types::BoardLayer::BL_In28_Cu:
return In28_Cu;
188 case board::types::BoardLayer::BL_In29_Cu:
return In29_Cu;
189 case board::types::BoardLayer::BL_In30_Cu:
return In30_Cu;
190 case board::types::BoardLayer::BL_B_Cu:
return B_Cu;
191 case board::types::BoardLayer::BL_B_Adhes:
return B_Adhes;
192 case board::types::BoardLayer::BL_F_Adhes:
return F_Adhes;
193 case board::types::BoardLayer::BL_B_Paste:
return B_Paste;
194 case board::types::BoardLayer::BL_F_Paste:
return F_Paste;
195 case board::types::BoardLayer::BL_B_SilkS:
return B_SilkS;
196 case board::types::BoardLayer::BL_F_SilkS:
return F_SilkS;
197 case board::types::BoardLayer::BL_B_Mask:
return B_Mask;
198 case board::types::BoardLayer::BL_F_Mask:
return F_Mask;
199 case board::types::BoardLayer::BL_Dwgs_User:
return Dwgs_User;
200 case board::types::BoardLayer::BL_Cmts_User:
return Cmts_User;
201 case board::types::BoardLayer::BL_Eco1_User:
return Eco1_User;
202 case board::types::BoardLayer::BL_Eco2_User:
return Eco2_User;
203 case board::types::BoardLayer::BL_Edge_Cuts:
return Edge_Cuts;
204 case board::types::BoardLayer::BL_Margin:
return Margin;
205 case board::types::BoardLayer::BL_B_CrtYd:
return B_CrtYd;
206 case board::types::BoardLayer::BL_F_CrtYd:
return F_CrtYd;
207 case board::types::BoardLayer::BL_B_Fab:
return B_Fab;
208 case board::types::BoardLayer::BL_F_Fab:
return F_Fab;
209 case board::types::BoardLayer::BL_User_1:
return User_1;
210 case board::types::BoardLayer::BL_User_2:
return User_2;
211 case board::types::BoardLayer::BL_User_3:
return User_3;
212 case board::types::BoardLayer::BL_User_4:
return User_4;
213 case board::types::BoardLayer::BL_User_5:
return User_5;
214 case board::types::BoardLayer::BL_User_6:
return User_6;
215 case board::types::BoardLayer::BL_User_7:
return User_7;
216 case board::types::BoardLayer::BL_User_8:
return User_8;
217 case board::types::BoardLayer::BL_User_9:
return User_9;
218 case board::types::BoardLayer::BL_Rescue:
return Rescue;
219 case board::types::BoardLayer::BL_User_10:
return User_10;
220 case board::types::BoardLayer::BL_User_11:
return User_11;
221 case board::types::BoardLayer::BL_User_12:
return User_12;
222 case board::types::BoardLayer::BL_User_13:
return User_13;
223 case board::types::BoardLayer::BL_User_14:
return User_14;
224 case board::types::BoardLayer::BL_User_15:
return User_15;
225 case board::types::BoardLayer::BL_User_16:
return User_16;
226 case board::types::BoardLayer::BL_User_17:
return User_17;
227 case board::types::BoardLayer::BL_User_18:
return User_18;
228 case board::types::BoardLayer::BL_User_19:
return User_19;
229 case board::types::BoardLayer::BL_User_20:
return User_20;
230 case board::types::BoardLayer::BL_User_21:
return User_21;
231 case board::types::BoardLayer::BL_User_22:
return User_22;
232 case board::types::BoardLayer::BL_User_23:
return User_23;
233 case board::types::BoardLayer::BL_User_24:
return User_24;
234 case board::types::BoardLayer::BL_User_25:
return User_25;
235 case board::types::BoardLayer::BL_User_26:
return User_26;
236 case board::types::BoardLayer::BL_User_27:
return User_27;
237 case board::types::BoardLayer::BL_User_28:
return User_28;
238 case board::types::BoardLayer::BL_User_29:
return User_29;
239 case board::types::BoardLayer::BL_User_30:
return User_30;
240 case board::types::BoardLayer::BL_User_31:
return User_31;
241 case board::types::BoardLayer::BL_User_32:
return User_32;
242 case board::types::BoardLayer::BL_User_33:
return User_33;
243 case board::types::BoardLayer::BL_User_34:
return User_34;
244 case board::types::BoardLayer::BL_User_35:
return User_35;
245 case board::types::BoardLayer::BL_User_36:
return User_36;
246 case board::types::BoardLayer::BL_User_37:
return User_37;
247 case board::types::BoardLayer::BL_User_38:
return User_38;
248 case board::types::BoardLayer::BL_User_39:
return User_39;
249 case board::types::BoardLayer::BL_User_40:
return User_40;
250 case board::types::BoardLayer::BL_User_41:
return User_41;
251 case board::types::BoardLayer::BL_User_42:
return User_42;
252 case board::types::BoardLayer::BL_User_43:
return User_43;
253 case board::types::BoardLayer::BL_User_44:
return User_44;
254 case board::types::BoardLayer::BL_User_45:
return User_45;
259 "Unhandled case in FromProtoEnum<board::types::BoardLayer>" );
271 case F_Cu:
return board::types::BoardLayer::BL_F_Cu;
272 case In1_Cu:
return board::types::BoardLayer::BL_In1_Cu;
273 case In2_Cu:
return board::types::BoardLayer::BL_In2_Cu;
274 case In3_Cu:
return board::types::BoardLayer::BL_In3_Cu;
275 case In4_Cu:
return board::types::BoardLayer::BL_In4_Cu;
276 case In5_Cu:
return board::types::BoardLayer::BL_In5_Cu;
277 case In6_Cu:
return board::types::BoardLayer::BL_In6_Cu;
278 case In7_Cu:
return board::types::BoardLayer::BL_In7_Cu;
279 case In8_Cu:
return board::types::BoardLayer::BL_In8_Cu;
280 case In9_Cu:
return board::types::BoardLayer::BL_In9_Cu;
281 case In10_Cu:
return board::types::BoardLayer::BL_In10_Cu;
282 case In11_Cu:
return board::types::BoardLayer::BL_In11_Cu;
283 case In12_Cu:
return board::types::BoardLayer::BL_In12_Cu;
284 case In13_Cu:
return board::types::BoardLayer::BL_In13_Cu;
285 case In14_Cu:
return board::types::BoardLayer::BL_In14_Cu;
286 case In15_Cu:
return board::types::BoardLayer::BL_In15_Cu;
287 case In16_Cu:
return board::types::BoardLayer::BL_In16_Cu;
288 case In17_Cu:
return board::types::BoardLayer::BL_In17_Cu;
289 case In18_Cu:
return board::types::BoardLayer::BL_In18_Cu;
290 case In19_Cu:
return board::types::BoardLayer::BL_In19_Cu;
291 case In20_Cu:
return board::types::BoardLayer::BL_In20_Cu;
292 case In21_Cu:
return board::types::BoardLayer::BL_In21_Cu;
293 case In22_Cu:
return board::types::BoardLayer::BL_In22_Cu;
294 case In23_Cu:
return board::types::BoardLayer::BL_In23_Cu;
295 case In24_Cu:
return board::types::BoardLayer::BL_In24_Cu;
296 case In25_Cu:
return board::types::BoardLayer::BL_In25_Cu;
297 case In26_Cu:
return board::types::BoardLayer::BL_In26_Cu;
298 case In27_Cu:
return board::types::BoardLayer::BL_In27_Cu;
299 case In28_Cu:
return board::types::BoardLayer::BL_In28_Cu;
300 case In29_Cu:
return board::types::BoardLayer::BL_In29_Cu;
301 case In30_Cu:
return board::types::BoardLayer::BL_In30_Cu;
302 case B_Cu:
return board::types::BoardLayer::BL_B_Cu;
303 case B_Adhes:
return board::types::BoardLayer::BL_B_Adhes;
304 case F_Adhes:
return board::types::BoardLayer::BL_F_Adhes;
305 case B_Paste:
return board::types::BoardLayer::BL_B_Paste;
306 case F_Paste:
return board::types::BoardLayer::BL_F_Paste;
307 case B_SilkS:
return board::types::BoardLayer::BL_B_SilkS;
308 case F_SilkS:
return board::types::BoardLayer::BL_F_SilkS;
309 case B_Mask:
return board::types::BoardLayer::BL_B_Mask;
310 case F_Mask:
return board::types::BoardLayer::BL_F_Mask;
311 case Dwgs_User:
return board::types::BoardLayer::BL_Dwgs_User;
312 case Cmts_User:
return board::types::BoardLayer::BL_Cmts_User;
313 case Eco1_User:
return board::types::BoardLayer::BL_Eco1_User;
314 case Eco2_User:
return board::types::BoardLayer::BL_Eco2_User;
315 case Edge_Cuts:
return board::types::BoardLayer::BL_Edge_Cuts;
316 case Margin:
return board::types::BoardLayer::BL_Margin;
317 case B_CrtYd:
return board::types::BoardLayer::BL_B_CrtYd;
318 case F_CrtYd:
return board::types::BoardLayer::BL_F_CrtYd;
319 case B_Fab:
return board::types::BoardLayer::BL_B_Fab;
320 case F_Fab:
return board::types::BoardLayer::BL_F_Fab;
321 case User_1:
return board::types::BoardLayer::BL_User_1;
322 case User_2:
return board::types::BoardLayer::BL_User_2;
323 case User_3:
return board::types::BoardLayer::BL_User_3;
324 case User_4:
return board::types::BoardLayer::BL_User_4;
325 case User_5:
return board::types::BoardLayer::BL_User_5;
326 case User_6:
return board::types::BoardLayer::BL_User_6;
327 case User_7:
return board::types::BoardLayer::BL_User_7;
328 case User_8:
return board::types::BoardLayer::BL_User_8;
329 case User_9:
return board::types::BoardLayer::BL_User_9;
330 case Rescue:
return board::types::BoardLayer::BL_Rescue;
331 case User_10:
return board::types::BoardLayer::BL_User_10;
332 case User_11:
return board::types::BoardLayer::BL_User_11;
333 case User_12:
return board::types::BoardLayer::BL_User_12;
334 case User_13:
return board::types::BoardLayer::BL_User_13;
335 case User_14:
return board::types::BoardLayer::BL_User_14;
336 case User_15:
return board::types::BoardLayer::BL_User_15;
337 case User_16:
return board::types::BoardLayer::BL_User_16;
338 case User_17:
return board::types::BoardLayer::BL_User_17;
339 case User_18:
return board::types::BoardLayer::BL_User_18;
340 case User_19:
return board::types::BoardLayer::BL_User_19;
341 case User_20:
return board::types::BoardLayer::BL_User_20;
342 case User_21:
return board::types::BoardLayer::BL_User_21;
343 case User_22:
return board::types::BoardLayer::BL_User_22;
344 case User_23:
return board::types::BoardLayer::BL_User_23;
345 case User_24:
return board::types::BoardLayer::BL_User_24;
346 case User_25:
return board::types::BoardLayer::BL_User_25;
347 case User_26:
return board::types::BoardLayer::BL_User_26;
348 case User_27:
return board::types::BoardLayer::BL_User_27;
349 case User_28:
return board::types::BoardLayer::BL_User_28;
350 case User_29:
return board::types::BoardLayer::BL_User_29;
351 case User_30:
return board::types::BoardLayer::BL_User_30;
352 case User_31:
return board::types::BoardLayer::BL_User_31;
353 case User_32:
return board::types::BoardLayer::BL_User_32;
354 case User_33:
return board::types::BoardLayer::BL_User_33;
355 case User_34:
return board::types::BoardLayer::BL_User_34;
356 case User_35:
return board::types::BoardLayer::BL_User_35;
357 case User_36:
return board::types::BoardLayer::BL_User_36;
358 case User_37:
return board::types::BoardLayer::BL_User_37;
359 case User_38:
return board::types::BoardLayer::BL_User_38;
360 case User_39:
return board::types::BoardLayer::BL_User_39;
361 case User_40:
return board::types::BoardLayer::BL_User_40;
362 case User_41:
return board::types::BoardLayer::BL_User_41;
363 case User_42:
return board::types::BoardLayer::BL_User_42;
364 case User_43:
return board::types::BoardLayer::BL_User_43;
365 case User_44:
return board::types::BoardLayer::BL_User_44;
366 case User_45:
return board::types::BoardLayer::BL_User_45;
368 wxCHECK_MSG(
false, board::types::BoardLayer::BL_UNKNOWN,
369 "Unhandled case in ToProtoEnum<PCB_LAYER_ID>");
382 "Unhandled case in FromProtoEnum<schematic::types::SchematicLayer>" );
394 wxCHECK_MSG(
false, schematic::types::SchematicLayer::SL_UNKNOWN,
395 "Unhandled case in ToProtoEnum<SCH_LAYER_ID>");
413 "Unhandled case in FromProtoEnum<types::HorizontalAlignment>" );
428 wxCHECK_MSG(
false, types::HorizontalAlignment::HA_UNKNOWN,
429 "Unhandled case in ToProtoEnum<GR_TEXT_H_ALIGN_T>");
447 "Unhandled case in FromProtoEnum<types::VerticalAlignment>" );
462 wxCHECK_MSG(
false, types::VerticalAlignment::VA_UNKNOWN,
463 "Unhandled case in ToProtoEnum<GR_TEXT_V_ALIGN_T>");
479 case types::StrokeLineStyle::SLS_UNKNOWN:
482 "Unhandled case in FromProtoEnum<types::StrokeLineStyle>" );
499 wxCHECK_MSG(
false, types::StrokeLineStyle::SLS_UNKNOWN,
500 "Unhandled case in ToProtoEnum<LINE_STYLE>");
types::KiCadObjectType ToProtoEnum(KICAD_T aValue)
KICAD_T FromProtoEnum(types::KiCadObjectType aValue)
SCH_LAYER_ID
Eeschema drawing layers.
PCB_LAYER_ID
A quick note on layer IDs:
LINE_STYLE
Dashed line types.
GR_TEXT_H_ALIGN_T
This is API surface mapped to common.types.HorizontalAlignment.
@ GR_TEXT_H_ALIGN_INDETERMINATE
GR_TEXT_V_ALIGN_T
This is API surface mapped to common.types.VertialAlignment.
@ GR_TEXT_V_ALIGN_INDETERMINATE
KICAD_T
The set of class identification values stored in EDA_ITEM::m_structType.
@ PCB_SHAPE_T
class PCB_SHAPE, a segment not on copper layers
@ PCB_GENERATOR_T
class PCB_GENERATOR, generator on a layer
@ PCB_VIA_T
class PCB_VIA, a via (like a track segment on a copper layer)
@ PCB_GROUP_T
class PCB_GROUP, a set of BOARD_ITEMs
@ PCB_TEXTBOX_T
class PCB_TEXTBOX, wrapped text on a layer
@ PCB_ZONE_T
class ZONE, a copper pour area
@ PCB_TEXT_T
class PCB_TEXT, text on a layer
@ PCB_REFERENCE_IMAGE_T
class PCB_REFERENCE_IMAGE, bitmap on a layer
@ PCB_FIELD_T
class PCB_FIELD, text associated with a footprint property
@ PCB_MARKER_T
class PCB_MARKER, a marker used to show something
@ PCB_TABLECELL_T
class PCB_TABLECELL, PCB_TEXTBOX for use in tables
@ PCB_FOOTPRINT_T
class FOOTPRINT, a footprint
@ PCB_PAD_T
class PAD, a pad in a footprint
@ PCB_ARC_T
class PCB_ARC, an arc track segment on a copper layer
@ PCB_DIMENSION_T
class PCB_DIMENSION_BASE: abstract dimension meta-type
@ PCB_TABLE_T
class PCB_TABLE, table of PCB_TABLECELLs
@ PCB_TRACE_T
class PCB_TRACK, a track segment (segment on a copper layer)