/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * Copyright by The HDF Group.                                               *
 * All rights reserved.                                                      *
 *                                                                           *
 * This file is part of HDF5.  The full HDF5 copyright notice, including     *
 * terms governing use, modification, and redistribution, is contained in    *
 * the LICENSE file, which can be found at the root of the source code       *
 * distribution tree, or in https://www.hdfgroup.org/licenses.               *
 * If you do not have access to either file, you may request a copy from     *
 * help@hdfgroup.org.                                                        *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

#ifndef H5version_H
#define H5version_H

#if defined(H5_USE_16_API_DEFAULT) && !defined(H5_USE_16_API)
  #define H5_USE_16_API 1
#endif 

#if defined(H5_USE_18_API_DEFAULT) && !defined(H5_USE_18_API)
  #define H5_USE_18_API 1
#endif 

#if defined(H5_USE_110_API_DEFAULT) && !defined(H5_USE_110_API)
  #define H5_USE_110_API 1
#endif 

#if defined(H5_USE_112_API_DEFAULT) && !defined(H5_USE_112_API)
  #define H5_USE_112_API 1
#endif 

#if defined(H5_USE_114_API_DEFAULT) && !defined(H5_USE_114_API)
  #define H5_USE_114_API 1
#endif 

#if defined(H5_USE_200_API_DEFAULT) && !defined(H5_USE_200_API)
  #define H5_USE_200_API 1
#endif 

#if (defined(H5_USE_16_API) || defined(H5_USE_18_API) || defined(H5_USE_110_API) || defined(H5_USE_112_API) || defined(H5_USE_114_API)) && defined(H5_NO_DEPRECATED_SYMBOLS)
  #error "Can't choose old API versions when deprecated APIs are disabled"
#endif 

#ifdef H5_USE_16_API

#if !defined(H5Acreate_vers)
  #define H5Acreate_vers 1
#endif 

#if !defined(H5Aiterate_vers)
  #define H5Aiterate_vers 1
#endif 

#if !defined(H5Dcreate_vers)
  #define H5Dcreate_vers 1
#endif 

#if !defined(H5Dopen_vers)
  #define H5Dopen_vers 1
#endif 

#if !defined(H5Eclear_vers)
  #define H5Eclear_vers 1
#endif 

#if !defined(H5Eget_auto_vers)
  #define H5Eget_auto_vers 1
#endif 

#if !defined(H5Eprint_vers)
  #define H5Eprint_vers 1
#endif 

#if !defined(H5Epush_vers)
  #define H5Epush_vers 1
#endif 

#if !defined(H5Eset_auto_vers)
  #define H5Eset_auto_vers 1
#endif 

#if !defined(H5Ewalk_vers)
  #define H5Ewalk_vers 1
#endif 

#if !defined(H5Gcreate_vers)
  #define H5Gcreate_vers 1
#endif 

#if !defined(H5Gopen_vers)
  #define H5Gopen_vers 1
#endif 

#if !defined(H5Pget_filter_vers)
  #define H5Pget_filter_vers 1
#endif 

#if !defined(H5Pget_filter_by_id_vers)
  #define H5Pget_filter_by_id_vers 1
#endif 

#if !defined(H5Pinsert_vers)
  #define H5Pinsert_vers 1
#endif 

#if !defined(H5Pregister_vers)
  #define H5Pregister_vers 1
#endif 

#if !defined(H5Rdereference_vers)
  #define H5Rdereference_vers 1
#endif 

#if !defined(H5Rget_obj_type_vers)
  #define H5Rget_obj_type_vers 1
#endif 

#if !defined(H5Tarray_create_vers)
  #define H5Tarray_create_vers 1
#endif 

#if !defined(H5Tcommit_vers)
  #define H5Tcommit_vers 1
#endif 

#if !defined(H5Tget_array_dims_vers)
  #define H5Tget_array_dims_vers 1
#endif 

#if !defined(H5Topen_vers)
  #define H5Topen_vers 1
#endif 

#if !defined(H5E_auto_t_vers)
  #define H5E_auto_t_vers 1
#endif 

#if !defined(H5Z_class_t_vers)
  #define H5Z_class_t_vers 1
#endif 

#endif 

#ifdef H5_USE_18_API

#if !defined(H5Acreate_vers)
  #define H5Acreate_vers 2
#endif 

#if !defined(H5Aiterate_vers)
  #define H5Aiterate_vers 2
#endif 

#if !defined(H5Dcreate_vers)
  #define H5Dcreate_vers 2
#endif 

#if !defined(H5Dopen_vers)
  #define H5Dopen_vers 2
#endif 

#if !defined(H5Eclear_vers)
  #define H5Eclear_vers 2
#endif 

#if !defined(H5Eget_auto_vers)
  #define H5Eget_auto_vers 2
#endif 

#if !defined(H5Eprint_vers)
  #define H5Eprint_vers 2
#endif 

#if !defined(H5Epush_vers)
  #define H5Epush_vers 2
#endif 

#if !defined(H5Eset_auto_vers)
  #define H5Eset_auto_vers 2
#endif 

#if !defined(H5Ewalk_vers)
  #define H5Ewalk_vers 2
#endif 

#if !defined(H5Fget_info_vers)
  #define H5Fget_info_vers 1
#endif 

#if !defined(H5Gcreate_vers)
  #define H5Gcreate_vers 2
#endif 

#if !defined(H5Gopen_vers)
  #define H5Gopen_vers 2
#endif 

#if !defined(H5Iregister_type_vers)
  #define H5Iregister_type_vers 1
#endif 

#if !defined(H5Lget_info_vers)
  #define H5Lget_info_vers 1
#endif 

