Todo List

Class F5_polar_point3_float_t
Add HDF5 type

Global F5Bappend_slice (hid_t file_id, const double *time)

Maybe move to another header.

Add consistency check on re-open of an existing group

Global F5Cwrite_regular_surface (hid_t file_id, double time, const char *name, const F5_vec3_point_t *Coords, int Xdims, int Ydims, const char *coordinate_system)
merge with F5Cwrite_regular_surface

Global F5Cwrite_triangular_surface (hid_t file_id, double time, const char *name, const F5_vec3_point_t *Coords, int nCoords, const F5_triangle32_t *Triangles, int nTriangles, const char *coordinate_system)
merge with F5write_triangular_surface

Global F5Fcreate (F5Path *fpath, const char *fieldname, int dimension, hsize_t *dims, hid_t fieldtype, hid_t property_id)
Add consistency check of sustained dataspace properties across multiple fields per representation.

Global F5Fis_linear (F5Path *fpath, const char *fieldname)
Implement. Similar to F5Lread_linear().

Global F5Flink_triangular_surface (F5Path *target, double time, const char *gridname, const F5_vec3_point_t *Coords, int nCoords, const F5_triangle_t *Triangles, int nTriangles, const char *coordinate_system)
make F5Flink_triangular_surface() failsafe. Extend the concept of linking datasets for sharing available for other grid types as well.

Global F5Fwrite (F5Path *fpath, const char *fieldname, int dimension, hsize_t *dims, hid_t fieldtype, hid_t memtype, const void *dataPtr, hid_t property_id)
Implement, and add consistency check of sustained dataspace properties across multiple fields per representation.

Global F5Fwrite_linear (F5Path *fpath, const char *fieldname, int rank, hsize_t *dims, hid_t fieldtype, const void *base, const void *delta)
Make this function compatible with F5FwriteX instead. Need to revise this function such that base and delta may be different types, for instance a point and a tangential vector. Possibly provide an alternative function where the min/max is specified instead.

Group F5L
Separate these functions into F5-Dataset functions, with prefix F5D, of the form:

Global F5Lread_linear (hid_t F_id, hsize_t *dims, hid_t fieldtype, void *base, void *delta)
Add error checkings if the used attributes do not exist.

Global F5LTcreateV (hid_t File_id, const double *time, const char *gridname, ChartDomain_IDs *ChartDomain, ChartDomain_IDs *coord_creator(void *udata), void *udata, const char *coordinate_system, const char *TopologyName, int IndexDepth, int SkeletonDimensionality, int Dimensionality, const hsize_t *refinement)
Extend slice group creation to parameter spaces

Global F5Lwrite_linear (hid_t R_id, const char *fieldname, int dimension, const hsize_t *dataspace_dims, hid_t fieldtype, const void *base, const void *delta)
Remove dimension parameter, it is clear from the fieldtype's members.

Global F5Lwrite_permutation (hid_t R_id, const char *fieldname, hsize_t size, hsize_t *permutation_indices, hsize_t nvalues, hid_t fieldtype, const void *dataPtr)

implement

add structure function

add possibility to share permutation index datasets

Global F5parameter_delete (const F5ParameterSpace *, const char *name)
Implement.

Global F5parameter_find (const F5ParameterSpace *, const char *name)
Implement.

Global F5parameter_get (F5ParameterSpace *, const char *name)
Implement.

Global F5parameter_load (hid_t FileID)
Implement.

Global F5parameter_save (hid_t FileID, const F5ParameterSpace *)
Implement.

Global F5Rlink_default_vertex_topology (F5Path *grid, const hsize_t target_refinement[3])
Check for an eventually existing "Points" group and handle HDF5 error codes.

Global F5write_particle_positions3fv (hid_t fileID, double time, const char *name, const float *x, const float *y, const float *z, int nCoords)

Implement.

use newer field interface

Global F5write_particle_positions_with_field_d (hid_t fileID, double time, const char *name, const F5_vec3_point_t *Coords, int nCoords, const double *data)

Implement

use newer field interface

Global F5write_polar_particle_positions (hid_t fileID, double time, const char *name, const F5_polar_point3_float_t *Coords, int nCoords)
Implement.

Global F5write_regular_surface_cell_field_dbl (hid_t file_id, double time, const char *name, const F5_vec3_point_t *Coords, int Xdims, int Ydims, const char *fieldname, double *data)
use newer field interface

Global F5write_regular_surface_vertex_field_rgb (hid_t file_id, double time, const char *name, const F5_vec3_point_t *Coords, int Xdims, int Ydims, const char *fieldname, F5_rgb_t *data)
use newer field interface

Global F5write_triangular_surface (hid_t file_id, double time, const char *name, const F5_vec3_point_t *Coords, int nCoords, const F5_triangle32_t *Triangles, int nTriangles)
Use the new Field interface from uniform grids

Global F5Xclose (hid_t obj_id)
Better Error Value than "-1".