diff options
author | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2004-02-10 18:33:20 (GMT) |
---|---|---|
committer | Pedro Vicente Nunes <pvn@hdfgroup.org> | 2004-02-10 18:33:20 (GMT) |
commit | 192c316dd5de41d9de2b8489406abe94bffccb7b (patch) | |
tree | f24ee502aab010bd3e3e373eaeda07a0f4ea9d0c /tools/h5repack/h5repack_copy.c | |
parent | f1031738ef0f945a3f1d2b8f90363ee657220e17 (diff) | |
download | hdf5-192c316dd5de41d9de2b8489406abe94bffccb7b.zip hdf5-192c316dd5de41d9de2b8489406abe94bffccb7b.tar.gz hdf5-192c316dd5de41d9de2b8489406abe94bffccb7b.tar.bz2 |
[svn-r8176] Purpose:
new feature, bug fix, changed function
Description:
1) implemented the option that says if the dataset is too small , do not compress it
2) bug fix in the SZIP checking . only apply szip to atomic datatypes
3) made the apply_filters function more compact
Solution:
Platforms tested:
linux
AIX
solaris
Misc. update:
Diffstat (limited to 'tools/h5repack/h5repack_copy.c')
-rw-r--r-- | tools/h5repack/h5repack_copy.c | 28 |
1 files changed, 6 insertions, 22 deletions
diff --git a/tools/h5repack/h5repack_copy.c b/tools/h5repack/h5repack_copy.c index f9859aa..5134891 100644 --- a/tools/h5repack/h5repack_copy.c +++ b/tools/h5repack/h5repack_copy.c @@ -268,34 +268,18 @@ int do_copy_objects(hid_t fidin, */ if (layout_this(dcpl_id,travt->objs[i].name,options,&obj)) { + obj.chunk.rank=rank; if (apply_layout(dcpl_id,&obj)<0) goto error; } + /*------------------------------------------------------------------------- - * apply the filter; check first if the object is to be filtered. + * apply the filter; check if the object is to be filtered. *------------------------------------------------------------------------- */ - if (filter_this(travt->objs[i].name,options,&obj)) - { - if (rank) - { - /* filters require CHUNK layout; if we do not have one define a default */ - if (obj.chunk.rank<=0) - { - obj.chunk.rank=rank; - for (j=0; j<rank; j++) - obj.chunk.chunk_lengths[j] = dims[j]; - } - if (apply_filters(dcpl_id,msize,options,&obj)<0) - goto error; - } - else - { - if (options->verbose) - printf("Warning: Filter could not be applied to <%s>\n", - travt->objs[i].name); - }/*rank*/ - }/*filter_this*/ + if (apply_filters(travt->objs[i].name,rank,dims,dcpl_id,mtype_id,options,&obj)<0) + goto error; + }/*nelmts*/ /*------------------------------------------------------------------------- |