Beispiel #1
0
//
// Update value and filtered value
//
boolean sensor::newival(float newval)
{
	ivalue = newval;
 
        if ((ivalue >= _minv) && ( ivalue <= _maxv)) {
	  fvalue = (ivalue  - fvalue) * fconst + fvalue;	// Update filtered value
          if (calibrated) {
            statusmsg("Ok");
          } else {
             statusmsg("Ok No T Cal");
          }
        
          if ( _debugenabled) { 
              Serial.println(_name); 
              Serial.println("Value");
              Serial.println(ivalue, 1); 
              Serial.println("Filtered");
              Serial.println(fvalue, 1); 
          }  
          return true;
        }
        else
        {
          statusmsg("Out of Range");
          if ( _debugenabled) { 
              Serial.println(_name); 
              Serial.println("Out of Range"); 
          } 
          return false;
        }  
}
Beispiel #2
0
static void mainhelp(void)
{
#ifdef ALT_X
    statusmsg("Use arrow keys and Enter to select (Alt-X to quit)");
#else
    statusmsg("Use arrow keys and Enter to select");
#endif
}
Beispiel #3
0
WorkerAdapter::WorkerAdapter(std::shared_ptr<WorkerThread> worker_, QObject *parent)
  : QObject(parent), worker(worker_)

{
    worker->statusSignal().connect(
          [=] (std::string message) { emit statusmsg(message); }
    );
    worker->finishedSignal().connect(
          [=] (void *) { emit finished(); }
    );
    worker->imageProcessedSignal().connect(
          [=] (GazeHypsPtr gazehyps)
        {
            emit imageProcessed(gazehyps);
            QCoreApplication::processEvents();
        }
    );
}
Beispiel #4
0
void showfile(char *fname)
{
    int i, bh = bodylen();
    FILE *fp;
    char buf[MAXSTRLEN], *result;
    bool ateof = FALSE;

    statusmsg("FileBrowser: Hit key to continue, Q to quit");

    if ((fp = fopen(fname, "r")) != NULL)   /* file available? */
    {
        while (!ateof)
        {
            clsbody();

            for (i = 0; i < bh - 1 && !ateof; i++)
            {
                buf[0] = '\0';
                result = fgets(buf, MAXSTRLEN, fp);

                if (result && strlen(buf))
                    bodymsg(buf);
                else
                    ateof = TRUE;
            }

            switch (waitforkey())
            {
            case 'Q':
            case 'q':
            case 0x1b:
                ateof = TRUE;
            }
        }

        fclose(fp);
    }
    else
    {
        sprintf(buf, "ERROR: file '%s' not found", fname);
        errormsg(buf);
    }
}
Beispiel #5
0
void domenu(menu *mp)
{
    int y, x, nitems, barlen, mheight, mw, old = -1, cur = 0, cur0;
    bool stop = FALSE;
    WINDOW *wmenu;

    curs_set(0);
    getmenupos(&y, &x);
    menudim(mp, &nitems, &barlen);
    mheight = nitems + 2;
    mw = barlen + 2;
    wmenu = newwin(mheight, mw, y, x);
    colorbox(wmenu, SUBMENUCOLOR, 1);
    repaintmenu(wmenu, mp);

    key = ERR;

    while (!stop && !quit)
    {
        if (cur != old)
        {
            if (old != -1)
                mvwaddstr(wmenu, old + 1, 1,
                          prepad(padstr(mp[old].name, barlen - 1), 1));

            setcolor(wmenu, SUBMENUREVCOLOR);
            mvwaddstr(wmenu, cur + 1, 1,
                      prepad(padstr(mp[cur].name, barlen - 1), 1));

            setcolor(wmenu, SUBMENUCOLOR);
            statusmsg(mp[cur].desc);

            old = cur;
            wrefresh(wmenu);
        }

        switch (key = ((key != ERR) ? key : waitforkey()))
        {
        case '\n':          /* menu item selected */
            touchwin(wbody);
            wrefresh(wbody);
            setmenupos(y + 1, x + 1);
            rmerror();

            key = ERR;
            curs_set(1);
            (mp[cur].func)();   /* perform function */
            curs_set(0);

            repaintmenu(wmenu, mp);

            old = -1;
            break;

        case KEY_UP:
            cur = (cur + nitems - 1) % nitems;
            key = ERR;
            break;

        case KEY_DOWN:
            cur = (cur + 1) % nitems;
            key = ERR;
            break;

        case KEY_ESC:
        case KEY_LEFT:
        case KEY_RIGHT:
            if (key == KEY_ESC)
                key = ERR;  /* return to prev submenu */

            stop = TRUE;
            break;

        default:
            cur0 = cur;

            do
            {
                cur = (cur + 1) % nitems;

            } while ((cur != cur0) &&
                     (hotkey(mp[cur].name) != toupper((int)key)));

            key = (hotkey(mp[cur].name) == toupper((int)key)) ? '\n' : ERR;
        }

    }

    rmerror();
    delwin(wmenu);
    touchwin(wbody);
    wrefresh(wbody);
}
Beispiel #6
0
static void mainmenu(menu *mp)
{
    int nitems, barlen, old = -1, cur = 0, c, cur0;

    menudim(mp, &nitems, &barlen);
    repaintmainmenu(barlen, mp);

    while (!quit)
    {
        if (cur != old)
        {
            if (old != -1)
            {
                mvwaddstr(wmain, 0, old * barlen,
                          prepad(padstr(mp[old].name, barlen - 1), 1));

                statusmsg(mp[cur].desc);
            }
            else
                mainhelp();

            setcolor(wmain, MAINMENUREVCOLOR);

            mvwaddstr(wmain, 0, cur * barlen,
                      prepad(padstr(mp[cur].name, barlen - 1), 1));

            setcolor(wmain, MAINMENUCOLOR);
            old = cur;
            wrefresh(wmain);
        }

        switch (c = (key != ERR ? key : waitforkey()))
        {
        case KEY_DOWN:
        case '\n':              /* menu item selected */
            touchwin(wbody);
            wrefresh(wbody);
            rmerror();
            setmenupos(th + mh, cur * barlen);
            curs_set(1);
            (mp[cur].func)();   /* perform function */
            curs_set(0);

            switch (key)
            {
            case KEY_LEFT:
                cur = (cur + nitems - 1) % nitems;
                key = '\n';
                break;

            case KEY_RIGHT:
                cur = (cur + 1) % nitems;
                key = '\n';
                break;

            default:
                key = ERR;
            }

            repaintmainmenu(barlen, mp);
            old = -1;
            break;

        case KEY_LEFT:
            cur = (cur + nitems - 1) % nitems;
            break;

        case KEY_RIGHT:
            cur = (cur + 1) % nitems;
            break;

        case KEY_ESC:
            mainhelp();
            break;

        default:
            cur0 = cur;

            do
            {
                cur = (cur + 1) % nitems;

            } while ((cur != cur0) && (hotkey(mp[cur].name) != toupper(c)));

            if (hotkey(mp[cur].name) == toupper(c))
                key = '\n';
        }

    }

    rmerror();
    touchwin(wbody);
    wrefresh(wbody);
}