source: XIOS3/trunk/src/interface/c_attr/icfieldgroup_attr.cpp @ 2617

Last change on this file since 2617 was 2617, checked in by jderouillat, 3 months ago

Fix the field's attribute name conversion_by_NetCDF removing upper-case letters

  • Property copyright set to
    Software name : XIOS (Xml I/O Server)
    http://forge.ipsl.jussieu.fr/ioserver
    Creation date : January 2009
    Licence : CeCCIL version2
    see license file in root directory : Licence_CeCILL_V2-en.txt
    or http://www.cecill.info/licences/Licence_CeCILL_V2-en.html
    Holder : CEA/LSCE (Laboratoire des Sciences du CLimat et de l'Environnement)
    CNRS/IPSL (Institut Pierre Simon Laplace)
    Project Manager : Yann Meurdesoif
    yann.meurdesoif@cea.fr
  • Property svn:eol-style set to native
File size: 35.0 KB
Line 
1/* ************************************************************************** *
2 *               Interface auto generated - do not modify                     *
3 * ************************************************************************** */
4
5#include <boost/multi_array.hpp>
6#include "xios.hpp"
7#include "attribute_template.hpp"
8#include "object_template.hpp"
9#include "group_template.hpp"
10#include "icutil.hpp"
11#include "icdate.hpp"
12#include "timer.hpp"
13#include "node_type.hpp"
14
15extern "C"
16{
17  typedef xios::CFieldGroup* fieldgroup_Ptr;
18
19  void cxios_set_fieldgroup_add_offset(fieldgroup_Ptr fieldgroup_hdl, double add_offset)
20  {
21    CTimer::get("XIOS").resume();
22    fieldgroup_hdl->add_offset.setValue(add_offset);
23    CTimer::get("XIOS").suspend();
24  }
25
26  void cxios_get_fieldgroup_add_offset(fieldgroup_Ptr fieldgroup_hdl, double* add_offset)
27  {
28    CTimer::get("XIOS").resume();
29    *add_offset = fieldgroup_hdl->add_offset.getInheritedValue();
30    CTimer::get("XIOS").suspend();
31  }
32
33  bool cxios_is_defined_fieldgroup_add_offset(fieldgroup_Ptr fieldgroup_hdl)
34  {
35     CTimer::get("XIOS").resume();
36     bool isDefined = fieldgroup_hdl->add_offset.hasInheritedValue();
37     CTimer::get("XIOS").suspend();
38     return isDefined;
39  }
40
41
42  void cxios_set_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl, const char * axis_ref, int axis_ref_size)
43  {
44    std::string axis_ref_str;
45    if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return;
46    CTimer::get("XIOS").resume();
47    fieldgroup_hdl->axis_ref.setValue(axis_ref_str);
48    CTimer::get("XIOS").suspend();
49  }
50
51  void cxios_get_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl, char * axis_ref, int axis_ref_size)
52  {
53    CTimer::get("XIOS").resume();
54    if (!string_copy(fieldgroup_hdl->axis_ref.getInheritedValue(), axis_ref, axis_ref_size))
55      ERROR("void cxios_get_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl, char * axis_ref, int axis_ref_size)", << "Input string is too short");
56    CTimer::get("XIOS").suspend();
57  }
58
59  bool cxios_is_defined_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl)
60  {
61     CTimer::get("XIOS").resume();
62     bool isDefined = fieldgroup_hdl->axis_ref.hasInheritedValue();
63     CTimer::get("XIOS").suspend();
64     return isDefined;
65  }
66
67
68  void cxios_set_fieldgroup_build_workflow_graph(fieldgroup_Ptr fieldgroup_hdl, bool build_workflow_graph)
69  {
70    CTimer::get("XIOS").resume();
71    fieldgroup_hdl->build_workflow_graph.setValue(build_workflow_graph);
72    CTimer::get("XIOS").suspend();
73  }
74
75  void cxios_get_fieldgroup_build_workflow_graph(fieldgroup_Ptr fieldgroup_hdl, bool* build_workflow_graph)
76  {
77    CTimer::get("XIOS").resume();
78    *build_workflow_graph = fieldgroup_hdl->build_workflow_graph.getInheritedValue();
79    CTimer::get("XIOS").suspend();
80  }
81
82  bool cxios_is_defined_fieldgroup_build_workflow_graph(fieldgroup_Ptr fieldgroup_hdl)
83  {
84     CTimer::get("XIOS").resume();
85     bool isDefined = fieldgroup_hdl->build_workflow_graph.hasInheritedValue();
86     CTimer::get("XIOS").suspend();
87     return isDefined;
88  }
89
90
91  void cxios_set_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, const char * cell_methods, int cell_methods_size)
92  {
93    std::string cell_methods_str;
94    if (!cstr2string(cell_methods, cell_methods_size, cell_methods_str)) return;
95    CTimer::get("XIOS").resume();
96    fieldgroup_hdl->cell_methods.setValue(cell_methods_str);
97    CTimer::get("XIOS").suspend();
98  }
99
100  void cxios_get_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods, int cell_methods_size)
101  {
102    CTimer::get("XIOS").resume();
103    if (!string_copy(fieldgroup_hdl->cell_methods.getInheritedValue(), cell_methods, cell_methods_size))
104      ERROR("void cxios_get_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods, int cell_methods_size)", << "Input string is too short");
105    CTimer::get("XIOS").suspend();
106  }
107
108  bool cxios_is_defined_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl)
109  {
110     CTimer::get("XIOS").resume();
111     bool isDefined = fieldgroup_hdl->cell_methods.hasInheritedValue();
112     CTimer::get("XIOS").suspend();
113     return isDefined;
114  }
115
116
117  void cxios_set_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl, const char * cell_methods_mode, int cell_methods_mode_size)
118  {
119    std::string cell_methods_mode_str;
120    if (!cstr2string(cell_methods_mode, cell_methods_mode_size, cell_methods_mode_str)) return;
121    CTimer::get("XIOS").resume();
122    fieldgroup_hdl->cell_methods_mode.fromString(cell_methods_mode_str);
123    CTimer::get("XIOS").suspend();
124  }
125
126  void cxios_get_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods_mode, int cell_methods_mode_size)
127  {
128    CTimer::get("XIOS").resume();
129    if (!string_copy(fieldgroup_hdl->cell_methods_mode.getInheritedStringValue(), cell_methods_mode, cell_methods_mode_size))
130      ERROR("void cxios_get_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods_mode, int cell_methods_mode_size)", << "Input string is too short");
131    CTimer::get("XIOS").suspend();
132  }
133
134  bool cxios_is_defined_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl)
135  {
136     CTimer::get("XIOS").resume();
137     bool isDefined = fieldgroup_hdl->cell_methods_mode.hasInheritedValue();
138     CTimer::get("XIOS").suspend();
139     return isDefined;
140  }
141
142
143  void cxios_set_fieldgroup_check_if_active(fieldgroup_Ptr fieldgroup_hdl, bool check_if_active)
144  {
145    CTimer::get("XIOS").resume();
146    fieldgroup_hdl->check_if_active.setValue(check_if_active);
147    CTimer::get("XIOS").suspend();
148  }
149
150  void cxios_get_fieldgroup_check_if_active(fieldgroup_Ptr fieldgroup_hdl, bool* check_if_active)
151  {
152    CTimer::get("XIOS").resume();
153    *check_if_active = fieldgroup_hdl->check_if_active.getInheritedValue();
154    CTimer::get("XIOS").suspend();
155  }
156
157  bool cxios_is_defined_fieldgroup_check_if_active(fieldgroup_Ptr fieldgroup_hdl)
158  {
159     CTimer::get("XIOS").resume();
160     bool isDefined = fieldgroup_hdl->check_if_active.hasInheritedValue();
161     CTimer::get("XIOS").suspend();
162     return isDefined;
163  }
164
165
166  void cxios_set_fieldgroup_chunking_blocksize_target(fieldgroup_Ptr fieldgroup_hdl, double chunking_blocksize_target)
167  {
168    CTimer::get("XIOS").resume();
169    fieldgroup_hdl->chunking_blocksize_target.setValue(chunking_blocksize_target);
170    CTimer::get("XIOS").suspend();
171  }
172
173  void cxios_get_fieldgroup_chunking_blocksize_target(fieldgroup_Ptr fieldgroup_hdl, double* chunking_blocksize_target)
174  {
175    CTimer::get("XIOS").resume();
176    *chunking_blocksize_target = fieldgroup_hdl->chunking_blocksize_target.getInheritedValue();
177    CTimer::get("XIOS").suspend();
178  }
179
180  bool cxios_is_defined_fieldgroup_chunking_blocksize_target(fieldgroup_Ptr fieldgroup_hdl)
181  {
182     CTimer::get("XIOS").resume();
183     bool isDefined = fieldgroup_hdl->chunking_blocksize_target.hasInheritedValue();
184     CTimer::get("XIOS").suspend();
185     return isDefined;
186  }
187
188
189  void cxios_set_fieldgroup_comment(fieldgroup_Ptr fieldgroup_hdl, const char * comment, int comment_size)
190  {
191    std::string comment_str;
192    if (!cstr2string(comment, comment_size, comment_str)) return;
193    CTimer::get("XIOS").resume();
194    fieldgroup_hdl->comment.setValue(comment_str);
195    CTimer::get("XIOS").suspend();
196  }
197
198  void cxios_get_fieldgroup_comment(fieldgroup_Ptr fieldgroup_hdl, char * comment, int comment_size)
199  {
200    CTimer::get("XIOS").resume();
201    if (!string_copy(fieldgroup_hdl->comment.getInheritedValue(), comment, comment_size))
202      ERROR("void cxios_get_fieldgroup_comment(fieldgroup_Ptr fieldgroup_hdl, char * comment, int comment_size)", << "Input string is too short");
203    CTimer::get("XIOS").suspend();
204  }
205
206  bool cxios_is_defined_fieldgroup_comment(fieldgroup_Ptr fieldgroup_hdl)
207  {
208     CTimer::get("XIOS").resume();
209     bool isDefined = fieldgroup_hdl->comment.hasInheritedValue();
210     CTimer::get("XIOS").suspend();
211     return isDefined;
212  }
213
214
215  void cxios_set_fieldgroup_compression_level(fieldgroup_Ptr fieldgroup_hdl, int compression_level)
216  {
217    CTimer::get("XIOS").resume();
218    fieldgroup_hdl->compression_level.setValue(compression_level);
219    CTimer::get("XIOS").suspend();
220  }
221
222  void cxios_get_fieldgroup_compression_level(fieldgroup_Ptr fieldgroup_hdl, int* compression_level)
223  {
224    CTimer::get("XIOS").resume();
225    *compression_level = fieldgroup_hdl->compression_level.getInheritedValue();
226    CTimer::get("XIOS").suspend();
227  }
228
229  bool cxios_is_defined_fieldgroup_compression_level(fieldgroup_Ptr fieldgroup_hdl)
230  {
231     CTimer::get("XIOS").resume();
232     bool isDefined = fieldgroup_hdl->compression_level.hasInheritedValue();
233     CTimer::get("XIOS").suspend();
234     return isDefined;
235  }
236
237
238  void cxios_set_fieldgroup_compression_params(fieldgroup_Ptr fieldgroup_hdl, double* compression_params, int* extent)
239  {
240    CTimer::get("XIOS").resume();
241    CArray<double,1> tmp(compression_params, shape(extent[0]), neverDeleteData);
242    fieldgroup_hdl->compression_params.reference(tmp.copy());
243     CTimer::get("XIOS").suspend();
244  }
245
246  void cxios_get_fieldgroup_compression_params(fieldgroup_Ptr fieldgroup_hdl, double* compression_params, int* extent)
247  {
248    CTimer::get("XIOS").resume();
249    CArray<double,1> tmp(compression_params, shape(extent[0]), neverDeleteData);
250    tmp=fieldgroup_hdl->compression_params.getInheritedValue();
251     CTimer::get("XIOS").suspend();
252  }
253
254  bool cxios_is_defined_fieldgroup_compression_params(fieldgroup_Ptr fieldgroup_hdl)
255  {
256     CTimer::get("XIOS").resume();
257     bool isDefined = fieldgroup_hdl->compression_params.hasInheritedValue();
258     CTimer::get("XIOS").suspend();
259     return isDefined;
260  }
261
262
263  void cxios_set_fieldgroup_compression_type(fieldgroup_Ptr fieldgroup_hdl, const char * compression_type, int compression_type_size)
264  {
265    std::string compression_type_str;
266    if (!cstr2string(compression_type, compression_type_size, compression_type_str)) return;
267    CTimer::get("XIOS").resume();
268    fieldgroup_hdl->compression_type.setValue(compression_type_str);
269    CTimer::get("XIOS").suspend();
270  }
271
272  void cxios_get_fieldgroup_compression_type(fieldgroup_Ptr fieldgroup_hdl, char * compression_type, int compression_type_size)
273  {
274    CTimer::get("XIOS").resume();
275    if (!string_copy(fieldgroup_hdl->compression_type.getInheritedValue(), compression_type, compression_type_size))
276      ERROR("void cxios_get_fieldgroup_compression_type(fieldgroup_Ptr fieldgroup_hdl, char * compression_type, int compression_type_size)", << "Input string is too short");
277    CTimer::get("XIOS").suspend();
278  }
279
280  bool cxios_is_defined_fieldgroup_compression_type(fieldgroup_Ptr fieldgroup_hdl)
281  {
282     CTimer::get("XIOS").resume();
283     bool isDefined = fieldgroup_hdl->compression_type.hasInheritedValue();
284     CTimer::get("XIOS").suspend();
285     return isDefined;
286  }
287
288
289  void cxios_set_fieldgroup_conversion_by_netcdf(fieldgroup_Ptr fieldgroup_hdl, bool conversion_by_netcdf)
290  {
291    CTimer::get("XIOS").resume();
292    fieldgroup_hdl->conversion_by_netcdf.setValue(conversion_by_netcdf);
293    CTimer::get("XIOS").suspend();
294  }
295
296  void cxios_get_fieldgroup_conversion_by_netcdf(fieldgroup_Ptr fieldgroup_hdl, bool* conversion_by_netcdf)
297  {
298    CTimer::get("XIOS").resume();
299    *conversion_by_netcdf = fieldgroup_hdl->conversion_by_netcdf.getInheritedValue();
300    CTimer::get("XIOS").suspend();
301  }
302
303  bool cxios_is_defined_fieldgroup_conversion_by_netcdf(fieldgroup_Ptr fieldgroup_hdl)
304  {
305     CTimer::get("XIOS").resume();
306     bool isDefined = fieldgroup_hdl->conversion_by_netcdf.hasInheritedValue();
307     CTimer::get("XIOS").suspend();
308     return isDefined;
309  }
310
311
312  void cxios_set_fieldgroup_default_value(fieldgroup_Ptr fieldgroup_hdl, double default_value)
313  {
314    CTimer::get("XIOS").resume();
315    fieldgroup_hdl->default_value.setValue(default_value);
316    CTimer::get("XIOS").suspend();
317  }
318
319  void cxios_get_fieldgroup_default_value(fieldgroup_Ptr fieldgroup_hdl, double* default_value)
320  {
321    CTimer::get("XIOS").resume();
322    *default_value = fieldgroup_hdl->default_value.getInheritedValue();
323    CTimer::get("XIOS").suspend();
324  }
325
326  bool cxios_is_defined_fieldgroup_default_value(fieldgroup_Ptr fieldgroup_hdl)
327  {
328     CTimer::get("XIOS").resume();
329     bool isDefined = fieldgroup_hdl->default_value.hasInheritedValue();
330     CTimer::get("XIOS").suspend();
331     return isDefined;
332  }
333
334
335  void cxios_set_fieldgroup_detect_missing_value(fieldgroup_Ptr fieldgroup_hdl, bool detect_missing_value)
336  {
337    CTimer::get("XIOS").resume();
338    fieldgroup_hdl->detect_missing_value.setValue(detect_missing_value);
339    CTimer::get("XIOS").suspend();
340  }
341
342  void cxios_get_fieldgroup_detect_missing_value(fieldgroup_Ptr fieldgroup_hdl, bool* detect_missing_value)
343  {
344    CTimer::get("XIOS").resume();
345    *detect_missing_value = fieldgroup_hdl->detect_missing_value.getInheritedValue();
346    CTimer::get("XIOS").suspend();
347  }
348
349  bool cxios_is_defined_fieldgroup_detect_missing_value(fieldgroup_Ptr fieldgroup_hdl)
350  {
351     CTimer::get("XIOS").resume();
352     bool isDefined = fieldgroup_hdl->detect_missing_value.hasInheritedValue();
353     CTimer::get("XIOS").suspend();
354     return isDefined;
355  }
356
357
358  void cxios_set_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl, const char * domain_ref, int domain_ref_size)
359  {
360    std::string domain_ref_str;
361    if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return;
362    CTimer::get("XIOS").resume();
363    fieldgroup_hdl->domain_ref.setValue(domain_ref_str);
364    CTimer::get("XIOS").suspend();
365  }
366
367  void cxios_get_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl, char * domain_ref, int domain_ref_size)
368  {
369    CTimer::get("XIOS").resume();
370    if (!string_copy(fieldgroup_hdl->domain_ref.getInheritedValue(), domain_ref, domain_ref_size))
371      ERROR("void cxios_get_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl, char * domain_ref, int domain_ref_size)", << "Input string is too short");
372    CTimer::get("XIOS").suspend();
373  }
374
375  bool cxios_is_defined_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl)
376  {
377     CTimer::get("XIOS").resume();
378     bool isDefined = fieldgroup_hdl->domain_ref.hasInheritedValue();
379     CTimer::get("XIOS").suspend();
380     return isDefined;
381  }
382
383
384  void cxios_set_fieldgroup_enabled(fieldgroup_Ptr fieldgroup_hdl, bool enabled)
385  {
386    CTimer::get("XIOS").resume();
387    fieldgroup_hdl->enabled.setValue(enabled);
388    CTimer::get("XIOS").suspend();
389  }
390
391  void cxios_get_fieldgroup_enabled(fieldgroup_Ptr fieldgroup_hdl, bool* enabled)
392  {
393    CTimer::get("XIOS").resume();
394    *enabled = fieldgroup_hdl->enabled.getInheritedValue();
395    CTimer::get("XIOS").suspend();
396  }
397
398  bool cxios_is_defined_fieldgroup_enabled(fieldgroup_Ptr fieldgroup_hdl)
399  {
400     CTimer::get("XIOS").resume();
401     bool isDefined = fieldgroup_hdl->enabled.hasInheritedValue();
402     CTimer::get("XIOS").suspend();
403     return isDefined;
404  }
405
406
407  void cxios_set_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl, const char * expr, int expr_size)
408  {
409    std::string expr_str;
410    if (!cstr2string(expr, expr_size, expr_str)) return;
411    CTimer::get("XIOS").resume();
412    fieldgroup_hdl->expr.setValue(expr_str);
413    CTimer::get("XIOS").suspend();
414  }
415
416  void cxios_get_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl, char * expr, int expr_size)
417  {
418    CTimer::get("XIOS").resume();
419    if (!string_copy(fieldgroup_hdl->expr.getInheritedValue(), expr, expr_size))
420      ERROR("void cxios_get_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl, char * expr, int expr_size)", << "Input string is too short");
421    CTimer::get("XIOS").suspend();
422  }
423
424  bool cxios_is_defined_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl)
425  {
426     CTimer::get("XIOS").resume();
427     bool isDefined = fieldgroup_hdl->expr.hasInheritedValue();
428     CTimer::get("XIOS").suspend();
429     return isDefined;
430  }
431
432
433  void cxios_set_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl, const char * field_ref, int field_ref_size)
434  {
435    std::string field_ref_str;
436    if (!cstr2string(field_ref, field_ref_size, field_ref_str)) return;
437    CTimer::get("XIOS").resume();
438    fieldgroup_hdl->field_ref.setValue(field_ref_str);
439    CTimer::get("XIOS").suspend();
440  }
441
442  void cxios_get_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl, char * field_ref, int field_ref_size)
443  {
444    CTimer::get("XIOS").resume();
445    if (!string_copy(fieldgroup_hdl->field_ref.getInheritedValue(), field_ref, field_ref_size))
446      ERROR("void cxios_get_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl, char * field_ref, int field_ref_size)", << "Input string is too short");
447    CTimer::get("XIOS").suspend();
448  }
449
450  bool cxios_is_defined_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl)
451  {
452     CTimer::get("XIOS").resume();
453     bool isDefined = fieldgroup_hdl->field_ref.hasInheritedValue();
454     CTimer::get("XIOS").suspend();
455     return isDefined;
456  }
457
458
459  void cxios_set_fieldgroup_freq_offset(fieldgroup_Ptr fieldgroup_hdl, cxios_duration freq_offset_c)
460  {
461    CTimer::get("XIOS").resume();
462    fieldgroup_hdl->freq_offset.allocate();
463    CDuration& freq_offset = fieldgroup_hdl->freq_offset.get();
464    freq_offset.year = freq_offset_c.year;
465    freq_offset.month = freq_offset_c.month;
466    freq_offset.day = freq_offset_c.day;
467    freq_offset.hour = freq_offset_c.hour;
468    freq_offset.minute = freq_offset_c.minute;
469    freq_offset.second = freq_offset_c.second;
470    freq_offset.timestep = freq_offset_c.timestep;
471    CTimer::get("XIOS").suspend();
472  }
473
474  void cxios_get_fieldgroup_freq_offset(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* freq_offset_c)
475  {
476    CTimer::get("XIOS").resume();
477    CDuration freq_offset = fieldgroup_hdl->freq_offset.getInheritedValue();
478    freq_offset_c->year = freq_offset.year;
479    freq_offset_c->month = freq_offset.month;
480    freq_offset_c->day = freq_offset.day;
481    freq_offset_c->hour = freq_offset.hour;
482    freq_offset_c->minute = freq_offset.minute;
483    freq_offset_c->second = freq_offset.second;
484    freq_offset_c->timestep = freq_offset.timestep;
485    CTimer::get("XIOS").suspend();
486  }
487
488  bool cxios_is_defined_fieldgroup_freq_offset(fieldgroup_Ptr fieldgroup_hdl)
489  {
490     CTimer::get("XIOS").resume();
491     bool isDefined = fieldgroup_hdl->freq_offset.hasInheritedValue();
492     CTimer::get("XIOS").suspend();
493     return isDefined;
494  }
495
496
497  void cxios_set_fieldgroup_freq_op(fieldgroup_Ptr fieldgroup_hdl, cxios_duration freq_op_c)
498  {
499    CTimer::get("XIOS").resume();
500    fieldgroup_hdl->freq_op.allocate();
501    CDuration& freq_op = fieldgroup_hdl->freq_op.get();
502    freq_op.year = freq_op_c.year;
503    freq_op.month = freq_op_c.month;
504    freq_op.day = freq_op_c.day;
505    freq_op.hour = freq_op_c.hour;
506    freq_op.minute = freq_op_c.minute;
507    freq_op.second = freq_op_c.second;
508    freq_op.timestep = freq_op_c.timestep;
509    CTimer::get("XIOS").suspend();
510  }
511
512  void cxios_get_fieldgroup_freq_op(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* freq_op_c)
513  {
514    CTimer::get("XIOS").resume();
515    CDuration freq_op = fieldgroup_hdl->freq_op.getInheritedValue();
516    freq_op_c->year = freq_op.year;
517    freq_op_c->month = freq_op.month;
518    freq_op_c->day = freq_op.day;
519    freq_op_c->hour = freq_op.hour;
520    freq_op_c->minute = freq_op.minute;
521    freq_op_c->second = freq_op.second;
522    freq_op_c->timestep = freq_op.timestep;
523    CTimer::get("XIOS").suspend();
524  }
525
526  bool cxios_is_defined_fieldgroup_freq_op(fieldgroup_Ptr fieldgroup_hdl)
527  {
528     CTimer::get("XIOS").resume();
529     bool isDefined = fieldgroup_hdl->freq_op.hasInheritedValue();
530     CTimer::get("XIOS").suspend();
531     return isDefined;
532  }
533
534
535  void cxios_set_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl, const char * grid_path, int grid_path_size)
536  {
537    std::string grid_path_str;
538    if (!cstr2string(grid_path, grid_path_size, grid_path_str)) return;
539    CTimer::get("XIOS").resume();
540    fieldgroup_hdl->grid_path.setValue(grid_path_str);
541    CTimer::get("XIOS").suspend();
542  }
543
544  void cxios_get_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl, char * grid_path, int grid_path_size)
545  {
546    CTimer::get("XIOS").resume();
547    if (!string_copy(fieldgroup_hdl->grid_path.getInheritedValue(), grid_path, grid_path_size))
548      ERROR("void cxios_get_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl, char * grid_path, int grid_path_size)", << "Input string is too short");
549    CTimer::get("XIOS").suspend();
550  }
551
552  bool cxios_is_defined_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl)
553  {
554     CTimer::get("XIOS").resume();
555     bool isDefined = fieldgroup_hdl->grid_path.hasInheritedValue();
556     CTimer::get("XIOS").suspend();
557     return isDefined;
558  }
559
560
561  void cxios_set_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl, const char * grid_ref, int grid_ref_size)
562  {
563    std::string grid_ref_str;
564    if (!cstr2string(grid_ref, grid_ref_size, grid_ref_str)) return;
565    CTimer::get("XIOS").resume();
566    fieldgroup_hdl->grid_ref.setValue(grid_ref_str);
567    CTimer::get("XIOS").suspend();
568  }
569
570  void cxios_get_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl, char * grid_ref, int grid_ref_size)
571  {
572    CTimer::get("XIOS").resume();
573    if (!string_copy(fieldgroup_hdl->grid_ref.getInheritedValue(), grid_ref, grid_ref_size))
574      ERROR("void cxios_get_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl, char * grid_ref, int grid_ref_size)", << "Input string is too short");
575    CTimer::get("XIOS").suspend();
576  }
577
578  bool cxios_is_defined_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl)
579  {
580     CTimer::get("XIOS").resume();
581     bool isDefined = fieldgroup_hdl->grid_ref.hasInheritedValue();
582     CTimer::get("XIOS").suspend();
583     return isDefined;
584  }
585
586
587  void cxios_set_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl, const char * group_ref, int group_ref_size)
588  {
589    std::string group_ref_str;
590    if (!cstr2string(group_ref, group_ref_size, group_ref_str)) return;
591    CTimer::get("XIOS").resume();
592    fieldgroup_hdl->group_ref.setValue(group_ref_str);
593    CTimer::get("XIOS").suspend();
594  }
595
596  void cxios_get_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl, char * group_ref, int group_ref_size)
597  {
598    CTimer::get("XIOS").resume();
599    if (!string_copy(fieldgroup_hdl->group_ref.getInheritedValue(), group_ref, group_ref_size))
600      ERROR("void cxios_get_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl, char * group_ref, int group_ref_size)", << "Input string is too short");
601    CTimer::get("XIOS").suspend();
602  }
603
604  bool cxios_is_defined_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl)
605  {
606     CTimer::get("XIOS").resume();
607     bool isDefined = fieldgroup_hdl->group_ref.hasInheritedValue();
608     CTimer::get("XIOS").suspend();
609     return isDefined;
610  }
611
612
613  void cxios_set_fieldgroup_indexed_output(fieldgroup_Ptr fieldgroup_hdl, bool indexed_output)
614  {
615    CTimer::get("XIOS").resume();
616    fieldgroup_hdl->indexed_output.setValue(indexed_output);
617    CTimer::get("XIOS").suspend();
618  }
619
620  void cxios_get_fieldgroup_indexed_output(fieldgroup_Ptr fieldgroup_hdl, bool* indexed_output)
621  {
622    CTimer::get("XIOS").resume();
623    *indexed_output = fieldgroup_hdl->indexed_output.getInheritedValue();
624    CTimer::get("XIOS").suspend();
625  }
626
627  bool cxios_is_defined_fieldgroup_indexed_output(fieldgroup_Ptr fieldgroup_hdl)
628  {
629     CTimer::get("XIOS").resume();
630     bool isDefined = fieldgroup_hdl->indexed_output.hasInheritedValue();
631     CTimer::get("XIOS").suspend();
632     return isDefined;
633  }
634
635
636  void cxios_set_fieldgroup_level(fieldgroup_Ptr fieldgroup_hdl, int level)
637  {
638    CTimer::get("XIOS").resume();
639    fieldgroup_hdl->level.setValue(level);
640    CTimer::get("XIOS").suspend();
641  }
642
643  void cxios_get_fieldgroup_level(fieldgroup_Ptr fieldgroup_hdl, int* level)
644  {
645    CTimer::get("XIOS").resume();
646    *level = fieldgroup_hdl->level.getInheritedValue();
647    CTimer::get("XIOS").suspend();
648  }
649
650  bool cxios_is_defined_fieldgroup_level(fieldgroup_Ptr fieldgroup_hdl)
651  {
652     CTimer::get("XIOS").resume();
653     bool isDefined = fieldgroup_hdl->level.hasInheritedValue();
654     CTimer::get("XIOS").suspend();
655     return isDefined;
656  }
657
658
659  void cxios_set_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl, const char * long_name, int long_name_size)
660  {
661    std::string long_name_str;
662    if (!cstr2string(long_name, long_name_size, long_name_str)) return;
663    CTimer::get("XIOS").resume();
664    fieldgroup_hdl->long_name.setValue(long_name_str);
665    CTimer::get("XIOS").suspend();
666  }
667
668  void cxios_get_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl, char * long_name, int long_name_size)
669  {
670    CTimer::get("XIOS").resume();
671    if (!string_copy(fieldgroup_hdl->long_name.getInheritedValue(), long_name, long_name_size))
672      ERROR("void cxios_get_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl, char * long_name, int long_name_size)", << "Input string is too short");
673    CTimer::get("XIOS").suspend();
674  }
675
676  bool cxios_is_defined_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl)
677  {
678     CTimer::get("XIOS").resume();
679     bool isDefined = fieldgroup_hdl->long_name.hasInheritedValue();
680     CTimer::get("XIOS").suspend();
681     return isDefined;
682  }
683
684
685  void cxios_set_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl, const char * name, int name_size)
686  {
687    std::string name_str;
688    if (!cstr2string(name, name_size, name_str)) return;
689    CTimer::get("XIOS").resume();
690    fieldgroup_hdl->name.setValue(name_str);
691    CTimer::get("XIOS").suspend();
692  }
693
694  void cxios_get_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl, char * name, int name_size)
695  {
696    CTimer::get("XIOS").resume();
697    if (!string_copy(fieldgroup_hdl->name.getInheritedValue(), name, name_size))
698      ERROR("void cxios_get_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl, char * name, int name_size)", << "Input string is too short");
699    CTimer::get("XIOS").suspend();
700  }
701
702  bool cxios_is_defined_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl)
703  {
704     CTimer::get("XIOS").resume();
705     bool isDefined = fieldgroup_hdl->name.hasInheritedValue();
706     CTimer::get("XIOS").suspend();
707     return isDefined;
708  }
709
710
711  void cxios_set_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl, const char * operation, int operation_size)
712  {
713    std::string operation_str;
714    if (!cstr2string(operation, operation_size, operation_str)) return;
715    CTimer::get("XIOS").resume();
716    fieldgroup_hdl->operation.setValue(operation_str);
717    CTimer::get("XIOS").suspend();
718  }
719
720  void cxios_get_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl, char * operation, int operation_size)
721  {
722    CTimer::get("XIOS").resume();
723    if (!string_copy(fieldgroup_hdl->operation.getInheritedValue(), operation, operation_size))
724      ERROR("void cxios_get_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl, char * operation, int operation_size)", << "Input string is too short");
725    CTimer::get("XIOS").suspend();
726  }
727
728  bool cxios_is_defined_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl)
729  {
730     CTimer::get("XIOS").resume();
731     bool isDefined = fieldgroup_hdl->operation.hasInheritedValue();
732     CTimer::get("XIOS").suspend();
733     return isDefined;
734  }
735
736
737  void cxios_set_fieldgroup_prec(fieldgroup_Ptr fieldgroup_hdl, int prec)
738  {
739    CTimer::get("XIOS").resume();
740    fieldgroup_hdl->prec.setValue(prec);
741    CTimer::get("XIOS").suspend();
742  }
743
744  void cxios_get_fieldgroup_prec(fieldgroup_Ptr fieldgroup_hdl, int* prec)
745  {
746    CTimer::get("XIOS").resume();
747    *prec = fieldgroup_hdl->prec.getInheritedValue();
748    CTimer::get("XIOS").suspend();
749  }
750
751  bool cxios_is_defined_fieldgroup_prec(fieldgroup_Ptr fieldgroup_hdl)
752  {
753     CTimer::get("XIOS").resume();
754     bool isDefined = fieldgroup_hdl->prec.hasInheritedValue();
755     CTimer::get("XIOS").suspend();
756     return isDefined;
757  }
758
759
760  void cxios_set_fieldgroup_read_access(fieldgroup_Ptr fieldgroup_hdl, bool read_access)
761  {
762    CTimer::get("XIOS").resume();
763    fieldgroup_hdl->read_access.setValue(read_access);
764    CTimer::get("XIOS").suspend();
765  }
766
767  void cxios_get_fieldgroup_read_access(fieldgroup_Ptr fieldgroup_hdl, bool* read_access)
768  {
769    CTimer::get("XIOS").resume();
770    *read_access = fieldgroup_hdl->read_access.getInheritedValue();
771    CTimer::get("XIOS").suspend();
772  }
773
774  bool cxios_is_defined_fieldgroup_read_access(fieldgroup_Ptr fieldgroup_hdl)
775  {
776     CTimer::get("XIOS").resume();
777     bool isDefined = fieldgroup_hdl->read_access.hasInheritedValue();
778     CTimer::get("XIOS").suspend();
779     return isDefined;
780  }
781
782
783  void cxios_set_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, const char * scalar_ref, int scalar_ref_size)
784  {
785    std::string scalar_ref_str;
786    if (!cstr2string(scalar_ref, scalar_ref_size, scalar_ref_str)) return;
787    CTimer::get("XIOS").resume();
788    fieldgroup_hdl->scalar_ref.setValue(scalar_ref_str);
789    CTimer::get("XIOS").suspend();
790  }
791
792  void cxios_get_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, char * scalar_ref, int scalar_ref_size)
793  {
794    CTimer::get("XIOS").resume();
795    if (!string_copy(fieldgroup_hdl->scalar_ref.getInheritedValue(), scalar_ref, scalar_ref_size))
796      ERROR("void cxios_get_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, char * scalar_ref, int scalar_ref_size)", << "Input string is too short");
797    CTimer::get("XIOS").suspend();
798  }
799
800  bool cxios_is_defined_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl)
801  {
802     CTimer::get("XIOS").resume();
803     bool isDefined = fieldgroup_hdl->scalar_ref.hasInheritedValue();
804     CTimer::get("XIOS").suspend();
805     return isDefined;
806  }
807
808
809  void cxios_set_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl, double scale_factor)
810  {
811    CTimer::get("XIOS").resume();
812    fieldgroup_hdl->scale_factor.setValue(scale_factor);
813    CTimer::get("XIOS").suspend();
814  }
815
816  void cxios_get_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl, double* scale_factor)
817  {
818    CTimer::get("XIOS").resume();
819    *scale_factor = fieldgroup_hdl->scale_factor.getInheritedValue();
820    CTimer::get("XIOS").suspend();
821  }
822
823  bool cxios_is_defined_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl)
824  {
825     CTimer::get("XIOS").resume();
826     bool isDefined = fieldgroup_hdl->scale_factor.hasInheritedValue();
827     CTimer::get("XIOS").suspend();
828     return isDefined;
829  }
830
831
832  void cxios_set_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl, const char * standard_name, int standard_name_size)
833  {
834    std::string standard_name_str;
835    if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;
836    CTimer::get("XIOS").resume();
837    fieldgroup_hdl->standard_name.setValue(standard_name_str);
838    CTimer::get("XIOS").suspend();
839  }
840
841  void cxios_get_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl, char * standard_name, int standard_name_size)
842  {
843    CTimer::get("XIOS").resume();
844    if (!string_copy(fieldgroup_hdl->standard_name.getInheritedValue(), standard_name, standard_name_size))
845      ERROR("void cxios_get_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl, char * standard_name, int standard_name_size)", << "Input string is too short");
846    CTimer::get("XIOS").suspend();
847  }
848
849  bool cxios_is_defined_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl)
850  {
851     CTimer::get("XIOS").resume();
852     bool isDefined = fieldgroup_hdl->standard_name.hasInheritedValue();
853     CTimer::get("XIOS").suspend();
854     return isDefined;
855  }
856
857
858  void cxios_set_fieldgroup_ts_enabled(fieldgroup_Ptr fieldgroup_hdl, bool ts_enabled)
859  {
860    CTimer::get("XIOS").resume();
861    fieldgroup_hdl->ts_enabled.setValue(ts_enabled);
862    CTimer::get("XIOS").suspend();
863  }
864
865  void cxios_get_fieldgroup_ts_enabled(fieldgroup_Ptr fieldgroup_hdl, bool* ts_enabled)
866  {
867    CTimer::get("XIOS").resume();
868    *ts_enabled = fieldgroup_hdl->ts_enabled.getInheritedValue();
869    CTimer::get("XIOS").suspend();
870  }
871
872  bool cxios_is_defined_fieldgroup_ts_enabled(fieldgroup_Ptr fieldgroup_hdl)
873  {
874     CTimer::get("XIOS").resume();
875     bool isDefined = fieldgroup_hdl->ts_enabled.hasInheritedValue();
876     CTimer::get("XIOS").suspend();
877     return isDefined;
878  }
879
880
881  void cxios_set_fieldgroup_ts_split_freq(fieldgroup_Ptr fieldgroup_hdl, cxios_duration ts_split_freq_c)
882  {
883    CTimer::get("XIOS").resume();
884    fieldgroup_hdl->ts_split_freq.allocate();
885    CDuration& ts_split_freq = fieldgroup_hdl->ts_split_freq.get();
886    ts_split_freq.year = ts_split_freq_c.year;
887    ts_split_freq.month = ts_split_freq_c.month;
888    ts_split_freq.day = ts_split_freq_c.day;
889    ts_split_freq.hour = ts_split_freq_c.hour;
890    ts_split_freq.minute = ts_split_freq_c.minute;
891    ts_split_freq.second = ts_split_freq_c.second;
892    ts_split_freq.timestep = ts_split_freq_c.timestep;
893    CTimer::get("XIOS").suspend();
894  }
895
896  void cxios_get_fieldgroup_ts_split_freq(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* ts_split_freq_c)
897  {
898    CTimer::get("XIOS").resume();
899    CDuration ts_split_freq = fieldgroup_hdl->ts_split_freq.getInheritedValue();
900    ts_split_freq_c->year = ts_split_freq.year;
901    ts_split_freq_c->month = ts_split_freq.month;
902    ts_split_freq_c->day = ts_split_freq.day;
903    ts_split_freq_c->hour = ts_split_freq.hour;
904    ts_split_freq_c->minute = ts_split_freq.minute;
905    ts_split_freq_c->second = ts_split_freq.second;
906    ts_split_freq_c->timestep = ts_split_freq.timestep;
907    CTimer::get("XIOS").suspend();
908  }
909
910  bool cxios_is_defined_fieldgroup_ts_split_freq(fieldgroup_Ptr fieldgroup_hdl)
911  {
912     CTimer::get("XIOS").resume();
913     bool isDefined = fieldgroup_hdl->ts_split_freq.hasInheritedValue();
914     CTimer::get("XIOS").suspend();
915     return isDefined;
916  }
917
918
919  void cxios_set_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl, const char * unit, int unit_size)
920  {
921    std::string unit_str;
922    if (!cstr2string(unit, unit_size, unit_str)) return;
923    CTimer::get("XIOS").resume();
924    fieldgroup_hdl->unit.setValue(unit_str);
925    CTimer::get("XIOS").suspend();
926  }
927
928  void cxios_get_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl, char * unit, int unit_size)
929  {
930    CTimer::get("XIOS").resume();
931    if (!string_copy(fieldgroup_hdl->unit.getInheritedValue(), unit, unit_size))
932      ERROR("void cxios_get_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl, char * unit, int unit_size)", << "Input string is too short");
933    CTimer::get("XIOS").suspend();
934  }
935
936  bool cxios_is_defined_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl)
937  {
938     CTimer::get("XIOS").resume();
939     bool isDefined = fieldgroup_hdl->unit.hasInheritedValue();
940     CTimer::get("XIOS").suspend();
941     return isDefined;
942  }
943
944
945  void cxios_set_fieldgroup_valid_max(fieldgroup_Ptr fieldgroup_hdl, double valid_max)
946  {
947    CTimer::get("XIOS").resume();
948    fieldgroup_hdl->valid_max.setValue(valid_max);
949    CTimer::get("XIOS").suspend();
950  }
951
952  void cxios_get_fieldgroup_valid_max(fieldgroup_Ptr fieldgroup_hdl, double* valid_max)
953  {
954    CTimer::get("XIOS").resume();
955    *valid_max = fieldgroup_hdl->valid_max.getInheritedValue();
956    CTimer::get("XIOS").suspend();
957  }
958
959  bool cxios_is_defined_fieldgroup_valid_max(fieldgroup_Ptr fieldgroup_hdl)
960  {
961     CTimer::get("XIOS").resume();
962     bool isDefined = fieldgroup_hdl->valid_max.hasInheritedValue();
963     CTimer::get("XIOS").suspend();
964     return isDefined;
965  }
966
967
968  void cxios_set_fieldgroup_valid_min(fieldgroup_Ptr fieldgroup_hdl, double valid_min)
969  {
970    CTimer::get("XIOS").resume();
971    fieldgroup_hdl->valid_min.setValue(valid_min);
972    CTimer::get("XIOS").suspend();
973  }
974
975  void cxios_get_fieldgroup_valid_min(fieldgroup_Ptr fieldgroup_hdl, double* valid_min)
976  {
977    CTimer::get("XIOS").resume();
978    *valid_min = fieldgroup_hdl->valid_min.getInheritedValue();
979    CTimer::get("XIOS").suspend();
980  }
981
982  bool cxios_is_defined_fieldgroup_valid_min(fieldgroup_Ptr fieldgroup_hdl)
983  {
984     CTimer::get("XIOS").resume();
985     bool isDefined = fieldgroup_hdl->valid_min.hasInheritedValue();
986     CTimer::get("XIOS").suspend();
987     return isDefined;
988  }
989}
Note: See TracBrowser for help on using the repository browser.