#if !defined(H5Lget_info_by_idx_vers)
  #define H5Lget_info_by_idx_vers 1
#endif 

#if !defined(H5Literate_vers)
  #define H5Literate_vers 1
#endif 

#if !defined(H5Literate_by_name_vers)
  #define H5Literate_by_name_vers 1
#endif 

#if !defined(H5Lvisit_vers)
  #define H5Lvisit_vers 1
#endif 

#if !defined(H5Lvisit_by_name_vers)
  #define H5Lvisit_by_name_vers 1
#endif 

#if !defined(H5Oget_info_vers)
  #define H5Oget_info_vers 1
#endif 

#if !defined(H5Oget_info_by_idx_vers)
  #define H5Oget_info_by_idx_vers 1
#endif 

#if !defined(H5Oget_info_by_name_vers)
  #define H5Oget_info_by_name_vers 1
#endif 

#if !defined(H5Ovisit_vers)
  #define H5Ovisit_vers 1
#endif 

#if !defined(H5Ovisit_by_name_vers)
  #define H5Ovisit_by_name_vers 1
#endif 

#if !defined(H5Pget_filter_vers)
  #define H5Pget_filter_vers 2
#endif 

#if !defined(H5Pget_filter_by_id_vers)
  #define H5Pget_filter_by_id_vers 2
#endif 

#if !defined(H5Pinsert_vers)
  #define H5Pinsert_vers 2
#endif 

#if !defined(H5Pregister_vers)
  #define H5Pregister_vers 2
#endif 

#if !defined(H5Rdereference_vers)
  #define H5Rdereference_vers 1
#endif 

#if !defined(H5Rget_obj_type_vers)
  #define H5Rget_obj_type_vers 2
#endif 

#if !defined(H5Sencode_vers)
  #define H5Sencode_vers 1
#endif 

#if !defined(H5Tarray_create_vers)
  #define H5Tarray_create_vers 2
#endif 

#if !defined(H5Tcommit_vers)
  #define H5Tcommit_vers 2
#endif 

#if !defined(H5Tdecode_vers)
  #define H5Tdecode_vers 1
#endif 

#if !defined(H5Tget_array_dims_vers)
  #define H5Tget_array_dims_vers 2
#endif 

#if !defined(H5Topen_vers)
  #define H5Topen_vers 2
#endif 

#if !defined(H5E_auto_t_vers)
  #define H5E_auto_t_vers 2
#endif 

#if !defined(H5O_info_t_vers)
  #define H5O_info_t_vers 1
#endif 

#if !defined(H5O_iterate_t_vers)
  #define H5O_iterate_t_vers 1
#endif 

#if !defined(H5Z_class_t_vers)
  #define H5Z_class_t_vers 2
#endif 

#endif 

#ifdef H5_USE_110_API

#if !defined(H5Acreate_vers)
  #define H5Acreate_vers 2
#endif 

#if !defined(H5Aiterate_vers)
  #define H5Aiterate_vers 2
#endif 

#if !defined(H5Dcreate_vers)
  #define H5Dcreate_vers 2
#endif 

#if !defined(H5Dopen_vers)
  #define H5Dopen_vers 2
#endif 

#if !defined(H5Dread_chunk_vers)
  #define H5Dread_chunk_vers 1
#endif 

#if !defined(H5Eclear_vers)
  #define H5Eclear_vers 2
#endif 

#if !defined(H5Eget_auto_vers)
  #define H5Eget_auto_vers 2
#endif 

#if !defined(H5Eprint_vers)
  #define H5Eprint_vers 2
#endif 

#if !defined(H5Epush_vers)
  #define H5Epush_vers 2
#endif 

#if !defined(H5Eset_auto_vers)
  #define H5Eset_auto_vers 2
#endif 

#if !defined(H5Ewalk_vers)
  #define H5Ewalk_vers 2
#endif 

#if !defined(H5Fget_info_vers)
  #define H5Fget_info_vers 2
#endif 

#if !defined(H5Gcreate_vers)
  #define H5Gcreate_vers 2
#endif 

#if !defined(H5Gopen_vers)
  #define H5Gopen_vers 2
#endif 

#if !defined(H5Iregister_type_vers)
  #define H5Iregister_type_vers 1
#endif 

#if !defined(H5Lget_info_vers)
  #define H5Lget_info_vers 1
#endif 

#if !defined(H5Lget_info_by_idx_vers)
  #define H5Lget_info_by_idx_vers 1
#endif 

#if !defined(H5Literate_vers)
  #define H5Literate_vers 1
#endif 

#if !defined(H5Literate_by_name_vers)
  #define H5Literate_by_name_vers 1
#endif 

#if !defined(H5Lvisit_vers)
  #define H5Lvisit_vers 1
#endif 

#if !defined(H5Lvisit_by_name_vers)
  #define H5Lvisit_by_name_vers 1
#endif 

#if !defined(H5Oget_info_vers)
  #define H5Oget_info_vers 1
#endif 

#if !defined(H5Oget_info_by_idx_vers)
  #define H5Oget_info_by_idx_vers 1
#endif 

#if !defined(H5Oget_info_by_name_vers)
  #define H5Oget_info_by_name_vers 1
#endif 

#if !defined(H5Ovisit_vers)
  #define H5Ovisit_vers 1
#endif 

#if !defined(H5Ovisit_by_name_vers)
  #define H5Ovisit_by_name_vers 1
#endif 

#if !defined(H5Pencode_vers)
  #define H5Pencode_vers 1
#endif 

#if !defined(H5Pget_filter_vers)
  #define H5Pget_filter_vers 2
#endif 

#if !defined(H5Pget_filter_by_id_vers)
  #define H5Pget_filter_by_id_vers 2
