示例#1
0
文件: graph.c 项目: xydinesh/jamming
/* adds a new edge to graph */
void
graph_add_edge (graph_t *g, int a, int b)
{
    int aa, bb;
    unsigned long pos = 0;

    aa = a%g->nodes;
    bb = b%g->nodes;
    pos = (unsigned long)BITPOS(aa,bb,g->nodes);
    BitTrue(g->barray,pos);
}
示例#2
0
文件: XERqsts.c 项目: aosm/X11
int XEStartTrapRequest(XETC *tc)
{ 
    int status = True;
    Display *dpy = tc->dpy;
    CARD32 X_XTrap = tc->extOpcode;
    xXTrapReq *reqptr;
    status = XEFlushConfig(tc); /* Flushout any pending configuration first */
    if (status == True)
    {
        /* Add our event handler for the XLib transport */
        XETrapSetEventHandler(tc, XETrapData, XETrapDispatchXLib);
        GetReq(XTrap,reqptr);
        reqptr->minor_opcode = XETrap_StartTrap;
        XFlush(dpy);
        SyncHandle(); 
        BitTrue(tc->values.tc_flags, XETCTrapActive);
    }
    return(status);
}
示例#3
0
文件: xtrapstats.c 项目: aosm/X11
int
main(int argc, char *argv[])
{
    XETrapGetAvailRep     ret_avail;
    XETrapGetStatsRep     ret_stats;
    Widget  appW;
    XtAppContext app;
    char *tmp = NULL;
    XETC    *tc;
    Display *dpy;
    Bool done;
    char    buffer[10];
    ReqFlags   requests;
    EventFlags events;
    int i;

    /* Connect to Server */
    appW = XtAppInitialize(&app,"XTrap",NULL,(Cardinal)0L,
        (int *)&argc, (String *)argv, (String *)NULL,(ArgList)&tmp,
        (Cardinal)NULL);
    dpy = XtDisplay(appW);
#ifdef DEBUG
    XSynchronize(dpy, True);
#endif
    printf("Display:  %s \n", DisplayString(dpy));
    if ((tc = XECreateTC(dpy,0L, NULL)) == False)
    {
        fprintf(stderr,"%s: could not initialize extension\n",argv[0]);
        exit(1L);
    }

    (void)XEGetAvailableRequest(tc,&ret_avail);
    if (BitIsFalse(ret_avail.valid, XETrapStatistics))
    {
        printf("\nStatistics not available from '%s'.\n",
            DisplayString(dpy));
        exit(1L);
    }
    XETrapSetStatistics(tc, True);
    for (i=0; i<256L; i++)
    {
        BitTrue(requests, i);
    }
    XETrapSetRequests(tc, True, requests);
    for (i=KeyPress; i<=MotionNotify; i++)
    {
        BitTrue(events, i);
    }
    XETrapSetEvents(tc, True, events);
    done = False;
    while(done == False)
    {
        fprintf(stderr,"Stats Command (Zero, Quit, [Show])? ");
        fgets(buffer, sizeof(buffer), stdin);
        switch(toupper(buffer[0]))
        {
            case '\n':  /* Default command */
            case 'S':   /* Request fresh counters & display */
                (void)XEGetStatisticsRequest(tc,&ret_stats);
                (void)XEPrintStatistics(stdout,&ret_stats,tc);
                break;
            case 'Z':  /* Zero out counters */
                XETrapSetStatistics(tc, False);
                break;
            case 'Q':
                done = True;
                break;
            default:
                printf("Invalid command, reenter!\n");
                break;
        }
    }
    (void)XEFreeTC(tc);
    (void)XCloseDisplay(dpy);
    exit(0L);
}