diff options
author | Bill Wendling <wendling@ncsa.uiuc.edu> | 2001-02-22 22:01:58 (GMT) |
---|---|---|
committer | Bill Wendling <wendling@ncsa.uiuc.edu> | 2001-02-22 22:01:58 (GMT) |
commit | 627a039fdbd3c6d782606f68ecee8e5262808699 (patch) | |
tree | 2d9ed5b0494c6a0730e7e7658d44b355b6f7edf2 /tools/h5debug.c | |
parent | 55998df9edbfacb0e2b0a1907e66fa819fcec09f (diff) | |
download | hdf5-627a039fdbd3c6d782606f68ecee8e5262808699.zip hdf5-627a039fdbd3c6d782606f68ecee8e5262808699.tar.gz hdf5-627a039fdbd3c6d782606f68ecee8e5262808699.tar.bz2 |
[svn-r3492] Purpose:
Code Movement
Description:
Moved these files to subdirectories in the tools/ directory.
Platforms tested:
Linux, Kelgia
Diffstat (limited to 'tools/h5debug.c')
-rw-r--r-- | tools/h5debug.c | 185 |
1 files changed, 0 insertions, 185 deletions
diff --git a/tools/h5debug.c b/tools/h5debug.c deleted file mode 100644 index 76eb472..0000000 --- a/tools/h5debug.c +++ /dev/null @@ -1,185 +0,0 @@ -/*------------------------------------------------------------------------- - * Copyright (C) 1997 National Center for Supercomputing Applications. - * All rights reserved. - * - *------------------------------------------------------------------------- - * - * Created: debug.c - * Jul 18 1997 - * Robb Matzke <matzke@llnl.gov> - * - * Purpose: Debugs an existing HDF5 file at a low level. - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -#define H5F_PACKAGE /*suppress error about including H5Fpkg */ - -#include <H5private.h> -#include <H5Iprivate.h> -#include <H5Bprivate.h> -#include <H5Pprivate.h> -#include <H5Fpkg.h> -#include <H5Gprivate.h> -#include <H5HGprivate.h> -#include <H5HLprivate.h> -#include <H5Oprivate.h> - -/* File drivers */ -#include <H5FDfamily.h> - -#define INDENT 3 -#define VCOL 50 - - -/*------------------------------------------------------------------------- - * Function: main - * - * Usage: debug FILENAME [OFFSET] - * - * Return: Success: exit (0) - * - * Failure: exit (non-zero) - * - * Programmer: Robb Matzke - * matzke@llnl.gov - * Jul 18 1997 - * - * Modifications: - * - *------------------------------------------------------------------------- - */ -int -main(int argc, char *argv[]) -{ - hid_t fid, plist=H5P_DEFAULT; - H5F_t *f; - haddr_t addr=0, extra=0; - uint8_t sig[16]; - intn i, ndims; - herr_t status = SUCCEED; - - if (argc == 1) { - fprintf(stderr, - "Usage: %s filename [signature addr [extra]]\n", argv[0]); - HDexit(1); - } - - /* - * Open the file and get the file descriptor. - */ - if (strchr (argv[1], '%')) { - plist = H5Pcreate (H5P_FILE_ACCESS); - H5Pset_fapl_family (plist, (hsize_t)0, H5P_DEFAULT); - } - if ((fid = H5Fopen(argv[1], H5F_ACC_RDONLY, plist)) < 0) { - fprintf(stderr, "cannot open file\n"); - HDexit(1); - } - if (NULL == (f = H5I_object(fid))) { - fprintf(stderr, "cannot obtain H5F_t pointer\n"); - HDexit(2); - } - - /* - * Parse command arguments. - */ - if (argc > 2) { - printf("New address: %s\n", argv[2]); - addr = HDstrtoll(argv[2], NULL, 0); - } - if (argc > 3) { - extra = HDstrtoll(argv[3], NULL, 0); - } - /* - * Read the signature at the specified file position. - */ - HDfprintf(stdout, "Reading signature at address %a (rel)\n", addr); - if (H5F_block_read(f, H5FD_MEM_SUPER, addr, (hsize_t)sizeof(sig), H5P_DEFAULT, sig)<0) { - fprintf(stderr, "cannot read signature\n"); - HDexit(3); - } - if (!HDmemcmp(sig, H5F_SIGNATURE, H5F_SIGNATURE_LEN)) { - /* - * Debug the boot block. - */ - status = H5F_debug(f, addr, stdout, 0, VCOL); - - } else if (!HDmemcmp(sig, H5HL_MAGIC, H5HL_SIZEOF_MAGIC)) { - /* - * Debug a local heap. - */ - status = H5HL_debug(f, addr, stdout, 0, VCOL); - - } else if (!HDmemcmp (sig, H5HG_MAGIC, H5HG_SIZEOF_MAGIC)) { - /* - * Debug a global heap collection. - */ - status = H5HG_debug (f, addr, stdout, 0, VCOL); - - } else if (!HDmemcmp(sig, H5G_NODE_MAGIC, H5G_NODE_SIZEOF_MAGIC)) { - /* - * Debug a symbol table node. - */ - status = H5G_node_debug(f, addr, stdout, 0, VCOL, extra); - - } else if (!HDmemcmp(sig, H5B_MAGIC, H5B_SIZEOF_MAGIC)) { - /* - * Debug a B-tree. B-trees are debugged through the B-tree - * subclass. The subclass identifier is the byte immediately - * after the B-tree signature. - */ - H5B_subid_t subtype = (H5B_subid_t)sig[H5B_SIZEOF_MAGIC]; - - switch (subtype) { - case H5B_SNODE_ID: - status = H5G_node_debug(f, addr, stdout, 0, VCOL, extra); - break; - - case H5B_ISTORE_ID: - ndims = (int)extra; - status = H5F_istore_debug (f, addr, stdout, 0, VCOL, ndims); - break; - - default: - fprintf(stderr, "Unknown B-tree subtype %u\n", - (unsigned)(subtype)); - HDexit(4); - } - - } else if (sig[0] == H5O_VERSION) { - /* - * This could be an object header. Since they don't have a signature - * it's a somewhat "ify" detection. - */ - status = H5O_debug(f, addr, stdout, 0, VCOL); - - } else { - /* - * Got some other unrecognized signature. - */ - printf("%-*s ", VCOL, "Signature:"); - for (i = 0; i < 8; i++) { - if (sig[i] > ' ' && sig[i] <= '~' && '\\' != sig[i]) { - HDputchar(sig[i]); - } else if ('\\' == sig[i]) { - HDputchar('\\'); - HDputchar('\\'); - } else { - printf("\\%03o", sig[i]); - } - } - HDputchar('\n'); - - fprintf(stderr, "unknown signature\n"); - HDexit(4); - } - - if (status < 0) { - fprintf(stderr, "An error occurred\n"); - HDexit(5); - } - H5Fclose(fid); - return 0; -} |