diff options
author | Robb Matzke <matzke@llnl.gov> | 1998-07-23 21:19:17 (GMT) |
---|---|---|
committer | Robb Matzke <matzke@llnl.gov> | 1998-07-23 21:19:17 (GMT) |
commit | c8d2f1e17a828016487bb7661f3eff4135c92226 (patch) | |
tree | b20e7514d7cf64ba6f8b21723b8e45bd4235f346 /tools/h5tools.h | |
parent | 8821a3c0156e28a7fd49508c0b471361a9344984 (diff) | |
download | hdf5-c8d2f1e17a828016487bb7661f3eff4135c92226.zip hdf5-c8d2f1e17a828016487bb7661f3eff4135c92226.tar.gz hdf5-c8d2f1e17a828016487bb7661f3eff4135c92226.tar.bz2 |
[svn-r537] Changes since 19980722
----------------------
./src/H5A.c
./src/H5Apublic.h
./test/tattr.c
Switched the order of the second and third argument of
H5Aget_name() to make it consistent with other functions that
take buffers and buffer sizes.
./src/H5G.c
./src/H5Gpublic.h
./src/H5Gprivate.h
The H5Gget_comment() function returns the size of the comment
including the null terminator. If the object has no comment
then zero is returned. If an error occurs then a negative
value is returned.
./MANIFEST
./tools/Makefile.in
./tools/h5tools.h [NEW]
./tools/h5dump.c [NEW]
Created a library for printing values of datasets in a way
that looks nice. It's not done yet, but I needed it for
debugging the contents of files from Jim Reus.
./tools/h5ls.c
Added the `-d' and `--dump' options which cause the contents
of a dataset to be printed. Added `-w N' and `--width=N'
options to control how wide the raw data output should be. If
you want single-column output then say `-w1'.
Printing dataset values can now handle datasets of any integer
or floating point atomic type. As a special case, integers
which are one byte wide are treated a character strings for
now.
Sample output:
$ h5ls --dump --width=60 banana.hdf
ARCHIVE 0:0:0:744 Dataset {52/Inf}
Data:
(0) "U struct complex { double R; double I; };\012V"
(43) " double;\012"
U 0:0:0:2500 Dataset {256/512}
Data: printing of compound data types is not implemented yet
V 0:0:0:3928 Dataset {256/512}
Data:
(0) 0, 0.015625, 0.03125, 0.046875, 0.0625,
(5) 0.078125, 0.09375, 0.109375, 0.125, 0.140625,
(10) 0.15625, 0.171875, 0.1875, 0.203125, 0.21875,
(15) 0.234375, 0.25, 0.265625, 0.28125, 0.296875,
...
Diffstat (limited to 'tools/h5tools.h')
-rw-r--r-- | tools/h5tools.h | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/tools/h5tools.h b/tools/h5tools.h new file mode 100644 index 0000000..966eaff --- /dev/null +++ b/tools/h5tools.h @@ -0,0 +1,81 @@ +/* + * Copyright © 1998 NCSA + * All rights reserved. + * + * Programmer: Robb Matzke <matzke@llnl.gov> + * Thursday, July 23, 1998 + * + * Purpose: Support functions for the various tools. + */ +#ifndef _H5TOOLS_H +#define _H5TOOLS_H + +#include <hdf5.h> +#include <stdio.h> + +/* + * Information about how to format output. + */ +typedef struct h5dump_t { + /* + * Fields associated with the individual elements. + * + * fmt: A printf(3c) format to use to print the value string + * after it has been rendered. The default is "%s". + * + * suf1: This string is appended to elements which are followed by + * another element whether the following element is on the + * same line or the next line. The default is a comma. + * + * suf2: This string is appended (after `suf1') to elements which + * are followed on the same line by another element. The + * default is a single space. + */ + const char *elmt_fmt; + const char *elmt_suf1; + const char *elmt_suf2; + + /* + * Fields associated with the index values printed at the left edge of + * each line of output. + * + * n_fmt: Each index value is printed according to this printf(3c) + * format string which should include a format for a long + * integer. The default is "%lu". + * + * sep: Each integer in the index list will be separated from the + * others by this string, which defaults to a comma. + * + * fmt: After the index values are formated individually and + * separated from one another by some string, the entire + * resulting string will be formated according to this + * printf(3c) format which should include a format for a + * character string. The default is "%s". + */ + const char *idx_n_fmt; /*index number format */ + const char *idx_sep; /*separator between numbers */ + const char *idx_fmt; /*entire index format */ + + /* + * Fields associated with entire lines. + * + * ncols: Number of columns per line defaults to 80. + * + * suf: This character string will be appended to each line of + * output. It should not contain line feeds. The default + * is the empty string. + * + * sep: A character string to be printed after every line feed + * defaulting to the empty string. It should end with a + * line feed. + */ + int line_ncols; /*columns of output */ + const char *line_suf; /*string to append to each line */ + const char *line_sep; /*separates lines */ + +} h5dump_t; + + +int h5dump(FILE *stream, const h5dump_t *info, hid_t dset, hid_t p_type); + +#endif |