|
FiberBundleHDF5
FiberHDF5 Documentation, Revision 2026
High-Performance Fiber Bundle Data Model for Scientific Visualization
|
Go to the source code of this file.
Data Structures | |
| struct | F5_rgb_t |
| struct | F5_rgba_t |
| struct | F5_bgr_t |
| struct | F5_rgb16_t |
| struct | F5_rgba16_t |
| struct | F5_rgb_real_t |
| struct | F5_rgba_real_t |
| struct | F5Ttensor_t |
Macros | |
| #define | F5T_RGB F5T_rgb_g() |
| #define | F5T_RGBA F5T_rgba_g() |
| #define | F5T_BGR F5T_bgr_g() |
| #define | F5T_RGB16 F5T_rgb16_g() |
| #define | F5T_RGBA16 F5T_rgba16_g() |
| #define | F5T_RGB_REAL F5T_rgb_real_g() |
| #define | F5T_RGBA_REAL F5T_rgba_real_g() |
Typedefs | |
| typedef unsigned char | F5_byte_t |
| typedef unsigned char | F5_uint8_t |
| typedef unsigned short | F5_int16_t |
| typedef F5_int16_t | F5_uint16_t |
| typedef uint32_t | F5_uint32_t |
| typedef uint64_t | F5_uint64_t |
| typedef int32_t | F5_int32_t |
| typedef float | F5_float_t |
| typedef double | F5_double_t |
Functions | |
| F5_API hid_t | F5T_rgb_g () |
| F5_API hid_t | F5T_rgba_g () |
| F5_API hid_t | F5T_bgr_g () |
| F5_API hid_t | F5T_rgb16_g () |
| F5_API hid_t | F5T_rgba16_g () |
| F5_API hid_t | F5T_rgb_real_g () |
| F5_API hid_t | F5T_rgba_real_g () |
| F5_API hid_t | F5T_vec3_double_g () |
| F5_API F5Ttensor_t * | newF5Ttensor (const char *name, int rank, int dimension, int components) |
| F5_API F5Ttensor_t * | F5Ttensor_commit (hid_t loc_id, F5Ttensor_t *) |
| F5_API int | deleteF5Ttensor (F5Ttensor_t *) |
| F5_API int | F5Tis_convertible (hid_t first_type, hid_t second_type) |
| F5_API hid_t | F5Ttransient_F5field_Array_enum () |
| F5_API hid_t | F5Tsave_F5field_enum (hid_t loc_id) |
| F5_API herr_t | F5Tset_field_enum (hid_t loc_id, hid_t enum_type_id, ArrayType what) |
| F5_API const char * | F5Tget_field_description (ArrayType what) |
| F5_API ArrayType | F5Tget_field_Array_enum (hid_t loc_id, int *major_version, int *minor_version, int *release_version) |
| F5_API herr_t | F5Tset_field_ProcArray_enum (hid_t loc_id, ProceduralArrayType what, hid_t ProcIDLocation) |
| F5_API ProceduralArrayType | F5Tget_field_ProcArray_enum (hid_t loc_id, hid_t enum_type_id, int *major_version, int *minor_version, int *release_version) |
| F5_API void | F5Tprint (hid_t type) |
| #define F5T_RGB F5T_rgb_g() |
Definition at line 37 of file F5types.h.
Referenced by F5Fwrite_flexible(), and F5FwriteIMAGE().
| #define F5T_RGB16 F5T_rgb16_g() |
| #define F5T_RGB_REAL F5T_rgb_real_g() |
Definition at line 42 of file F5types.h.
Referenced by F5Fwrite_flexible(), F5FwriteIMAGE(), and saveF5image().
| #define F5T_RGBA F5T_rgba_g() |
| #define F5T_RGBA16 F5T_rgba16_g() |
| #define F5T_RGBA_REAL F5T_rgba_real_g() |
| typedef double F5_double_t |
| typedef float F5_float_t |
| typedef unsigned short F5_int16_t |
| typedef int32_t F5_int32_t |
| typedef F5_int16_t F5_uint16_t |
| typedef uint32_t F5_uint32_t |
| typedef uint64_t F5_uint64_t |
| typedef unsigned char F5_uint8_t |
| F5_API int deleteF5Ttensor | ( | F5Ttensor_t * | This | ) |
Remove a tensor description.
Definition at line 622 of file F5types.c.
References F5Ttensor_t::covariance, F5_API, H5Tclose(), F5Ttensor_t::indexing, F5Ttensor_t::metric, F5Ttensor_t::name, F5Ttensor_t::parity, F5Ttensor_t::reverse_indexing, F5Ttensor_t::transformation_rule, and F5Ttensor_t::type_id.
| F5_API hid_t F5T_bgr_g | ( | ) |
| F5_API hid_t F5T_rgb16_g | ( | ) |
| F5_API hid_t F5T_rgb_g | ( | ) |
| F5_API hid_t F5T_rgb_real_g | ( | ) |
| F5_API hid_t F5T_rgba16_g | ( | ) |
Definition at line 78 of file F5types.c.
| F5_API hid_t F5T_rgba_g | ( | ) |
Definition at line 36 of file F5types.c.
| F5_API hid_t F5T_rgba_real_g | ( | ) |
Definition at line 105 of file F5types.c.
| F5_API hid_t F5T_vec3_double_g | ( | ) |
Definition at line 150 of file F5types.c.
| F5_API ArrayType F5Tget_field_Array_enum | ( | hid_t | loc_id, |
| int * | major_version, | ||
| int * | minor_version, | ||
| int * | release_version ) |
Get the field type for a field, which is supposed to be an HDF5 group or dataset.
We try to open an attribute named FIBER_ARRAY_TYPE_ENUM, its type is supposed to be a named data type bound to the file. The attributes of this type will be the version number information for the given loc_id . The value of this attribute will be an enum compatible with the ArrayType enum from which the information is retrieved. There are some fallback mechanisms in case there are troubles, such as no such attribute existing.
Definition at line 305 of file F5types.c.
References Contiguous, F5Aget_version(), F5Atry_to_open(), F5printf, F5Ttransient_F5field_Array_enum(), F_H5Aread(), FIBER_ARRAY_TYPE_ENUM, FIBER_UNIFORMARRAY_BASE_ATTRIBUTE, H5Tclose(), UniformSampling, and UnknownArrayType.
Referenced by F5Fget_field_enum().
Return a human-readable description of the array type, for convenience on console or log file outputs.
Definition at line 249 of file F5types.c.
References Constant, Contiguous, DirectProduct, FragmentedContiguous, FragmentedSeparatedCompound, FragmentedUniformSampling, IndexPermutation, SeparatedCompound, UniformSampling, and UnknownArrayType.
| F5_API ProceduralArrayType F5Tget_field_ProcArray_enum | ( | hid_t | loc_id, |
| hid_t | enum_type_id, | ||
| int * | major_version, | ||
| int * | minor_version, | ||
| int * | release_version ) |
Definition at line 490 of file F5types.c.
References F5Aget_version(), F5Aopen_name(), F5printf, F5Ttransient_ProcArray_enum(), F_H5Aread(), FIBER_ARRAY_TYPE_ENUM, and H5Tclose().
| F5_API int F5Tis_convertible | ( | hid_t | first_type, |
| hid_t | second_type ) |
Check if the two types are equivalent. This requires that each type of a compound type has the the same name and the same class. Also, all attributes must be equal.
Definition at line 637 of file F5types.c.
| F5_API void F5Tprint | ( | hid_t | type | ) |
Prints type info
Definition at line 695 of file F5types.c.
| F5_API hid_t F5Tsave_F5field_enum | ( | hid_t | loc_id | ) |
Create a named field type for F5 array descriptions by saving the transient enum type to a file.
Definition at line 222 of file F5types.c.
References F5Asave_string(), F5Asave_version(), F5printf, F5Ttransient_F5field_Array_enum(), FIBER_ARRAY_TYPE_ENUM, FIBER_MAJOR_VERSION, FIBER_MINOR_VERSION, FIBER_RELEASE_VERSION, FIBER_VERSION_URL, and FIBER_VERSION_URL_LOCATION.
Referenced by F5LTmake_enum_type().
Set a field type in a file.
Definition at line 268 of file F5types.c.
References F5check, F5printf, and FIBER_ARRAY_TYPE_ENUM.
Referenced by F5Fcreate(), F5FSwrite_fraction(), F5Fwrite_1D(), F5Fwrite_flexible(), F5Fwrite_fraction(), F5Fwrite_fraction_external(), F5Fwrite_fractionS(), F5Fwrite_linear(), F5Fwrite_linear_fraction(), F5FwriteIMAGE(), F5Fwrites(), F5FwriteX(), F5Lwrite(), F5LwriteS(), and F5Lwrites().
| F5_API herr_t F5Tset_field_ProcArray_enum | ( | hid_t | loc_id, |
| ProceduralArrayType | what, | ||
| hid_t | ProcIDLocation ) |
Set the array type of a procedural array.
| ProcIDLocation | Group ID where the enumeration type is stored in the file. |
Definition at line 455 of file F5types.c.
References F5check, F5printf, F5Tsave_ProcArray_enum(), FIBER_ARRAY_TYPE_ENUM, and H5Tclose().
Referenced by F5LwriteX().
| F5_API F5Ttensor_t * F5Ttensor_commit | ( | hid_t | loc_id, |
| F5Ttensor_t * | ) |
Save tensor type to file and return a copy. All internal arrays are copied, no reference counting.
References F5_API.
| F5_API hid_t F5Ttransient_F5field_Array_enum | ( | ) |
Get a field type for F5 array descriptions.
Definition at line 189 of file F5types.c.
References Constant, Contiguous, DirectProduct, FragmentedContiguous, FragmentedSeparatedCompound, FragmentedUniformSampling, IndexPermutation, InsertEnum, SeparatedCompound, UniformSampling, and UnknownArrayType.
Referenced by F5Fwrite_fraction_external(), F5Tget_field_Array_enum(), and F5Tsave_F5field_enum().
| F5_API F5Ttensor_t * newF5Ttensor | ( | const char * | name, |
| int | rank, | ||
| int | dimension, | ||
| int | components ) |
Create a new tensor type description. All arrays are allocated, but set to zero.
| name | A descriptive name, eg. vector, covector, metric, Christoffel, Riemann, Ricci ... Be careful to choose a meaningful name and distringuish among the type of the tensor an various instances of this type. For instance, "Ricci" is not necessarily a good name, as it is a symmetric tensor of rank two, exactly the same as the metric. So in practice these should be two tensor fields of different names bu with the same type. |
| rank | The rank of the tensor field, e.g. 2 for a two-form. Note that covariance properties need to be set in the covariance array. |
| dimension | The dimensions of the base manifold. |
| components | The actual number of variables that need to be kept in memory. Due to symmetry/asymmetry relationships, this might only be a subset of the full set of components. |
Create a new tensor type description. All arrays are allocated, but set to zero.
Definition at line 552 of file F5types.c.
References F5Ttensor_t::components, F5Ttensor_t::covariance, F5Ttensor_t::dimension, F5Ttensor_t::indexing, F5Ttensor_t::name, name, F5Ttensor_t::parity, F5Ttensor_t::rank, F5Ttensor_t::reverse_indexing, and F5Ttensor_t::type_id.