[svn-r28599] Normalization of tools with revise_chunks.

Tested on: 64-bit Ubuntu 15.10 (Linux 4.2.0 x86_64) gcc 5.2.1
           serial only, autotools and CMake (3.3.2)
This commit is contained in:
Dana Robinson 2015-12-11 14:14:43 -05:00
parent f53c939bd0
commit aa4fc58ac9
16 changed files with 226 additions and 255 deletions

View File

@ -13,21 +13,14 @@
* access to either file, you may request a copy from help@hdfgroup.org. *
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
#include <stdio.h>
#include <fcntl.h>
#ifdef H5_HAVE_UNISTD_H
#include <unistd.h>
#endif
#include "H5private.h"
#include "h5tools.h"
#include "h5tools_utils.h"
void parse_command_line (int argc, const char *argv[]);
void parse_command_line(int argc, const char *argv[]);
/* Name of tool */
#define PROGRAMNAME "getub"
#define PROGRAM_NAME "getub"
char *nbytes = NULL;
static const char *s_opts = "c:"; /* add more later ? */
@ -42,19 +35,14 @@ static struct long_options l_opts[] = {
* Purpose: Print the usage message
*
* Return: void
*
* Programmer:
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
static void
usage (const char *prog)
{
fflush (stdout);
fprintf (stdout, "usage: %s -c nb file] \n", prog);
fprintf (stdout, " print first 'nb' byts of file to stdoug.\n");
HDfflush(stdout);
HDfprintf(stdout, "usage: %s -c nb file] \n", prog);
HDfprintf(stdout, " print first 'nb' byts of file to stdoug.\n");
}
/*-------------------------------------------------------------------------
@ -65,112 +53,105 @@ usage (const char *prog)
* Return: Success:
*
* Failure: Exits program with EXIT_FAILURE value.
*
* Programmer:
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
void
parse_command_line (int argc, const char *argv[])
parse_command_line(int argc, const char *argv[])
{
int opt;
int opt;
/* parse command line options */
while ((opt = get_option (argc, argv, s_opts, l_opts)) != EOF)
{
switch ((char) opt)
{
case 'c':
nbytes = HDstrdup (opt_arg);
break;
case '?':
default:
usage (h5tools_getprogname());
exit (EXIT_FAILURE);
}
}
/* parse command line options */
while((opt = get_option (argc, argv, s_opts, l_opts)) != EOF) {
switch((char) opt) {
case 'c':
nbytes = HDstrdup(opt_arg);
break;
case '?':
default:
usage(h5tools_getprogname());
HDexit(EXIT_FAILURE);
} /* end switch */
} /* end while */
if (argc <= opt_ind)
{
if(argc <= opt_ind) {
error_msg("missing file name\n");
usage (h5tools_getprogname());
exit (EXIT_FAILURE);
}
}
usage(h5tools_getprogname());
HDexit(EXIT_FAILURE);
} /* end if */
} /* end parse_command_line() */
int
main (int argc, const char *argv[])
main(int argc, const char *argv[])
{
int fd;
unsigned int size;
char *filename;
long res;
char *buf;
int fd = -1;
unsigned size;
char *filename = NULL;
long res;
char *buf = NULL;
h5tools_setprogname(PROGRAMNAME);
h5tools_setstatus(EXIT_SUCCESS);
h5tools_setprogname(PROGRAM_NAME);
h5tools_setstatus(EXIT_SUCCESS);
/* Initialize h5tools lib */
h5tools_init();
/* Initialize h5tools lib */
h5tools_init();
parse_command_line (argc, argv);
parse_command_line(argc, argv);
if (nbytes == NULL)
{
/* missing arg */
error_msg("missing size\n");
usage (h5tools_getprogname());
exit (EXIT_FAILURE);
}
if (argc <= (opt_ind))
{
error_msg("missing file name\n");
usage (h5tools_getprogname());
exit (EXIT_FAILURE);
}
filename = HDstrdup (argv[opt_ind]);
if(NULL == nbytes) {
/* missing arg */
error_msg("missing size\n");
usage(h5tools_getprogname());
goto error;
} /* end if */
size = 0;
res = sscanf (nbytes, "%u", &size);
if (res == EOF)
{
if(argc <= (opt_ind)) {
error_msg("missing file name\n");
usage(h5tools_getprogname());
goto error;
} /* end if */
filename = HDstrdup(argv[opt_ind]);
size = 0;
if(EOF == (res = sscanf(nbytes, "%u", &size))) {
/* fail */
error_msg("missing file name\n");
usage (h5tools_getprogname());
exit (EXIT_FAILURE);
}
usage(h5tools_getprogname());
goto error;
} /* end if */
fd = HDopen (filename, O_RDONLY, 0);
if (fd < 0)
{
error_msg("can't open file %s\n", filename);
exit (EXIT_FAILURE);
}
if((fd = HDopen(filename, O_RDONLY, 0)) < 0) {
error_msg("can't open file %s\n", filename);
goto error;
} /* end if */
buf = (char *)HDmalloc ((unsigned)(size + 1));
if (buf == NULL)
{
HDclose (fd);
exit (EXIT_FAILURE);
}
if(NULL == (buf = (char *)HDmalloc((unsigned)(size + 1)))) {
error_msg("can't allocate buffer \n");
goto error;
} /* end if */
res = HDread (fd, buf, (unsigned)size);
res = HDread(fd, buf, (unsigned)size);
if(res < (long)size) {
error_msg("Bad read \n");
goto error;
} /* end if */
if (res < (long)size)
{
if (buf)
HDfree (buf);
HDclose (fd);
exit (EXIT_FAILURE);
}
if(HDwrite(1, buf, (unsigned)size) < 0) {
error_msg("Bad write \n");
goto error;
} /* end if */
HDwrite (1, buf, (unsigned)size);
/* close things and exit */
HDfree(buf);
HDclose(fd);
return EXIT_SUCCESS;
error:
if(buf)
HDfree(buf);
if(fd > -1)
HDclose(fd);
return EXIT_FAILURE;
} /* end main() */
if (buf)
HDfree (buf);
HDclose (fd);
return (EXIT_SUCCESS);
}

