5 #include <boost/multi_array.hpp>
21 std::string axis_type_str;
22 if (!
cstr2string(axis_type, axis_type_size, axis_type_str))
return;
23 CTimer::get(
"XIOS").resume();
24 scalar_hdl->axis_type.
fromString(axis_type_str);
25 CTimer::get(
"XIOS").suspend();
30 CTimer::get(
"XIOS").resume();
31 if (!
string_copy(scalar_hdl->axis_type.getInheritedStringValue(), axis_type, axis_type_size))
32 ERROR(
"void cxios_get_scalar_axis_type(scalar_Ptr scalar_hdl, char * axis_type, int axis_type_size)", <<
"Input string is too short");
33 CTimer::get(
"XIOS").suspend();
38 CTimer::get(
"XIOS").resume();
39 bool isDefined = scalar_hdl->axis_type.hasInheritedValue();
40 CTimer::get(
"XIOS").suspend();
47 CTimer::get(
"XIOS").resume();
49 scalar_hdl->bounds.reference(tmp.
copy());
50 CTimer::get(
"XIOS").suspend();
55 CTimer::get(
"XIOS").resume();
57 tmp=scalar_hdl->bounds.getInheritedValue();
58 CTimer::get(
"XIOS").suspend();
63 CTimer::get(
"XIOS").resume();
64 bool isDefined = scalar_hdl->bounds.hasInheritedValue();
65 CTimer::get(
"XIOS").suspend();
72 std::string bounds_name_str;
73 if (!
cstr2string(bounds_name, bounds_name_size, bounds_name_str))
return;
74 CTimer::get(
"XIOS").resume();
75 scalar_hdl->bounds_name.setValue(bounds_name_str);
76 CTimer::get(
"XIOS").suspend();
81 CTimer::get(
"XIOS").resume();
82 if (!
string_copy(scalar_hdl->bounds_name.getInheritedValue(), bounds_name, bounds_name_size))
83 ERROR(
"void cxios_get_scalar_bounds_name(scalar_Ptr scalar_hdl, char * bounds_name, int bounds_name_size)", <<
"Input string is too short");
84 CTimer::get(
"XIOS").suspend();
89 CTimer::get(
"XIOS").resume();
90 bool isDefined = scalar_hdl->bounds_name.hasInheritedValue();
91 CTimer::get(
"XIOS").suspend();
98 std::string comment_str;
99 if (!
cstr2string(comment, comment_size, comment_str))
return;
100 CTimer::get(
"XIOS").resume();
101 scalar_hdl->comment.setValue(comment_str);
102 CTimer::get(
"XIOS").suspend();
107 CTimer::get(
"XIOS").resume();
108 if (!
string_copy(scalar_hdl->comment.getInheritedValue(), comment, comment_size))
109 ERROR(
"void cxios_get_scalar_comment(scalar_Ptr scalar_hdl, char * comment, int comment_size)", <<
"Input string is too short");
110 CTimer::get(
"XIOS").suspend();
115 CTimer::get(
"XIOS").resume();
116 bool isDefined = scalar_hdl->comment.hasInheritedValue();
117 CTimer::get(
"XIOS").suspend();
124 std::string label_str;
125 if (!
cstr2string(label, label_size, label_str))
return;
126 CTimer::get(
"XIOS").resume();
127 scalar_hdl->label.setValue(label_str);
128 CTimer::get(
"XIOS").suspend();
133 CTimer::get(
"XIOS").resume();
134 if (!
string_copy(scalar_hdl->label.getInheritedValue(), label, label_size))
135 ERROR(
"void cxios_get_scalar_label(scalar_Ptr scalar_hdl, char * label, int label_size)", <<
"Input string is too short");
136 CTimer::get(
"XIOS").suspend();
141 CTimer::get(
"XIOS").resume();
142 bool isDefined = scalar_hdl->label.hasInheritedValue();
143 CTimer::get(
"XIOS").suspend();
150 std::string long_name_str;
151 if (!
cstr2string(long_name, long_name_size, long_name_str))
return;
152 CTimer::get(
"XIOS").resume();
153 scalar_hdl->long_name.setValue(long_name_str);
154 CTimer::get(
"XIOS").suspend();
159 CTimer::get(
"XIOS").resume();
160 if (!
string_copy(scalar_hdl->long_name.getInheritedValue(), long_name, long_name_size))
161 ERROR(
"void cxios_get_scalar_long_name(scalar_Ptr scalar_hdl, char * long_name, int long_name_size)", <<
"Input string is too short");
162 CTimer::get(
"XIOS").suspend();
167 CTimer::get(
"XIOS").resume();
168 bool isDefined = scalar_hdl->long_name.hasInheritedValue();
169 CTimer::get(
"XIOS").suspend();
176 std::string name_str;
177 if (!
cstr2string(name, name_size, name_str))
return;
178 CTimer::get(
"XIOS").resume();
179 scalar_hdl->name.setValue(name_str);
180 CTimer::get(
"XIOS").suspend();
185 CTimer::get(
"XIOS").resume();
186 if (!
string_copy(scalar_hdl->name.getInheritedValue(), name, name_size))
187 ERROR(
"void cxios_get_scalar_name(scalar_Ptr scalar_hdl, char * name, int name_size)", <<
"Input string is too short");
188 CTimer::get(
"XIOS").suspend();
193 CTimer::get(
"XIOS").resume();
194 bool isDefined = scalar_hdl->name.hasInheritedValue();
195 CTimer::get(
"XIOS").suspend();
202 std::string positive_str;
203 if (!
cstr2string(positive, positive_size, positive_str))
return;
204 CTimer::get(
"XIOS").resume();
205 scalar_hdl->positive.
fromString(positive_str);
206 CTimer::get(
"XIOS").suspend();
211 CTimer::get(
"XIOS").resume();
212 if (!
string_copy(scalar_hdl->positive.getInheritedStringValue(), positive, positive_size))
213 ERROR(
"void cxios_get_scalar_positive(scalar_Ptr scalar_hdl, char * positive, int positive_size)", <<
"Input string is too short");
214 CTimer::get(
"XIOS").suspend();
219 CTimer::get(
"XIOS").resume();
220 bool isDefined = scalar_hdl->positive.hasInheritedValue();
221 CTimer::get(
"XIOS").suspend();
228 CTimer::get(
"XIOS").resume();
229 scalar_hdl->prec.setValue(prec);
230 CTimer::get(
"XIOS").suspend();
235 CTimer::get(
"XIOS").resume();
236 *prec = scalar_hdl->prec.getInheritedValue();
237 CTimer::get(
"XIOS").suspend();
242 CTimer::get(
"XIOS").resume();
243 bool isDefined = scalar_hdl->prec.hasInheritedValue();
244 CTimer::get(
"XIOS").suspend();
251 std::string scalar_ref_str;
252 if (!
cstr2string(scalar_ref, scalar_ref_size, scalar_ref_str))
return;
253 CTimer::get(
"XIOS").resume();
254 scalar_hdl->scalar_ref.setValue(scalar_ref_str);
255 CTimer::get(
"XIOS").suspend();
260 CTimer::get(
"XIOS").resume();
261 if (!
string_copy(scalar_hdl->scalar_ref.getInheritedValue(), scalar_ref, scalar_ref_size))
262 ERROR(
"void cxios_get_scalar_scalar_ref(scalar_Ptr scalar_hdl, char * scalar_ref, int scalar_ref_size)", <<
"Input string is too short");
263 CTimer::get(
"XIOS").suspend();
268 CTimer::get(
"XIOS").resume();
269 bool isDefined = scalar_hdl->scalar_ref.hasInheritedValue();
270 CTimer::get(
"XIOS").suspend();
277 std::string standard_name_str;
278 if (!
cstr2string(standard_name, standard_name_size, standard_name_str))
return;
279 CTimer::get(
"XIOS").resume();
280 scalar_hdl->standard_name.setValue(standard_name_str);
281 CTimer::get(
"XIOS").suspend();
286 CTimer::get(
"XIOS").resume();
287 if (!
string_copy(scalar_hdl->standard_name.getInheritedValue(), standard_name, standard_name_size))
288 ERROR(
"void cxios_get_scalar_standard_name(scalar_Ptr scalar_hdl, char * standard_name, int standard_name_size)", <<
"Input string is too short");
289 CTimer::get(
"XIOS").suspend();
294 CTimer::get(
"XIOS").resume();
295 bool isDefined = scalar_hdl->standard_name.hasInheritedValue();
296 CTimer::get(
"XIOS").suspend();
303 std::string unit_str;
304 if (!
cstr2string(unit, unit_size, unit_str))
return;
305 CTimer::get(
"XIOS").resume();
306 scalar_hdl->unit.setValue(unit_str);
307 CTimer::get(
"XIOS").suspend();
312 CTimer::get(
"XIOS").resume();
313 if (!
string_copy(scalar_hdl->unit.getInheritedValue(), unit, unit_size))
314 ERROR(
"void cxios_get_scalar_unit(scalar_Ptr scalar_hdl, char * unit, int unit_size)", <<
"Input string is too short");
315 CTimer::get(
"XIOS").suspend();
320 CTimer::get(
"XIOS").resume();
321 bool isDefined = scalar_hdl->unit.hasInheritedValue();
322 CTimer::get(
"XIOS").suspend();
329 CTimer::get(
"XIOS").resume();
330 scalar_hdl->value.setValue(value);
331 CTimer::get(
"XIOS").suspend();
336 CTimer::get(
"XIOS").resume();
337 *value = scalar_hdl->value.getInheritedValue();
338 CTimer::get(
"XIOS").suspend();
343 CTimer::get(
"XIOS").resume();
344 bool isDefined = scalar_hdl->value.hasInheritedValue();
345 CTimer::get(
"XIOS").suspend();
void cxios_set_scalar_value(scalar_Ptr scalar_hdl, double value)
bool cxios_is_defined_scalar_standard_name(scalar_Ptr scalar_hdl)
bool cxios_is_defined_scalar_value(scalar_Ptr scalar_hdl)
void cxios_get_scalar_bounds(scalar_Ptr scalar_hdl, double *bounds, int *extent)
void cxios_get_scalar_bounds_name(scalar_Ptr scalar_hdl, char *bounds_name, int bounds_name_size)
bool cxios_is_defined_scalar_scalar_ref(scalar_Ptr scalar_hdl)
void cxios_get_scalar_unit(scalar_Ptr scalar_hdl, char *unit, int unit_size)
bool cxios_is_defined_scalar_bounds(scalar_Ptr scalar_hdl)
void cxios_set_scalar_axis_type(scalar_Ptr scalar_hdl, const char *axis_type, int axis_type_size)
void cxios_set_scalar_bounds_name(scalar_Ptr scalar_hdl, const char *bounds_name, int bounds_name_size)
void cxios_set_scalar_comment(scalar_Ptr scalar_hdl, const char *comment, int comment_size)
bool cxios_is_defined_scalar_bounds_name(scalar_Ptr scalar_hdl)
void cxios_set_scalar_standard_name(scalar_Ptr scalar_hdl, const char *standard_name, int standard_name_size)
xios::CScalar * scalar_Ptr
void cxios_get_scalar_value(scalar_Ptr scalar_hdl, double *value)
void cxios_get_scalar_prec(scalar_Ptr scalar_hdl, int *prec)
void cxios_get_scalar_standard_name(scalar_Ptr scalar_hdl, char *standard_name, int standard_name_size)
void cxios_get_scalar_long_name(scalar_Ptr scalar_hdl, char *long_name, int long_name_size)
bool cxios_is_defined_scalar_comment(scalar_Ptr scalar_hdl)
virtual void fromString(const StdString &str)
void cxios_get_scalar_comment(scalar_Ptr scalar_hdl, char *comment, int comment_size)
void cxios_get_scalar_axis_type(scalar_Ptr scalar_hdl, char *axis_type, int axis_type_size)
bool string_copy(const std::string &str, char *cstr, int cstr_size)
bool cxios_is_defined_scalar_name(scalar_Ptr scalar_hdl)
bool cxios_is_defined_scalar_unit(scalar_Ptr scalar_hdl)
bool cxios_is_defined_scalar_long_name(scalar_Ptr scalar_hdl)
void cxios_get_scalar_name(scalar_Ptr scalar_hdl, char *name, int name_size)
void cxios_set_scalar_bounds(scalar_Ptr scalar_hdl, double *bounds, int *extent)
void cxios_get_scalar_scalar_ref(scalar_Ptr scalar_hdl, char *scalar_ref, int scalar_ref_size)
void cxios_set_scalar_long_name(scalar_Ptr scalar_hdl, const char *long_name, int long_name_size)
bool cxios_is_defined_scalar_prec(scalar_Ptr scalar_hdl)
void cxios_get_scalar_positive(scalar_Ptr scalar_hdl, char *positive, int positive_size)
void cxios_get_scalar_label(scalar_Ptr scalar_hdl, char *label, int label_size)
void cxios_set_scalar_positive(scalar_Ptr scalar_hdl, const char *positive, int positive_size)
void cxios_set_scalar_label(scalar_Ptr scalar_hdl, const char *label, int label_size)
bool cstr2string(const char *cstr, int cstr_size, std::string &str)
void cxios_set_scalar_scalar_ref(scalar_Ptr scalar_hdl, const char *scalar_ref, int scalar_ref_size)
void cxios_set_scalar_name(scalar_Ptr scalar_hdl, const char *name, int name_size)
CArray< T_numtype, N_rank > copy() const
void cxios_set_scalar_prec(scalar_Ptr scalar_hdl, int prec)
void cxios_set_scalar_unit(scalar_Ptr scalar_hdl, const char *unit, int unit_size)
bool cxios_is_defined_scalar_axis_type(scalar_Ptr scalar_hdl)
bool cxios_is_defined_scalar_label(scalar_Ptr scalar_hdl)
bool cxios_is_defined_scalar_positive(scalar_Ptr scalar_hdl)