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

Last change on this file since 934 was 891, checked in by mhnguyen, 8 years ago

Adding Fortran interface for reduce_axis_to_scalar

Test
+) On Curie
+) Only compilation

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