View File

@ -21,9 +21,6 @@
/* Name of tool */
#define PROGRAMNAME "h5jam"
#define TRUE 1
#define FALSE 0
hsize_t write_pad (int, hsize_t);
hsize_t compute_user_block_size (hsize_t);
hsize_t copy_some_to_file (int, int, hsize_t, hsize_t, ssize_t);
@ -421,109 +418,88 @@ main (int argc, const char *argv[])
* Return: Success: last byte written in the output.
* Failure: Exits program with EXIT_FAILURE value.
*
* Programmer:
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
hsize_t
copy_some_to_file (int infid, int outfid, hsize_t startin, hsize_t startout,
copy_some_to_file(int infid, int outfid, hsize_t startin, hsize_t startout,
ssize_t limit)
{
char buf[1024];
h5_stat_t sbuf;
int res;
ssize_t tot = 0;
ssize_t howmuch = 0;
ssize_t nchars = -1;
/* used in assertion check
ssize_t ncw = -1;
*/
ssize_t to;
ssize_t from;
ssize_t toend;
ssize_t fromend;
char buf[1024];
h5_stat_t sbuf;
int res;
ssize_t tot = 0;
ssize_t howmuch = 0;
ssize_t nchars = -1;
ssize_t to;
ssize_t from;
ssize_t toend;
ssize_t fromend;
if(startin > startout) {
/* this case is prohibited */
error_msg("copy_some_to_file: panic: startin > startout?\n");
exit (EXIT_FAILURE);
}
if(startin > startout) {
/* this case is prohibited */
error_msg("copy_some_to_file: panic: startin > startout?\n");
exit (EXIT_FAILURE);
} /* end if */
if(limit < 0) {
res = HDfstat(infid, &sbuf);
if(res < 0) {
error_msg("Can't stat file \n");
exit (EXIT_FAILURE);
}
if(limit < 0) {
res = HDfstat(infid, &sbuf);
if(res < 0) {
error_msg("Can't stat file \n");
HDexit(EXIT_FAILURE);
} /* end if */
howmuch = (ssize_t)sbuf.st_size;
}
else
howmuch = limit;
howmuch = (ssize_t)sbuf.st_size;
} else {
howmuch = limit;
} /* end if */
if(howmuch == 0)
return 0;
if(0 == howmuch)
return 0;
/* assert (howmuch > 0) */
toend = (ssize_t) startout + howmuch;
fromend = (ssize_t) startin + howmuch;
toend = (ssize_t) startout + howmuch;
fromend = (ssize_t) startin + howmuch;
if (howmuch > 512) {
to = toend - 512;
from = fromend - 512;
} else {
to = toend - howmuch;
from = fromend - howmuch;
} /* end if */
if (howmuch > 512)
{
to = toend - 512;
from = fromend - 512;
}
else
{
to = toend - howmuch;
from = fromend - howmuch;
}
while (howmuch > 0) {
HDlseek(outfid, (off_t) to, SEEK_SET);
HDlseek(infid, (off_t) from, SEEK_SET);
while (howmuch > 0)
{
HDlseek (outfid, (off_t) to, SEEK_SET);
HDlseek (infid, (off_t) from, SEEK_SET);
if (howmuch > 512) {
nchars = HDread(infid, buf, (unsigned) 512);
} else {
nchars = HDread(infid, buf, (unsigned)howmuch);
} /* end if */
if (howmuch > 512)
{
nchars = HDread (infid, buf, (unsigned) 512);
}
else
{
nchars = HDread (infid, buf, (unsigned)howmuch);
}
if (nchars <= 0) {
error_msg("Read error \n");
HDexit(EXIT_FAILURE);
} /* end if */
if (nchars <= 0)
{
printf ("huh? \n");
exit (EXIT_FAILURE);
}
/*ncw = */ HDwrite (outfid, buf, (unsigned) nchars);
if(HDwrite (outfid, buf, (unsigned) nchars) < 0) {
error_msg("Write error \n");
HDexit(EXIT_FAILURE);
}
/* assert (ncw == nchars) */
tot += nchars;
howmuch -= nchars;
if(howmuch > 512) {
to -= nchars;
from -= nchars;
} else {
to -= howmuch;
from -= howmuch;
} /* end if */
} /* end while */
tot += nchars;
howmuch -= nchars;
if (howmuch > 512)
{
to -= nchars;
from -= nchars;
}
else
{
to -= howmuch;
from -= howmuch;
}
}
/* assert howmuch == 0 */
/* assert tot == limit */
return ((hsize_t) tot + (hsize_t) startout);
}
return (hsize_t)tot + (hsize_t)startout;
} /* end copy_some_to_file() */
/*-------------------------------------------------------------------------
@ -539,28 +515,21 @@ copy_some_to_file (int infid, int outfid, hsize_t startin, hsize_t startout,
*
* Return: Success: last byte written in the output.
* Failure: Exits program with EXIT_FAILURE value.
*
* Programmer:
*
* Modifications:
*
*-------------------------------------------------------------------------
*/
hsize_t
compute_user_block_size (hsize_t ublock_size)
H5_ATTR_CONST hsize_t
compute_user_block_size(hsize_t ublock_size)
{
hsize_t where = 512;
hsize_t where = 512;
if (ublock_size == 0)
return 0;
if(0 == ublock_size)
return 0;
while (where < ublock_size)
{
where *= 2;
}
while(where < ublock_size)
where *= 2;
return (where);
}
return where;
} /* end compute_user_block_size() */
/*
* Write zeroes to fill the file from 'where' to 512, 1024, etc. bytes.

View File

@ -21,8 +21,6 @@
/* Name of tool */
#define PROGRAMNAME "h5unjam"
#define TRUE 1
#define FALSE 0
#define COPY_BUF_SIZE 1024
hsize_t write_pad( int , hsize_t );