#endif 

#if !defined(H5Pinsert_vers)
  #define H5Pinsert_vers 2
#endif 

#if !defined(H5Pregister_vers)
  #define H5Pregister_vers 2
#endif 

#if !defined(H5Rdereference_vers)
  #define H5Rdereference_vers 2
#endif 

#if !defined(H5Rget_obj_type_vers)
  #define H5Rget_obj_type_vers 2
#endif 

#if !defined(H5Sencode_vers)
  #define H5Sencode_vers 1
#endif 

#if !defined(H5Tarray_create_vers)
  #define H5Tarray_create_vers 2
#endif 

#if !defined(H5Tcommit_vers)
  #define H5Tcommit_vers 2
#endif 

#if !defined(H5Tdecode_vers)
  #define H5Tdecode_vers 1
#endif 

#if !defined(H5Tget_array_dims_vers)
  #define H5Tget_array_dims_vers 2
#endif 

#if !defined(H5Topen_vers)
  #define H5Topen_vers 2
#endif 

#if !defined(H5E_auto_t_vers)
  #define H5E_auto_t_vers 2
#endif 

#if !defined(H5O_info_t_vers)
  #define H5O_info_t_vers 1
#endif 

#if !defined(H5O_iterate_t_vers)
  #define H5O_iterate_t_vers 1
#endif 

#if !defined(H5Z_class_t_vers)
  #define H5Z_class_t_vers 2
#endif 

#endif 

#ifdef H5_USE_112_API

#if !defined(H5Acreate_vers)
  #define H5Acreate_vers 2
#endif 

#if !defined(H5Aiterate_vers)
  #define H5Aiterate_vers 2
#endif 

#if !defined(H5Dcreate_vers)
  #define H5Dcreate_vers 2
#endif 

#if !defined(H5Dopen_vers)
  #define H5Dopen_vers 2
#endif 

#if !defined(H5Dread_chunk_vers)
  #define H5Dread_chunk_vers 1
#endif 

#if !defined(H5Eclear_vers)
  #define H5Eclear_vers 2
#endif 

#if !defined(H5Eget_auto_vers)
  #define H5Eget_auto_vers 2
#endif 

#if !defined(H5Eprint_vers)
  #define H5Eprint_vers 2
#endif 

#if !defined(H5Epush_vers)
  #define H5Epush_vers 2
#endif 

#if !defined(H5Eset_auto_vers)
  #define H5Eset_auto_vers 2
#endif 

#if !defined(H5Ewalk_vers)
  #define H5Ewalk_vers 2
#endif 

#if !defined(H5Fget_info_vers)
  #define H5Fget_info_vers 2
#endif 

#if !defined(H5Gcreate_vers)
  #define H5Gcreate_vers 2
#endif 

#if !defined(H5Gopen_vers)
  #define H5Gopen_vers 2
#endif 

#if !defined(H5Iregister_type_vers)
  #define H5Iregister_type_vers 1
#endif 

#if !defined(H5Lget_info_vers)
  #define H5Lget_info_vers 2
#endif 

#if !defined(H5Lget_info_by_idx_vers)
  #define H5Lget_info_by_idx_vers 2
#endif 

#if !defined(H5Literate_vers)
  #define H5Literate_vers 2
#endif 

#if !defined(H5Literate_by_name_vers)
  #define H5Literate_by_name_vers 2
#endif 

#if !defined(H5Lvisit_vers)
  #define H5Lvisit_vers 2
#endif 

#if !defined(H5Lvisit_by_name_vers)
  #define H5Lvisit_by_name_vers 2
#endif 

#if !defined(H5Oget_info_vers)
  #define H5Oget_info_vers 3
#endif 

#if !defined(H5Oget_info_by_idx_vers)
  #define H5Oget_info_by_idx_vers 3
#endif 

#if !defined(H5Oget_info_by_name_vers)
  #define H5Oget_info_by_name_vers 3
#endif 

#if !defined(H5Ovisit_vers)
  #define H5Ovisit_vers 3
#endif 

#if !defined(H5Ovisit_by_name_vers)
  #define H5Ovisit_by_name_vers 3
#endif 

#if !defined(H5Pencode_vers)
  #define H5Pencode_vers 2
#endif 

#if !defined(H5Pget_filter_vers)
  #define H5Pget_filter_vers 2
#endif 

#if !defined(H5Pget_filter_by_id_vers)
  #define H5Pget_filter_by_id_vers 2
#endif 

#if !defined(H5Pinsert_vers)
  #define H5Pinsert_vers 2
#endif 

#if !defined(H5Pregister_vers)
  #define H5Pregister_vers 2
#endif 

#if !defined(H5Rdereference_vers)
  #define H5Rdereference_vers 2
#endif 

#if !defined(H5Rget_obj_type_vers)
  #define H5Rget_obj_type_vers 2
#endif 

#if !defined(H5Sencode_vers)
  #define H5Sencode_vers 2
#endif 

#if !defined(H5Tarray_create_vers)
  #define H5Tarray_create_vers 2
#endif 

#if !defined(H5Tcommit_vers)
  #define H5Tcommit_vers 2
#endif 

#if !defined(H5Tdecode_vers)
  #define H5Tdecode_vers 1
#endif 

#if !defined(H5Tget_array_dims_vers)
  #define H5Tget_array_dims_vers 2
#endif 

#if !defined(H5Topen_vers)
  #define H5Topen_vers 2
#endif 

#if !defined(H5E_auto_t_vers)
  #define H5E_auto_t_vers 2
#endif 

#if !defined(H5O_info_t_vers)
  #define H5O_info_t_vers 2
#endif 

