File: H5VolUtil.h

package info (click to toggle)
adios2 2.10.2%2Bdfsg1-2
  • links: PTS, VCS
  • area: main
  • in suites: trixie
  • size: 33,764 kB
  • sloc: cpp: 175,964; ansic: 160,510; f90: 14,630; yacc: 12,668; python: 7,275; perl: 7,126; sh: 2,825; lisp: 1,106; xml: 1,049; makefile: 579; lex: 557
file content (46 lines) | stat: -rw-r--r-- 1,163 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
#ifndef H5VL_UTIL
#define H5VL_UTIL

#include <adios2_c.h>
#include <hdf5.h>

#define H5VL_CODE_SUCC 1
#define H5VL_CODE_FAIL 0

hid_t gUtilHDF5Type(adios2_type adios2Type);

adios2_type gUtilADIOS2Type(hid_t h5Type);

/*
int gUtilADIOS2IsNone(hid_t space_id)
{
// note: using npts is better than type
// for example, the following line will get type SIMPLE instead of NON
// memspace = H5Screate_simple(DIM, count, NULL); H5Sselect_none(memspace);

  hsize_t npts = H5Sget_select_npoints(space_id);
  H5S_class_t stype = H5Sget_simple_extent_type(space_id);
  printf(" type = %d npts=%ld\n", stype, npts);
  if (0 == npts)
    return H5VL_CODE_SUCC;
  if ((H5S_NULL == stype) || (H5S_NO_CLASS == stype))
    return H5VL_CODE_SUCC;

  return H5VL_CODE_FAIL;
}
*/

int gUtilADIOS2IsScalar(hid_t space_id);
int gUtilADIOS2GetDim(hid_t space_id);

//
// h5 uses hsize_t for dimensions (unsigned long long)
// adios uses size_t
//
void gUtilConvert(hsize_t *fromH5, size_t *to, size_t ndims);

int gUtilADIOS2GetShape(hid_t space_id, size_t *shape, size_t ndims);

int gUtilADIOS2GetBlockInfo(hid_t hyperSlab_id, size_t *start, size_t *count, hsize_t ndims);

#endif