Пример #1
0
 void TearDown()
 {
     std::cerr<<"src1   :";
     output_binary(std::cerr, data1[num_data/2]);
     std::cerr<<"\n";
     std::cerr<<"src2   :";
     output_binary(std::cerr, data2[num_data/2]);
     std::cerr<<"\n";
     std::cerr<<"result :";
     output_binary(std::cerr, result[num_data/2]);
     std::cerr<<"\n";
     re_initialize();
 }
Пример #2
0
void output_and_free_halos(int64_t id_offset, int64_t snap, int64_t chunk, float *bounds) {
  if (!strcasecmp(OUTPUT_FORMAT, "BOTH") || !strcasecmp(OUTPUT_FORMAT, "ASCII"))
    output_ascii(id_offset, snap, chunk, bounds);
  if (!strcasecmp(OUTPUT_FORMAT, "BOTH")|| !strcasecmp(OUTPUT_FORMAT, "BINARY"))
    output_binary(id_offset, snap, chunk, bounds);

  if (chunk<FULL_PARTICLE_CHUNKS) {
    if (!fork()) {
      output_full_particles(id_offset, snap, chunk, bounds);
      exit(0);
    }
  }

  if (DUMP_PARTICLES[0] && (chunk >= DUMP_PARTICLES[1] &&
			    chunk <= DUMP_PARTICLES[2]))
    output_particles_internal(snap, chunk);

  output_bgc2(id_offset, snap, chunk, bounds);

  halos = check_realloc(halos, 0, "Freeing halo memory.");
  num_halos = 0;
}
Пример #3
0
void output_sum(const int sum){
  printf("sum = %3d decimal %2x hex and ", sum, sum);
  output_binary(sum);
  printf(" binary\n");
}
Пример #4
0
static void
output_file (guestfs_h *g, struct file *file)
{
    const char *filetype;
    size_t i;
    CLEANUP_FREE char *link = NULL;

    if (is_reg (file->stat->st_mode))
        filetype = "-";
    else if (is_dir (file->stat->st_mode))
        filetype = "d";
    else if (is_chr (file->stat->st_mode))
        filetype = "c";
    else if (is_blk (file->stat->st_mode))
        filetype = "b";
    else if (is_fifo (file->stat->st_mode))
        filetype = "p";
    else if (is_lnk (file->stat->st_mode))
        filetype = "l";
    else if (is_sock (file->stat->st_mode))
        filetype = "s";
    else
        filetype = "u";

    output_string (filetype);
    output_int64_perms (file->stat->st_mode & 07777);

    output_int64_size (file->stat->st_size);

    /* Display extra fields when enabled. */
    if (enable_uids) {
        output_int64_uid (file->stat->st_uid);
        output_int64_uid (file->stat->st_gid);
    }

    if (enable_times) {
        if (atime)
            output_int64_time (file->stat->st_atime_sec, file->stat->st_atime_nsec);
        output_int64_time (file->stat->st_mtime_sec, file->stat->st_mtime_nsec);
        output_int64_time (file->stat->st_ctime_sec, file->stat->st_ctime_nsec);
    }

    if (enable_extra_stats) {
        output_int64_dev (file->stat->st_dev);
        output_int64 (file->stat->st_ino);
        output_int64 (file->stat->st_nlink);
        output_int64_dev (file->stat->st_rdev);
        output_int64 (file->stat->st_blocks);
    }

    if (file->csum)
        output_string (file->csum);

    output_string (file->path);

    if (is_lnk (file->stat->st_mode)) {
        /* XXX Fix this for NTFS. */
        link = guestfs_readlink (g, file->path);
        if (link)
            output_string_link (link);
    }

    if (enable_xattrs) {
        for (i = 0; i < file->xattrs->len; ++i) {
            output_string (file->xattrs->val[i].attrname);
            output_binary (file->xattrs->val[i].attrval,
                           file->xattrs->val[i].attrval_len);
        }
    }
}
Пример #5
0
int main(int argc, char *argv[])
{
	int ret, hw;
	struct flosslogic_context ctx;
	uint8_t *sample_buffer;

	handle_cmdline_options(argc, argv);

	if ((ret = flosslogic_init(&ctx)) < 0) {
		fprintf(stderr, "Error initializing flosslogic (%d).\n", ret);
		exit(EXIT_FAILURE);
	}

	if ((ret = flosslogic_scan_for_devices(&ctx)) < 0) {
		fprintf(stderr, "Error scanning for devices (%d).\n", ret);
		exit(EXIT_FAILURE);
	}

	hw = ret;

	if (verbose)
		fprintf(stderr, "Found supported logic analyzer #%d.\n", hw);

	if ((ret = flosslogic_hw_init(hw, &ctx)) < 0) {
		fprintf(stderr, "Error initializing device %d (%d).\n",
				hw, ret);
		exit(EXIT_FAILURE);
	}

	if (verbose)
		fprintf(stderr, "Logic analyzer initialized.\n");

	/* Load specified firmware file (if any) into a buffer. */
	/* TODO */

	sample_buffer = flosslogic_hw_get_samples(hw, &ctx, numsamples,
					          samplerate, 1000);
	if (sample_buffer == NULL) {
		fprintf(stderr, "Error getting samples from device %d.\n", hw);
		exit(EXIT_FAILURE);
	}

	if (verbose)
		fprintf(stderr, "Logic analyzer samples acquired.\n");

	if (!strcmp(outformat, "binary")) {
		if (outfile == NULL)
			outfile = "flosslogic_binary.dat";
		/* TODO: Error handling. */
		output_binary(sample_buffer, numsamples, outfile, &ctx);
	} else if (!strcmp(outformat, "gnuplot")) {
		if (outfile == NULL)
			outfile = "flosslogic_gnuplot.dat";
		output_gnuplot(sample_buffer, numsamples, &ctx);
	} else if (!strcmp(outformat, "vcd")) {
		if (outfile == NULL)
			outfile = "flosslogic.vcd";
		output_vcd(sample_buffer, numsamples, outfile, &ctx);
	}


	flosslogic_hw_shutdown(hw, &ctx);

	if (verbose)
		fprintf(stderr, "Logic analyzer shutdown completed.\n");

	exit(EXIT_SUCCESS);
}