#if !defined(H5O_iterate_t_vers)
  #define H5O_iterate_t_vers 2
#endif 

#if !defined(H5Z_class_t_vers)
  #define H5Z_class_t_vers 2
#endif 

#endif 

#ifdef H5_USE_114_API

#if !defined(H5Acreate_vers)
  #define H5Acreate_vers 2
#endif 

#if !defined(H5Aiterate_vers)
  #define H5Aiterate_vers 2
#endif 

#if !defined(H5Dcreate_vers)
  #define H5Dcreate_vers 2
#endif 

#if !defined(H5Dopen_vers)
  #define H5Dopen_vers 2
#endif 

#if !defined(H5Dread_chunk_vers)
  #define H5Dread_chunk_vers 1
#endif 

#if !defined(H5Eclear_vers)
  #define H5Eclear_vers 2
#endif 

#if !defined(H5Eget_auto_vers)
  #define H5Eget_auto_vers 2
#endif 

#if !defined(H5Eprint_vers)
  #define H5Eprint_vers 2
#endif 

#if !defined(H5Epush_vers)
  #define H5Epush_vers 2
#endif 

#if !defined(H5Eset_auto_vers)
  #define H5Eset_auto_vers 2
#endif 

#if !defined(H5Ewalk_vers)
  #define H5Ewalk_vers 2
#endif 

#if !defined(H5Fget_info_vers)
  #define H5Fget_info_vers 2
#endif 

#if !defined(H5Gcreate_vers)
  #define H5Gcreate_vers 2
#endif 

#if !defined(H5Gopen_vers)
  #define H5Gopen_vers 2
#endif 

#if !defined(H5Iregister_type_vers)
  #define H5Iregister_type_vers 1
#endif 

#if !defined(H5Lget_info_vers)
  #define H5Lget_info_vers 2
#endif 

#if !defined(H5Lget_info_by_idx_vers)
  #define H5Lget_info_by_idx_vers 2
#endif 

#if !defined(H5Literate_vers)
  #define H5Literate_vers 2
#endif 

#if !defined(H5Literate_by_name_vers)
  #define H5Literate_by_name_vers 2
#endif 

#if !defined(H5Lvisit_vers)
  #define H5Lvisit_vers 2
#endif 

#if !defined(H5Lvisit_by_name_vers)
  #define H5Lvisit_by_name_vers 2
#endif 

#if !defined(H5Oget_info_vers)
  #define H5Oget_info_vers 3
#endif 

#if !defined(H5Oget_info_by_idx_vers)
  #define H5Oget_info_by_idx_vers 3
#endif 

#if !defined(H5Oget_info_by_name_vers)
  #define H5Oget_info_by_name_vers 3
#endif 

#if !defined(H5Ovisit_vers)
  #define H5Ovisit_vers 3
#endif 

#if !defined(H5Ovisit_by_name_vers)
  #define H5Ovisit_by_name_vers 3
#endif 

#if !defined(H5Pencode_vers)
  #define H5Pencode_vers 2
#endif 

#if !defined(H5Pget_filter_vers)
  #define H5Pget_filter_vers 2
#endif 

#if !defined(H5Pget_filter_by_id_vers)
  #define H5Pget_filter_by_id_vers 2
#endif 

#if !defined(H5Pinsert_vers)
  #define H5Pinsert_vers 2
#endif 

#if !defined(H5Pregister_vers)
  #define H5Pregister_vers 2
#endif 

#if !defined(H5Rdereference_vers)
  #define H5Rdereference_vers 2
#endif 

#if !defined(H5Rget_obj_type_vers)
  #define H5Rget_obj_type_vers 2
#endif 

#if !defined(H5Sencode_vers)
  #define H5Sencode_vers 2
#endif 

#if !defined(H5Tarray_create_vers)
  #define H5Tarray_create_vers 2
#endif 

#if !defined(H5Tcommit_vers)
  #define H5Tcommit_vers 2
#endif 

#if !defined(H5Tdecode_vers)
  #define H5Tdecode_vers 1
#endif 

#if !defined(H5Tget_array_dims_vers)
  #define H5Tget_array_dims_vers 2
#endif 

#if !defined(H5Topen_vers)
  #define H5Topen_vers 2
#endif 

#if !defined(H5E_auto_t_vers)
  #define H5E_auto_t_vers 2
#endif 

#if !defined(H5O_info_t_vers)
  #define H5O_info_t_vers 2
#endif 

#if !defined(H5O_iterate_t_vers)
  #define H5O_iterate_t_vers 2
#endif 

#if !defined(H5Z_class_t_vers)
  #define H5Z_class_t_vers 2
#endif 

#endif 

#ifdef H5_USE_200_API

#if !defined(H5Acreate_vers)
  #define H5Acreate_vers 2
#endif 

#if !defined(H5Aiterate_vers)
  #define H5Aiterate_vers 2
#endif 

#if !defined(H5Dcreate_vers)
  #define H5Dcreate_vers 2
#endif 

#if !defined(H5Dopen_vers)
  #define H5Dopen_vers 2
#endif 

#if !defined(H5Dread_chunk_vers)
  #define H5Dread_chunk_vers 2
#endif 

#if !defined(H5Eclear_vers)
  #define H5Eclear_vers 2
#endif 

#if !defined(H5Eget_auto_vers)
  #define H5Eget_auto_vers 2
#endif 

#if !defined(H5Eprint_vers)
  #define H5Eprint_vers 2
#endif 

#if !defined(H5Epush_vers)
  #define H5Epush_vers 2
#endif 

#if !defined(H5Eset_auto_vers)
  #define H5Eset_auto_vers 2
#endif 

#if !defined(H5Ewalk_vers)
  #define H5Ewalk_vers 2