View File

@ -24,6 +24,18 @@
#define H5Z_FILTER_DYNLIB1 257
/* gcc attribute support from H5private.h */
#ifdef __cplusplus
# define H5_ATTR_CONST /*void*/
#else /* __cplusplus */
#if defined(H5_HAVE_ATTRIBUTE) && !defined(__SUNPRO_C)
# define H5_ATTR_CONST __attribute__((const))
#else
# define H5_ATTR_CONST /*void*/
#endif
#endif /* __cplusplus */
static size_t H5Z_filter_dynlib1(unsigned int flags, size_t cd_nelmts,
const unsigned int *cd_values, size_t nbytes, size_t *buf_size, void **buf);
@ -38,8 +50,8 @@ const H5Z_class2_t H5Z_DYNLIB1[1] = {{
(H5Z_func_t)H5Z_filter_dynlib1, /* The actual filter function */
}};
H5PL_type_t H5PLget_plugin_type(void) {return H5PL_TYPE_FILTER;}
const void *H5PLget_plugin_info(void) {return H5Z_DYNLIB1;}
H5_ATTR_CONST H5PL_type_t H5PLget_plugin_type(void) {return H5PL_TYPE_FILTER;}
H5_ATTR_CONST const void *H5PLget_plugin_info(void) {return H5Z_DYNLIB1;}
/*-------------------------------------------------------------------------
* Function: H5Z_filter_dynlib1

View File

@ -310,7 +310,7 @@ static void usage(const char *prog)
*
*-------------------------------------------------------------------------
*/
static unsigned
H5_ATTR_CONST static unsigned
ceil_log10(unsigned long x)
{
unsigned long pow10 = 1;
@ -321,7 +321,7 @@ ceil_log10(unsigned long x)
ret++;
} /* end while */
return(ret);
return ret;
} /* ceil_log10() */

