So, where can I read out on which position the pinflags are?

On Sat, 2005-11-19 at 16:55 -0500, DJ Delorie wrote:
> > > The canonical list of flag names is in src/strflags.c in the
> > > flagbits[] array.  Descriptions of the flags are in src/const.h under
> > > "object flags".
> > > 
> > I don't know C so it is useless for me...
> 
> It can't be *that* useless:
> 
>   { PINFLAG, N("pin"), ALL_TYPES },
>   { VIAFLAG, N("via"), ALL_TYPES },
>   { FOUNDFLAG, N("found"), ALL_TYPES },
>   { HOLEFLAG, N("hole"), PIN_TYPES },
>   { RATFLAG, N("rat"), RATLINE_TYPE },
>   { PININPOLYFLAG, N("pininpoly"), PIN_TYPES | PAD_TYPE },
>   { CLEARPOLYFLAG, N("clearpoly"), POLYGON_TYPE },
>   { HIDENAMEFLAG, N("hidename"), ELEMENT_TYPE },
>   { DISPLAYNAMEFLAG, N("showname"), ELEMENT_TYPE },
>   { CLEARLINEFLAG, N("clearline"), LINE_TYPE },
>   { SELECTEDFLAG, N("selected"), ALL_TYPES },
>   { ONSOLDERFLAG, N("onsolder"), ELEMENT_TYPE },
>   { AUTOFLAG, N("auto"), ALL_TYPES },
>   { SQUAREFLAG, N("square"), PIN_TYPES | PAD_TYPE },
>   { RUBBERENDFLAG, N("rubberend"), LINE_TYPE },
>   { WARNFLAG, N("warn"), PIN_TYPES | PAD_TYPE },
>   { USETHERMALFLAG, N("usetherm"), PIN_TYPES | PAD_TYPE },
>   { OCTAGONFLAG, N("octagon"), PIN_TYPES | PAD_TYPE },
>   { DRCFLAG, N("drc"), ALL_TYPES },
>   { LOCKFLAG, N("lock"), ALL_TYPES },
>   { EDGE2FLAG, N("edge2"), ALL_TYPES }
> 
> 
> #define       NOFLAG                  0x0000
> #define       PINFLAG                 0x0001  /* is a pin */
> #define       VIAFLAG                 0x0002  /* is a via */
> #define       FOUNDFLAG               0x0004  /* used by 'FindConnection()' */
> #define HOLEFLAG              0x0008  /* pin or via is only a hole */
> #define RATFLAG                 0x0010          /* indicates line is a rat 
> line */
> #define PININPOLYFLAG           0x0010          /* pin found inside poly - 
> same as */
>                                                 /* rat line since not used on 
> lines */
> #define CLEARPOLYFLAG           0x0010          /* pins/vias clear these 
> polygons */
> #define HIDENAMEFLAG          0x0010  /* hide the element name */
> #define       DISPLAYNAMEFLAG         0x0020  /* display the names of 
> pins/pads */
>                                       /* of an element */
> #define CLEARLINEFLAG         0x0020  /* line doesn't touch polygons */
> #define       SELECTEDFLAG            0x0040  /* object has been selected */
> #define       ONSOLDERFLAG            0x0080  /* element is on bottom side */
> #define AUTOFLAG              0x0080  /* line/via created by auto-router */
> #define       SQUAREFLAG              0x0100  /* pin is square, not round */
> #define RUBBERENDFLAG         0x0200  /* indicates one end already rubber */
>                                       /* banding same as warn flag*/
>                                       /* since pins/pads won't use it */
> #define WARNFLAG              0x0200          /* Warning for pin/via/pad */
> #define USETHERMALFLAG                0x0400          /* draw pin, via with 
> thermal fingers */
> #define ONSILKFLAG              0x0400  /* old files use this to indicate 
> silk */
> #define OCTAGONFLAG           0x0800          /* draw pin/via as octagon 
> instead of round */
> #define DRCFLAG                       0x1000          /* flag like FOUND flag 
> for DRC checking */
> #define LOCKFLAG                0x2000  /* object locked in place */
> #define EDGE2FLAG               0x4000  /* Padr.Point2 is closer to outside 
> edge */
>                                       /* also pinout text for pins is 
> vertical */
> 
> 
> #define       NO_TYPE                 0x0000  /* no object */
> #define       VIA_TYPE                0x0001
> #define       ELEMENT_TYPE            0x0002
> #define       LINE_TYPE               0x0004
> #define       POLYGON_TYPE            0x0008
> #define       TEXT_TYPE               0x0010
> #define RATLINE_TYPE          0x0020
> 
> #define       PIN_TYPE                0x0100  /* objects that are part */
> #define       PAD_TYPE                0x0200  /* 'pin' of SMD element */
> #define       ELEMENTNAME_TYPE        0x0400  /* of others */
> #define       POLYGONPOINT_TYPE       0x0800
> #define       LINEPOINT_TYPE          0x1000
> #define ELEMENTLINE_TYPE        0x2000
> #define ARC_TYPE                0x4000
> #define ELEMENTARC_TYPE               0x8000
> 
> #define PIN_TYPES     (VIA_TYPE | PIN_TYPE)
> #define LOCK_TYPES    (VIA_TYPE | LINE_TYPE | ARC_TYPE | POLYGON_TYPE | 
> ELEMENT_TYPE \
>                       | TEXT_TYPE | ELEMENTNAME_TYPE)
> 
> #define       ALL_TYPES               (~0)    /* all bits set */
> 

Attachment: signature.asc
Description: This is a digitally signed message part



Reply via email to