#endif 

#if !defined(H5Fget_info_vers)
  #define H5Fget_info_vers 2
#endif 

#if !defined(H5Gcreate_vers)
  #define H5Gcreate_vers 2
#endif 

#if !defined(H5Gopen_vers)
  #define H5Gopen_vers 2
#endif 

#if !defined(H5Iregister_type_vers)
  #define H5Iregister_type_vers 2
#endif 

#if !defined(H5Lget_info_vers)
  #define H5Lget_info_vers 2
#endif 

#if !defined(H5Lget_info_by_idx_vers)
  #define H5Lget_info_by_idx_vers 2
#endif 

#if !defined(H5Literate_vers)
  #define H5Literate_vers 2
#endif 

#if !defined(H5Literate_by_name_vers)
  #define H5Literate_by_name_vers 2
#endif 

#if !defined(H5Lvisit_vers)
  #define H5Lvisit_vers 2
#endif 

#if !defined(H5Lvisit_by_name_vers)
  #define H5Lvisit_by_name_vers 2
#endif 

#if !defined(H5Oget_info_vers)
  #define H5Oget_info_vers 3
#endif 

#if !defined(H5Oget_info_by_idx_vers)
  #define H5Oget_info_by_idx_vers 3
#endif 

#if !defined(H5Oget_info_by_name_vers)
  #define H5Oget_info_by_name_vers 3
#endif 

#if !defined(H5Ovisit_vers)
  #define H5Ovisit_vers 3
#endif 

#if !defined(H5Ovisit_by_name_vers)
  #define H5Ovisit_by_name_vers 3
#endif 

#if !defined(H5Pencode_vers)
  #define H5Pencode_vers 2
#endif 

#if !defined(H5Pget_filter_vers)
  #define H5Pget_filter_vers 2
#endif 

#if !defined(H5Pget_filter_by_id_vers)
  #define H5Pget_filter_by_id_vers 2
#endif 

#if !defined(H5Pinsert_vers)
  #define H5Pinsert_vers 2
#endif 

#if !defined(H5Pregister_vers)
  #define H5Pregister_vers 2
#endif 

#if !defined(H5Rdereference_vers)
  #define H5Rdereference_vers 2
#endif 

#if !defined(H5Rget_obj_type_vers)
  #define H5Rget_obj_type_vers 2
#endif 

#if !defined(H5Sencode_vers)
  #define H5Sencode_vers 2
#endif 

#if !defined(H5Tarray_create_vers)
  #define H5Tarray_create_vers 2
#endif 

#if !defined(H5Tcommit_vers)
  #define H5Tcommit_vers 2
#endif 

#if !defined(H5Tdecode_vers)
  #define H5Tdecode_vers 2
#endif 

#if !defined(H5Tget_array_dims_vers)
  #define H5Tget_array_dims_vers 2
#endif 

#if !defined(H5Topen_vers)
  #define H5Topen_vers 2
#endif 

#if !defined(H5E_auto_t_vers)
  #define H5E_auto_t_vers 2
#endif 

#if !defined(H5O_info_t_vers)
  #define H5O_info_t_vers 2
#endif 

#if !defined(H5O_iterate_t_vers)
  #define H5O_iterate_t_vers 2
#endif 

#if !defined(H5Z_class_t_vers)
  #define H5Z_class_t_vers 2
#endif 

#endif 

#if !defined(H5Acreate_vers) || H5Acreate_vers == 2
  #ifndef H5Acreate_vers
    #define H5Acreate_vers 2
  #endif 
  #define H5Acreate H5Acreate2
#elif H5Acreate_vers == 1
  #define H5Acreate H5Acreate1
#else 
  #error "H5Acreate_vers set to invalid value"
#endif 

#if !defined(H5Aiterate_vers) || H5Aiterate_vers == 2
  #ifndef H5Aiterate_vers
    #define H5Aiterate_vers 2
  #endif 
  #define H5Aiterate H5Aiterate2
  #define H5A_operator_t H5A_operator2_t
#elif H5Aiterate_vers == 1
  #define H5Aiterate H5Aiterate1
  #define H5A_operator_t H5A_operator1_t
#else 
  #error "H5Aiterate_vers set to invalid value"
#endif 

#if !defined(H5Dcreate_vers) || H5Dcreate_vers == 2
  #ifndef H5Dcreate_vers
    #define H5Dcreate_vers 2
  #endif 
  #define H5Dcreate H5Dcreate2
#elif H5Dcreate_vers == 1
  #define H5Dcreate H5Dcreate1
#else 
  #error "H5Dcreate_vers set to invalid value"
#endif 

#if !defined(H5Dopen_vers) || H5Dopen_vers == 2
  #ifndef H5Dopen_vers
    #define H5Dopen_vers 2
  #endif 
  #define H5Dopen H5Dopen2
#elif H5Dopen_vers == 1
  #define H5Dopen H5Dopen1
#else 
  #error "H5Dopen_vers set to invalid value"
#endif 

#if !defined(H5Dread_chunk_vers) || H5Dread_chunk_vers == 2
  #ifndef H5Dread_chunk_vers
    #define H5Dread_chunk_vers 2
  #endif 
  #define H5Dread_chunk H5Dread_chunk2
#elif H5Dread_chunk_vers == 1
  #define H5Dread_chunk H5Dread_chunk1
#else 
  #error "H5Dread_chunk_vers set to invalid value"
#endif 

#if !defined(H5Eclear_vers) || H5Eclear_vers == 2
  #ifndef H5Eclear_vers
    #define H5Eclear_vers 2
  #endif 
  #define H5Eclear H5Eclear2
