Esempio n. 1
0
static int print_xs(int indent, char *key)
{
	char buf[1024];
	assert(indent < sizeof(buf));
	memset(buf, ' ', indent);
	buf[indent] = 0;
	printk("%s%s\n", buf, key);

	int st = xenstore_read_dir(key, buf, sizeof(buf));
	if (st < 0)
		return st;
	char *dir = buf;
	while (*dir != 0)
	{
		char path[1024];
		strcpy(path, key);
		strcat(path, "/");
		strcat(path, dir);

		int ret_code = print_xs(indent +4, path);
		if (ret_code < 0)
			return ret_code;
		dir += strlen(dir) +1;
	}
	return 0;
}
Esempio n. 2
0
void print_results()
{
  print_xs();
  Vector euler_ys_dbld_h = print_euler(2.0 * h);
  Vector euler_ys_orig_h = print_euler(1.0 * h);
  Vector euler_ys_half_h = print_euler(0.5 * h);
  Vector runge_ys = print_runge();
  Vector adams_ys = print_adams();
  Vector euler_errors = print_euler_errors(&euler_ys_orig_h, &adams_ys);
  Vector max_euler_errors = print_max_euler_errors(&euler_ys_half_h);

  disposeVector(&max_euler_errors);
  disposeVector(&euler_errors);
  disposeVector(&adams_ys);
  disposeVector(&runge_ys);
  disposeVector(&euler_ys_half_h);
  disposeVector(&euler_ys_orig_h);
  disposeVector(&euler_ys_dbld_h);
}
Esempio n. 3
0
static void print_xs_tree(char *start)
{
	int ret_code = print_xs(0, start);
	if (ret_code < 0)
		fatal_error("print_xs_tree failed: %d", ret_code);
}