50 const hid_t h5_file_id,
51 const std::string & h5_filename,
53 const std::vector<size_t>& h5_dimsizes,
54 const std::string &varfullpath,
55 const size_t h5_total_elems,
56 const CVType h5_cvtype,
57 const bool h5_islatlon,
58 const float h5_comp_ratio,
59 const bool h5_is_dap4,
60 const std::string & n=
"",
61 libdap::BaseType * v =
nullptr):
65 filename(h5_filename),
67 dimsizes(h5_dimsizes),
69 total_elems(h5_total_elems),
71 islatlon(h5_islatlon),
72 comp_ratio(h5_comp_ratio),
77 ~ HDF5CFArray()
override =
default;
79 libdap::BaseType *ptr_duplicate()
override;
84 libdap::BaseType *h5cfdims_transform_to_dap4_int64(libdap::D4Group *root);
97 std::vector<size_t>dimsizes;
104 bool valid_disk_cache();
105 bool valid_disk_cache_for_compressed_data(
short dtype_size)
const;
106 bool obtain_cached_data(
HDF5DiskCache*,
const std::string&,
int, std::vector<int>&,std::vector<int>&,
size_t,
short);
107 void write_data_to_cache(hid_t dset_id, hid_t dspace_id,hid_t mspace_id,hid_t memtype,
const std::string& cache_fpath,
short dtype_size,
const std::vector<char> &buf,
int nelms);