29 #ifndef __NCML_MODULE__RENAMED_ARRAY_WRAPPER_H__ 30 #define __NCML_MODULE__RENAMED_ARRAY_WRAPPER_H__ 80 virtual void add_constraint(Dim_iter i,
int start,
int stride,
int stop);
81 virtual void reset_constraint();
84 virtual void clear_constraint();
86 virtual string toString();
87 virtual string toString()
const;
88 virtual void dump(ostream &strm)
const;
94 virtual bool is_simple_type()
const;
95 virtual bool is_vector_type()
const;
96 virtual bool is_constructor_type()
const;
98 virtual bool synthesized_p();
99 virtual void set_synthesized_p(
bool state);
101 virtual int element_count(
bool leaves =
false);
104 virtual bool read_p();
105 virtual void set_read_p(
bool state);
107 virtual bool send_p();
108 virtual void set_send_p(
bool state);
111 virtual libdap::AttrTable& get_attr_table();
112 virtual void set_attr_table(
const libdap::AttrTable &at);
114 virtual bool is_in_selection();
115 virtual void set_in_selection(
bool state);
117 virtual void set_parent(BaseType *parent);
118 virtual BaseType *get_parent()
const;
121 virtual BaseType *var(
const string &name =
"",
bool exact_match =
true, btp_stack *s = 0);
122 virtual BaseType *var(
const string &name, btp_stack &s);
123 virtual void add_var(BaseType *bt, Part part = nil);
124 virtual void add_var_nocopy(BaseType *bt, Part part = nil);
127 virtual bool check_semantics(
string &msg,
bool all =
false);
128 virtual bool ops(BaseType *b,
int op);
131 #if FILE_METHODS // from BaseType.h, whether we include FILE* methods 132 virtual void print_decl(FILE *out,
string space =
" ",
133 bool print_semi =
true,
134 bool constraint_info =
false,
135 bool constrained =
false);
136 virtual void print_xml(FILE *out,
string space =
" ",
137 bool constrained =
false);
138 virtual void print_val(FILE *out,
string space =
"",
139 bool print_decl_p =
true);
140 #endif // FILE_METHODS 143 virtual void print_decl(ostream &out,
string space =
" ",
144 bool print_semi =
true,
145 bool constraint_info =
false,
146 bool constrained =
false);
147 virtual void print_xml(ostream &out,
string space =
" ",
148 bool constrained =
false);
149 virtual void print_val(ostream &out,
string space =
"",
150 bool print_decl_p =
true);
152 virtual unsigned int width(
bool constrained =
false);
155 virtual unsigned int buf2val(
void **val);
156 virtual unsigned int val2buf(
void *val,
bool reuse =
false);
158 virtual bool set_value(dods_byte *val,
int sz);
159 virtual bool set_value(dods_int8 *val,
int sz);
160 virtual bool set_value(dods_int16 *val,
int sz);
161 virtual bool set_value(dods_uint16 *val,
int sz);
162 virtual bool set_value(dods_int32 *val,
int sz);
163 virtual bool set_value(dods_uint32 *val,
int sz);
164 virtual bool set_value(dods_int64 *val,
int sz);
165 virtual bool set_value(dods_uint64 *val,
int sz);
166 virtual bool set_value(dods_float32 *val,
int sz);
167 virtual bool set_value(dods_float64 *val,
int sz);
168 virtual bool set_value(
string *val,
int sz);
170 virtual bool set_value(vector<dods_byte> &val,
int sz);
171 virtual bool set_value(vector<dods_int8> &val,
int sz);
172 virtual bool set_value(vector<dods_int16> &val,
int sz);
173 virtual bool set_value(vector<dods_uint16> &val,
int sz);
174 virtual bool set_value(vector<dods_int32> &val,
int sz);
175 virtual bool set_value(vector<dods_uint32> &val,
int sz);
176 virtual bool set_value(vector<dods_int64> &val,
int sz);
177 virtual bool set_value(vector<dods_uint64> &val,
int sz);
178 virtual bool set_value(vector<dods_float32> &val,
int sz);
179 virtual bool set_value(vector<dods_float64> &val,
int sz);
180 virtual bool set_value(vector<string> &val,
int sz);
182 virtual void value(dods_byte *b)
const;
183 virtual void value(dods_int8 *b)
const;
184 virtual void value(dods_int16 *b)
const;
185 virtual void value(dods_uint16 *b)
const;
186 virtual void value(dods_int32 *b)
const;
187 virtual void value(dods_uint32 *b)
const;
188 virtual void value(dods_int64 *b)
const;
189 virtual void value(dods_uint64 *b)
const;
190 virtual void value(dods_float32 *b)
const;
191 virtual void value(dods_float64 *b)
const;
192 virtual void value(vector<string> &b)
const;
194 virtual void value(vector<unsigned int> *indices, dods_byte *b)
const;
195 virtual void value(vector<unsigned int> *indices, dods_int8 *b)
const;
196 virtual void value(vector<unsigned int> *indices, dods_int16 *b)
const;
197 virtual void value(vector<unsigned int> *indices, dods_uint16 *b)
const;
198 virtual void value(vector<unsigned int> *indices, dods_int32 *b)
const;
199 virtual void value(vector<unsigned int> *indices, dods_uint32 *b)
const;
200 virtual void value(vector<unsigned int> *indices, dods_int64 *b)
const;
201 virtual void value(vector<unsigned int> *indices, dods_uint64 *b)
const;
202 virtual void value(vector<unsigned int> *indices, dods_float32 *b)
const;
203 virtual void value(vector<unsigned int> *indices, dods_float64 *b)
const;
204 virtual void value(vector<unsigned int> *index, vector<string> &b)
const;
206 virtual void *value();
209 virtual void intern_data(ConstraintEvaluator &eval, DDS &dds);
210 virtual bool serialize(ConstraintEvaluator &eval, DDS &dds, Marshaller &m,
bool ce_eval =
true);
211 virtual bool deserialize(UnMarshaller &um, DDS *dds,
bool reuse =
false);
239 void syncConstraints()
const 241 const_cast<RenamedArrayWrapper*>(
this)->syncConstraints();
243 void syncConstraints();
246 template <
typename T>
void value_worker(T *v)
const;
247 template <
typename T>
void value_worker(vector<unsigned int> *indices, T *b)
const;
249 template <
typename T>
bool set_value_worker(T *v,
int sz);
250 template <
typename T>
bool set_value_worker(vector<T> &v,
int sz);
257 libdap::Array* _pArray;
NcML Parser for adding/modifying/removing metadata (attributes) to existing local datasets using NcML...
A Decorator Pattern for wrapping a libdap::Array in order to change its name efficiently in the face ...