Index: trunk/src/obj_padstack.h =================================================================== --- trunk/src/obj_padstack.h (revision 12219) +++ trunk/src/obj_padstack.h (revision 12220) @@ -20,14 +20,11 @@ * */ -#ifndef PCB_OBJ_PADSTACK_H -#define PCB_OBJ_PADSTACK_H +#ifndef PCB_OBJ_PADSTACK_STRUCT_DECLARED +#define PCB_OBJ_PADSTACK_STRUCT_DECLARED -#define PCB_PADSTACK_MAX_SHAPES 31 +#include "obj_common.h" -#define PCB_PADSTACK_INVALID ((pcb_cardinal_t)(-1)) - -#include "obj_common.h" /* The actual padstack is just a reference to a padstack proto within the same data */ struct pcb_padstack_s { PCB_ANYOBJECTFIELDS; @@ -39,9 +36,18 @@ } thermal; gdl_elem_t link; /* a padstack is in a list in pcb_data_t as a global object */ }; +#endif +#ifndef PCB_PADSTACK_STRUCT_ONLY +#ifndef PCB_OBJ_PADSTACK_H +#define PCB_OBJ_PADSTACK_H -#include "obj_padstack_list.h" +#define PCB_PADSTACK_MAX_SHAPES 31 + +#define PCB_PADSTACK_INVALID ((pcb_cardinal_t)(-1)) + +#include "obj_common.h" + #include "layer.h" typedef struct pcb_padstack_poly_s { @@ -116,3 +122,4 @@ int pcb_padstack_eq(const pcb_padstack_proto_t *p1, const pcb_padstack_proto_t *p2); #endif +#endif Index: trunk/src/obj_padstack_list.h =================================================================== --- trunk/src/obj_padstack_list.h (revision 12219) +++ trunk/src/obj_padstack_list.h (revision 12220) @@ -23,6 +23,7 @@ #ifndef PCB_OBJ_PADSTACK_LIST_H #define PCB_OBJ_PADSTACK_LIST_H +#define PCB_PADSTACK_STRUCT_ONLY #include "obj_padstack.h" @@ -41,4 +42,6 @@ #include #include +#undef PCB_PADSTACK_STRUCT_ONLY + #endif