1 module hdf5.H5ACpublic; 2 3 import core.stdc.config; 4 5 import hdf5.H5public; 6 7 extern (C): 8 9 //alias H5AC_cache_config_t H5AC_cache_config_t; 10 11 struct H5AC_cache_config_t 12 { 13 int version_; 14 hbool_t rpt_fcn_enabled; 15 hbool_t open_trace_file; 16 hbool_t close_trace_file; 17 char[1025] trace_file_name; 18 hbool_t evictions_enabled; 19 hbool_t set_initial_size; 20 size_t initial_size; 21 double min_clean_fraction; 22 size_t max_size; 23 size_t min_size; 24 c_long epoch_length; 25 enum H5C_cache_incr_mode 26 { 27 H5C_incr__off = 0, 28 H5C_incr__threshold = 1 29 } 30 H5C_cache_incr_mode incr_mode; 31 double lower_hr_threshold; 32 double increment; 33 hbool_t apply_max_increment; 34 size_t max_increment; 35 enum H5C_cache_flash_incr_mode 36 { 37 H5C_flash_incr__off = 0, 38 H5C_flash_incr__add_space = 1 39 } 40 H5C_cache_flash_incr_mode flash_incr_mode; 41 double flash_multiple; 42 double flash_threshold; 43 enum H5C_cache_decr_mode 44 { 45 H5C_decr__off = 0, 46 H5C_decr__threshold = 1, 47 H5C_decr__age_out = 2, 48 H5C_decr__age_out_with_threshold = 3 49 } 50 H5C_cache_decr_mode decr_mode; 51 double upper_hr_threshold; 52 double decrement; 53 hbool_t apply_max_decrement; 54 size_t max_decrement; 55 int epochs_before_eviction; 56 hbool_t apply_empty_reserve; 57 double empty_reserve; 58 size_t dirty_bytes_threshold; 59 int metadata_write_strategy; 60 }