source: XIOS/dev/XIOS_DEV_CMIP6/src/interface/c_attr/icfieldgroup_attr.cpp @ 1492

Last change on this file since 1492 was 1492, checked in by oabramkina, 6 years ago

Updating fortran interface for attributes that have been recently introduced and the following filters:

duplicate_scalar_to_axis
reduce_axis_to_axis
reduce_scalar_to_scalar
reorder_domain
temporal_splitting.

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