View File

@ -200,21 +200,21 @@ main (int argc, char *argv[])
int verbose=FALSE; /*display file names? */
const char *src_gen_name; /*general source name */
char src_name[NAMELEN]; /*source member name */
const char *src_gen_name; /*general source name */
char *src_name=NULL; /*source member name */
int src_is_family; /*is source name a family name? */
int src_membno=0; /*source member number */
const char *dst_gen_name; /*general destination name */
char dst_name[NAMELEN]; /*destination member name */
const char *dst_gen_name; /*general destination name */
char *dst_name=NULL; /*destination member name */
int dst_is_family; /*is dst name a family name? */
int dst_membno=0; /*destination member number */
off_t left_overs=0; /*amount of zeros left over */
off_t src_offset=0; /*offset in source member */
off_t dst_offset=0; /*offset in destination member */
off_t src_size; /*source logical member size */
off_t src_size; /*source logical member size */
off_t src_act_size; /*source actual member size */
off_t dst_size=1 GB; /*destination logical memb size */
hid_t fapl; /*file access property list */
@ -232,24 +232,30 @@ main (int argc, char *argv[])
* Parse switches.
*/
while (argno<argc && '-'==argv[argno][0]) {
if (!strcmp (argv[argno], "-v")) {
verbose = TRUE;
argno++;
} else if (!strcmp(argv[argno], "-V")) {
printf("This is %s version %u.%u release %u\n",
prog_name, H5_VERS_MAJOR, H5_VERS_MINOR, H5_VERS_RELEASE);
exit(EXIT_SUCCESS);
if (!strcmp (argv[argno], "-v")) {
verbose = TRUE;
argno++;
} else if (!strcmp(argv[argno], "-V")) {
printf("This is %s version %u.%u release %u\n",
prog_name, H5_VERS_MAJOR, H5_VERS_MINOR, H5_VERS_RELEASE);
exit(EXIT_SUCCESS);
} else if (!strcmp (argv[argno], "-family_to_sec2")) {
family_to_sec2 = TRUE;
argno++;
} else if ('b'==argv[argno][1]) {
blk_size = get_size (prog_name, &argno, argc, argv);
} else if ('m'==argv[argno][1]) {
dst_size = get_size (prog_name, &argno, argc, argv);
} else {
usage (prog_name);
}
}
family_to_sec2 = TRUE;
argno++;
} else if ('b'==argv[argno][1]) {
blk_size = get_size (prog_name, &argno, argc, argv);
} else if ('m'==argv[argno][1]) {
dst_size = get_size (prog_name, &argno, argc, argv);
} else {
usage (prog_name);
} /* end if */
} /* end while */
/* allocate names */
if(NULL == (src_name = HDcalloc((size_t)NAMELEN, sizeof(char))))
exit(EXIT_FAILURE);
if(NULL == (dst_name = HDcalloc((size_t)NAMELEN, sizeof(char))))
exit(EXIT_FAILURE);
/*
* Get the name for the source file and open the first member. The size
@ -485,19 +491,22 @@ main (int argc, char *argv[])
H5E_BEGIN_TRY {
file=H5Fopen(dst_gen_name, H5F_ACC_RDWR, fapl);
} H5E_END_TRY;
if(file>=0) {
if(H5Fclose(file)<0) {
perror ("H5Fclose");
exit (EXIT_FAILURE);
}
}
} /* end if */
} /* end if */
if(H5Pclose(fapl)<0) {
perror ("H5Pclose");
exit (EXIT_FAILURE);
}
} /* end if */
/* Free resources and return */
HDfree (buf);
HDfree(src_name);
HDfree(dst_name);
HDfree(buf);
return EXIT_SUCCESS;
}
} /* end main */

View File

