develop - Javadoc warning fixes (#506)

* OESS-98 convert plugin option to FetchContent, add tests

* Fixes for pkcfg files because of plugin option

* OESS-98 fix tools test for plugins

* Keep doxygen comments under 100 chars long - format hint

* Whitespace

* HDFFV-11144 - Reclassify CMake messages

* HDFFV-11099/11100 added help text

* Reworked switch statement to compare string instead

* Fix typo

* Update CDash mode

* Correct name of threadsafe

* Correct option name

* Undo accidental commit

* Note LLVM 10 to 11 format default changes

* Update format plugin

* Undo clang-format version 11 changes

* One more correction

* Update supported platforms

* Revert whitespace changes

* Correct whitespace

* Changes from PR#3

* HDFFV-11213 added option to control gcc10 warnings diagnostics

* HDFFV-11212 Use the new references correctly in JNI utility and tests

* format source

* Fix typo

* Add new test file

* HDFFV-11212 - update test and remove unused arg

* Minor non-space formatting changes

* Use H5I_INVALID_ID instead of "-1"

* source formatting

* add missing testfile, update jni function

* Undo commit of debug code

* remove mislocated file

* Fix h5repack test for handling of fapls and id close

* Update h5diff test files usage text

* HDFFV-11212 add new ref tests for JNI export dataset

* src format update

* Remove blank line typo

* src format typo

* long double requires %Lg

* Another long double foramt specifer S.B. %Lg

* issue with t128bit test

* Windows issue with h5dump and type.

* Fix review issues

* refactor function nesting and fix error checks

* format fixes

* Remove untested functions and javadoc quiet comments

* Restore TRY block.

* Change string append errors to memory exception

* revert to H5_JNI_FATAL_ERROR - support functions need work

* Add assertion error for h5util functions

* remove duplicate function

* format fix

* Revert HD function error handling

* Update copyright comments

* GH #386 java folder copyright corrections

* Whitespace

* GH #359 implement and fix tools 1.6 API usage

* remove excessive comments

* Flip inits to correct ifdef section

* rework ifdef to be simpler

* format issue

* Reformat ifdef inits

* remove static attribute

* format compliance

* Update names

* Revert because logic relies on float not being int

* Changes noticed from creating merge of #412

* Double underscore change

* Correct compiler version variable used

* Remove header guard underscores

* Whitespace cleanup

* Split format source and commit changes on repo push

* remove pre-split setting

* Change windows TS to use older VS.

* correct window os name

* HDFFV-11212 JNI export util and Javadoc

* Suggested review changes

* Another change found

* Committing clang-format changes

* HDFFV-11113 long double in tools

* HDFFV-11113 add note

* Disable long double tests for now

* HDFFV-11228 remove arbitrary CMake warning groups.

* Make each flag a string

* Some Javadoc warning fixes

* Updated javadoc fixes

Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com>
This commit is contained in:
Allen Byrne 2021-03-24 17:02:46 -05:00 committed by GitHub
parent 3dbbd8aea1
commit d46fa9950c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
12 changed files with 386 additions and 54 deletions

View File

@ -30,7 +30,9 @@ import hdf.hdf5lib.HDF5Constants;
@SuppressWarnings("serial")
public class HDF5LibraryException extends HDF5Exception {
/** major error number of the first error on the HDF5 library error stack. */
private final long majorErrorNumber;
/** minor error number of the first error on the HDF5 library error stack. */
private final long minorErrorNumber;
/**

View File

@ -20,41 +20,270 @@ import java.io.Serializable;
*/
public class H5AC_cache_config_t implements Serializable{
private static final long serialVersionUID = -6748085696476149972L;
// general configuration fields:
// general configuration fields
/**
* version: Integer field containing the version number of this version
* of the H5AC_cache_config_t structure. Any instance of
* H5AC_cache_config_t passed to the cache must have a known
* version number, or an error will be flagged.
*/
public int version;
/**
* rpt_fcn_enabled: Boolean field used to enable and disable the default
* reporting function. This function is invoked every time the
* automatic cache resize code is run, and reports on its activities.
*
* This is a debugging function, and should normally be turned off.
*/
public boolean rpt_fcn_enabled;
/**
* open_trace_file: Boolean field indicating whether the trace_file_name
* field should be used to open a trace file for the cache.
*
* *** DEPRECATED *** Use H5Fstart/stop logging functions instead
*/
public boolean open_trace_file;
/**
* close_trace_file: Boolean field indicating whether the current trace
* file (if any) should be closed.
*
* *** DEPRECATED *** Use H5Fstart/stop logging functions instead
*/
public boolean close_trace_file;
/**
* trace_file_name: Full path of the trace file to be opened if the
* open_trace_file field is TRUE.
*
* *** DEPRECATED *** Use H5Fstart/stop logging functions instead
*/
public String trace_file_name;
/**
* evictions_enabled: Boolean field used to either report the current
* evictions enabled status of the cache, or to set the cache's
* evictions enabled status.
*/
public boolean evictions_enabled;
/**
* set_initial_size: Boolean flag indicating whether the size of the
* initial size of the cache is to be set to the value given in
* the initial_size field. If set_initial_size is FALSE, the
* initial_size field is ignored.
*/
public boolean set_initial_size;
/**
* initial_size: If enabled, this field contain the size the cache is
* to be set to upon receipt of this structure. Needless to say,
* initial_size must lie in the closed interval [min_size, max_size].
*/
public long initial_size;
/**
* min_clean_fraction: double in the range 0 to 1 indicating the fraction
* of the cache that is to be kept clean. This field is only used
* in parallel mode. Typical values are 0.1 to 0.5.
*/
public double min_clean_fraction;
/**
* max_size: Maximum size to which the cache can be adjusted. The
* supplied value must fall in the closed interval
* [MIN_MAX_CACHE_SIZE, MAX_MAX_CACHE_SIZE]. Also, max_size must
* be greater than or equal to min_size.
*/
public long max_size;
/**
* min_size: Minimum size to which the cache can be adjusted. The
* supplied value must fall in the closed interval
* [H5C__MIN_MAX_CACHE_SIZE, H5C__MAX_MAX_CACHE_SIZE]. Also, min_size
* must be less than or equal to max_size.
*/
public long min_size;
/**
* epoch_length: Number of accesses on the cache over which to collect
* hit rate stats before running the automatic cache resize code,
* if it is enabled.
*/
public long epoch_length;
// size increase control fields:
public int incr_mode; // H5C_cache_incr_mode
// size increase control fields
/**
* incr_mode: Instance of the H5C_cache_incr_mode enumerated type whose
* value indicates how we determine whether the cache size should be
* increased. At present there are two possible values.
*/
public int incr_mode;
/**
* lower_hr_threshold: Lower hit rate threshold. If the increment mode
* (incr_mode) is H5C_incr__threshold and the hit rate drops below the
* value supplied in this field in an epoch, increment the cache size by
* size_increment. Note that cache size may not be incremented above
* max_size, and that the increment may be further restricted by the
* max_increment field if it is enabled.
*/
public double lower_hr_threshold;
/**
* increment: Double containing the multiplier used to derive the new
* cache size from the old if a cache size increment is triggered.
* The increment must be greater than 1.0, and should not exceed 2.0.
*/
public double increment;
/**
* apply_max_increment: Boolean flag indicating whether the max_increment
* field should be used to limit the maximum cache size increment.
*/
public boolean apply_max_increment;
/**
* max_increment: If enabled by the apply_max_increment field described
* above, this field contains the maximum number of bytes by which the
* cache size can be increased in a single re-size.
*/
public long max_increment;
public int flash_incr_mode; // H5C_cache_flash_incr_mode
/**
* flash_incr_mode: Instance of the H5C_cache_flash_incr_mode enumerated
* type whose value indicates whether and by which algorithm we should
* make flash increases in the size of the cache to accommodate insertion
* of large entries and large increases in the size of a single entry.
*/
public int flash_incr_mode;
/**
* flash_multiple: Double containing the multiple described above in the
* H5C_flash_incr__add_space section of the discussion of the
* flash_incr_mode section. This field is ignored unless flash_incr_mode
* is H5C_flash_incr__add_space.
*/
public double flash_multiple;
/**
* flash_threshold: Double containing the factor by which current max cache
* size is multiplied to obtain the size threshold for the add_space flash
* increment algorithm. The field is ignored unless flash_incr_mode is
* H5C_flash_incr__add_space.
*/
public double flash_threshold;
// size decrease control fields:
public int decr_mode; // H5C_cache_decr_mode
// size decrease control fields
/**
* decr_mode: Instance of the H5C_cache_decr_mode enumerated type whose
* value indicates how we determine whether the cache size should be
* decreased. At present there are four possibilities.
*/
public int decr_mode;
/**
* upper_hr_threshold: Upper hit rate threshold. The use of this field
* varies according to the current decr_mode.
*/
public double upper_hr_threshold;
/**
* decrement: This field is only used when the decr_mode is
* H5C_decr__threshold.
*/
public double decrement;
/**
* apply_max_decrement: Boolean flag used to determine whether decrements
* in cache size are to be limited by the max_decrement field.
*/
public boolean apply_max_decrement;
/**
* max_decrement: Maximum number of bytes by which the cache size can be
* decreased in a single re-size. Note that decrements may also be
* restricted by the min_size of the cache, and (in age out modes) by
* the empty_reserve field.
*/
public long max_decrement;
/**
* epochs_before_eviction: Integer field used in H5C_decr__age_out and
* H5C_decr__age_out_with_threshold decrement modes.
*/
public int epochs_before_eviction;
/**
* apply_empty_reserve: Boolean field controlling whether the empty_reserve
* field is to be used in computing the new cache size when the
* decr_mode is H5C_decr__age_out or H5C_decr__age_out_with_threshold.
*/
public boolean apply_empty_reserve;
/**
* empty_reserve: To avoid a constant racheting down of cache size by small
* amounts in the H5C_decr__age_out and H5C_decr__age_out_with_threshold
* modes, this field allows one to require that any cache size
* reductions leave the specified fraction of unused space in the cache.
*/
public double empty_reserve;
// parallel configuration fields:
// parallel configuration fields
/**
* dirty_bytes_threshold: Threshold of dirty byte creation used to
* synchronize updates between caches.
*/
public long dirty_bytes_threshold;
/**
* metadata_write_strategy: Integer field containing a code indicating the
* desired metadata write strategy.
*/
public int metadata_write_strategy;
/** H5AC_cache_config_t is a public structure intended for use in public APIs.
* At least in its initial incarnation, it is basically a copy of struct
* H5C_auto_size_ctl_t, minus the report_fcn field, and plus the
* dirty_bytes_threshold field.
*
* @param version: Integer field containing the version number of this version
* @param rpt_fcn_enabled: Boolean field used to enable and disable the default reporting function.
* @param open_trace_file: Boolean field indicating whether the trace_file_name
* field should be used to open a trace file for the cache.
* @param close_trace_file: Boolean field indicating whether the current trace
* file (if any) should be closed.
* @param trace_file_name: Full path of the trace file to be opened if the
* open_trace_file field is TRUE.
* @param evictions_enabled: Boolean field used to either report or set the current
* evictions enabled status of the cache.
* @param set_initial_size: Boolean flag indicating whether the size of the
* initial size of the cache is to be set to the value given in
* the initial_size field.
* @param initial_size: If enabled, this field contain the size the cache is
* to be set to upon receipt of this structure.
* @param min_clean_fraction: double in the range 0 to 1 indicating the fraction
* of the cache that is to be kept clean.
* @param max_size: Maximum size to which the cache can be adjusted.
* @param min_size: Minimum size to which the cache can be adjusted.
* @param epoch_length: Number of accesses on the cache over which to collect
* hit rate stats before running the automatic cache resize code.
* @param incr_mode: Instance of the H5C_cache_incr_mode enumerated type.
* @param lower_hr_threshold: Lower hit rate threshold.
* @param increment: Double containing the multiplier used to derive the new
* cache size from the old if a cache size increment is triggered.
* @param apply_max_increment: Boolean flag indicating whether the max_increment
* field should be used to limit the maximum cache size increment.
* @param max_increment: If enabled by the apply_max_increment field described
* above, this field contains the maximum number of bytes by which the
* cache size can be increased in a single re-size.
* @param flash_incr_mode: Instance of the H5C_cache_flash_incr_mode enumerated
* type whose value indicates whether and by which algorithm we should
* make flash increases in the size of the cache to accommodate insertion
* of large entries and large increases in the size of a single entry.
* @param flash_multiple: Double containing the multiple described above in the
* H5C_flash_incr__add_space section of the discussion of the
* flash_incr_mode section.
* @param flash_threshold: Double containing the factor by which current max cache
* size is multiplied to obtain the size threshold for the add_space flash
* increment algorithm.
* @param decr_mode: Instance of the H5C_cache_decr_mode enumerated type whose
* value indicates how we determine whether the cache size should be
* decreased.
* @param upper_hr_threshold: Upper hit rate threshold. The use of this field
* varies according to the current decr_mode.
* @param decrement: This field is only used when the decr_mode is
* H5C_decr__threshold.
* @param apply_max_decrement: Boolean flag used to determine whether decrements
* in cache size are to be limited by the max_decrement field.
* @param max_decrement: Maximum number of bytes by which the cache size can be
* decreased in a single re-size.
* @param epochs_before_eviction: Integer field used in H5C_decr__age_out and
* H5C_decr__age_out_with_threshold decrement modes.
* @param apply_empty_reserve: Boolean field controlling whether the empty_reserve
* field is to be used in computing the new cache size when the
* decr_mode is H5C_decr__age_out or H5C_decr__age_out_with_threshold.
* @param empty_reserve: To avoid a constant racheting down of cache size by small
* amounts in the H5C_decr__age_out and H5C_decr__age_out_with_threshold
* modes.
* @param dirty_bytes_threshold: Threshold of dirty byte creation used to
* synchronize updates between caches.
* @param metadata_write_strategy: Integer field containing a code indicating the
* desired metadata write strategy.
*/
public H5AC_cache_config_t (int version, boolean rpt_fcn_enabled, boolean open_trace_file,
boolean close_trace_file, String trace_file_name, boolean evictions_enabled,
boolean set_initial_size, long initial_size, double min_clean_fraction, long max_size,

View File

@ -20,14 +20,20 @@ import java.io.Serializable;
*/
public class H5E_error2_t implements Serializable{
private static final long serialVersionUID = 279144359041667613L;
public long cls_id; //class ID
public long maj_num; //major error ID
public long min_num; //minor error number
public int line; //line in file where error occurs
public String func_name; //function in which error occurred
public String file_name; //file in which error occurred
public String desc; //optional supplied description
/** class ID */
public long cls_id;
/** major error ID */
public long maj_num;
/** minor error number */
public long min_num;
/** line in file where error occurs */
public int line;
/** function in which error occurred */
public String func_name;
/** file in which error occurred */
public String file_name;
/** optional supplied description */
public String desc;
H5E_error2_t(long cls_id, long maj_num, long min_num, int line, String func_name, String file_name, String desc) {
this.cls_id = cls_id;

View File

@ -26,15 +26,31 @@ import java.io.Serializable;
public class H5FD_hdfs_fapl_t implements Serializable {
private static final long serialVersionUID = 2072473407027648309L;
/** Version number of the H5FD_hdfs_fapl_t structure. */
private int version;
/** Name of "Name Node" to access as the HDFS server. */
private String namenode_name;
/** Port number to use to connect with Name Node. */
private int namenode_port;
/** Username to use when accessing file. */
private String user_name;
/** Path to the location of the Kerberos authentication cache. */
private String kerberos_ticket_cache;
/** Size (in bytes) of the file read stream buffer. */
private int stream_buffer_size;
/*
/**
* Create a fapl_t structure with the specified components.
* @param namenode_name
* Name of "Name Node" to access as the HDFS server.
* @param namenode_port
* Port number to use to connect with Name Node.
* @param user_name
* Username to use when accessing file.
* @param kerberos_ticket_cache
* Path to the location of the Kerberos authentication cache.
* @param stream_buffer_size
* Size (in bytes) of the file read stream buffer.
*/
public H5FD_hdfs_fapl_t(
String namenode_name,

View File

@ -46,10 +46,15 @@ import java.io.Serializable;
public class H5FD_ros3_fapl_t implements Serializable {
private static final long serialVersionUID = 8985533001471224030L;
/** Version number of the H5FD_ros3_fapl_t structure */
private int version;
/** Flag TRUE or FALSE whether or not requests are to be authenticated with the AWS4 algorithm. */
private boolean authenticate;
/** region "aws region" for authenticating request */
private String aws_region;
/** id "secret id" or "access id" for authenticating request */
private String secret_id;
/** key "secret key" or "access key" for authenticating request */
private String secret_key;
/**

View File

@ -20,16 +20,37 @@ import java.io.Serializable;
*/
public class H5F_info2_t implements Serializable{
private static final long serialVersionUID = 4691681162544054518L;
public int super_version; // Superblock version #
public long super_size; // Superblock size
public long super_ext_size; // Superblock extension size
public int free_version; // Version # of file free space management
public long free_meta_size; // Free space manager metadata size
public long free_tot_space; // Amount of free space in the file
public int sohm_version; // Version # of shared object header info
public long sohm_hdr_size; // Shared object header message header size
public H5_ih_info_t sohm_msgs_info; // Shared object header message index & heap size
/** Superblock version number */
public int super_version;
/** Superblock size */
public long super_size;
/** Superblock extension size */
public long super_ext_size;
/** Version number of file free space management */
public int free_version;
/** Free space manager metadata size */
public long free_meta_size;
/** Amount of free space in the file */
public long free_tot_space;
/** Version number of shared object header info */
public int sohm_version;
/** Shared object header message header size */
public long sohm_hdr_size;
/** Shared object header message index and heap size */
public H5_ih_info_t sohm_msgs_info;
/**
* Constructor fot current "global" information about file
* @param super_version: Superblock version number
* @param super_size: Superblock size
* @param super_ext_size: Superblock extension size
* @param free_version: Version number of file free space management
* @param free_meta_size: Free space manager metadata size
* @param free_tot_space: Amount of free space in the file
* @param sohm_version: Version number of shared object header info
* @param sohm_hdr_size: Shared object header message header size
* @param sohm_msgs_info: Shared object header message index and heap size
*/
public H5F_info2_t (int super_version, long super_size, long super_ext_size,
int free_version, long free_meta_size, long free_tot_space,
int sohm_version, long sohm_hdr_size, H5_ih_info_t sohm_msgs_info)

View File

@ -20,8 +20,12 @@ import java.io.Serializable;
*/
public class H5G_info_t implements Serializable{
private static final long serialVersionUID = -3746463015312132912L;
public int storage_type; // Type of storage for links in group
public long nlinks; // Number of links in group
public long max_corder; // Current max. creation order value for group
public boolean mounted; // Whether group has a file mounted on it
/** Type of storage for links in group */
public int storage_type;
/** Number of links in group */
public long nlinks;
/** Current max. creation order value for group */
public long max_corder;
/** Whether group has a file mounted on it */
public boolean mounted;
}

View File

@ -22,14 +22,20 @@ import hdf.hdf5lib.HDF5Constants;
*/
public class H5L_info_t implements Serializable {
private static final long serialVersionUID = -4754320605310155033L;
/** Type of link */
public int type;
/** Indicate if creation order is valid */
public boolean corder_valid;
/** Creation order */
public long corder;
/** Character set of link name */
public int cset;
/** Character set of link name */
public H5O_token_t token;
/** Size of a soft link or user-defined link value */
public long val_size;
// Constructor for using object token portion of C union
/** Constructor for using object token portion of C union */
H5L_info_t (int type, boolean corder_valid, long corder,
int cset, H5O_token_t token)
{
@ -41,7 +47,7 @@ public class H5L_info_t implements Serializable {
this.val_size = -1;
}
// Constructor for using val_size portion of C union
/** Constructor for using val_size portion of C union */
H5L_info_t (int type, boolean corder_valid, long corder,
int cset, long val_size)
{

View File

@ -20,16 +20,26 @@ import java.io.Serializable;
*/
public class H5O_hdr_info_t implements Serializable {
private static final long serialVersionUID = 7883826382952577189L;
public int version; /* Version number of header format in file */
public int nmesgs; /* Number of object header messages */
public int nchunks; /* Number of object header chunks */
public int flags; /* Object header status flags */
public long space_total; /* Total space for storing object header in file */
public long space_meta; /* Space within header for object header metadata information */
public long space_mesg; /* Space within header for actual message information */
public long space_free; /* Free space within object header */
public long mesg_present; /* Flags to indicate presence of message type in header */
public long mesg_shared; /* Flags to indicate message type is shared in header */
/** Version number of header format in file */
public int version;
/** Number of object header messages */
public int nmesgs;
/** Number of object header chunks */
public int nchunks;
/** Object header status flags */
public int flags;
/** Total space for storing object header in file */
public long space_total;
/** Space within header for object header metadata information */
public long space_meta;
/** Space within header for actual message information */
public long space_mesg;
/** Free space within object header */
public long space_free;
/** Flags to indicate presence of message type in header */
public long mesg_present;
/** Flags to indicate message type is shared in header */
public long mesg_shared;
H5O_hdr_info_t (int version, int nmesgs, int nchunks, int flags,
long space_total, long space_meta, long space_mesg, long space_free,

View File

@ -20,16 +20,37 @@ import java.io.Serializable;
*/
public class H5O_info_t implements Serializable {
private static final long serialVersionUID = 4691681163544054518L;
public long fileno; /* File number that object is located in */
public H5O_token_t token; /* Object token in file */
public int type; /* Basic object type (group, dataset, etc.) */
public int rc; /* Reference count of object */
public long atime; /* Access time */
public long mtime; /* Modification time */
public long ctime; /* Change time */
public long btime; /* Birth time */
public long num_attrs; /* # of attributes attached to object */
/** File number that object is located in */
public long fileno;
/** Object token in file */
public H5O_token_t token;
/** Basic object type (group, dataset, etc.) */
public int type;
/** Reference count of object */
public int rc;
/** Access time */
public long atime;
/** Modification time */
public long mtime;
/** Change time */
public long ctime;
/** Birth time */
public long btime;
/** Number of attributes attached to object */
public long num_attrs;
/** Constructor for data model information struct for objects
*
* @param fileno: File number that object is located in
* @param token: Object token in file
* @param type: Basic object type
* @param rc: Reference count of object
* @param atime: Access time
* @param mtime: Modification time
* @param ctime: Change time
* @param btime: Birth time
* @param num_attrs: Number of attributes attached to object
*/
public H5O_info_t (long fileno, H5O_token_t token, int type,
int rc, long atime, long mtime, long ctime, long btime, long num_attrs)
{

View File

@ -20,12 +20,14 @@ import java.io.Serializable;
*/
public class H5O_native_info_t implements Serializable {
private static final long serialVersionUID = 7883826382952577189L;
public H5O_hdr_info_t hdr_info; /* Object header information */
/** Object header information */
public H5O_hdr_info_t hdr_info;
/* Extra metadata storage for obj & attributes */
public H5_ih_info_t obj_info; /* v1/v2 B-tree & local/fractal heap for groups, B-tree for chunked datasets */
public H5_ih_info_t attr_info; /* v2 B-tree & heap for attributes */
/** v1/v2 B-tree and local/fractal heap for groups, B-tree for chunked datasets */
public H5_ih_info_t obj_info;
/** v2 B-tree and heap for attributes */
public H5_ih_info_t attr_info;
H5O_native_info_t (H5O_hdr_info_t oheader_info, H5_ih_info_t obj_info, H5_ih_info_t attr_info)
{

View File

@ -23,12 +23,22 @@ import hdf.hdf5lib.HDF5Constants;
*/
public class H5O_token_t implements Serializable {
private static final long serialVersionUID = -4754320605310155032L;
/**
* Tokens are unique and permanent identifiers that are
* used to reference HDF5 objects in a container.
* Use basic byte array to store the dat
*/
public byte[] data;
H5O_token_t (byte[] data) {
this.data = data;
}
/**
* Check if token data is undefined
*
* @return true if token data is undefined
*/
public boolean isUndefined() {
return this.equals(HDF5Constants.H5O_TOKEN_UNDEF);
}