|
FiberBundleHDF5
FiberHDF5 Documentation, Revision 2026
High-Performance Fiber Bundle Data Model for Scientific Visualization
|
Data Structures | |
| struct | _TimeTableEntry |
Typedefs | |
| typedef struct _TimeTableEntry | TimeTableEntry |
Functions | |
| F5_API hid_t | F5Bcreate_timetable_type (void) |
| F5_API hsize_t | F5Bappend_timetable (hid_t loc_id, hid_t timetable_type_location_id, const TimeTableEntry *TTE, hsize_t append_dims) |
| F5_API hsize_t | F5Bget_timetable_size (hid_t loc_id) |
| hsize_t | F5Bread_timetable (hid_t loc_id, TimeTableEntry *TTE, hsize_t table_size) |
| F5_API F5_TimeParameter * | F5BnewTimeParameter (void) |
| F5_API void | F5deleteTimeParameter (F5_TimeParameter **) |
| F5_API int | F5setTimeUnit (hid_t file_id, const F5_TimeParameter *) |
| F5_API int | F5getTimeUnit (hid_t file_id, F5_TimeParameter *) |
| F5_API char * | F5I_timegroup (const double *time, char *destbuf, size_t len) |
| F5_API hid_t | F5Bappend_timeslice (hid_t file_id, const F5_TimeParameter *time) |
| F5_API hid_t | F5Bappend_slice (hid_t file_id, const double *time) |
| F5_API F5Path * | F5Binitialize_path (hid_t File_id) |
| F5_API hid_t | F5BgetMostRecentSlice (double *t, hid_t FileID, const char **time_attrib_names) |
| F5_API hid_t | F5BgetMostRecentFileSlice (double t, const char *filename) |
| F5_API hid_t | F5BgetGridVertexData (hid_t SliceID, const char *gridname, const char *chartname, const char *fieldname) |
| typedef struct _TimeTableEntry TimeTableEntry |
Data type entry for time tables.
| F5_API hid_t F5Bappend_slice | ( | hid_t | file_id, |
| const double * | time ) |
Get the HDF5 identifier for a given time slice. A new group is created in the file if none exists yet.
| file_id | HDF5 File identifier. |
| time | The time is specified as a pointer, such that it may be NULL to indicate a static dataset. |
Maybe move to another header.
Add consistency check on re-open of an existing group
Definition at line 140 of file F5Bslice.c.
References F5Aappend(), F5Gappend(), F5I_timegroup(), F5printf, and FIBER_HDF5_TIME_ATTRIB.
Referenced by F5Bappend_timeslice(), and F5LTcreateV().
| F5_API hid_t F5Bappend_timeslice | ( | hid_t | file_id, |
| const F5_TimeParameter * | time ) |
Append a time slice in the given time unit. Only one time unit is allowed per file. If another time unit has already been defined in the file, the function will return without touching the file.
Definition at line 134 of file F5Bslice.c.
References F5Bappend_slice(), and _F5_TimeParameter::value.
| F5_API hsize_t F5Bappend_timetable | ( | hid_t | loc_id, |
| hid_t | timetable_type_location_id, | ||
| const TimeTableEntry * | TTE, | ||
| hsize_t | append_dims ) |
Initialize a time table for the given location.
| timetable_type_id | The type for time table entries, such as provided by F5Bcreate_timetable_type(), but it may well be (and should be) a named type instead of a transient type. |
Append entries to the time table associated with a certain location.
| timetable_type_location_id | the location ID where the named datatype for timetable entries will be stored, in case it needs to be created. |
Definition at line 261 of file F5Bslice.c.
References F5_TIMETABLE_NAME, F5Bcreate_timetable_type(), and H5Tclose().
Referenced by F5I_add_grid().
| F5_API hid_t F5Bcreate_timetable_type | ( | void | ) |
Create a transient type that is compatible with the TimeTableEntry data structure. It must be release via H5Tclose() by the calling code.
Definition at line 167 of file F5Bslice.c.
References F5_TIMESLICE_NAME_LENGTH, FIBER_HDF5_TIME_ATTRIB, and H5Tclose().
Referenced by F5Bappend_timetable(), F5Bget_file_timetable_type(), and F5Bread_timetable().
| F5_API hsize_t F5Bget_timetable_size | ( | hid_t | loc_id | ) |
Get the number of entries in the respective time table.
Definition at line 328 of file F5Bslice.c.
References F5_TIMETABLE_NAME, F5printf, and H5Tclose().
| F5_API hid_t F5BgetGridVertexData | ( | hid_t | SliceID, |
| const char * | gridname, | ||
| const char * | chartname, | ||
| const char * | fieldname ) |
Get the GridVertexData for given grid-, chart- and fieldnames.
Definition at line 5 of file F5Bgrid.c.
References FIBER_HDF5_POINTS, and H5Gclose.
| F5_API hid_t F5BgetMostRecentFileSlice | ( | double | t, |
| const char * | filename ) |
Get the MostRecentSlice out of a HDF5 file with the given name.
Definition at line 70 of file F5Bslice.c.
References F5_default_time_attrib_names, F5BgetMostRecentSlice(), and slice_info::t.
| F5_API hid_t F5BgetMostRecentSlice | ( | double * | t, |
| hid_t | FileID, | ||
| const char ** | time_attrib_names ) |
Get the next slice for given time attriute names.
Definition at line 55 of file F5Bslice.c.
References slice_info::nearest_t, slice_info::t, slice_info::time_attribs, and slice_info::what.
Referenced by F5BgetMostRecentFileSlice().
Initialize an F5Path from a file for reading. The coordinate system is set to the default cartesian coordinates. No timeslice, grid, field etc. ID's are defined yet, these need to be filled in by iteration. This function is called internally by F5iterate_timeslices() for creating an F5Path object that is then modified to contain a valid group ID for each timeslice, grid, field, ... Currently, it is hard-coded for reading cartesian coordinates only. The preferred way is to employ iterators on reading files.
Definition at line 156 of file F5B.c.
References ChartDomain_IDs::domain_name, F5B_standard_cartesian_chart3D(), F5Bopen_coordinate_domain(), F5printf, FIBER_HDF5_CARTESIAN_CHART_DOMAIN, FIBER_HDF5_DEFAULT_CHART, and FIBER_HDF5_DEPRECATED_OLD_CARTESIAN_DOMAIN.
Referenced by F5iterate_timeslices().
| F5_API F5_TimeParameter * F5BnewTimeParameter | ( | void | ) |
Allocate a new F5_TimeParameter structure in memory. Actually, one could also pass a static structure, but using this function and F5deleteTimePArameter(), the call is safe even if the TimeParameter structure is changed in a future version of F5.
References F5_API.
| hsize_t F5Bread_timetable | ( | hid_t | loc_id, |
| TimeTableEntry * | TTE, | ||
| hsize_t | table_size ) |
Read the entries of a time table.
Definition at line 366 of file F5Bslice.c.
References F5_TIMETABLE_NAME, F5Bcreate_timetable_type(), and H5Tclose().
| F5_API void F5deleteTimeParameter | ( | F5_TimeParameter ** | ) |
Deallocate a F5_TimeParameter structure from memory. It needs to be passed a pointer to a pointer, whereby the pointer is set to zero on deallocation. So it is safe to call this function multiple times on the same pointer (just for experimental convenience!).
References F5_API.
| F5_API int F5getTimeUnit | ( | hid_t | file_id, |
| F5_TimeParameter * | ) |
Get the time unit information as specified in the file.
References F5_API.
| F5_API char * F5I_timegroup | ( | const double * | time, |
| char * | destbuf, | ||
| size_t | len ) |
Construct the name used for a timeslice, the toplevel hierarchy.
Retrieve the name of the time slice assocciated with the given time. The time is specified as a pointer, such that it may be NULL to indicate a static dataset.
Definition at line 90 of file F5Bslice.c.
References FIBER_STATIC_DATA.
Referenced by F5Bappend_slice(), F5I_add_grid(), F5Rcreate_relative_vertex_Irefinement3D(), and F5Rcreate_relative_vertex_Qrefinement3D().
| F5_API int F5setTimeUnit | ( | hid_t | file_id, |
| const F5_TimeParameter * | TP ) |
Set the time unit globally for the given file.
Definition at line 115 of file F5Bslice.c.