20#define F5P_DEFAULT (-1)
81F5_API hid_t
F5Lcreate(hid_t R_id,
const char*fieldname,
int dimension,
const hsize_t*dims,
82 hid_t fieldtype, hid_t property_id);
90 int SkeletonDimensionality,
91 int DataspaceDimensionality,
92 const hsize_t*refinement);
106 const hsize_t*refinement);
174 int dimension,
const hsize_t*dims,
175 hid_t fieldtype, hid_t memtype,
const void * dataPtr,
176 hid_t enum_type, hid_t property_id);
186F5_API hid_t
F5LwriteS(hid_t Container_id,
const char*
name,
int dimension,
const hsize_t*dims,
187 hid_t fieldtype, hid_t memtype,
const void * dataPtr,
188 hid_t enum_type, hid_t dcpl_id);
195F5_API int F5LreadS(hid_t Container_id, hid_t memtype,
void * dataPtr,
196 hid_t ElementLoadID);
211 int dimension,
const hsize_t*full_dims,
212 const hsize_t*datasize,
213 hid_t fieldtype, hid_t memtype,
const void * dataPtr,
214 const hsize_t*datastart,
215 const hsize_t*start_border,
const hsize_t*end_border,
216 const char*fraction_name, hid_t enum_type, hid_t property_id);
226 int dimension,
const hsize_t*full_dims,
227 const hsize_t*datasize,
228 hid_t fieldtype, hid_t memtype,
const void * dataPtr,
229 const hsize_t*datastart,
230 const hsize_t*start_border,
const hsize_t*end_border,
231 const char*fraction_name, hid_t enum_type, hid_t property_id);
236 const char *target_file_name,
237 const char *target_obj_name,
240 int rank,
const hsize_t*full_dims,
241 const hsize_t*datasize,
242 hid_t fieldtype, hid_t memtype,
const void * dataPtr,
243 const hsize_t*datastart,
244 const hsize_t*start_border,
const hsize_t*end_border,
245 const char*fraction_name,
246 hid_t enum_type, hid_t property_id);
262 int dimension,
const hsize_t*full_dims,
263 const hsize_t*datasize,
264 hid_t fieldtype, hid_t memtype,
const void *
const* dataPtr,
265 const hsize_t*datastart,
266 const hsize_t*start_border,
const hsize_t*end_border,
267 const char*fraction_name,
268 hid_t enum_type, hid_t property_id);
276 hid_t fieldtype, hid_t memtype,
const void * dataPtr,
277 hid_t enum_type, hid_t property_id);
287 int dimension,
const hsize_t*dataspace_dims,
288 hid_t fieldtype,
const void * base,
const void * delta);
306 void * base,
void * delta);
328 int dimension,
const hsize_t*dims,
329 hid_t fieldtype, hid_t memtype,
330 const void *
const*dataPtr,
360 int Mrank,
const hsize_t dims[],
361 hid_t fieldtype, hid_t memtype,
362 const void *
const dataPtr[],
const int polynom_order[],
363 const int component_map[],
364 hid_t property_id, hid_t ProcIDLocation);
382F5_API hid_t F5Lwrite_permutation(hid_t R_id,
const char*fieldname,
384 hsize_t*permutation_indices,
386 hid_t fieldtype,
const void * dataPtr);
392F5_API hid_t
F5Lget_type(hid_t Field_hid,
int FieldIDisGroup, hid_t elink_fapl_id);
399 const char*fieldname,
448#ifdef F5_CPLUSPLUS_XXXXXXXXXXXX
453template <
int N,
typename Trait>
454inline hid_t LwriteX(hid_t R_id,
const char*fieldname,
455 const Extent<N, hsize_t, Trait>&dims,
456 hid_t fieldtype, hid_t memtype,
457 const Extent<N, const void*, Trait>&dataPtr,
458 const Extent<N, int, Trait>&polynom_order,
461 return F5LwriteX(R_id, fieldname, N, dims.data,
463 dataPtr.data, polynom_order.data,
468template <
int N,
typename Trait>
469inline hid_t LwriteX(hid_t R_id,
const char*fieldname,
470 const Extent<N, hsize_t, Trait>&dims,
472 const Extent<N, const void*, Trait>&dataPtr,
473 const Extent<N, int, Trait>&polynom_order,
476 return F5LwriteX(R_id, fieldname, N, dims.data,
478 dataPtr.data, polynom_order.data,
483template <
typename T,
typename value>
484inline T evalPolynom(
const value&v,
const T*data,
int n)
487 if (n==1)
return T[0];
488 if (n==1)
return T[0] + v*T[1];
489 return T[0] + v*evalPolynom(v, data+1, n-1);
hid_t F5LwriteX(hid_t R_id, const char *fieldname, int rank, const hsize_t *dims, hid_t fieldtype, hid_t memtype, const void *const *dataPtr, const int *polynom_order, const int component_map[], hid_t property_id, hid_t ProcIDLocation)
F5_API int F5Lis_linear(hid_t Rep_id, const char *fieldname)
F5_API hid_t F5Lwrite_fractionS(hid_t R_id, const char *fieldname, int dimension, const hsize_t *full_dims, const hsize_t *datasize, hid_t fieldtype, hid_t memtype, const void *dataPtr, const hsize_t *datastart, const hsize_t *start_border, const hsize_t *end_border, const char *fraction_name, hid_t enum_type, hid_t property_id)
F5_API hid_t F5Lwrite_fraction_external(hid_t R_id, const char *fieldname, const char *target_file_name, const char *target_obj_name, const char *prefix, int rank, const hsize_t *full_dims, const hsize_t *datasize, hid_t fieldtype, hid_t memtype, const void *dataPtr, const hsize_t *datastart, const hsize_t *start_border, const hsize_t *end_border, const char *fraction_name, hid_t enum_type, hid_t property_id)
F5_API int F5Dset_type_attribute(hid_t F_id, hid_t fieldtype)
F5_API hid_t F5LwriteX(hid_t R_id, const char *fieldname, int Mrank, const hsize_t dims[], hid_t fieldtype, hid_t memtype, const void *const dataPtr[], const int polynom_order[], const int component_map[], hid_t property_id, hid_t ProcIDLocation)
F5_API hid_t F5Lget_space(hid_t Field_id)
void TopologyName(char *name, int nlength, const hsize_t *level, int Centering, int dims)
F5_API hid_t F5Lread_linear(hid_t F_id, hsize_t *dims, hid_t fieldtype, void *base, void *delta)
F5_API int F5LAsave_dimensions(hid_t Field_id, const char *aname, int rank, const hsize_t *dims)
F5_API hid_t F5Lcreate(hid_t R_id, const char *fieldname, int dimension, const hsize_t *dims, hid_t fieldtype, hid_t property_id)
F5_API int F5LTset_maximal_grid_refinement(hid_t ContentsGroup_id, const char *gridname, int IndexDepth, int Dimensionality, const hsize_t *refinement)
F5_API hid_t F5Lwrite(hid_t R_id, const char *fieldname, int dimension, const hsize_t *dims, hid_t fieldtype, hid_t memtype, const void *dataPtr, hid_t enum_type, hid_t property_id)
F5_API int F5Lset_space(hid_t Field_id, int rank, const hsize_t *dims)
F5_API int F5Lget_compound_extent_dims(hid_t CompoundGroupID, hsize_t *dims)
F5_API int F5LAget_dimensions(hid_t Field_id, const char *aname, hsize_t dims[FIBER_MAX_RANK])
F5_API hid_t F5Lwrite_fraction(hid_t R_id, const char *fieldname, int dimension, const hsize_t *full_dims, const hsize_t *datasize, hid_t fieldtype, hid_t memtype, const void *dataPtr, const hsize_t *datastart, const hsize_t *start_border, const hsize_t *end_border, const char *fraction_name, hid_t enum_type, hid_t property_id)
F5_API hid_t F5LwriteS(hid_t Container_id, const char *name, int dimension, const hsize_t *dims, hid_t fieldtype, hid_t memtype, const void *dataPtr, hid_t enum_type, hid_t dcpl_id)
F5_API int F5LreadS(hid_t Container_id, hid_t memtype, void *dataPtr, hid_t ElementLoadID)
F5_API int F5LTget_maximal_skeleton_refinement(hid_t ContentsGroup_id, const char *gridname, hsize_t *refinement, int IndexDepth, int Dimensionality)
F5_API hid_t F5Lwrites(hid_t F_id, const char *fieldname, int dimension, const hsize_t *dims, hid_t fieldtype, hid_t memtype, const void *const *dataPtr, hid_t enum_type, hid_t property_id)
F5_API hid_t F5Lwrite_entity(hid_t R_id, const char *fieldname, hid_t fieldtype, const void *value)
F5_API hid_t F5Lget_compound_space(hid_t CompoundGroupID)
F5_API hid_t 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)
F5_API hid_t F5LSwrite_fraction(hid_t R_id, const char *fieldname, int dimension, const hsize_t *full_dims, const hsize_t *datasize, hid_t fieldtype, hid_t memtype, const void *const *dataPtr, const hsize_t *datastart, const hsize_t *start_border, const hsize_t *end_border, const char *fraction_name, hid_t enum_type, hid_t property_id)
F5_API hid_t F5LTcreate_topology(hid_t Grid_hid, const char *TopologyName, int IndexDepth, int SkeletonDimensionality, int DataspaceDimensionality, const hsize_t *refinement)
F5_API int F5Lget_field_dimension_and_type(hid_t Representation_hid, const char *fieldname, hsize_t dims[FIBER_MAX_RANK], hid_t *type_id)
F5_API int F5LTget_index_depth(hid_t Top_hid)
F5_API int F5LTget_maximal_grid_refinement(hid_t ContentsGroup_id, const char *gridname, hsize_t *refinement)
F5_API hid_t F5Lget_type(hid_t Field_hid, int FieldIDisGroup, hid_t elink_fapl_id)
F5_API hid_t F5Lwrite1D(hid_t R_id, const char *fieldname, hsize_t nElements, hid_t fieldtype, hid_t memtype, const void *dataPtr, hid_t enum_type, hid_t property_id)