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_MARKER:
return SCH_MARKER_T;
57 case types::KiCadObjectType::KOT_SCH_JUNCTION:
return SCH_JUNCTION_T;
61 case types::KiCadObjectType::KOT_SCH_LINE:
return SCH_LINE_T;
62 case types::KiCadObjectType::KOT_SCH_SHAPE:
return SCH_SHAPE_T;
63 case types::KiCadObjectType::KOT_SCH_BITMAP:
return SCH_BITMAP_T;
64 case types::KiCadObjectType::KOT_SCH_TEXTBOX:
return SCH_TEXTBOX_T;
65 case types::KiCadObjectType::KOT_SCH_TEXT:
return SCH_TEXT_T;
66 case types::KiCadObjectType::KOT_SCH_TABLE:
return SCH_TABLE_T;
68 case types::KiCadObjectType::KOT_SCH_LABEL:
return SCH_LABEL_T;
72 case types::KiCadObjectType::KOT_SCH_FIELD:
return SCH_FIELD_T;
73 case types::KiCadObjectType::KOT_SCH_SYMBOL:
return SCH_SYMBOL_T;
75 case types::KiCadObjectType::KOT_SCH_SHEET:
return SCH_SHEET_T;
76 case types::KiCadObjectType::KOT_SCH_PIN:
return SCH_PIN_T;
77 case types::KiCadObjectType::KOT_LIB_SYMBOL:
return LIB_SYMBOL_T;
78 case types::KiCadObjectType::KOT_WSG_LINE:
return WSG_LINE_T;
79 case types::KiCadObjectType::KOT_WSG_RECT:
return WSG_RECT_T;
80 case types::KiCadObjectType::KOT_WSG_POLY:
return WSG_POLY_T;
81 case types::KiCadObjectType::KOT_WSG_TEXT:
return WSG_TEXT_T;
82 case types::KiCadObjectType::KOT_WSG_BITMAP:
return WSG_BITMAP_T;
83 case types::KiCadObjectType::KOT_WSG_PAGE:
return WSG_PAGE_T;
85 case types::KiCadObjectType::KOT_UNKNOWN:
return TYPE_NOT_INIT;
88 "Unhandled case in FromProtoEnum<types::KiCadObjectType>" );
99 case PCB_PAD_T:
return types::KiCadObjectType::KOT_PCB_PAD;
100 case PCB_SHAPE_T:
return types::KiCadObjectType::KOT_PCB_SHAPE;
102 case PCB_FIELD_T:
return types::KiCadObjectType::KOT_PCB_FIELD;
103 case PCB_GENERATOR_T:
return types::KiCadObjectType::KOT_PCB_GENERATOR;
104 case PCB_TEXT_T:
return types::KiCadObjectType::KOT_PCB_TEXT;
105 case PCB_TEXTBOX_T:
return types::KiCadObjectType::KOT_PCB_TEXTBOX;
106 case PCB_TABLE_T:
return types::KiCadObjectType::KOT_PCB_TABLE;
107 case PCB_TABLECELL_T:
return types::KiCadObjectType::KOT_PCB_TABLECELL;
108 case PCB_TRACE_T:
return types::KiCadObjectType::KOT_PCB_TRACE;
109 case PCB_VIA_T:
return types::KiCadObjectType::KOT_PCB_VIA;
110 case PCB_ARC_T:
return types::KiCadObjectType::KOT_PCB_ARC;
111 case PCB_MARKER_T:
return types::KiCadObjectType::KOT_PCB_MARKER;
112 case PCB_DIMENSION_T:
return types::KiCadObjectType::KOT_PCB_DIMENSION;
113 case PCB_ZONE_T:
return types::KiCadObjectType::KOT_PCB_ZONE;
114 case PCB_GROUP_T:
return types::KiCadObjectType::KOT_PCB_GROUP;
115 case SCH_MARKER_T:
return types::KiCadObjectType::KOT_SCH_MARKER;
116 case SCH_JUNCTION_T:
return types::KiCadObjectType::KOT_SCH_JUNCTION;
120 case SCH_LINE_T:
return types::KiCadObjectType::KOT_SCH_LINE;
121 case SCH_SHAPE_T:
return types::KiCadObjectType::KOT_SCH_SHAPE;
122 case SCH_BITMAP_T:
return types::KiCadObjectType::KOT_SCH_BITMAP;
123 case SCH_TEXTBOX_T:
return types::KiCadObjectType::KOT_SCH_TEXTBOX;
124 case SCH_TEXT_T:
return types::KiCadObjectType::KOT_SCH_TEXT;
125 case SCH_TABLE_T:
return types::KiCadObjectType::KOT_SCH_TABLE;
126 case SCH_TABLECELL_T:
return types::KiCadObjectType::KOT_SCH_TABLECELL;
127 case SCH_LABEL_T:
return types::KiCadObjectType::KOT_SCH_LABEL;
131 case SCH_FIELD_T:
return types::KiCadObjectType::KOT_SCH_FIELD;
132 case SCH_SYMBOL_T:
return types::KiCadObjectType::KOT_SCH_SYMBOL;
133 case SCH_SHEET_PIN_T:
return types::KiCadObjectType::KOT_SCH_SHEET_PIN;
134 case SCH_SHEET_T:
return types::KiCadObjectType::KOT_SCH_SHEET;
135 case SCH_PIN_T:
return types::KiCadObjectType::KOT_SCH_PIN;
136 case LIB_SYMBOL_T:
return types::KiCadObjectType::KOT_LIB_SYMBOL;
137 case WSG_LINE_T:
return types::KiCadObjectType::KOT_WSG_LINE;
138 case WSG_RECT_T:
return types::KiCadObjectType::KOT_WSG_RECT;
139 case WSG_POLY_T:
return types::KiCadObjectType::KOT_WSG_POLY;
140 case WSG_TEXT_T:
return types::KiCadObjectType::KOT_WSG_TEXT;
141 case WSG_BITMAP_T:
return types::KiCadObjectType::KOT_WSG_BITMAP;
142 case WSG_PAGE_T:
return types::KiCadObjectType::KOT_WSG_PAGE;
144 wxCHECK_MSG(
false, types::KiCadObjectType::KOT_UNKNOWN,
145 "Unhandled case in ToProtoEnum<KICAD_T>");
157 case board::types::BoardLayer::BL_F_Cu:
return F_Cu;
158 case board::types::BoardLayer::BL_In1_Cu:
return In1_Cu;
159 case board::types::BoardLayer::BL_In2_Cu:
return In2_Cu;
160 case board::types::BoardLayer::BL_In3_Cu:
return In3_Cu;
161 case board::types::BoardLayer::BL_In4_Cu:
return In4_Cu;
162 case board::types::BoardLayer::BL_In5_Cu:
return In5_Cu;
163 case board::types::BoardLayer::BL_In6_Cu:
return In6_Cu;
164 case board::types::BoardLayer::BL_In7_Cu:
return In7_Cu;
165 case board::types::BoardLayer::BL_In8_Cu:
return In8_Cu;
166 case board::types::BoardLayer::BL_In9_Cu:
return In9_Cu;
167 case board::types::BoardLayer::BL_In10_Cu:
return In10_Cu;
168 case board::types::BoardLayer::BL_In11_Cu:
return In11_Cu;
169 case board::types::BoardLayer::BL_In12_Cu:
return In12_Cu;
170 case board::types::BoardLayer::BL_In13_Cu:
return In13_Cu;
171 case board::types::BoardLayer::BL_In14_Cu:
return In14_Cu;
172 case board::types::BoardLayer::BL_In15_Cu:
return In15_Cu;
173 case board::types::BoardLayer::BL_In16_Cu:
return In16_Cu;
174 case board::types::BoardLayer::BL_In17_Cu:
return In17_Cu;
175 case board::types::BoardLayer::BL_In18_Cu:
return In18_Cu;
176 case board::types::BoardLayer::BL_In19_Cu:
return In19_Cu;
177 case board::types::BoardLayer::BL_In20_Cu:
return In20_Cu;
178 case board::types::BoardLayer::BL_In21_Cu:
return In21_Cu;
179 case board::types::BoardLayer::BL_In22_Cu:
return In22_Cu;
180 case board::types::BoardLayer::BL_In23_Cu:
return In23_Cu;
181 case board::types::BoardLayer::BL_In24_Cu:
return In24_Cu;
182 case board::types::BoardLayer::BL_In25_Cu:
return In25_Cu;
183 case board::types::BoardLayer::BL_In26_Cu:
return In26_Cu;
184 case board::types::BoardLayer::BL_In27_Cu:
return In27_Cu;
185 case board::types::BoardLayer::BL_In28_Cu:
return In28_Cu;
186 case board::types::BoardLayer::BL_In29_Cu:
return In29_Cu;
187 case board::types::BoardLayer::BL_In30_Cu:
return In30_Cu;
188 case board::types::BoardLayer::BL_B_Cu:
return B_Cu;
189 case board::types::BoardLayer::BL_B_Adhes:
return B_Adhes;
190 case board::types::BoardLayer::BL_F_Adhes:
return F_Adhes;
191 case board::types::BoardLayer::BL_B_Paste:
return B_Paste;
192 case board::types::BoardLayer::BL_F_Paste:
return F_Paste;
193 case board::types::BoardLayer::BL_B_SilkS:
return B_SilkS;
194 case board::types::BoardLayer::BL_F_SilkS:
return F_SilkS;
195 case board::types::BoardLayer::BL_B_Mask:
return B_Mask;
196 case board::types::BoardLayer::BL_F_Mask:
return F_Mask;
197 case board::types::BoardLayer::BL_Dwgs_User:
return Dwgs_User;
198 case board::types::BoardLayer::BL_Cmts_User:
return Cmts_User;
199 case board::types::BoardLayer::BL_Eco1_User:
return Eco1_User;
200 case board::types::BoardLayer::BL_Eco2_User:
return Eco2_User;
201 case board::types::BoardLayer::BL_Edge_Cuts:
return Edge_Cuts;
202 case board::types::BoardLayer::BL_Margin:
return Margin;
203 case board::types::BoardLayer::BL_B_CrtYd:
return B_CrtYd;
204 case board::types::BoardLayer::BL_F_CrtYd:
return F_CrtYd;
205 case board::types::BoardLayer::BL_B_Fab:
return B_Fab;
206 case board::types::BoardLayer::BL_F_Fab:
return F_Fab;
207 case board::types::BoardLayer::BL_User_1:
return User_1;
208 case board::types::BoardLayer::BL_User_2:
return User_2;
209 case board::types::BoardLayer::BL_User_3:
return User_3;
210 case board::types::BoardLayer::BL_User_4:
return User_4;
211 case board::types::BoardLayer::BL_User_5:
return User_5;
212 case board::types::BoardLayer::BL_User_6:
return User_6;
213 case board::types::BoardLayer::BL_User_7:
return User_7;
214 case board::types::BoardLayer::BL_User_8:
return User_8;
215 case board::types::BoardLayer::BL_User_9:
return User_9;
216 case board::types::BoardLayer::BL_Rescue:
return Rescue;
217 case board::types::BoardLayer::BL_User_10:
return User_10;
218 case board::types::BoardLayer::BL_User_11:
return User_11;
219 case board::types::BoardLayer::BL_User_12:
return User_12;
220 case board::types::BoardLayer::BL_User_13:
return User_13;
221 case board::types::BoardLayer::BL_User_14:
return User_14;
222 case board::types::BoardLayer::BL_User_15:
return User_15;
223 case board::types::BoardLayer::BL_User_16:
return User_16;
224 case board::types::BoardLayer::BL_User_17:
return User_17;
225 case board::types::BoardLayer::BL_User_18:
return User_18;
226 case board::types::BoardLayer::BL_User_19:
return User_19;
227 case board::types::BoardLayer::BL_User_20:
return User_20;
228 case board::types::BoardLayer::BL_User_21:
return User_21;
229 case board::types::BoardLayer::BL_User_22:
return User_22;
230 case board::types::BoardLayer::BL_User_23:
return User_23;
231 case board::types::BoardLayer::BL_User_24:
return User_24;
232 case board::types::BoardLayer::BL_User_25:
return User_25;
233 case board::types::BoardLayer::BL_User_26:
return User_26;
234 case board::types::BoardLayer::BL_User_27:
return User_27;
235 case board::types::BoardLayer::BL_User_28:
return User_28;
236 case board::types::BoardLayer::BL_User_29:
return User_29;
237 case board::types::BoardLayer::BL_User_30:
return User_30;
238 case board::types::BoardLayer::BL_User_31:
return User_31;
239 case board::types::BoardLayer::BL_User_32:
return User_32;
240 case board::types::BoardLayer::BL_User_33:
return User_33;
241 case board::types::BoardLayer::BL_User_34:
return User_34;
242 case board::types::BoardLayer::BL_User_35:
return User_35;
243 case board::types::BoardLayer::BL_User_36:
return User_36;
244 case board::types::BoardLayer::BL_User_37:
return User_37;
245 case board::types::BoardLayer::BL_User_38:
return User_38;
246 case board::types::BoardLayer::BL_User_39:
return User_39;
247 case board::types::BoardLayer::BL_User_40:
return User_40;
248 case board::types::BoardLayer::BL_User_41:
return User_41;
249 case board::types::BoardLayer::BL_User_42:
return User_42;
250 case board::types::BoardLayer::BL_User_43:
return User_43;
251 case board::types::BoardLayer::BL_User_44:
return User_44;
252 case board::types::BoardLayer::BL_User_45:
return User_45;
257 "Unhandled case in FromProtoEnum<board::types::BoardLayer>" );
269 case F_Cu:
return board::types::BoardLayer::BL_F_Cu;
270 case In1_Cu:
return board::types::BoardLayer::BL_In1_Cu;
271 case In2_Cu:
return board::types::BoardLayer::BL_In2_Cu;
272 case In3_Cu:
return board::types::BoardLayer::BL_In3_Cu;
273 case In4_Cu:
return board::types::BoardLayer::BL_In4_Cu;
274 case In5_Cu:
return board::types::BoardLayer::BL_In5_Cu;
275 case In6_Cu:
return board::types::BoardLayer::BL_In6_Cu;
276 case In7_Cu:
return board::types::BoardLayer::BL_In7_Cu;
277 case In8_Cu:
return board::types::BoardLayer::BL_In8_Cu;
278 case In9_Cu:
return board::types::BoardLayer::BL_In9_Cu;
279 case In10_Cu:
return board::types::BoardLayer::BL_In10_Cu;
280 case In11_Cu:
return board::types::BoardLayer::BL_In11_Cu;
281 case In12_Cu:
return board::types::BoardLayer::BL_In12_Cu;
282 case In13_Cu:
return board::types::BoardLayer::BL_In13_Cu;
283 case In14_Cu:
return board::types::BoardLayer::BL_In14_Cu;
284 case In15_Cu:
return board::types::BoardLayer::BL_In15_Cu;
285 case In16_Cu:
return board::types::BoardLayer::BL_In16_Cu;
286 case In17_Cu:
return board::types::BoardLayer::BL_In17_Cu;
287 case In18_Cu:
return board::types::BoardLayer::BL_In18_Cu;
288 case In19_Cu:
return board::types::BoardLayer::BL_In19_Cu;
289 case In20_Cu:
return board::types::BoardLayer::BL_In20_Cu;
290 case In21_Cu:
return board::types::BoardLayer::BL_In21_Cu;
291 case In22_Cu:
return board::types::BoardLayer::BL_In22_Cu;
292 case In23_Cu:
return board::types::BoardLayer::BL_In23_Cu;
293 case In24_Cu:
return board::types::BoardLayer::BL_In24_Cu;
294 case In25_Cu:
return board::types::BoardLayer::BL_In25_Cu;
295 case In26_Cu:
return board::types::BoardLayer::BL_In26_Cu;
296 case In27_Cu:
return board::types::BoardLayer::BL_In27_Cu;
297 case In28_Cu:
return board::types::BoardLayer::BL_In28_Cu;
298 case In29_Cu:
return board::types::BoardLayer::BL_In29_Cu;
299 case In30_Cu:
return board::types::BoardLayer::BL_In30_Cu;
300 case B_Cu:
return board::types::BoardLayer::BL_B_Cu;
301 case B_Adhes:
return board::types::BoardLayer::BL_B_Adhes;
302 case F_Adhes:
return board::types::BoardLayer::BL_F_Adhes;
303 case B_Paste:
return board::types::BoardLayer::BL_B_Paste;
304 case F_Paste:
return board::types::BoardLayer::BL_F_Paste;
305 case B_SilkS:
return board::types::BoardLayer::BL_B_SilkS;
306 case F_SilkS:
return board::types::BoardLayer::BL_F_SilkS;
307 case B_Mask:
return board::types::BoardLayer::BL_B_Mask;
308 case F_Mask:
return board::types::BoardLayer::BL_F_Mask;
309 case Dwgs_User:
return board::types::BoardLayer::BL_Dwgs_User;
310 case Cmts_User:
return board::types::BoardLayer::BL_Cmts_User;
311 case Eco1_User:
return board::types::BoardLayer::BL_Eco1_User;
312 case Eco2_User:
return board::types::BoardLayer::BL_Eco2_User;
313 case Edge_Cuts:
return board::types::BoardLayer::BL_Edge_Cuts;
314 case Margin:
return board::types::BoardLayer::BL_Margin;
315 case B_CrtYd:
return board::types::BoardLayer::BL_B_CrtYd;
316 case F_CrtYd:
return board::types::BoardLayer::BL_F_CrtYd;
317 case B_Fab:
return board::types::BoardLayer::BL_B_Fab;
318 case F_Fab:
return board::types::BoardLayer::BL_F_Fab;
319 case User_1:
return board::types::BoardLayer::BL_User_1;
320 case User_2:
return board::types::BoardLayer::BL_User_2;
321 case User_3:
return board::types::BoardLayer::BL_User_3;
322 case User_4:
return board::types::BoardLayer::BL_User_4;
323 case User_5:
return board::types::BoardLayer::BL_User_5;
324 case User_6:
return board::types::BoardLayer::BL_User_6;
325 case User_7:
return board::types::BoardLayer::BL_User_7;
326 case User_8:
return board::types::BoardLayer::BL_User_8;
327 case User_9:
return board::types::BoardLayer::BL_User_9;
328 case Rescue:
return board::types::BoardLayer::BL_Rescue;
329 case User_10:
return board::types::BoardLayer::BL_User_10;
330 case User_11:
return board::types::BoardLayer::BL_User_11;
331 case User_12:
return board::types::BoardLayer::BL_User_12;
332 case User_13:
return board::types::BoardLayer::BL_User_13;
333 case User_14:
return board::types::BoardLayer::BL_User_14;
334 case User_15:
return board::types::BoardLayer::BL_User_15;
335 case User_16:
return board::types::BoardLayer::BL_User_16;
336 case User_17:
return board::types::BoardLayer::BL_User_17;
337 case User_18:
return board::types::BoardLayer::BL_User_18;
338 case User_19:
return board::types::BoardLayer::BL_User_19;
339 case User_20:
return board::types::BoardLayer::BL_User_20;
340 case User_21:
return board::types::BoardLayer::BL_User_21;
341 case User_22:
return board::types::BoardLayer::BL_User_22;
342 case User_23:
return board::types::BoardLayer::BL_User_23;
343 case User_24:
return board::types::BoardLayer::BL_User_24;
344 case User_25:
return board::types::BoardLayer::BL_User_25;
345 case User_26:
return board::types::BoardLayer::BL_User_26;
346 case User_27:
return board::types::BoardLayer::BL_User_27;
347 case User_28:
return board::types::BoardLayer::BL_User_28;
348 case User_29:
return board::types::BoardLayer::BL_User_29;
349 case User_30:
return board::types::BoardLayer::BL_User_30;
350 case User_31:
return board::types::BoardLayer::BL_User_31;
351 case User_32:
return board::types::BoardLayer::BL_User_32;
352 case User_33:
return board::types::BoardLayer::BL_User_33;
353 case User_34:
return board::types::BoardLayer::BL_User_34;
354 case User_35:
return board::types::BoardLayer::BL_User_35;
355 case User_36:
return board::types::BoardLayer::BL_User_36;
356 case User_37:
return board::types::BoardLayer::BL_User_37;
357 case User_38:
return board::types::BoardLayer::BL_User_38;
358 case User_39:
return board::types::BoardLayer::BL_User_39;
359 case User_40:
return board::types::BoardLayer::BL_User_40;
360 case User_41:
return board::types::BoardLayer::BL_User_41;
361 case User_42:
return board::types::BoardLayer::BL_User_42;
362 case User_43:
return board::types::BoardLayer::BL_User_43;
363 case User_44:
return board::types::BoardLayer::BL_User_44;
364 case User_45:
return board::types::BoardLayer::BL_User_45;
366 wxCHECK_MSG(
false, board::types::BoardLayer::BL_UNKNOWN,
367 "Unhandled case in ToProtoEnum<PCB_LAYER_ID>");
380 "Unhandled case in FromProtoEnum<schematic::types::SchematicLayer>" );
392 wxCHECK_MSG(
false, schematic::types::SchematicLayer::SL_UNKNOWN,
393 "Unhandled case in ToProtoEnum<SCH_LAYER_ID>");
411 "Unhandled case in FromProtoEnum<types::HorizontalAlignment>" );
426 wxCHECK_MSG(
false, types::HorizontalAlignment::HA_UNKNOWN,
427 "Unhandled case in ToProtoEnum<GR_TEXT_H_ALIGN_T>");
445 "Unhandled case in FromProtoEnum<types::VerticalAlignment>" );
460 wxCHECK_MSG(
false, types::VerticalAlignment::VA_UNKNOWN,
461 "Unhandled case in ToProtoEnum<GR_TEXT_V_ALIGN_T>");
477 case types::StrokeLineStyle::SLS_UNKNOWN:
480 "Unhandled case in FromProtoEnum<types::StrokeLineStyle>" );
497 wxCHECK_MSG(
false, types::StrokeLineStyle::SLS_UNKNOWN,
498 "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)