void	stock_data(char *buff)
{
	int		i, j, k;
	i = 0;
	j = 0;
	k = 0;
	while (*(buff + i) != 0)
	{
		if (buff[i] == ';')
		{
			check_get(j);
			j++;
			k = 0;
		}
		else
		{
			if (j == 0)
				get_firstname(buff, k, i);
			if (j == 1)
				get_lastname(buff, k, i);
			if (j == 2)
				get_email(buff, k, i);
			if (j == 3)
				get_grade(buff, k, i);
			if (j == 4)
				get_city(buff, k, i);
			k++;
		}
		i++;
	}
	check_get(4);
}
Exemple #2
0
static int vbfs_fuse_mkdir(const char *path, mode_t mode)
{
    int ret = 0;
    struct inode_vbfs *inode_v = NULL;
    char last_name[NAME_LEN];
    char *name = NULL;
    char *pos = NULL;

    log_dbg("vbfs_fuse_mkdir %s\n", path);

    memset(last_name, 0, sizeof(last_name));
    name = strdup(path);
    if (NULL == name) {
        return -ENOMEM;
    }
    pos = name;

    ret = get_lastname(pos, last_name, PATH_SEP);
    if (ret) {
        free(name);
        return -EINVAL;
    }
    if (strlen(last_name) == 0) {
        free(name);
        return -EEXIST;
    }

    inode_v = vbfs_pathname_to_inode(pos, &ret);
    if (ret) {
        free(name);
        return ret;
    }

    ret = vbfs_mkdir(inode_v, last_name);
    if (ret) {
        vbfs_inode_close(inode_v);
        free(name);
        return ret;
    }

    vbfs_inode_update_times(inode_v, UPDATE_ATIME | UPDATE_MTIME);

    ret = vbfs_inode_close(inode_v);
    if (ret) {
        free(name);
        return ret;
    }

    free(name);

    return 0;
}
void compute()
{
	char *str;
	
	/* compute from function	*/
	
	HORN_SCHUNCK_MAIN(f1,f2,u,v,nx,ny,bx,by,1.0f,1.0f,
					  alpha,epsilon_d,diffusivity_type_d,num_iterations_inner,
					  num_iterations_outer,omega,warp_eta,max_warp_levels);
	

	/* read u and v from txt file */
	
	/*
	int i,j;
	FILE *data;
	data = fopen("u.txt","r");
	for ( j = 0;j < ny; j++)
		for (i = 0; i < nx; i++)
			fscanf(data,"%f",&u[i][j]);
	fclose(data);
	data = fopen("v.txt","r");
	for ( j = 0;j < ny; j++)
		for (i = 0; i < nx; i++)
			fscanf(data,"%f",&v[i][j]);
	fclose(data);
	*/
	


	float ref_d,cal_d;
	calculate_errors_2d(u_truth,v_truth,u,v,nx,ny,bx,by,&aae,&al2e,&ref_d,&cal_d);
					  
	compose_image();
	
	// write new computation result to rotating sequence of files
	str = (char*) calloc(2048,sizeof(char));
	writeParamsToStr(str);
	write_ppm_image_comment(get_lastname(),nx,ny,bx,by,of_rgb,1,"%s",str);
	free(str);
	
	// display
	glutPostRedisplay();
}
Exemple #4
0
static int vbfs_create_file_fullpath(const char *path)
{
    int ret = 0;
    struct inode_vbfs *v_inode_parent = NULL;
    char last_name[NAME_LEN];
    char *name = NULL;
    char *pos = NULL;

    memset(last_name, 0, sizeof(last_name));
    name = strdup(path);
    if (NULL == name) {
        return -ENOMEM;
    }
    pos = name;

    ret = get_lastname(pos, last_name, PATH_SEP);
    if (ret) {
        free(name);
        return -EINVAL;
    }
    if (strlen(last_name) == 0) {
        free(name);
        return -EEXIST;
    }

    v_inode_parent = vbfs_pathname_to_inode(pos, &ret);
    if (ret) {
        free(name);
        return ret;
    }

    free(name);

    ret = vbfs_create_file(v_inode_parent, last_name);
    vbfs_inode_update_times(v_inode_parent, UPDATE_ATIME | UPDATE_MTIME);
    vbfs_inode_close(v_inode_parent);
    if (ret) {
        return ret;
    }

    return 0;
}