Index: trunk/doc-rnd/hacking/renames =================================================================== --- trunk/doc-rnd/hacking/renames (revision 5413) +++ trunk/doc-rnd/hacking/renames (revision 5414) @@ -1507,3 +1507,5 @@ GetLayerGroupNumberByPointer -> pcb_layer_get_group_ GetLayerGroupNumberByNumber -> pcb_layer_get_group IsPasteEmpty -> pcb_layer_is_paste_empty +SOLDER_LAYER -> PCB_SOLDER_SIDE +COMPONENT_LAYER -> PCB_COMPONENT_SIDE Index: trunk/src/data.h =================================================================== --- trunk/src/data.h (revision 5413) +++ trunk/src/data.h (revision 5414) @@ -55,8 +55,8 @@ #define pcb_max_group (PCB->Data->LayerN) #define pcb_max_copper_layer (PCB->Data->LayerN) -#define pcb_solder_silk_layer (pcb_max_copper_layer + SOLDER_LAYER) -#define pcb_component_silk_layer (pcb_max_copper_layer + COMPONENT_LAYER) +#define pcb_solder_silk_layer (pcb_max_copper_layer + PCB_SOLDER_SIDE) +#define pcb_component_silk_layer (pcb_max_copper_layer + PCB_COMPONENT_SIDE) extern pcb_buffer_t pcb_buffers[PCB_MAX_BUFFER]; extern int pcb_added_lines; Index: trunk/src/draw.c =================================================================== --- trunk/src/draw.c (revision 5413) +++ trunk/src/draw.c (revision 5414) @@ -203,7 +203,7 @@ */ if (!conf_core.editor.check_planes && pcb_gui->set_layer("invisible", SL(INVISIBLE, 0), 0)) { - side = PCB_SWAP_IDENT ? COMPONENT_LAYER : SOLDER_LAYER; + side = PCB_SWAP_IDENT ? PCB_COMPONENT_SIDE : PCB_SOLDER_SIDE; if (PCB->ElementOn) { pcb_r_search(PCB->Data->element_tree, drawn_area, NULL, draw_element_callback, &side, NULL); pcb_r_search(PCB->Data->name_tree[PCB_ELEMNAME_IDX_VISIBLE()], drawn_area, NULL, draw_element_name_callback, &side, NULL); @@ -234,22 +234,22 @@ /* Draw the solder mask if turned on */ if (pcb_gui->set_layer("componentmask", SL(MASK, TOP), 0)) { - DrawMask(COMPONENT_LAYER, drawn_area); + DrawMask(PCB_COMPONENT_SIDE, drawn_area); pcb_gui->end_layer(); } if (pcb_gui->set_layer("soldermask", SL(MASK, BOTTOM), 0)) { - DrawMask(SOLDER_LAYER, drawn_area); + DrawMask(PCB_SOLDER_SIDE, drawn_area); pcb_gui->end_layer(); } if (pcb_gui->set_layer("topsilk", SL(SILK, TOP), 0)) { - DrawSilk(COMPONENT_LAYER, drawn_area); + DrawSilk(PCB_COMPONENT_SIDE, drawn_area); pcb_gui->end_layer(); } if (pcb_gui->set_layer("bottomsilk", SL(SILK, BOTTOM), 0)) { - DrawSilk(SOLDER_LAYER, drawn_area); + DrawSilk(PCB_SOLDER_SIDE, drawn_area); pcb_gui->end_layer(); } @@ -267,25 +267,25 @@ } } - paste_empty = pcb_layer_is_paste_empty(COMPONENT_LAYER); + paste_empty = pcb_layer_is_paste_empty(PCB_COMPONENT_SIDE); if (pcb_gui->set_layer("toppaste", SL(PASTE, TOP), paste_empty)) { - DrawPaste(COMPONENT_LAYER, drawn_area); + DrawPaste(PCB_COMPONENT_SIDE, drawn_area); pcb_gui->end_layer(); } - paste_empty = pcb_layer_is_paste_empty(SOLDER_LAYER); + paste_empty = pcb_layer_is_paste_empty(PCB_SOLDER_SIDE); if (pcb_gui->set_layer("bottompaste", SL(PASTE, BOTTOM), paste_empty)) { - DrawPaste(SOLDER_LAYER, drawn_area); + DrawPaste(PCB_SOLDER_SIDE, drawn_area); pcb_gui->end_layer(); } if (pcb_gui->set_layer("topassembly", SL(ASSY, TOP), 0)) { - PrintAssembly(COMPONENT_LAYER, drawn_area); + PrintAssembly(PCB_COMPONENT_SIDE, drawn_area); pcb_gui->end_layer(); } if (pcb_gui->set_layer("bottomassembly", SL(ASSY, BOTTOM), 0)) { - PrintAssembly(SOLDER_LAYER, drawn_area); + PrintAssembly(PCB_SOLDER_SIDE, drawn_area); pcb_gui->end_layer(); } @@ -311,12 +311,12 @@ /* draw element pads */ if (group == component_group) { - side = COMPONENT_LAYER; + side = PCB_COMPONENT_SIDE; pcb_r_search(PCB->Data->pad_tree, drawn_area, NULL, draw_pad_callback, &side, NULL); } if (group == solder_group) { - side = SOLDER_LAYER; + side = PCB_SOLDER_SIDE; pcb_r_search(PCB->Data->pad_tree, drawn_area, NULL, draw_pad_callback, &side, NULL); } } Index: trunk/src/find_deadcode.c =================================================================== --- trunk/src/find_deadcode.c (revision 5413) +++ trunk/src/find_deadcode.c (revision 5414) @@ -56,7 +56,7 @@ pcb_pad_t *pad = (pcb_pad_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER) + if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE) && pcb_intersect_line_pad(&i->line, pad)) longjmp(i->env, 1); return 0; Index: trunk/src/find_lookup.c =================================================================== --- trunk/src/find_lookup.c (revision 5413) +++ trunk/src/find_lookup.c (revision 5414) @@ -204,13 +204,13 @@ /* initialize pad data; start by counting the total number * on each of the two possible layers */ - NumberOfPads[COMPONENT_LAYER] = NumberOfPads[SOLDER_LAYER] = 0; + NumberOfPads[PCB_COMPONENT_SIDE] = NumberOfPads[PCB_SOLDER_SIDE] = 0; PCB_PAD_ALL_LOOP(PCB->Data); { if (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad)) - NumberOfPads[SOLDER_LAYER]++; + NumberOfPads[PCB_SOLDER_SIDE]++; else - NumberOfPads[COMPONENT_LAYER]++; + NumberOfPads[PCB_COMPONENT_SIDE]++; } PCB_ENDALL_LOOP; for (i = 0; i < 2; i++) { @@ -323,7 +323,7 @@ if (!PCB_FLAG_TEST(TheFlag, pad) && IS_PV_ON_PAD(&i->pv, pad) && !PCB_FLAG_TEST(PCB_FLAG_HOLE, &i->pv) && - ADD_PAD_TO_LIST(PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER, pad, PCB_TYPE_PIN, &i->pv, PCB_FCT_COPPER)) + ADD_PAD_TO_LIST(PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE, pad, PCB_TYPE_PIN, &i->pv, PCB_FCT_COPPER)) longjmp(i->env, 1); return PCB_R_DIR_NOT_FOUND; } @@ -856,7 +856,7 @@ pcb_pad_t *pad = (pcb_pad_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER) + if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE) && pcb_intersect_arc_pad(&i->arc, pad) && ADD_PAD_TO_LIST(i->layer, pad, PCB_TYPE_ARC, &i->arc, PCB_FCT_COPPER)) longjmp(i->env, 1); return PCB_R_DIR_NOT_FOUND; @@ -968,7 +968,7 @@ pcb_pad_t *pad = (pcb_pad_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER) + if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE) && pcb_intersect_line_pad(&i->line, pad) && ADD_PAD_TO_LIST(i->layer, pad, PCB_TYPE_LINE, &i->line, PCB_FCT_COPPER)) longjmp(i->env, 1); return PCB_R_DIR_NOT_FOUND; @@ -1079,7 +1079,7 @@ struct rat_info *i = (struct rat_info *) cl; if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == - (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER) && + (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE) && ((pad->Point1.X == i->Point->X && pad->Point1.Y == i->Point->Y) || (pad->Point2.X == i->Point->X && pad->Point2.Y == i->Point->Y) || ((pad->Point1.X + pad->Point2.X) / 2 == i->Point->X && @@ -1203,7 +1203,7 @@ pcb_pad_t *pad = (pcb_pad_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER) + if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE) && PadPadIntersect(pad, &i->pad) && ADD_PAD_TO_LIST(i->layer, pad, PCB_TYPE_PAD, &i->pad, PCB_FCT_COPPER)) longjmp(i->env, 1); return PCB_R_DIR_NOT_FOUND; @@ -1233,10 +1233,10 @@ pcb_cardinal_t layer; layer = PCB->LayerGroups.Entries[LayerGroup][entry]; /*fprintf(stderr, "lg: %d\n", layer);*/ - if (layer == COMPONENT_LAYER) - tlayer = COMPONENT_LAYER; - else if (layer == SOLDER_LAYER) - tlayer = SOLDER_LAYER; + if (layer == PCB_COMPONENT_SIDE) + tlayer = PCB_COMPONENT_SIDE; + else if (layer == PCB_SOLDER_SIDE) + tlayer = PCB_SOLDER_SIDE; } /*fprintf(stderr, "tlayer=%d\n", tlayer);*/ @@ -1245,8 +1245,8 @@ PCB_PAD_LOOP(e); { if ((orig_pad != pad) && (ic == PCB_FLAG_INTCONN_GET(pad))) { - int padlayer = PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER; -/*fprintf(stderr, "layergroup1: %d {%d %d %d} %d \n", tlayer, PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad), SOLDER_LAYER, COMPONENT_LAYER, padlayer);*/ + int padlayer = PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE; +/*fprintf(stderr, "layergroup1: %d {%d %d %d} %d \n", tlayer, PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad), PCB_SOLDER_SIDE, PCB_COMPONENT_SIDE, padlayer);*/ if ((!PCB_FLAG_TEST(TheFlag, pad)) && (tlayer != padlayer)) { /*fprintf(stderr, "layergroup2\n");*/ ADD_PAD_TO_LIST(padlayer, pad, PCB_TYPE_PAD, orig_pad, PCB_FCT_INTERNAL); @@ -1340,7 +1340,7 @@ pcb_pad_t *pad = (pcb_pad_t *) b; struct lo_info *i = (struct lo_info *) cl; - if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER) + if (!PCB_FLAG_TEST(TheFlag, pad) && i->layer == (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE) && pcb_is_pad_in_poly(pad, &i->polygon)) { if (ADD_PAD_TO_LIST(i->layer, pad, PCB_TYPE_POLYGON, &i->polygon, PCB_FCT_COPPER)) longjmp(i->env, 1); Index: trunk/src/find_misc.c =================================================================== --- trunk/src/find_misc.c (revision 5413) +++ trunk/src/find_misc.c (revision 5414) @@ -199,7 +199,7 @@ case PCB_TYPE_PAD: { pcb_pad_t *pad = (pcb_pad_t *) ptr2; - if (ADD_PAD_TO_LIST(PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER, pad, 0, NULL, PCB_FCT_START)) + if (ADD_PAD_TO_LIST(PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE, pad, 0, NULL, PCB_FCT_START)) return pcb_true; break; } Index: trunk/src/find_print.c =================================================================== --- trunk/src/find_print.c (revision 5413) +++ trunk/src/find_print.c (revision 5414) @@ -48,7 +48,7 @@ if (ADD_PV_TO_LIST(pin, 0, NULL, 0)) return pcb_true; DoIt(pcb_true, pcb_true); - number = PadList[COMPONENT_LAYER].Number + PadList[SOLDER_LAYER].Number + PVList.Number; + number = PadList[PCB_COMPONENT_SIDE].Number + PadList[PCB_SOLDER_SIDE].Number + PVList.Number; /* the pin has no connection if it's the only * list entry; don't count vias */ @@ -86,10 +86,10 @@ if (!PCB_FLAG_TEST(TheFlag, pad) && FP) { int i; if (ADD_PAD_TO_LIST(PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) - ? SOLDER_LAYER : COMPONENT_LAYER, pad, 0, NULL, 0)) + ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE, pad, 0, NULL, 0)) return pcb_true; DoIt(pcb_true, pcb_true); - number = PadList[COMPONENT_LAYER].Number + PadList[SOLDER_LAYER].Number + PVList.Number; + number = PadList[PCB_COMPONENT_SIDE].Number + PadList[PCB_SOLDER_SIDE].Number + PVList.Number; /* the pin has no connection if it's the only * list entry; don't count vias */ @@ -175,8 +175,8 @@ DoIt(pcb_true, AndDraw); /* printout all found connections */ PrintPinConnections(FP, pcb_true); - PrintPadConnections(COMPONENT_LAYER, FP, pcb_false); - PrintPadConnections(SOLDER_LAYER, FP, pcb_false); + PrintPadConnections(PCB_COMPONENT_SIDE, FP, pcb_false); + PrintPadConnections(PCB_SOLDER_SIDE, FP, pcb_false); fputs("\t}\n", FP); if (PrepareNextLoop(FP)) return (pcb_true); @@ -193,13 +193,13 @@ fputs("\t\t__CHECKED_BEFORE__\n\t}\n", FP); continue; } - layer = PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? SOLDER_LAYER : COMPONENT_LAYER; + layer = PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, pad) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE; if (ADD_PAD_TO_LIST(layer, pad, PCB_TYPE_ELEMENT, Element, PCB_FCT_ELEMENT)) return pcb_true; DoIt(pcb_true, AndDraw); /* print all found connections */ PrintPadConnections(layer, FP, pcb_true); - PrintPadConnections(layer == (COMPONENT_LAYER ? SOLDER_LAYER : COMPONENT_LAYER), FP, pcb_false); + PrintPadConnections(layer == (PCB_COMPONENT_SIDE ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE), FP, pcb_false); PrintPinConnections(FP, pcb_false); fputs("\t}\n", FP); if (PrepareNextLoop(FP)) Index: trunk/src/layer.c =================================================================== --- trunk/src/layer.c (revision 5413) +++ trunk/src/layer.c (revision 5414) @@ -145,7 +145,7 @@ case 'C': case 't': case 'T': - layer = LayerN + COMPONENT_LAYER; + layer = LayerN + PCB_COMPONENT_SIDE; c_set = pcb_true; break; @@ -153,7 +153,7 @@ case 'S': case 'b': case 'B': - layer = LayerN + SOLDER_LAYER; + layer = LayerN + PCB_SOLDER_SIDE; s_set = pcb_true; break; @@ -163,7 +163,7 @@ layer = atoi(s) - 1; break; } - if (layer > LayerN + MAX(SOLDER_LAYER, COMPONENT_LAYER) || member >= LayerN + 1) + if (layer > LayerN + MAX(PCB_SOLDER_SIDE, PCB_COMPONENT_SIDE) || member >= LayerN + 1) goto error; groupnum[layer] = group; LayerGroup->Entries[group][member++] = layer; @@ -182,9 +182,9 @@ s++; } if (!s_set) - LayerGroup->Entries[SOLDER_LAYER][LayerGroup->Number[SOLDER_LAYER]++] = LayerN + SOLDER_LAYER; + LayerGroup->Entries[PCB_SOLDER_SIDE][LayerGroup->Number[PCB_SOLDER_SIDE]++] = LayerN + PCB_SOLDER_SIDE; if (!c_set) - LayerGroup->Entries[COMPONENT_LAYER][LayerGroup->Number[COMPONENT_LAYER]++] = LayerN + COMPONENT_LAYER; + LayerGroup->Entries[PCB_COMPONENT_SIDE][LayerGroup->Number[PCB_COMPONENT_SIDE]++] = LayerN + PCB_COMPONENT_SIDE; for (layer = 0; layer < LayerN && group < LayerN; layer++) if (groupnum[layer] == -1) { @@ -686,19 +686,19 @@ /* set up one copper layer on top and one on bottom */ PCB->Data->LayerN = 2; - PCB->LayerGroups.Number[SOLDER_LAYER] = 1; - PCB->LayerGroups.Number[COMPONENT_LAYER] = 1; - PCB->LayerGroups.Entries[SOLDER_LAYER][0] = SOLDER_LAYER; - PCB->LayerGroups.Entries[COMPONENT_LAYER][0] = COMPONENT_LAYER; + PCB->LayerGroups.Number[PCB_SOLDER_SIDE] = 1; + PCB->LayerGroups.Number[PCB_COMPONENT_SIDE] = 1; + PCB->LayerGroups.Entries[PCB_SOLDER_SIDE][0] = PCB_SOLDER_SIDE; + PCB->LayerGroups.Entries[PCB_COMPONENT_SIDE][0] = PCB_COMPONENT_SIDE; /* Name top and bottom layers */ - if (PCB->Data->Layer[COMPONENT_LAYER].Name != NULL) - free((char *)PCB->Data->Layer[COMPONENT_LAYER].Name); - PCB->Data->Layer[COMPONENT_LAYER].Name = pcb_strdup(""); + if (PCB->Data->Layer[PCB_COMPONENT_SIDE].Name != NULL) + free((char *)PCB->Data->Layer[PCB_COMPONENT_SIDE].Name); + PCB->Data->Layer[PCB_COMPONENT_SIDE].Name = pcb_strdup(""); - if (PCB->Data->Layer[SOLDER_LAYER].Name != NULL) - free((char *)PCB->Data->Layer[SOLDER_LAYER].Name); - PCB->Data->Layer[SOLDER_LAYER].Name = pcb_strdup(""); + if (PCB->Data->Layer[PCB_SOLDER_SIDE].Name != NULL) + free((char *)PCB->Data->Layer[PCB_SOLDER_SIDE].Name); + PCB->Data->Layer[PCB_SOLDER_SIDE].Name = pcb_strdup(""); } pcb_layer_id_t pcb_layer_create(pcb_layer_type_t type, pcb_bool reuse_layer, pcb_bool_t reuse_group, const char *lname) @@ -736,8 +736,8 @@ case PCB_LYT_COPPER: switch(loc) { - case PCB_LYT_TOP: return COMPONENT_LAYER; - case PCB_LYT_BOTTOM: return SOLDER_LAYER; + case PCB_LYT_TOP: return PCB_COMPONENT_SIDE; + case PCB_LYT_BOTTOM: return PCB_SOLDER_SIDE; case PCB_LYT_INTERN: for(grp = 2; grp < PCB_MAX_LAYERGRP; grp++) { if (PCB->LayerGroups.Number[grp] > 0) { @@ -779,8 +779,8 @@ /* there's only one top and bottom group, always reuse them */ if (role == PCB_LYT_COPPER) { switch(loc) { - case PCB_LYT_TOP: grp = COMPONENT_LAYER; reuse_group = 0; break; - case PCB_LYT_BOTTOM: grp = SOLDER_LAYER; reuse_group = 0; break; + case PCB_LYT_TOP: grp = PCB_COMPONENT_SIDE; reuse_group = 0; break; + case PCB_LYT_BOTTOM: grp = PCB_SOLDER_SIDE; reuse_group = 0; break; } } @@ -860,14 +860,14 @@ { int sl, cl, found, n; - sl = SOLDER_LAYER + PCB->Data->LayerN; - for(found = 0, n = 0; n < PCB->LayerGroups.Number[SOLDER_LAYER]; n++) - if (PCB->LayerGroups.Entries[SOLDER_LAYER][n] == sl) + sl = PCB_SOLDER_SIDE + PCB->Data->LayerN; + for(found = 0, n = 0; n < PCB->LayerGroups.Number[PCB_SOLDER_SIDE]; n++) + if (PCB->LayerGroups.Entries[PCB_SOLDER_SIDE][n] == sl) found = 1; if (!found) { - PCB->LayerGroups.Entries[SOLDER_LAYER][PCB->LayerGroups.Number[SOLDER_LAYER]] = sl; - PCB->LayerGroups.Number[SOLDER_LAYER]++; + PCB->LayerGroups.Entries[PCB_SOLDER_SIDE][PCB->LayerGroups.Number[PCB_SOLDER_SIDE]] = sl; + PCB->LayerGroups.Number[PCB_SOLDER_SIDE]++; if (PCB->Data->Layer[sl].Name != NULL) free((char *)PCB->Data->Layer[sl].Name); PCB->Data->Layer[sl].Name = pcb_strdup("silk"); @@ -874,14 +874,14 @@ } - cl = COMPONENT_LAYER + PCB->Data->LayerN; - for(found = 0, n = 0; n < PCB->LayerGroups.Number[COMPONENT_LAYER]; n++) - if (PCB->LayerGroups.Entries[COMPONENT_LAYER][n] == cl) + cl = PCB_COMPONENT_SIDE + PCB->Data->LayerN; + for(found = 0, n = 0; n < PCB->LayerGroups.Number[PCB_COMPONENT_SIDE]; n++) + if (PCB->LayerGroups.Entries[PCB_COMPONENT_SIDE][n] == cl) found = 1; if (!found) { - PCB->LayerGroups.Entries[COMPONENT_LAYER][PCB->LayerGroups.Number[COMPONENT_LAYER]] = cl; - PCB->LayerGroups.Number[COMPONENT_LAYER]++; + PCB->LayerGroups.Entries[PCB_COMPONENT_SIDE][PCB->LayerGroups.Number[PCB_COMPONENT_SIDE]] = cl; + PCB->LayerGroups.Number[PCB_COMPONENT_SIDE]++; if (PCB->Data->Layer[cl].Name != NULL) free((char *)PCB->Data->Layer[cl].Name); PCB->Data->Layer[cl].Name = pcb_strdup("silk"); @@ -953,7 +953,7 @@ static int LastLayerInComponentGroup(int layer) { - int cgroup = pcb_layer_get_group(pcb_max_group + COMPONENT_LAYER); + int cgroup = pcb_layer_get_group(pcb_max_group + PCB_COMPONENT_SIDE); int lgroup = pcb_layer_get_group(layer); if (cgroup == lgroup && PCB->LayerGroups.Number[lgroup] == 2) return 1; @@ -962,7 +962,7 @@ static int LastLayerInSolderGroup(int layer) { - int sgroup = pcb_layer_get_group(pcb_max_group + SOLDER_LAYER); + int sgroup = pcb_layer_get_group(pcb_max_group + PCB_SOLDER_SIDE); int lgroup = pcb_layer_get_group(layer); if (sgroup == lgroup && PCB->LayerGroups.Number[lgroup] == 2) return 1; Index: trunk/src/layer.h =================================================================== --- trunk/src/layer.h (revision 5413) +++ trunk/src/layer.h (revision 5414) @@ -67,13 +67,12 @@ pcb_layergrp_id_t pcb_layer_get_group(pcb_layer_id_t Layer); pcb_layergrp_id_t pcb_layer_get_group_(pcb_layer_t *Layer); -/* --------------------------------------------------------------------------- - * the layer-numbers of the two additional special layers - * 'component' and 'solder'. The offset of PCB_MAX_LAYER is not added - */ +/* the offsets of the two additional special layers (e.g. silk) for 'component' + and 'solder'. The offset of PCB_MAX_LAYER is not added here. Also can be + used to address side of the board without referencing to groups or layers. */ typedef enum { - SOLDER_LAYER = 0, - COMPONENT_LAYER = 1 + PCB_SOLDER_SIDE = 0, + PCB_COMPONENT_SIDE = 1 } pcb_side_t; pcb_bool pcb_layer_is_paste_empty(pcb_side_t side); Index: trunk/src/macro.h =================================================================== --- trunk/src/macro.h (revision 5413) +++ trunk/src/macro.h (revision 5414) @@ -59,11 +59,11 @@ ((PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, (o)) != 0) == PCB_SWAP_IDENT) /* --------------------------------------------------------------------------- - * Determines if an object is on the given side. side is either SOLDER_LAYER - * or COMPONENT_LAYER. + * Determines if an object is on the given side. side is either PCB_SOLDER_SIDE + * or PCB_COMPONENT_SIDE. */ #define PCB_ON_SIDE(element, side) \ - (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, element) == (side == SOLDER_LAYER)) + (PCB_FLAG_TEST(PCB_FLAG_ONSOLDER, element) == (side == PCB_SOLDER_SIDE)) /* --------------------------------------------------------------------------- * some loop shortcuts Index: trunk/src_plugins/export_bboard/bboard.c =================================================================== --- trunk/src_plugins/export_bboard/bboard.c (revision 5413) +++ trunk/src_plugins/export_bboard/bboard.c (revision 5414) @@ -513,8 +513,8 @@ memset(group_data, 0, sizeof(group_data)); - group_data[pcb_layer_get_group(pcb_max_copper_layer + SOLDER_LAYER)].solder = 1; - group_data[pcb_layer_get_group(pcb_max_copper_layer + COMPONENT_LAYER)].component = 1; + group_data[pcb_layer_get_group(pcb_max_copper_layer + PCB_SOLDER_SIDE)].solder = 1; + group_data[pcb_layer_get_group(pcb_max_copper_layer + PCB_COMPONENT_SIDE)].component = 1; for (i = 0; i < pcb_max_copper_layer; i++) { layer = PCB->Data->Layer + i; Index: trunk/src_plugins/export_openscad/scad.c =================================================================== --- trunk/src_plugins/export_openscad/scad.c (revision 5413) +++ trunk/src_plugins/export_openscad/scad.c (revision 5414) @@ -536,8 +536,8 @@ scad_write_prologue(PCB->Filename); memset(group_data, 0, sizeof(group_data)); - group_data[pcb_layer_get_group(pcb_max_copper_layer + SOLDER_LAYER)].solder = 1; - group_data[pcb_layer_get_group(pcb_max_copper_layer + COMPONENT_LAYER)].component = 1; + group_data[pcb_layer_get_group(pcb_max_copper_layer + PCB_SOLDER_SIDE)].solder = 1; + group_data[pcb_layer_get_group(pcb_max_copper_layer + PCB_COMPONENT_SIDE)].component = 1; for (i = 0; i < pcb_max_copper_layer; i++) { layer = PCB->Data->Layer + i; if (!pcb_layer_is_empty_(layer)) Index: trunk/src_plugins/fontmode/fontmode.c =================================================================== --- trunk/src_plugins/fontmode/fontmode.c (revision 5413) +++ trunk/src_plugins/fontmode/fontmode.c (revision 5414) @@ -83,8 +83,8 @@ conf_set_design("design/min_wid", "%s", "1"); PCB->minWid = 1; conf_set_design("design/min_slk", "%s", "1"); PCB->minSlk = 1; - MoveLayerToGroup(pcb_max_copper_layer + COMPONENT_LAYER, 0); - MoveLayerToGroup(pcb_max_copper_layer + SOLDER_LAYER, 1); + MoveLayerToGroup(pcb_max_copper_layer + PCB_COMPONENT_SIDE, 0); + MoveLayerToGroup(pcb_max_copper_layer + PCB_SOLDER_SIDE, 1); while (PCB->Data->LayerN > 4) pcb_layer_move(4, -1); Index: trunk/src_plugins/io_kicad/read.c =================================================================== --- trunk/src_plugins/io_kicad/read.c (revision 5413) +++ trunk/src_plugins/io_kicad/read.c (revision 5414) @@ -840,11 +840,11 @@ int id = -1; switch(lnum) { case 0: - id = SOLDER_LAYER; + id = PCB_SOLDER_SIDE; pcb_layer_rename(id, lname); break; case 15: - id = COMPONENT_LAYER; + id = PCB_COMPONENT_SIDE; pcb_layer_rename(id, lname); break; default: Index: trunk/src_plugins/io_pcb/parse_y.c =================================================================== --- trunk/src_plugins/io_pcb/parse_y.c (revision 5413) +++ trunk/src_plugins/io_pcb/parse_y.c (revision 5414) @@ -2321,7 +2321,7 @@ if ((yyvsp[-1].integer) & PCB_FLAG_ONSILK) { pcb_layer_t *lay = &yyData->Layer[yyData->LayerN + - (((yyvsp[-1].integer) & PCB_FLAG_ONSOLDER) ? SOLDER_LAYER : COMPONENT_LAYER)]; + (((yyvsp[-1].integer) & PCB_FLAG_ONSOLDER) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE)]; pcb_text_new(lay ,yyFont, OU ((yyvsp[-6].measure)), OU ((yyvsp[-5].measure)), (yyvsp[-4].number), (yyvsp[-3].number), (yyvsp[-2].string), pcb_flag_old((yyvsp[-1].integer))); @@ -2347,7 +2347,7 @@ if ((yyvsp[-1].flagtype).f & PCB_FLAG_ONSILK) { pcb_layer_t *lay = &yyData->Layer[yyData->LayerN + - (((yyvsp[-1].flagtype).f & PCB_FLAG_ONSOLDER) ? SOLDER_LAYER : COMPONENT_LAYER)]; + (((yyvsp[-1].flagtype).f & PCB_FLAG_ONSOLDER) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE)]; pcb_text_new(lay, yyFont, NU ((yyvsp[-6].measure)), NU ((yyvsp[-5].measure)), (yyvsp[-4].number), (yyvsp[-3].number), (yyvsp[-2].string), (yyvsp[-1].flagtype)); } Index: trunk/src_plugins/io_pcb/parse_y.y =================================================================== --- trunk/src_plugins/io_pcb/parse_y.y (revision 5413) +++ trunk/src_plugins/io_pcb/parse_y.y (revision 5414) @@ -1080,7 +1080,7 @@ if ($8 & PCB_FLAG_ONSILK) { pcb_layer_t *lay = &yyData->Layer[yyData->LayerN + - (($8 & PCB_FLAG_ONSOLDER) ? SOLDER_LAYER : COMPONENT_LAYER)]; + (($8 & PCB_FLAG_ONSOLDER) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE)]; pcb_text_new(lay ,yyFont, OU ($3), OU ($4), $5, $6, $7, pcb_flag_old($8)); @@ -1105,7 +1105,7 @@ if ($8.f & PCB_FLAG_ONSILK) { pcb_layer_t *lay = &yyData->Layer[yyData->LayerN + - (($8.f & PCB_FLAG_ONSOLDER) ? SOLDER_LAYER : COMPONENT_LAYER)]; + (($8.f & PCB_FLAG_ONSOLDER) ? PCB_SOLDER_SIDE : PCB_COMPONENT_SIDE)]; pcb_text_new(lay, yyFont, NU ($3), NU ($4), $5, $6, $7, $8); }