1/* This is part of the netCDF package.  Copyright 2010 University
2   Corporation for Atmospheric Research/Unidata See COPYRIGHT file for
3   conditions of use.
4
5   This program does some HDF5 string stuff.
6
7   Here's a HDF5 sample programs:
8   http://hdf.ncsa.uiuc.edu/training/other-ex5/sample-programs/strings.c
9*/
10
11#include "h5_err_macros.h"
12#include <hdf5.h>
13
14#define FILE_NAME "tst_h_ints.h5"
15
16int
17main()
18{
19   printf("\n*** Checking HDF5 integer dataset with extension.\n");
20   printf("*** checking 1D int dataset with extend...");
21   {
22
23/* Misspelling is deliberite. Please dont correct. */
24#define INTERGERS "Intergers"
25#define NUM_STR 1
26#define NDIMS 1
27      hid_t fileidgrpidspaceid;
28      hid_t datasetidplistid;
29      hsize_t dims[NDIMS] = {NUM_STR}, max_dims[NDIMS] = {H5S_UNLIMITED};
30      hsize_t chunk_dims[NDIMS] = {1};
31      hsize_t xtend_size[NDIMS] = {2};
32      int data[NUM_STR] = {42};
33      int empty = -42;
34
35      /* Create the file, open root group. */
36      if ((fileid = H5Fcreate(FILE_NAMEH5F_ACC_TRUNCH5P_DEFAULT,
37       H5P_DEFAULT)) < 0) ERR;
38      if ((grpid = H5Gopen2(fileid, "/", H5P_DEFAULT)) < 0) ERR;
39
40      /* Create a space for the dataset. */
41      if ((spaceid = H5Screate_simple(1, dimsmax_dims)) < 0) ERR;
42
43      /* Create the dataset. */
44      if ((plistid = H5Pcreate(H5P_DATASET_CREATE)) < 0) ERR;
45      if (H5Pset_chunk(plistid, 1, chunk_dims) < 0) ERR;
46      if (H5Pset_fill_value(plistidH5T_NATIVE_INT32, &empty) < 0) ERR;
47      if ((datasetid = H5Dcreate1(grpidINTERGERSH5T_NATIVE_INT32,
48   spaceidplistid)) < 0) ERR;
49
50      /* Now extend the dataset. */
51      if (H5Dextend(datasetidxtend_size) < 0) ERR;
52
53      if (H5Dwrite(datasetidH5T_NATIVE_INTspaceidspaceid,
54    H5P_DEFAULT, &data) < 0) ERR;
55
56      /* Close up. */
57      if (H5Dclose(datasetid) < 0) ERR;
58      if (H5Pclose(plistid) < 0) ERR;
59      if (H5Sclose(spaceid) < 0) ERR;
60      if (H5Gclose(grpid) < 0) ERR;
61      if (H5Fclose(fileid) < 0) ERR;
62   }
63   SUMMARIZE_ERR;
64   FINAL_RESULTS;
65}


HyperKWIC - Version 7.20DA executed at 11:37 on 27 Oct 2017 | Polyhedron Solutions - INTERNAL USE | COMMERCIAL (Any O/S) SN 4AKIed