summaryrefslogtreecommitdiffstats
path: root/java/src/hdf/hdf5lib/structs/H5AC_cache_config_t.java
blob: 20863dca6e555cd392ab4cfbdb9725888e5a439d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
 * Copyright by The HDF Group.                                               *
 * Copyright by the Board of Trustees of the University of Illinois.         *
 * 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 COPYING file, which can be found at the root of the source code       *
 * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.  *
 * If you do not have access to either file, you may request a copy from     *
 * help@hdfgroup.org.                                                        *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */

package hdf.hdf5lib.structs;

import java.io.Serializable;

//Information struct for H5Pget_mdc_config/H5Pset_mdc_config
public class H5AC_cache_config_t implements Serializable{
    private static final long serialVersionUID = -6748085696476149972L;
    // general configuration fields:
    public int              version;
    public boolean          rpt_fcn_enabled;
    public boolean          open_trace_file;
    public boolean          close_trace_file;
    public String           trace_file_name;
    public boolean          evictions_enabled;
    public boolean          set_initial_size;
    public long             initial_size;
    public double           min_clean_fraction;
    public long             max_size;
    public long             min_size;
    public long             epoch_length;
    // size increase control fields:
    public int              incr_mode;  // H5C_cache_incr_mode
    public double           lower_hr_threshold;
    public double           increment;
    public boolean          apply_max_increment;
    public long             max_increment;
    public int              flash_incr_mode;    // H5C_cache_flash_incr_mode
    public double           flash_multiple;
    public double           flash_threshold;
    // size decrease control fields:
    public int              decr_mode;  // H5C_cache_decr_mode
    public double           upper_hr_threshold;
    public double           decrement;
    public boolean          apply_max_decrement;
    public long             max_decrement;
    public int              epochs_before_eviction;
    public boolean          apply_empty_reserve;
    public double           empty_reserve;
    // parallel configuration fields:
    public long             dirty_bytes_threshold;
    public int              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,
            long min_size, long epoch_length, int incr_mode, double lower_hr_threshold,
            double increment, boolean apply_max_increment, long max_increment, int flash_incr_mode,
            double flash_multiple, double flash_threshold, int decr_mode, double upper_hr_threshold,
            double decrement, boolean apply_max_decrement, long max_decrement,
            int epochs_before_eviction, boolean apply_empty_reserve, double empty_reserve,
            long dirty_bytes_threshold, int metadata_write_strategy)
    {
        this.version = version;
        this.rpt_fcn_enabled = rpt_fcn_enabled;
        this.open_trace_file = open_trace_file;
        this.close_trace_file = close_trace_file;
        this.trace_file_name = trace_file_name;
        this.evictions_enabled = evictions_enabled;
        this.set_initial_size = set_initial_size;
        this.initial_size = initial_size;
        this.min_clean_fraction = min_clean_fraction;
        this.max_size = max_size;
        this.min_size = min_size;
        this.epoch_length = epoch_length;
        this.incr_mode = incr_mode;
        this.lower_hr_threshold = lower_hr_threshold;
        this.increment = increment;
        this.apply_max_increment = apply_max_increment;
        this.max_increment = flash_incr_mode;
        this.flash_incr_mode = flash_incr_mode;
        this.flash_multiple = flash_multiple;
        this.flash_threshold = flash_threshold;
        this.decr_mode = decr_mode;
        this.upper_hr_threshold = upper_hr_threshold;
        this.decrement = decrement;
        this.apply_max_decrement = apply_max_decrement;
        this.max_decrement = max_decrement;
        this.epochs_before_eviction = epochs_before_eviction;
        this.apply_empty_reserve = apply_empty_reserve;
        this.empty_reserve = empty_reserve;
        this.dirty_bytes_threshold = dirty_bytes_threshold;
        this.metadata_write_strategy = metadata_write_strategy;
    }
}