#elif H5Eclear_vers == 1
  #define H5Eclear H5Eclear1
#else 
  #error "H5Eclear_vers set to invalid value"
#endif 

#if !defined(H5Eget_auto_vers) || H5Eget_auto_vers == 2
  #ifndef H5Eget_auto_vers
    #define H5Eget_auto_vers 2
  #endif 
  #define H5Eget_auto H5Eget_auto2
#elif H5Eget_auto_vers == 1
  #define H5Eget_auto H5Eget_auto1
#else 
  #error "H5Eget_auto_vers set to invalid value"
#endif 

#if !defined(H5Eprint_vers) || H5Eprint_vers == 2
  #ifndef H5Eprint_vers
    #define H5Eprint_vers 2
  #endif 
  #define H5Eprint H5Eprint2
#elif H5Eprint_vers == 1
  #define H5Eprint H5Eprint1
#else 
  #error "H5Eprint_vers set to invalid value"
#endif 

#if !defined(H5Epush_vers) || H5Epush_vers == 2
  #ifndef H5Epush_vers
    #define H5Epush_vers 2
  #endif 
  #define H5Epush H5Epush2
#elif H5Epush_vers == 1
  #define H5Epush H5Epush1
#else 
  #error "H5Epush_vers set to invalid value"
#endif 

#if !defined(H5Eset_auto_vers) || H5Eset_auto_vers == 2
  #ifndef H5Eset_auto_vers
    #define H5Eset_auto_vers 2
  #endif 
  #define H5Eset_auto H5Eset_auto2
#elif H5Eset_auto_vers == 1
  #define H5Eset_auto H5Eset_auto1
#else 
  #error "H5Eset_auto_vers set to invalid value"
#endif 

#if !defined(H5Ewalk_vers) || H5Ewalk_vers == 2
  #ifndef H5Ewalk_vers
    #define H5Ewalk_vers 2
  #endif 
  #define H5Ewalk H5Ewalk2
  #define H5E_error_t H5E_error2_t
  #define H5E_walk_t H5E_walk2_t
#elif H5Ewalk_vers == 1
  #define H5Ewalk H5Ewalk1
  #define H5E_error_t H5E_error1_t
  #define H5E_walk_t H5E_walk1_t
#else 
  #error "H5Ewalk_vers set to invalid value"
#endif 

#if !defined(H5Fget_info_vers) || H5Fget_info_vers == 2
  #ifndef H5Fget_info_vers
    #define H5Fget_info_vers 2
  #endif 
  #define H5Fget_info H5Fget_info2
  #define H5F_info_t H5F_info2_t
#elif H5Fget_info_vers == 1
  #define H5Fget_info H5Fget_info1
  #define H5F_info_t H5F_info1_t
#else 
  #error "H5Fget_info_vers set to invalid value"
#endif 

#if !defined(H5Gcreate_vers) || H5Gcreate_vers == 2
  #ifndef H5Gcreate_vers
    #define H5Gcreate_vers 2
  #endif 
  #define H5Gcreate H5Gcreate2
#elif H5Gcreate_vers == 1
  #define H5Gcreate H5Gcreate1
#else 
  #error "H5Gcreate_vers set to invalid value"
#endif 

#if !defined(H5Gopen_vers) || H5Gopen_vers == 2
  #ifndef H5Gopen_vers
    #define H5Gopen_vers 2
  #endif 
  #define H5Gopen H5Gopen2
#elif H5Gopen_vers == 1
  #define H5Gopen H5Gopen1
#else 
  #error "H5Gopen_vers set to invalid value"
#endif 

#if !defined(H5Iregister_type_vers) || H5Iregister_type_vers == 2
  #ifndef H5Iregister_type_vers
    #define H5Iregister_type_vers 2
  #endif 
  #define H5Iregister_type H5Iregister_type2
#elif H5Iregister_type_vers == 1
  #define H5Iregister_type H5Iregister_type1
#else 
  #error "H5Iregister_type_vers set to invalid value"
#endif 

#if !defined(H5Lget_info_vers) || H5Lget_info_vers == 2
  #ifndef H5Lget_info_vers
    #define H5Lget_info_vers 2
  #endif 
  #define H5Lget_info H5Lget_info2
  #define H5L_info_t H5L_info2_t
#elif H5Lget_info_vers == 1
  #define H5Lget_info H5Lget_info1
  #define H5L_info_t H5L_info1_t
#else 
  #error "H5Lget_info_vers set to invalid value"
#endif 

#if !defined(H5Lget_info_by_idx_vers) || H5Lget_info_by_idx_vers == 2
  #ifndef H5Lget_info_by_idx_vers
    #define H5Lget_info_by_idx_vers 2
  #endif 
  #define H5Lget_info_by_idx H5Lget_info_by_idx2
  #define H5L_info_t H5L_info2_t
#elif H5Lget_info_by_idx_vers == 1
  #define H5Lget_info_by_idx H5Lget_info_by_idx1
  #define H5L_info_t H5L_info1_t
#else 
  #error "H5Lget_info_by_idx_vers set to invalid value"
#endif 

#if !defined(H5Literate_vers) || H5Literate_vers == 2
  #ifndef H5Literate_vers
    #define H5Literate_vers 2
  #endif 
  #define H5Literate H5Literate2
  #define H5L_iterate_t H5L_iterate2_t
#elif H5Literate_vers == 1
  #define H5Literate H5Literate1
  #define H5L_iterate_t H5L_iterate1_t
#else 
  #error "H5Literate_vers set to invalid value"
#endif 

#if !defined(H5Literate_by_name_vers) || H5Literate_by_name_vers == 2
  #ifndef H5Literate_by_name_vers
    #define H5Literate_by_name_vers 2
  #endif 
  #define H5Literate_by_name H5Literate_by_name2
  #define H5L_iterate_t H5L_iterate2_t
