From b399040acbd5763802a96bc2c877c0bd5ea152d2 Mon Sep 17 00:00:00 2001 From: James Laird Date: Wed, 1 Mar 2006 10:05:37 -0500 Subject: [svn-r11994] Purpose: Adding HL examples Description: Forgot to 'cvs add' example files. --- hl/examples/ex_lite1.c | 35 +++++++++++++++++++++++++ hl/examples/ex_lite2.c | 51 ++++++++++++++++++++++++++++++++++++ hl/examples/ex_lite3.c | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 156 insertions(+) create mode 100644 hl/examples/ex_lite1.c create mode 100644 hl/examples/ex_lite2.c create mode 100644 hl/examples/ex_lite3.c diff --git a/hl/examples/ex_lite1.c b/hl/examples/ex_lite1.c new file mode 100644 index 0000000..85a011d --- /dev/null +++ b/hl/examples/ex_lite1.c @@ -0,0 +1,35 @@ + +/**************************************************************************** + * NCSA HDF * + * Scientific Data Technologies * + * National Center for Supercomputing Applications * + * University of Illinois at Urbana-Champaign * + * 605 E. Springfield, Champaign IL 61820 * + * * + * For conditions of distribution and use, see the accompanying * + * hdf/COPYING f. * + * * + ****************************************************************************/ + +#include "H5LT.h" + +#define RANK 2 + + +int main( void ) +{ + hid_t file_id; + hsize_t dims[RANK]={2,3}; + int data[6]={1,2,3,4,5,6}; + herr_t status; + + file_id = H5Fcreate ("ex_lite1.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); + + status = H5LTmake_dataset(file_id,"/dset",RANK,dims,H5T_NATIVE_INT,data); + + status = H5Fclose (file_id); + + return 0; +} + + diff --git a/hl/examples/ex_lite2.c b/hl/examples/ex_lite2.c new file mode 100644 index 0000000..990cf1f --- /dev/null +++ b/hl/examples/ex_lite2.c @@ -0,0 +1,51 @@ + +/**************************************************************************** + * NCSA HDF * + * Scientific Data Technologies * + * National Center for Supercomputing Applications * + * University of Illinois at Urbana-Champaign * + * 605 E. Springfield, Champaign IL 61820 * + * * + * For conditions of distribution and use, see the accompanying * + * hdf/COPYING f. * + * * + ****************************************************************************/ + +#include "H5LT.h" + +int main( void ) +{ + hid_t file_id; + int data[6]; + hsize_t dims[2]; + herr_t status; + hsize_t i, j, nrow, n_values; + + /* open file from ex_lite1.c */ + file_id = H5Fopen ("ex_lite1.h5", H5F_ACC_RDONLY, H5P_DEFAULT); + + /* read dataset */ + status = H5LTread_dataset_int(file_id,"/dset",data); + + /* get the dimensions of the dataset */ + status = H5LTget_dataset_info(file_id,"/dset",dims,NULL,NULL); + + /* print it by rows */ + n_values = dims[0] * dims[1]; + nrow = dims[1]; + for (i=0; i + +#define ATTR_SIZE 5 + +int main( void ) +{ + hid_t file_id; + hid_t dset_id; + hid_t space_id; + hsize_t dims[1] = { ATTR_SIZE }; + int data[ATTR_SIZE] = {1,2,3,4,5}; + herr_t status; + int i; + + /* create a file */ + file_id = H5Fcreate ("ex_lite3.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); + + /* create a data space */ + space_id = H5Screate_simple(1,dims,NULL); + + /* create a dataset named "dset" */ + dset_id = H5Dcreate(file_id,"dset",H5T_NATIVE_INT,space_id,H5P_DEFAULT); + + /* close */ + status = H5Dclose(dset_id); + status = H5Sclose(space_id); + +/*------------------------------------------------------------------------- + * example of H5LTset_attribute_int + *------------------------------------------------------------------------- + */ + + /* create and write the attribute "attr1" on the dataset "dset" */ + status = H5LTset_attribute_int(file_id,"dset","attr1",data,ATTR_SIZE); + +/*------------------------------------------------------------------------- + * example of H5LTget_attribute_int + *------------------------------------------------------------------------- + */ + + /* get the attribute "attr1" from the dataset "dset" */ + status = H5LTget_attribute_int(file_id,"dset","attr1",data); + + for (i=0; i< ATTR_SIZE; i++ ) + { + printf (" %d", data[i]); + } + printf ("\n"); + + /* close file */ + status = H5Fclose(file_id); + + return 0; + +} + -- cgit v0.12