Esempio n. 1
0
/* FOLLOWING FUNCTIONS USED FOR TRACES IN TESTING AND DEBUGGING */
void dump_waitinglist (FILE * stream, bool statstoo)
{
  int nb, x, y, *p;
  fprintf (stream, "== START DUMP_WAITINGLIST ==\n");
  if (statstoo) {
    fprintf (stream, "waitlist_inited = %s\n", boolstr(waitlist_inited));
    fprintf (stream, "waitinglist = %p\n", (void *)waitinglist);
    fprintf (stream, "wait_curr = %p\n", (void *)wait_curr);
    fprintf (stream, "wait_max = %p\n", (void *)wait_max);
  }
  if (waitlist_inited) {
    if (0 != (wait_curr - waitinglist) % 2) {
      fprintf (stderr, "ERROR: %s: nb elems in waitinglist should be even.\n", __func__);
      fail();
    }
    if (statstoo) {
      fprintf (stream, "Total capacity:\t%ld ints\n", wait_max - waitinglist);
      fprintf (stream, "Used capacity:\t%ld ints\n", wait_curr - waitinglist);
      fprintf (stream, "Remaining cap.:\t%ld ints\n", wait_max - wait_curr);
    }
  }
  nb = 0; p = waitinglist;
  while (p < wait_curr) {
    x = *(p++); y = *(p++);  nb++;
    fprintf (stream, "WL[%d] = (%d,%d)\n", nb, x, y);
  }
}
Esempio n. 2
0
static void print_info(struct ddb *db)
{
    static const char yes[] = "true";
    static const char no[] = "false";
    const char *boolstr(int boolean) { return boolean ? yes: no; }
    ddb_features_t feat;

    ddb_features(db, feat);
    printf("Total size:              %llu bytes\n", FEAT(DDB_TOTAL_SIZE));
    printf("Items size:              %llu bytes\n", FEAT(DDB_ITEMS_SIZE));
    printf("Values size:             %llu bytes\n", FEAT(DDB_VALUES_SIZE));
    printf("Number of keys:          %llu\n", FEAT(DDB_NUM_KEYS));
    printf("Number of items:         %llu\n", FEAT(DDB_NUM_VALUES));
    printf("Number of unique values: %llu\n", FEAT(DDB_NUM_UNIQUE_VALUES));
    printf("Compressed?              %s\n", boolstr(feat[DDB_IS_COMPRESSED]));
    printf("Hashed?                  %s\n", boolstr(feat[DDB_IS_HASHED]));
    printf("Multiset?                %s\n", boolstr(feat[DDB_IS_MULTISET]));
}
Esempio n. 3
0
void status(int argc, char **argv)
{
    safelock_status_t status;
    int err, i;

    for (i = 1; i < argc; i++ ) {
        err = safelock_fetch_file_status(argv[i], &status);
        if (err)
            safelock_die(err, "Unable to fetch status: %s", argv[i]);

        printf("%s: locked = %s, crashed = %s", argv[i],
               boolstr(status.locked), boolstr(status.crashed));
        if (status.data_valid)
            printf(", PID = %ld, age = %lu, data = %d",
                   (long)status.pid, (unsigned long)status.age, status.data);
        printf("\n");
    }
}
Esempio n. 4
0
void GUIoptions(){
    //GUI设置菜单
	gui::Form MainForm;
	int leftp = windowwidth / 2 - 250;
	int rightp = windowwidth / 2 + 250;
	int midp = windowwidth / 2;
	int upp = 60;
	int downp = windowheight - 20;
	int lspc = 36;
	bool f = false;
	MainForm.Init();
	TextRenderer::setFontColor(1.0, 1.0, 1.0, 1.0);
	gui::label* title = MainForm.createlabel("===============< 图形界面选项 >==============");
	gui::button* fontbtn = MainForm.createbutton("全部使用Unicode字体:" + boolstr(TextRenderer::useUnicodeASCIIFont));
	gui::button* backbtn = MainForm.createbutton("<< 返回选项菜单");
	do{
        leftp=windowwidth/2-250;
        rightp=windowwidth/2+250;
        midp=windowwidth/2;
        downp=windowheight-20;
        title->resize(midp-225,midp+225,20,36);
        fontbtn->resize(leftp,midp-10,upp+lspc*0,upp+lspc*0+24);
        backbtn->resize(leftp,rightp,downp-24,downp);
        //更新GUI
		glfwGetCursorPos(MainWindow, &mx, &my);
		MainForm.mousedata((int)mx, (int)my, mw, mb);
        MainForm.update();
        if(fontbtn->clicked) TextRenderer::useUnicodeASCIIFont=!TextRenderer::useUnicodeASCIIFont;
        if(backbtn->clicked) f=true;
        fontbtn->text="全部使用Unicode字体:" + boolstr(TextRenderer::useUnicodeASCIIFont);
		MainForm.render();
		glfwSwapBuffers(MainWindow);
		glfwPollEvents();
		if (glfwWindowShouldClose(MainWindow)) exit(0);
	} while (!f);
    MainForm.cleanup();
}
Esempio n. 5
0
//------------------------------------------------------------------------
// llgl_dump()
//------------------------------------------------------------------------
void llgl_dump()
{
	int i;
	F32 fv[16];
	GLboolean b;

	LL_INFOS() << "==========================" << LL_ENDL;
	LL_INFOS() << "OpenGL State" << LL_ENDL;
	LL_INFOS() << "==========================" << LL_ENDL;

	LL_INFOS() << "-----------------------------------" << LL_ENDL;
	LL_INFOS() << "Current Values" << LL_ENDL;
	LL_INFOS() << "-----------------------------------" << LL_ENDL;

	glGetFloatv(GL_CURRENT_COLOR, fv);
	LL_INFOS() << "GL_CURRENT_COLOR          : " << fv4(fv) << LL_ENDL;

	glGetFloatv(GL_CURRENT_NORMAL, fv);
	LL_INFOS() << "GL_CURRENT_NORMAL          : " << fv3(fv) << LL_ENDL;

	LL_INFOS() << "-----------------------------------" << LL_ENDL;
	LL_INFOS() << "Lighting" << LL_ENDL;
	LL_INFOS() << "-----------------------------------" << LL_ENDL;

	LL_INFOS() << "GL_LIGHTING                : " << boolstr(glIsEnabled(GL_LIGHTING)) << LL_ENDL;

	LL_INFOS() << "GL_COLOR_MATERIAL          : " << boolstr(glIsEnabled(GL_COLOR_MATERIAL)) << LL_ENDL;

	glGetIntegerv(GL_COLOR_MATERIAL_PARAMETER, (GLint*)&i);
	LL_INFOS() << "GL_COLOR_MATERIAL_PARAMETER: " << cmstr(i) << LL_ENDL;

	glGetIntegerv(GL_COLOR_MATERIAL_FACE, (GLint*)&i);
	LL_INFOS() << "GL_COLOR_MATERIAL_FACE     : " << facestr(i) << LL_ENDL;

	fv[0] = fv[1] = fv[2] = fv[3] = 12345.6789f;
	glGetMaterialfv(GL_FRONT, GL_AMBIENT, fv);
	LL_INFOS() << "GL_AMBIENT material        : " << fv4(fv) << LL_ENDL;

	fv[0] = fv[1] = fv[2] = fv[3] = 12345.6789f;
	glGetMaterialfv(GL_FRONT, GL_DIFFUSE, fv);
	LL_INFOS() << "GL_DIFFUSE material        : " << fv4(fv) << LL_ENDL;

	fv[0] = fv[1] = fv[2] = fv[3] = 12345.6789f;
	glGetMaterialfv(GL_FRONT, GL_SPECULAR, fv);
	LL_INFOS() << "GL_SPECULAR material       : " << fv4(fv) << LL_ENDL;

	fv[0] = fv[1] = fv[2] = fv[3] = 12345.6789f;
	glGetMaterialfv(GL_FRONT, GL_EMISSION, fv);
	LL_INFOS() << "GL_EMISSION material       : " << fv4(fv) << LL_ENDL;

	fv[0] = fv[1] = fv[2] = fv[3] = 12345.6789f;
	glGetMaterialfv(GL_FRONT, GL_SHININESS, fv);
	LL_INFOS() << "GL_SHININESS material      : " << fv1(fv) << LL_ENDL;

	fv[0] = fv[1] = fv[2] = fv[3] = 12345.6789f;
	glGetFloatv(GL_LIGHT_MODEL_AMBIENT, fv);
	LL_INFOS() << "GL_LIGHT_MODEL_AMBIENT     : " << fv4(fv) << LL_ENDL;

	glGetBooleanv(GL_LIGHT_MODEL_LOCAL_VIEWER, &b);
	LL_INFOS() << "GL_LIGHT_MODEL_LOCAL_VIEWER: " << boolstr(b) << LL_ENDL;

	glGetBooleanv(GL_LIGHT_MODEL_TWO_SIDE, &b);
	LL_INFOS() << "GL_LIGHT_MODEL_TWO_SIDE    : " << boolstr(b) << LL_ENDL;

	for (int l=0; l<8; l++)
	{
	b = glIsEnabled(GL_LIGHT0+l);
	LL_INFOS() << "GL_LIGHT" << l << "                  : " << boolstr(b) << LL_ENDL;

	if (!b)
		continue;

	glGetLightfv(GL_LIGHT0+l, GL_AMBIENT, fv);
	LL_INFOS() << "  GL_AMBIENT light         : " << fv4(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_DIFFUSE, fv);
	LL_INFOS() << "  GL_DIFFUSE light         : " << fv4(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_SPECULAR, fv);
	LL_INFOS() << "  GL_SPECULAR light        : " << fv4(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_POSITION, fv);
	LL_INFOS() << "  GL_POSITION light        : " << fv4(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_CONSTANT_ATTENUATION, fv);
	LL_INFOS() << "  GL_CONSTANT_ATTENUATION  : " << fv1(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_QUADRATIC_ATTENUATION, fv);
	LL_INFOS() << "  GL_QUADRATIC_ATTENUATION : " << fv1(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_SPOT_DIRECTION, fv);
	LL_INFOS() << "  GL_SPOT_DIRECTION        : " << fv4(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_SPOT_EXPONENT, fv);
	LL_INFOS() << "  GL_SPOT_EXPONENT         : " << fv1(fv) << LL_ENDL;

	glGetLightfv(GL_LIGHT0+l, GL_SPOT_CUTOFF, fv);
	LL_INFOS() << "  GL_SPOT_CUTOFF           : " << fv1(fv) << LL_ENDL;
	}

	LL_INFOS() << "-----------------------------------" << LL_ENDL;
	LL_INFOS() << "Pixel Operations" << LL_ENDL;
	LL_INFOS() << "-----------------------------------" << LL_ENDL;

	LL_INFOS() << "GL_ALPHA_TEST              : " << boolstr(glIsEnabled(GL_ALPHA_TEST)) << LL_ENDL;
	LL_INFOS() << "GL_DEPTH_TEST              : " << boolstr(glIsEnabled(GL_DEPTH_TEST)) << LL_ENDL;

	glGetBooleanv(GL_DEPTH_WRITEMASK, &b);
	LL_INFOS() << "GL_DEPTH_WRITEMASK         : " << boolstr(b) << LL_ENDL;
	
	LL_INFOS() << "GL_BLEND                   : " << boolstr(glIsEnabled(GL_BLEND)) << LL_ENDL;
	LL_INFOS() << "GL_DITHER                  : " << boolstr(glIsEnabled(GL_DITHER)) << LL_ENDL;
}
Esempio n. 6
0
int verify_id3v2_header(struct id3v2_header *header) {
    if (strcmp(header->id, ID3V2_FILE_IDENTIFIER)) {
        debug("Tag ID %s should be %s", header->id, ID3V2_FILE_IDENTIFIER);
        return 0;
    } else if (header->version > ID3V2_SUPPORTED_VERSION) {
        debug("Tag version %"PRIu8" higher than supported version %d",
                header->version, ID3V2_SUPPORTED_VERSION);
        return 0;
    } else if (header->frame_data_len > 0 && header->frame_data == NULL) {
        debug("Tag frame data is NULL");
        return 0;
    } else if (header->frame_data_len > header->tag_size) {
        debug("Tag frame data len %zu > tag size %"PRIu32,
                header->frame_data_len, header->tag_size);
        return 0;
    } else if (header->frame_data_len && header->i >= header->frame_data_len) {
        debug("Tag frame data index %zu >= frame data len %zu",
                header->i, header->frame_data_len);
        return 0;
    }

    if (header->extheader_present &&
            header->extheader.flag_size != ID3V2_EXTENDED_FLAG_SIZE) {
        debug("Extended header flag size %"PRIu8" should be %d",
                header->extheader.flag_size, ID3V2_EXTENDED_FLAG_SIZE);
        return 0;
    }

    if (header->footer_present) {
        if (strcmp(header->footer.id, ID3V2_FOOTER_IDENTIFIER)) {
            debug("Footer ID %s should be %s",
                    header->footer.id, ID3V2_FOOTER_IDENTIFIER);
            return 0;
        } else if (header->footer.version > ID3V2_SUPPORTED_VERSION) {
            debug("Footer version %"PRIu8" higher than supported version %d",
                    header->footer.version, ID3V2_SUPPORTED_VERSION);
            return 0;
        } else if (header->footer.version != header->version) {
            debug("Footer version %"PRIu8" != header version %"PRIu8,
                    header->footer.version, header->version);
            return 0;
        } else if (header->footer.revision != header->revision) {
            debug("Footer revision %"PRIu8" != header revision %"PRIu8,
                    header->footer.revision, header->revision);
            return 0;
        } else if (header->footer.unsynchronization !=
                header->unsynchronization) {
            debug("Footer unsynchronization %s != header unsynchronization %s",
                    boolstr(header->footer.unsynchronization),
                    boolstr(header->unsynchronization));
            return 0;
        } else if (header->footer.extheader_present !=
                header->extheader_present) {
            debug("Footer ext header %s != header ext header %s",
                    boolstr(header->footer.extheader_present),
                    boolstr(header->extheader_present));
            return 0;
        } else if (header->footer.experimental != header->experimental) {
            debug("Footer experimental %s != header experimental %s",
                    boolstr(header->footer.experimental),
                    boolstr(header->experimental));
            return 0;
        } else if (header->footer.footer_present != header->footer_present) {
            debug("Footer footer %s != header footer %s",
                    boolstr(header->footer.footer_present),
                    boolstr(header->footer_present));
            return 0;
        }
    }
    return 1;
}