#elif H5Literate_by_name_vers == 1
  #define H5Literate_by_name H5Literate_by_name1
  #define H5L_iterate_t H5L_iterate1_t
#else 
  #error "H5Literate_by_name_vers set to invalid value"
#endif 

#if !defined(H5Lvisit_vers) || H5Lvisit_vers == 2
  #ifndef H5Lvisit_vers
    #define H5Lvisit_vers 2
  #endif 
  #define H5Lvisit H5Lvisit2
  #define H5L_iterate_t H5L_iterate2_t
#elif H5Lvisit_vers == 1
  #define H5Lvisit H5Lvisit1
  #define H5L_iterate_t H5L_iterate1_t
#else 
  #error "H5Lvisit_vers set to invalid value"
#endif 

#if !defined(H5Lvisit_by_name_vers) || H5Lvisit_by_name_vers == 2
  #ifndef H5Lvisit_by_name_vers
    #define H5Lvisit_by_name_vers 2
  #endif 
  #define H5Lvisit_by_name H5Lvisit_by_name2
  #define H5L_iterate_t H5L_iterate2_t
#elif H5Lvisit_by_name_vers == 1
  #define H5Lvisit_by_name H5Lvisit_by_name1
  #define H5L_iterate_t H5L_iterate1_t
#else 
  #error "H5Lvisit_by_name_vers set to invalid value"
#endif 

#if !defined(H5Oget_info_vers) || H5Oget_info_vers == 3
  #ifndef H5Oget_info_vers
    #define H5Oget_info_vers 3
  #endif 
  #define H5Oget_info H5Oget_info3
#elif H5Oget_info_vers == 2
  #define H5Oget_info H5Oget_info2
#elif H5Oget_info_vers == 1
  #define H5Oget_info H5Oget_info1
#else 
  #error "H5Oget_info_vers set to invalid value"
#endif 

#if !defined(H5Oget_info_by_idx_vers) || H5Oget_info_by_idx_vers == 3
  #ifndef H5Oget_info_by_idx_vers
    #define H5Oget_info_by_idx_vers 3
  #endif 
  #define H5Oget_info_by_idx H5Oget_info_by_idx3
#elif H5Oget_info_by_idx_vers == 2
  #define H5Oget_info_by_idx H5Oget_info_by_idx2
#elif H5Oget_info_by_idx_vers == 1
  #define H5Oget_info_by_idx H5Oget_info_by_idx1
#else 
  #error "H5Oget_info_by_idx_vers set to invalid value"
#endif 

#if !defined(H5Oget_info_by_name_vers) || H5Oget_info_by_name_vers == 3
  #ifndef H5Oget_info_by_name_vers
    #define H5Oget_info_by_name_vers 3
  #endif 
  #define H5Oget_info_by_name H5Oget_info_by_name3
#elif H5Oget_info_by_name_vers == 2
  #define H5Oget_info_by_name H5Oget_info_by_name2
#elif H5Oget_info_by_name_vers == 1
  #define H5Oget_info_by_name H5Oget_info_by_name1
#else 
  #error "H5Oget_info_by_name_vers set to invalid value"
#endif 

#if !defined(H5Ovisit_vers) || H5Ovisit_vers == 3
  #ifndef H5Ovisit_vers
    #define H5Ovisit_vers 3
  #endif 
  #define H5Ovisit H5Ovisit3
#elif H5Ovisit_vers == 2
  #define H5Ovisit H5Ovisit2
#elif H5Ovisit_vers == 1
  #define H5Ovisit H5Ovisit1
#else 
  #error "H5Ovisit_vers set to invalid value"
#endif 

#if !defined(H5Ovisit_by_name_vers) || H5Ovisit_by_name_vers == 3
  #ifndef H5Ovisit_by_name_vers
    #define H5Ovisit_by_name_vers 3
  #endif 
  #define H5Ovisit_by_name H5Ovisit_by_name3
#elif H5Ovisit_by_name_vers == 2
  #define H5Ovisit_by_name H5Ovisit_by_name2
#elif H5Ovisit_by_name_vers == 1
  #define H5Ovisit_by_name H5Ovisit_by_name1
#else 
  #error "H5Ovisit_by_name_vers set to invalid value"
#endif 

#if !defined(H5Pencode_vers) || H5Pencode_vers == 2
  #ifndef H5Pencode_vers
    #define H5Pencode_vers 2
  #endif 
  #define H5Pencode H5Pencode2
#elif H5Pencode_vers == 1
  #define H5Pencode H5Pencode1
#else 
  #error "H5Pencode_vers set to invalid value"
#endif 

#if !defined(H5Pget_filter_vers) || H5Pget_filter_vers == 2
  #ifndef H5Pget_filter_vers
    #define H5Pget_filter_vers 2
  #endif 
  #define H5Pget_filter H5Pget_filter2
#elif H5Pget_filter_vers == 1
  #define H5Pget_filter H5Pget_filter1
#else 
  #error "H5Pget_filter_vers set to invalid value"
#endif 

#if !defined(H5Pget_filter_by_id_vers) || H5Pget_filter_by_id_vers == 2
  #ifndef H5Pget_filter_by_id_vers
    #define H5Pget_filter_by_id_vers 2
  #endif 
  #define H5Pget_filter_by_id H5Pget_filter_by_id2
#elif H5Pget_filter_by_id_vers == 1
  #define H5Pget_filter_by_id H5Pget_filter_by_id1
#else 
  #error "H5Pget_filter_by_id_vers set to invalid value"
#endif 