@ -49,7 +49,7 @@ int main(void)
char string5[5];
float fok[2] = {1234.0f, 2341.0f};
float fnok[2] = {5678.0f, 6785.0f};
float *fptr;
float *fptr = NULL;
char *data = NULL;
@ -143,8 +143,10 @@ out:
if(error < 0) {
result = 1;
puts("*FAILED - HDF5 library error*");
} else if(fok[0] != fptr[0] || fok[1] != fptr[1]
|| fnok[0] != fptr[2] || fnok[1] != fptr[3]) {
} else if(!(H5_FLT_ABS_EQUAL(fok[0], fptr[0]))
|| !(H5_FLT_ABS_EQUAL(fok[1], fptr[1]))
|| !(H5_FLT_ABS_EQUAL(fnok[0], fptr[2]))
|| !(H5_FLT_ABS_EQUAL(fnok[1], fptr[3]))) {
char *mname;
result = 1;

View File

@ -136,7 +136,7 @@ static char UC_1_SOURCE_DSET_PATH[NAME_LEN] = "/source_dset";
static char UC_1_VDS_DSET_NAME[NAME_LEN] = "vds_dset";
/* Fill values */
static hsize_t UC_1_FILL_VALUES[UC_1_N_SOURCES] = {
static int UC_1_FILL_VALUES[UC_1_N_SOURCES] = {
-1,
-2,
-3,

View File

@ -29,7 +29,7 @@
int
main(int argc, char *argv[])
main(void)
{
hid_t src_sid = -1; /* source dataset's dataspace ID */
hid_t src_dcplid = -1; /* source dataset property list ID */

View File

@ -138,7 +138,7 @@ static char UC_2_FILE_NAMES[UC_2_N_SOURCES][NAME_LEN] = {
#define UC_2_VDS_DSET_NAME "vds_dset"
/* Fill values */
static hsize_t UC_2_FILL_VALUES[UC_2_N_SOURCES] = {
static int UC_2_FILL_VALUES[UC_2_N_SOURCES] = {
-1,
-2,
-3,

View File

@ -28,7 +28,7 @@
#include "UC_2.h"
int
main(int argc, char *argv[])
main(void)
{
hid_t src_sid = -1; /* source dataset's dataspace ID */
hid_t src_dcplid = -1; /* source dataset property list ID */

View File

@ -28,7 +28,7 @@
#include "UC_3.h"
/* Create the VDS that uses use case 1 files */
herr_t
static herr_t
create_3_1_vds(void)
{
hid_t src_sid = -1; /* source dataset's dataspace ID */
@ -135,7 +135,7 @@ error:
} /* end create_3_1_vds() */
/* Create the VDS that uses use case 2 files */
herr_t
static herr_t
create_3_2_vds(void)
{
hid_t src_sid = -1; /* source dataset's dataspace ID */
@ -236,7 +236,7 @@ error:
} /* end create_3_2_vds() */
int
main(int argc, char *argv[])
main(void)
{
if(create_3_1_vds() < 0)

View File

@ -74,7 +74,7 @@ static char UC_4_SOURCE_DSET_PATH[NAME_LEN] = "/source_dset";
static char UC_4_VDS_DSET_NAME[NAME_LEN] = "vds_dset";
/* Fill values */
static hsize_t UC_4_FILL_VALUES[UC_4_N_SOURCES] = {
static int UC_4_FILL_VALUES[UC_4_N_SOURCES] = {
-1,
-2,
-3

View File

@ -27,7 +27,7 @@
#include "UC_4.h"
int
main(int argc, char *argv[])
main(void)
{
hid_t src_sid = -1; /* source dataset's dataspace ID */
hid_t src_dcplid = -1; /* source dataset property list ID */

View File

@ -72,7 +72,7 @@ static char UC_5_SOURCE_DSET_PATH[NAME_LEN] = "/source_dset";
static char UC_5_VDS_DSET_NAME[NAME_LEN] = "vds_dset";
/* Fill values */
static hsize_t UC_5_FILL_VALUES[UC_5_N_SOURCES] = {
static int UC_5_FILL_VALUES[UC_5_N_SOURCES] = {
-1,
-2,
-3

View File

@ -27,7 +27,7 @@
#include "UC_5.h"
int
main(int argc, char *argv[])
main(void)
{
hid_t src_sid = -1; /* source dataset's dataspace ID */
hid_t src_dcplid = -1; /* source dataset property list ID */