source: XIOS/trunk/src/interface/c_attr/icfieldgroup_attr.cpp @ 1106

Last change on this file since 1106 was 1005, checked in by mhnguyen, 8 years ago

Updating Fortran interfaces

  • 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: 28.8 KB
Line 
1/* ************************************************************************** *
2 *               Interface auto generated - do not modify                     *
3 * ************************************************************************** */
4
5#include <boost/multi_array.hpp>
6#include <boost/shared_ptr.hpp>
7#include "xios.hpp"
8#include "attribute_template.hpp"
9#include "object_template.hpp"
10#include "group_template.hpp"
11#include "icutil.hpp"
12#include "icdate.hpp"
13#include "timer.hpp"
14#include "node_type.hpp"
15
16extern "C"
17{
18  typedef xios::CFieldGroup* fieldgroup_Ptr;
19
20  void cxios_set_fieldgroup_add_offset(fieldgroup_Ptr fieldgroup_hdl, double add_offset)
21  {
22    CTimer::get("XIOS").resume();
23    fieldgroup_hdl->add_offset.setValue(add_offset);
24    CTimer::get("XIOS").suspend();
25  }
26
27  void cxios_get_fieldgroup_add_offset(fieldgroup_Ptr fieldgroup_hdl, double* add_offset)
28  {
29    CTimer::get("XIOS").resume();
30    *add_offset = fieldgroup_hdl->add_offset.getInheritedValue();
31    CTimer::get("XIOS").suspend();
32  }
33
34  bool cxios_is_defined_fieldgroup_add_offset(fieldgroup_Ptr fieldgroup_hdl)
35  {
36     CTimer::get("XIOS").resume();
37     bool isDefined = fieldgroup_hdl->add_offset.hasInheritedValue();
38     CTimer::get("XIOS").suspend();
39     return isDefined;
40  }
41
42
43  void cxios_set_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl, const char * axis_ref, int axis_ref_size)
44  {
45    std::string axis_ref_str;
46    if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return;
47    CTimer::get("XIOS").resume();
48    fieldgroup_hdl->axis_ref.setValue(axis_ref_str);
49    CTimer::get("XIOS").suspend();
50  }
51
52  void cxios_get_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl, char * axis_ref, int axis_ref_size)
53  {
54    CTimer::get("XIOS").resume();
55    if (!string_copy(fieldgroup_hdl->axis_ref.getInheritedValue(), axis_ref, axis_ref_size))
56      ERROR("void cxios_get_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl, char * axis_ref, int axis_ref_size)", << "Input string is too short");
57    CTimer::get("XIOS").suspend();
58  }
59
60  bool cxios_is_defined_fieldgroup_axis_ref(fieldgroup_Ptr fieldgroup_hdl)
61  {
62     CTimer::get("XIOS").resume();
63     bool isDefined = fieldgroup_hdl->axis_ref.hasInheritedValue();
64     CTimer::get("XIOS").suspend();
65     return isDefined;
66  }
67
68
69  void cxios_set_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, const char * cell_methods, int cell_methods_size)
70  {
71    std::string cell_methods_str;
72    if (!cstr2string(cell_methods, cell_methods_size, cell_methods_str)) return;
73    CTimer::get("XIOS").resume();
74    fieldgroup_hdl->cell_methods.setValue(cell_methods_str);
75    CTimer::get("XIOS").suspend();
76  }
77
78  void cxios_get_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods, int cell_methods_size)
79  {
80    CTimer::get("XIOS").resume();
81    if (!string_copy(fieldgroup_hdl->cell_methods.getInheritedValue(), cell_methods, cell_methods_size))
82      ERROR("void cxios_get_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods, int cell_methods_size)", << "Input string is too short");
83    CTimer::get("XIOS").suspend();
84  }
85
86  bool cxios_is_defined_fieldgroup_cell_methods(fieldgroup_Ptr fieldgroup_hdl)
87  {
88     CTimer::get("XIOS").resume();
89     bool isDefined = fieldgroup_hdl->cell_methods.hasInheritedValue();
90     CTimer::get("XIOS").suspend();
91     return isDefined;
92  }
93
94
95  void cxios_set_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl, const char * cell_methods_mode, int cell_methods_mode_size)
96  {
97    std::string cell_methods_mode_str;
98    if (!cstr2string(cell_methods_mode, cell_methods_mode_size, cell_methods_mode_str)) return;
99    CTimer::get("XIOS").resume();
100    fieldgroup_hdl->cell_methods_mode.fromString(cell_methods_mode_str);
101    CTimer::get("XIOS").suspend();
102  }
103
104  void cxios_get_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl, char * cell_methods_mode, int cell_methods_mode_size)
105  {
106    CTimer::get("XIOS").resume();
107    if (!string_copy(fieldgroup_hdl->cell_methods_mode.getInheritedStringValue(), cell_methods_mode, cell_methods_mode_size))
108      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");
109    CTimer::get("XIOS").suspend();
110  }
111
112  bool cxios_is_defined_fieldgroup_cell_methods_mode(fieldgroup_Ptr fieldgroup_hdl)
113  {
114     CTimer::get("XIOS").resume();
115     bool isDefined = fieldgroup_hdl->cell_methods_mode.hasInheritedValue();
116     CTimer::get("XIOS").suspend();
117     return isDefined;
118  }
119
120
121  void cxios_set_fieldgroup_compression_level(fieldgroup_Ptr fieldgroup_hdl, int compression_level)
122  {
123    CTimer::get("XIOS").resume();
124    fieldgroup_hdl->compression_level.setValue(compression_level);
125    CTimer::get("XIOS").suspend();
126  }
127
128  void cxios_get_fieldgroup_compression_level(fieldgroup_Ptr fieldgroup_hdl, int* compression_level)
129  {
130    CTimer::get("XIOS").resume();
131    *compression_level = fieldgroup_hdl->compression_level.getInheritedValue();
132    CTimer::get("XIOS").suspend();
133  }
134
135  bool cxios_is_defined_fieldgroup_compression_level(fieldgroup_Ptr fieldgroup_hdl)
136  {
137     CTimer::get("XIOS").resume();
138     bool isDefined = fieldgroup_hdl->compression_level.hasInheritedValue();
139     CTimer::get("XIOS").suspend();
140     return isDefined;
141  }
142
143
144  void cxios_set_fieldgroup_default_value(fieldgroup_Ptr fieldgroup_hdl, double default_value)
145  {
146    CTimer::get("XIOS").resume();
147    fieldgroup_hdl->default_value.setValue(default_value);
148    CTimer::get("XIOS").suspend();
149  }
150
151  void cxios_get_fieldgroup_default_value(fieldgroup_Ptr fieldgroup_hdl, double* default_value)
152  {
153    CTimer::get("XIOS").resume();
154    *default_value = fieldgroup_hdl->default_value.getInheritedValue();
155    CTimer::get("XIOS").suspend();
156  }
157
158  bool cxios_is_defined_fieldgroup_default_value(fieldgroup_Ptr fieldgroup_hdl)
159  {
160     CTimer::get("XIOS").resume();
161     bool isDefined = fieldgroup_hdl->default_value.hasInheritedValue();
162     CTimer::get("XIOS").suspend();
163     return isDefined;
164  }
165
166
167  void cxios_set_fieldgroup_detect_missing_value(fieldgroup_Ptr fieldgroup_hdl, bool detect_missing_value)
168  {
169    CTimer::get("XIOS").resume();
170    fieldgroup_hdl->detect_missing_value.setValue(detect_missing_value);
171    CTimer::get("XIOS").suspend();
172  }
173
174  void cxios_get_fieldgroup_detect_missing_value(fieldgroup_Ptr fieldgroup_hdl, bool* detect_missing_value)
175  {
176    CTimer::get("XIOS").resume();
177    *detect_missing_value = fieldgroup_hdl->detect_missing_value.getInheritedValue();
178    CTimer::get("XIOS").suspend();
179  }
180
181  bool cxios_is_defined_fieldgroup_detect_missing_value(fieldgroup_Ptr fieldgroup_hdl)
182  {
183     CTimer::get("XIOS").resume();
184     bool isDefined = fieldgroup_hdl->detect_missing_value.hasInheritedValue();
185     CTimer::get("XIOS").suspend();
186     return isDefined;
187  }
188
189
190  void cxios_set_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl, const char * domain_ref, int domain_ref_size)
191  {
192    std::string domain_ref_str;
193    if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return;
194    CTimer::get("XIOS").resume();
195    fieldgroup_hdl->domain_ref.setValue(domain_ref_str);
196    CTimer::get("XIOS").suspend();
197  }
198
199  void cxios_get_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl, char * domain_ref, int domain_ref_size)
200  {
201    CTimer::get("XIOS").resume();
202    if (!string_copy(fieldgroup_hdl->domain_ref.getInheritedValue(), domain_ref, domain_ref_size))
203      ERROR("void cxios_get_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl, char * domain_ref, int domain_ref_size)", << "Input string is too short");
204    CTimer::get("XIOS").suspend();
205  }
206
207  bool cxios_is_defined_fieldgroup_domain_ref(fieldgroup_Ptr fieldgroup_hdl)
208  {
209     CTimer::get("XIOS").resume();
210     bool isDefined = fieldgroup_hdl->domain_ref.hasInheritedValue();
211     CTimer::get("XIOS").suspend();
212     return isDefined;
213  }
214
215
216  void cxios_set_fieldgroup_enabled(fieldgroup_Ptr fieldgroup_hdl, bool enabled)
217  {
218    CTimer::get("XIOS").resume();
219    fieldgroup_hdl->enabled.setValue(enabled);
220    CTimer::get("XIOS").suspend();
221  }
222
223  void cxios_get_fieldgroup_enabled(fieldgroup_Ptr fieldgroup_hdl, bool* enabled)
224  {
225    CTimer::get("XIOS").resume();
226    *enabled = fieldgroup_hdl->enabled.getInheritedValue();
227    CTimer::get("XIOS").suspend();
228  }
229
230  bool cxios_is_defined_fieldgroup_enabled(fieldgroup_Ptr fieldgroup_hdl)
231  {
232     CTimer::get("XIOS").resume();
233     bool isDefined = fieldgroup_hdl->enabled.hasInheritedValue();
234     CTimer::get("XIOS").suspend();
235     return isDefined;
236  }
237
238
239  void cxios_set_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl, const char * expr, int expr_size)
240  {
241    std::string expr_str;
242    if (!cstr2string(expr, expr_size, expr_str)) return;
243    CTimer::get("XIOS").resume();
244    fieldgroup_hdl->expr.setValue(expr_str);
245    CTimer::get("XIOS").suspend();
246  }
247
248  void cxios_get_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl, char * expr, int expr_size)
249  {
250    CTimer::get("XIOS").resume();
251    if (!string_copy(fieldgroup_hdl->expr.getInheritedValue(), expr, expr_size))
252      ERROR("void cxios_get_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl, char * expr, int expr_size)", << "Input string is too short");
253    CTimer::get("XIOS").suspend();
254  }
255
256  bool cxios_is_defined_fieldgroup_expr(fieldgroup_Ptr fieldgroup_hdl)
257  {
258     CTimer::get("XIOS").resume();
259     bool isDefined = fieldgroup_hdl->expr.hasInheritedValue();
260     CTimer::get("XIOS").suspend();
261     return isDefined;
262  }
263
264
265  void cxios_set_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl, const char * field_ref, int field_ref_size)
266  {
267    std::string field_ref_str;
268    if (!cstr2string(field_ref, field_ref_size, field_ref_str)) return;
269    CTimer::get("XIOS").resume();
270    fieldgroup_hdl->field_ref.setValue(field_ref_str);
271    CTimer::get("XIOS").suspend();
272  }
273
274  void cxios_get_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl, char * field_ref, int field_ref_size)
275  {
276    CTimer::get("XIOS").resume();
277    if (!string_copy(fieldgroup_hdl->field_ref.getInheritedValue(), field_ref, field_ref_size))
278      ERROR("void cxios_get_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl, char * field_ref, int field_ref_size)", << "Input string is too short");
279    CTimer::get("XIOS").suspend();
280  }
281
282  bool cxios_is_defined_fieldgroup_field_ref(fieldgroup_Ptr fieldgroup_hdl)
283  {
284     CTimer::get("XIOS").resume();
285     bool isDefined = fieldgroup_hdl->field_ref.hasInheritedValue();
286     CTimer::get("XIOS").suspend();
287     return isDefined;
288  }
289
290
291  void cxios_set_fieldgroup_freq_offset(fieldgroup_Ptr fieldgroup_hdl, cxios_duration freq_offset_c)
292  {
293    CTimer::get("XIOS").resume();
294    fieldgroup_hdl->freq_offset.allocate();
295    CDuration& freq_offset = fieldgroup_hdl->freq_offset.get();
296    freq_offset.year = freq_offset_c.year;
297    freq_offset.month = freq_offset_c.month;
298    freq_offset.day = freq_offset_c.day;
299    freq_offset.hour = freq_offset_c.hour;
300    freq_offset.minute = freq_offset_c.minute;
301    freq_offset.second = freq_offset_c.second;
302    freq_offset.timestep = freq_offset_c.timestep;
303    CTimer::get("XIOS").suspend();
304  }
305
306  void cxios_get_fieldgroup_freq_offset(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* freq_offset_c)
307  {
308    CTimer::get("XIOS").resume();
309    CDuration freq_offset = fieldgroup_hdl->freq_offset.getInheritedValue();
310    freq_offset_c->year = freq_offset.year;
311    freq_offset_c->month = freq_offset.month;
312    freq_offset_c->day = freq_offset.day;
313    freq_offset_c->hour = freq_offset.hour;
314    freq_offset_c->minute = freq_offset.minute;
315    freq_offset_c->second = freq_offset.second;
316    freq_offset_c->timestep = freq_offset.timestep;
317    CTimer::get("XIOS").suspend();
318  }
319
320  bool cxios_is_defined_fieldgroup_freq_offset(fieldgroup_Ptr fieldgroup_hdl)
321  {
322     CTimer::get("XIOS").resume();
323     bool isDefined = fieldgroup_hdl->freq_offset.hasInheritedValue();
324     CTimer::get("XIOS").suspend();
325     return isDefined;
326  }
327
328
329  void cxios_set_fieldgroup_freq_op(fieldgroup_Ptr fieldgroup_hdl, cxios_duration freq_op_c)
330  {
331    CTimer::get("XIOS").resume();
332    fieldgroup_hdl->freq_op.allocate();
333    CDuration& freq_op = fieldgroup_hdl->freq_op.get();
334    freq_op.year = freq_op_c.year;
335    freq_op.month = freq_op_c.month;
336    freq_op.day = freq_op_c.day;
337    freq_op.hour = freq_op_c.hour;
338    freq_op.minute = freq_op_c.minute;
339    freq_op.second = freq_op_c.second;
340    freq_op.timestep = freq_op_c.timestep;
341    CTimer::get("XIOS").suspend();
342  }
343
344  void cxios_get_fieldgroup_freq_op(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* freq_op_c)
345  {
346    CTimer::get("XIOS").resume();
347    CDuration freq_op = fieldgroup_hdl->freq_op.getInheritedValue();
348    freq_op_c->year = freq_op.year;
349    freq_op_c->month = freq_op.month;
350    freq_op_c->day = freq_op.day;
351    freq_op_c->hour = freq_op.hour;
352    freq_op_c->minute = freq_op.minute;
353    freq_op_c->second = freq_op.second;
354    freq_op_c->timestep = freq_op.timestep;
355    CTimer::get("XIOS").suspend();
356  }
357
358  bool cxios_is_defined_fieldgroup_freq_op(fieldgroup_Ptr fieldgroup_hdl)
359  {
360     CTimer::get("XIOS").resume();
361     bool isDefined = fieldgroup_hdl->freq_op.hasInheritedValue();
362     CTimer::get("XIOS").suspend();
363     return isDefined;
364  }
365
366
367  void cxios_set_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl, const char * grid_path, int grid_path_size)
368  {
369    std::string grid_path_str;
370    if (!cstr2string(grid_path, grid_path_size, grid_path_str)) return;
371    CTimer::get("XIOS").resume();
372    fieldgroup_hdl->grid_path.setValue(grid_path_str);
373    CTimer::get("XIOS").suspend();
374  }
375
376  void cxios_get_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl, char * grid_path, int grid_path_size)
377  {
378    CTimer::get("XIOS").resume();
379    if (!string_copy(fieldgroup_hdl->grid_path.getInheritedValue(), grid_path, grid_path_size))
380      ERROR("void cxios_get_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl, char * grid_path, int grid_path_size)", << "Input string is too short");
381    CTimer::get("XIOS").suspend();
382  }
383
384  bool cxios_is_defined_fieldgroup_grid_path(fieldgroup_Ptr fieldgroup_hdl)
385  {
386     CTimer::get("XIOS").resume();
387     bool isDefined = fieldgroup_hdl->grid_path.hasInheritedValue();
388     CTimer::get("XIOS").suspend();
389     return isDefined;
390  }
391
392
393  void cxios_set_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl, const char * grid_ref, int grid_ref_size)
394  {
395    std::string grid_ref_str;
396    if (!cstr2string(grid_ref, grid_ref_size, grid_ref_str)) return;
397    CTimer::get("XIOS").resume();
398    fieldgroup_hdl->grid_ref.setValue(grid_ref_str);
399    CTimer::get("XIOS").suspend();
400  }
401
402  void cxios_get_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl, char * grid_ref, int grid_ref_size)
403  {
404    CTimer::get("XIOS").resume();
405    if (!string_copy(fieldgroup_hdl->grid_ref.getInheritedValue(), grid_ref, grid_ref_size))
406      ERROR("void cxios_get_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl, char * grid_ref, int grid_ref_size)", << "Input string is too short");
407    CTimer::get("XIOS").suspend();
408  }
409
410  bool cxios_is_defined_fieldgroup_grid_ref(fieldgroup_Ptr fieldgroup_hdl)
411  {
412     CTimer::get("XIOS").resume();
413     bool isDefined = fieldgroup_hdl->grid_ref.hasInheritedValue();
414     CTimer::get("XIOS").suspend();
415     return isDefined;
416  }
417
418
419  void cxios_set_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl, const char * group_ref, int group_ref_size)
420  {
421    std::string group_ref_str;
422    if (!cstr2string(group_ref, group_ref_size, group_ref_str)) return;
423    CTimer::get("XIOS").resume();
424    fieldgroup_hdl->group_ref.setValue(group_ref_str);
425    CTimer::get("XIOS").suspend();
426  }
427
428  void cxios_get_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl, char * group_ref, int group_ref_size)
429  {
430    CTimer::get("XIOS").resume();
431    if (!string_copy(fieldgroup_hdl->group_ref.getInheritedValue(), group_ref, group_ref_size))
432      ERROR("void cxios_get_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl, char * group_ref, int group_ref_size)", << "Input string is too short");
433    CTimer::get("XIOS").suspend();
434  }
435
436  bool cxios_is_defined_fieldgroup_group_ref(fieldgroup_Ptr fieldgroup_hdl)
437  {
438     CTimer::get("XIOS").resume();
439     bool isDefined = fieldgroup_hdl->group_ref.hasInheritedValue();
440     CTimer::get("XIOS").suspend();
441     return isDefined;
442  }
443
444
445  void cxios_set_fieldgroup_indexed_output(fieldgroup_Ptr fieldgroup_hdl, bool indexed_output)
446  {
447    CTimer::get("XIOS").resume();
448    fieldgroup_hdl->indexed_output.setValue(indexed_output);
449    CTimer::get("XIOS").suspend();
450  }
451
452  void cxios_get_fieldgroup_indexed_output(fieldgroup_Ptr fieldgroup_hdl, bool* indexed_output)
453  {
454    CTimer::get("XIOS").resume();
455    *indexed_output = fieldgroup_hdl->indexed_output.getInheritedValue();
456    CTimer::get("XIOS").suspend();
457  }
458
459  bool cxios_is_defined_fieldgroup_indexed_output(fieldgroup_Ptr fieldgroup_hdl)
460  {
461     CTimer::get("XIOS").resume();
462     bool isDefined = fieldgroup_hdl->indexed_output.hasInheritedValue();
463     CTimer::get("XIOS").suspend();
464     return isDefined;
465  }
466
467
468  void cxios_set_fieldgroup_level(fieldgroup_Ptr fieldgroup_hdl, int level)
469  {
470    CTimer::get("XIOS").resume();
471    fieldgroup_hdl->level.setValue(level);
472    CTimer::get("XIOS").suspend();
473  }
474
475  void cxios_get_fieldgroup_level(fieldgroup_Ptr fieldgroup_hdl, int* level)
476  {
477    CTimer::get("XIOS").resume();
478    *level = fieldgroup_hdl->level.getInheritedValue();
479    CTimer::get("XIOS").suspend();
480  }
481
482  bool cxios_is_defined_fieldgroup_level(fieldgroup_Ptr fieldgroup_hdl)
483  {
484     CTimer::get("XIOS").resume();
485     bool isDefined = fieldgroup_hdl->level.hasInheritedValue();
486     CTimer::get("XIOS").suspend();
487     return isDefined;
488  }
489
490
491  void cxios_set_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl, const char * long_name, int long_name_size)
492  {
493    std::string long_name_str;
494    if (!cstr2string(long_name, long_name_size, long_name_str)) return;
495    CTimer::get("XIOS").resume();
496    fieldgroup_hdl->long_name.setValue(long_name_str);
497    CTimer::get("XIOS").suspend();
498  }
499
500  void cxios_get_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl, char * long_name, int long_name_size)
501  {
502    CTimer::get("XIOS").resume();
503    if (!string_copy(fieldgroup_hdl->long_name.getInheritedValue(), long_name, long_name_size))
504      ERROR("void cxios_get_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl, char * long_name, int long_name_size)", << "Input string is too short");
505    CTimer::get("XIOS").suspend();
506  }
507
508  bool cxios_is_defined_fieldgroup_long_name(fieldgroup_Ptr fieldgroup_hdl)
509  {
510     CTimer::get("XIOS").resume();
511     bool isDefined = fieldgroup_hdl->long_name.hasInheritedValue();
512     CTimer::get("XIOS").suspend();
513     return isDefined;
514  }
515
516
517  void cxios_set_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl, const char * name, int name_size)
518  {
519    std::string name_str;
520    if (!cstr2string(name, name_size, name_str)) return;
521    CTimer::get("XIOS").resume();
522    fieldgroup_hdl->name.setValue(name_str);
523    CTimer::get("XIOS").suspend();
524  }
525
526  void cxios_get_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl, char * name, int name_size)
527  {
528    CTimer::get("XIOS").resume();
529    if (!string_copy(fieldgroup_hdl->name.getInheritedValue(), name, name_size))
530      ERROR("void cxios_get_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl, char * name, int name_size)", << "Input string is too short");
531    CTimer::get("XIOS").suspend();
532  }
533
534  bool cxios_is_defined_fieldgroup_name(fieldgroup_Ptr fieldgroup_hdl)
535  {
536     CTimer::get("XIOS").resume();
537     bool isDefined = fieldgroup_hdl->name.hasInheritedValue();
538     CTimer::get("XIOS").suspend();
539     return isDefined;
540  }
541
542
543  void cxios_set_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl, const char * operation, int operation_size)
544  {
545    std::string operation_str;
546    if (!cstr2string(operation, operation_size, operation_str)) return;
547    CTimer::get("XIOS").resume();
548    fieldgroup_hdl->operation.setValue(operation_str);
549    CTimer::get("XIOS").suspend();
550  }
551
552  void cxios_get_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl, char * operation, int operation_size)
553  {
554    CTimer::get("XIOS").resume();
555    if (!string_copy(fieldgroup_hdl->operation.getInheritedValue(), operation, operation_size))
556      ERROR("void cxios_get_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl, char * operation, int operation_size)", << "Input string is too short");
557    CTimer::get("XIOS").suspend();
558  }
559
560  bool cxios_is_defined_fieldgroup_operation(fieldgroup_Ptr fieldgroup_hdl)
561  {
562     CTimer::get("XIOS").resume();
563     bool isDefined = fieldgroup_hdl->operation.hasInheritedValue();
564     CTimer::get("XIOS").suspend();
565     return isDefined;
566  }
567
568
569  void cxios_set_fieldgroup_prec(fieldgroup_Ptr fieldgroup_hdl, int prec)
570  {
571    CTimer::get("XIOS").resume();
572    fieldgroup_hdl->prec.setValue(prec);
573    CTimer::get("XIOS").suspend();
574  }
575
576  void cxios_get_fieldgroup_prec(fieldgroup_Ptr fieldgroup_hdl, int* prec)
577  {
578    CTimer::get("XIOS").resume();
579    *prec = fieldgroup_hdl->prec.getInheritedValue();
580    CTimer::get("XIOS").suspend();
581  }
582
583  bool cxios_is_defined_fieldgroup_prec(fieldgroup_Ptr fieldgroup_hdl)
584  {
585     CTimer::get("XIOS").resume();
586     bool isDefined = fieldgroup_hdl->prec.hasInheritedValue();
587     CTimer::get("XIOS").suspend();
588     return isDefined;
589  }
590
591
592  void cxios_set_fieldgroup_read_access(fieldgroup_Ptr fieldgroup_hdl, bool read_access)
593  {
594    CTimer::get("XIOS").resume();
595    fieldgroup_hdl->read_access.setValue(read_access);
596    CTimer::get("XIOS").suspend();
597  }
598
599  void cxios_get_fieldgroup_read_access(fieldgroup_Ptr fieldgroup_hdl, bool* read_access)
600  {
601    CTimer::get("XIOS").resume();
602    *read_access = fieldgroup_hdl->read_access.getInheritedValue();
603    CTimer::get("XIOS").suspend();
604  }
605
606  bool cxios_is_defined_fieldgroup_read_access(fieldgroup_Ptr fieldgroup_hdl)
607  {
608     CTimer::get("XIOS").resume();
609     bool isDefined = fieldgroup_hdl->read_access.hasInheritedValue();
610     CTimer::get("XIOS").suspend();
611     return isDefined;
612  }
613
614
615  void cxios_set_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, const char * scalar_ref, int scalar_ref_size)
616  {
617    std::string scalar_ref_str;
618    if (!cstr2string(scalar_ref, scalar_ref_size, scalar_ref_str)) return;
619    CTimer::get("XIOS").resume();
620    fieldgroup_hdl->scalar_ref.setValue(scalar_ref_str);
621    CTimer::get("XIOS").suspend();
622  }
623
624  void cxios_get_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, char * scalar_ref, int scalar_ref_size)
625  {
626    CTimer::get("XIOS").resume();
627    if (!string_copy(fieldgroup_hdl->scalar_ref.getInheritedValue(), scalar_ref, scalar_ref_size))
628      ERROR("void cxios_get_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl, char * scalar_ref, int scalar_ref_size)", << "Input string is too short");
629    CTimer::get("XIOS").suspend();
630  }
631
632  bool cxios_is_defined_fieldgroup_scalar_ref(fieldgroup_Ptr fieldgroup_hdl)
633  {
634     CTimer::get("XIOS").resume();
635     bool isDefined = fieldgroup_hdl->scalar_ref.hasInheritedValue();
636     CTimer::get("XIOS").suspend();
637     return isDefined;
638  }
639
640
641  void cxios_set_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl, double scale_factor)
642  {
643    CTimer::get("XIOS").resume();
644    fieldgroup_hdl->scale_factor.setValue(scale_factor);
645    CTimer::get("XIOS").suspend();
646  }
647
648  void cxios_get_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl, double* scale_factor)
649  {
650    CTimer::get("XIOS").resume();
651    *scale_factor = fieldgroup_hdl->scale_factor.getInheritedValue();
652    CTimer::get("XIOS").suspend();
653  }
654
655  bool cxios_is_defined_fieldgroup_scale_factor(fieldgroup_Ptr fieldgroup_hdl)
656  {
657     CTimer::get("XIOS").resume();
658     bool isDefined = fieldgroup_hdl->scale_factor.hasInheritedValue();
659     CTimer::get("XIOS").suspend();
660     return isDefined;
661  }
662
663
664  void cxios_set_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl, const char * standard_name, int standard_name_size)
665  {
666    std::string standard_name_str;
667    if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;
668    CTimer::get("XIOS").resume();
669    fieldgroup_hdl->standard_name.setValue(standard_name_str);
670    CTimer::get("XIOS").suspend();
671  }
672
673  void cxios_get_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl, char * standard_name, int standard_name_size)
674  {
675    CTimer::get("XIOS").resume();
676    if (!string_copy(fieldgroup_hdl->standard_name.getInheritedValue(), standard_name, standard_name_size))
677      ERROR("void cxios_get_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl, char * standard_name, int standard_name_size)", << "Input string is too short");
678    CTimer::get("XIOS").suspend();
679  }
680
681  bool cxios_is_defined_fieldgroup_standard_name(fieldgroup_Ptr fieldgroup_hdl)
682  {
683     CTimer::get("XIOS").resume();
684     bool isDefined = fieldgroup_hdl->standard_name.hasInheritedValue();
685     CTimer::get("XIOS").suspend();
686     return isDefined;
687  }
688
689
690  void cxios_set_fieldgroup_ts_enabled(fieldgroup_Ptr fieldgroup_hdl, bool ts_enabled)
691  {
692    CTimer::get("XIOS").resume();
693    fieldgroup_hdl->ts_enabled.setValue(ts_enabled);
694    CTimer::get("XIOS").suspend();
695  }
696
697  void cxios_get_fieldgroup_ts_enabled(fieldgroup_Ptr fieldgroup_hdl, bool* ts_enabled)
698  {
699    CTimer::get("XIOS").resume();
700    *ts_enabled = fieldgroup_hdl->ts_enabled.getInheritedValue();
701    CTimer::get("XIOS").suspend();
702  }
703
704  bool cxios_is_defined_fieldgroup_ts_enabled(fieldgroup_Ptr fieldgroup_hdl)
705  {
706     CTimer::get("XIOS").resume();
707     bool isDefined = fieldgroup_hdl->ts_enabled.hasInheritedValue();
708     CTimer::get("XIOS").suspend();
709     return isDefined;
710  }
711
712
713  void cxios_set_fieldgroup_ts_split_freq(fieldgroup_Ptr fieldgroup_hdl, cxios_duration ts_split_freq_c)
714  {
715    CTimer::get("XIOS").resume();
716    fieldgroup_hdl->ts_split_freq.allocate();
717    CDuration& ts_split_freq = fieldgroup_hdl->ts_split_freq.get();
718    ts_split_freq.year = ts_split_freq_c.year;
719    ts_split_freq.month = ts_split_freq_c.month;
720    ts_split_freq.day = ts_split_freq_c.day;
721    ts_split_freq.hour = ts_split_freq_c.hour;
722    ts_split_freq.minute = ts_split_freq_c.minute;
723    ts_split_freq.second = ts_split_freq_c.second;
724    ts_split_freq.timestep = ts_split_freq_c.timestep;
725    CTimer::get("XIOS").suspend();
726  }
727
728  void cxios_get_fieldgroup_ts_split_freq(fieldgroup_Ptr fieldgroup_hdl, cxios_duration* ts_split_freq_c)
729  {
730    CTimer::get("XIOS").resume();
731    CDuration ts_split_freq = fieldgroup_hdl->ts_split_freq.getInheritedValue();
732    ts_split_freq_c->year = ts_split_freq.year;
733    ts_split_freq_c->month = ts_split_freq.month;
734    ts_split_freq_c->day = ts_split_freq.day;
735    ts_split_freq_c->hour = ts_split_freq.hour;
736    ts_split_freq_c->minute = ts_split_freq.minute;
737    ts_split_freq_c->second = ts_split_freq.second;
738    ts_split_freq_c->timestep = ts_split_freq.timestep;
739    CTimer::get("XIOS").suspend();
740  }
741
742  bool cxios_is_defined_fieldgroup_ts_split_freq(fieldgroup_Ptr fieldgroup_hdl)
743  {
744     CTimer::get("XIOS").resume();
745     bool isDefined = fieldgroup_hdl->ts_split_freq.hasInheritedValue();
746     CTimer::get("XIOS").suspend();
747     return isDefined;
748  }
749
750
751  void cxios_set_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl, const char * unit, int unit_size)
752  {
753    std::string unit_str;
754    if (!cstr2string(unit, unit_size, unit_str)) return;
755    CTimer::get("XIOS").resume();
756    fieldgroup_hdl->unit.setValue(unit_str);
757    CTimer::get("XIOS").suspend();
758  }
759
760  void cxios_get_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl, char * unit, int unit_size)
761  {
762    CTimer::get("XIOS").resume();
763    if (!string_copy(fieldgroup_hdl->unit.getInheritedValue(), unit, unit_size))
764      ERROR("void cxios_get_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl, char * unit, int unit_size)", << "Input string is too short");
765    CTimer::get("XIOS").suspend();
766  }
767
768  bool cxios_is_defined_fieldgroup_unit(fieldgroup_Ptr fieldgroup_hdl)
769  {
770     CTimer::get("XIOS").resume();
771     bool isDefined = fieldgroup_hdl->unit.hasInheritedValue();
772     CTimer::get("XIOS").suspend();
773     return isDefined;
774  }
775
776
777  void cxios_set_fieldgroup_valid_max(fieldgroup_Ptr fieldgroup_hdl, double valid_max)
778  {
779    CTimer::get("XIOS").resume();
780    fieldgroup_hdl->valid_max.setValue(valid_max);
781    CTimer::get("XIOS").suspend();
782  }
783
784  void cxios_get_fieldgroup_valid_max(fieldgroup_Ptr fieldgroup_hdl, double* valid_max)
785  {
786    CTimer::get("XIOS").resume();
787    *valid_max = fieldgroup_hdl->valid_max.getInheritedValue();
788    CTimer::get("XIOS").suspend();
789  }
790
791  bool cxios_is_defined_fieldgroup_valid_max(fieldgroup_Ptr fieldgroup_hdl)
792  {
793     CTimer::get("XIOS").resume();
794     bool isDefined = fieldgroup_hdl->valid_max.hasInheritedValue();
795     CTimer::get("XIOS").suspend();
796     return isDefined;
797  }
798
799
800  void cxios_set_fieldgroup_valid_min(fieldgroup_Ptr fieldgroup_hdl, double valid_min)
801  {
802    CTimer::get("XIOS").resume();
803    fieldgroup_hdl->valid_min.setValue(valid_min);
804    CTimer::get("XIOS").suspend();
805  }
806
807  void cxios_get_fieldgroup_valid_min(fieldgroup_Ptr fieldgroup_hdl, double* valid_min)
808  {
809    CTimer::get("XIOS").resume();
810    *valid_min = fieldgroup_hdl->valid_min.getInheritedValue();
811    CTimer::get("XIOS").suspend();
812  }
813
814  bool cxios_is_defined_fieldgroup_valid_min(fieldgroup_Ptr fieldgroup_hdl)
815  {
816     CTimer::get("XIOS").resume();
817     bool isDefined = fieldgroup_hdl->valid_min.hasInheritedValue();
818     CTimer::get("XIOS").suspend();
819     return isDefined;
820  }
821}
Note: See TracBrowser for help on using the repository browser.