#if !defined(H5Pinsert_vers) || H5Pinsert_vers == 2
  #ifndef H5Pinsert_vers
    #define H5Pinsert_vers 2
  #endif 
  #define H5Pinsert H5Pinsert2
#elif H5Pinsert_vers == 1
  #define H5Pinsert H5Pinsert1
#else 
  #error "H5Pinsert_vers set to invalid value"
#endif 

#if !defined(H5Pregister_vers) || H5Pregister_vers == 2
  #ifndef H5Pregister_vers
    #define H5Pregister_vers 2
  #endif 
  #define H5Pregister H5Pregister2
#elif H5Pregister_vers == 1
  #define H5Pregister H5Pregister1
#else 
  #error "H5Pregister_vers set to invalid value"
#endif 

#if !defined(H5Rdereference_vers) || H5Rdereference_vers == 2
  #ifndef H5Rdereference_vers
    #define H5Rdereference_vers 2
  #endif 
  #define H5Rdereference H5Rdereference2
#elif H5Rdereference_vers == 1
  #define H5Rdereference H5Rdereference1
#else 
  #error "H5Rdereference_vers set to invalid value"
#endif 

#if !defined(H5Rget_obj_type_vers) || H5Rget_obj_type_vers == 2
  #ifndef H5Rget_obj_type_vers
    #define H5Rget_obj_type_vers 2
  #endif 
  #define H5Rget_obj_type H5Rget_obj_type2
#elif H5Rget_obj_type_vers == 1
  #define H5Rget_obj_type H5Rget_obj_type1
#else 
  #error "H5Rget_obj_type_vers set to invalid value"
#endif 

#if !defined(H5Sencode_vers) || H5Sencode_vers == 2
  #ifndef H5Sencode_vers
    #define H5Sencode_vers 2
  #endif 
  #define H5Sencode H5Sencode2
#elif H5Sencode_vers == 1
  #define H5Sencode H5Sencode1
#else 
  #error "H5Sencode_vers set to invalid value"
#endif 

#if !defined(H5Tarray_create_vers) || H5Tarray_create_vers == 2
  #ifndef H5Tarray_create_vers
    #define H5Tarray_create_vers 2
  #endif 
  #define H5Tarray_create H5Tarray_create2
#elif H5Tarray_create_vers == 1
  #define H5Tarray_create H5Tarray_create1
#else 
  #error "H5Tarray_create_vers set to invalid value"
#endif 

#if !defined(H5Tcommit_vers) || H5Tcommit_vers == 2
  #ifndef H5Tcommit_vers
    #define H5Tcommit_vers 2
  #endif 
  #define H5Tcommit H5Tcommit2
#elif H5Tcommit_vers == 1
  #define H5Tcommit H5Tcommit1
#else 
  #error "H5Tcommit_vers set to invalid value"
#endif 

#if !defined(H5Tdecode_vers) || H5Tdecode_vers == 2
  #ifndef H5Tdecode_vers
    #define H5Tdecode_vers 2
  #endif 
  #define H5Tdecode H5Tdecode2
#elif H5Tdecode_vers == 1
  #define H5Tdecode H5Tdecode1
#else 
  #error "H5Tdecode_vers set to invalid value"
#endif 

#if !defined(H5Tget_array_dims_vers) || H5Tget_array_dims_vers == 2
  #ifndef H5Tget_array_dims_vers
    #define H5Tget_array_dims_vers 2
  #endif 
  #define H5Tget_array_dims H5Tget_array_dims2
#elif H5Tget_array_dims_vers == 1
  #define H5Tget_array_dims H5Tget_array_dims1
#else 
  #error "H5Tget_array_dims_vers set to invalid value"
#endif 

#if !defined(H5Topen_vers) || H5Topen_vers == 2
  #ifndef H5Topen_vers
    #define H5Topen_vers 2
  #endif 
  #define H5Topen H5Topen2
#elif H5Topen_vers == 1
  #define H5Topen H5Topen1
#else 
  #error "H5Topen_vers set to invalid value"
#endif 

#if !defined(H5E_auto_t_vers) || H5E_auto_t_vers == 2
  #ifndef H5E_auto_t_vers
    #define H5E_auto_t_vers 2
  #endif 
  #define H5E_auto_t H5E_auto2_t
#elif H5E_auto_t_vers == 1
  #define H5E_auto_t H5E_auto1_t
#else 
  #error "H5E_auto_t_vers set to invalid value"
#endif 

#if !defined(H5O_info_t_vers) || H5O_info_t_vers == 2
  #ifndef H5O_info_t_vers
    #define H5O_info_t_vers 2
  #endif 
  #define H5O_info_t H5O_info2_t
#elif H5O_info_t_vers == 1
  #define H5O_info_t H5O_info1_t
#else 
  #error "H5O_info_t_vers set to invalid value"
#endif 

#if !defined(H5O_iterate_t_vers) || H5O_iterate_t_vers == 2
  #ifndef H5O_iterate_t_vers
    #define H5O_iterate_t_vers 2
  #endif 
  #define H5O_iterate_t H5O_iterate2_t
#elif H5O_iterate_t_vers == 1
  #define H5O_iterate_t H5O_iterate1_t
#else 
  #error "H5O_iterate_t_vers set to invalid value"
#endif 

#if !defined(H5Z_class_t_vers) || H5Z_class_t_vers == 2
  #ifndef H5Z_class_t_vers
    #define H5Z_class_t_vers 2
  #endif 
  #define H5Z_class_t H5Z_class2_t
#elif H5Z_class_t_vers == 1
  #define H5Z_class_t H5Z_class1_t
#else 
  #error "H5Z_class_t_vers set to invalid value"
#endif 

#endif 

