63 libdap::DDS *_dds = {
nullptr};
64 libdap::DMR *_dmr = {
nullptr};
67 std::string _localfile;
68 std::string _returnAs;
69 std::vector<FONcBaseType *> _fonc_vars;
70 std::vector<FONcBaseType *> _total_fonc_vars_in_grp;
71 std::set<std::string> _included_grp_names;
72 std::map<std::string,int64_t> GFQN_dimname_to_dimsize;
73 std::map<std::string,int64_t> VFQN_dimname_to_dimsize;
77 bool global_dio_flag =
false;
79 bool do_reduce_dim =
false;
80 std::unordered_map<int64_t, std::vector<std::string>> dimsize_to_dup_dimnames;
81 int reduced_dim_num = 0;
93 bool get_gdio_flag()
const {
return global_dio_flag; }
94 void set_gdio_flag(
bool dio_flag_value =
true) { global_dio_flag = dio_flag_value; }
98 virtual void transform_dap4_no_group();
99 virtual void transform_dap4_group(libdap::D4Group*,
bool is_root,
int par_grp_id, std::map<std::string, int>&, std::vector<int>&);
100 virtual void transform_dap4_group_internal(libdap::D4Group*,
bool is_root,
int par_grp_id, std::map<std::string, int>&, std::vector<int>&);
101 virtual void check_and_obtain_dimensions(libdap::D4Group *grp,
bool);
102 virtual void check_and_obtain_dimensions_internal(libdap::D4Group *grp);
103 virtual bool check_group_support();
104 virtual void gen_included_grp_list(libdap::D4Group *grp);
106 virtual bool check_reduce_dim();
107 virtual bool check_reduce_dim_internal(libdap::D4Group *grp);
108 virtual bool check_var_dim(libdap::BaseType *bt);
109 virtual void build_reduce_dim();
110 virtual void build_reduce_dim_internal(libdap::D4Group *grp, libdap::D4Group *root_grp);
112 void throw_if_dap2_response_too_big(
DDS *dds,
const string &dap2_ce=
"");
113 void throw_if_dap4_response_too_big(DMR *dmr,
const string &dap4_ce=
"");
114 string too_big_error_msg(
115 const unsigned dap_version,
116 const string &return_encoding,
117 const unsigned long long config_max_response_size_kb,
118 const unsigned long long contextual_max_response_size_kb,
120 void set_max_size_and_encoding(
unsigned long long &max_request_size_kb,
string &return_encoding);
122 void set_constraint_var_dio_flag(libdap::BaseType*)
const;
123 void set_constraint_var_dio_flag(libdap::Array*)
const;