source: XIOS/trunk/src/interface/c_attr/icfilegroup_attr.cpp @ 711

Last change on this file since 711 was 711, checked in by rlacroix, 9 years ago

Support creating the timeseries automatically.

Fields which should be outputted as timeseries must have the ts_enabled attribute set to true.

Files have a new attribute timeseries which must be one of:

  • none: no timeseries are outputted, only the regular file (default behavior when the attribute is ommited).
  • only: only the timeseries are outputted, the regular file is not created.
  • both: both the timeseries and the regular files are outputted.
  • exclusive: the timeseries are outputted and a regular file is created with only the fields which were not marked for output as a timeserie (if any).

The name of the files created for the timeseries is composed of a prefix followed by the name of the variable. The file attribute ts_prefix can be used to control the prefix used (by default, the name of the regular file is used).

All the attributes of the regular file are inherited by the files created for the timeseries. The field attribute ts_split_freq can be used to configure the splitting for each timeseries (by default, the splitting frequency of the regular file is used).

  • 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: 19.9 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::CFileGroup* filegroup_Ptr;
19
20  void cxios_set_filegroup_append(filegroup_Ptr filegroup_hdl, bool append)
21  {
22    CTimer::get("XIOS").resume();
23    filegroup_hdl->append.setValue(append);
24    CTimer::get("XIOS").suspend();
25  }
26
27  void cxios_get_filegroup_append(filegroup_Ptr filegroup_hdl, bool* append)
28  {
29    CTimer::get("XIOS").resume();
30    *append = filegroup_hdl->append.getInheritedValue();
31    CTimer::get("XIOS").suspend();
32  }
33
34  bool cxios_is_defined_filegroup_append(filegroup_Ptr filegroup_hdl)
35  {
36     CTimer::get("XIOS").resume();
37     bool isDefined = filegroup_hdl->append.hasInheritedValue();
38     CTimer::get("XIOS").suspend();
39     return isDefined;
40  }
41
42
43  void cxios_set_filegroup_compression_level(filegroup_Ptr filegroup_hdl, int compression_level)
44  {
45    CTimer::get("XIOS").resume();
46    filegroup_hdl->compression_level.setValue(compression_level);
47    CTimer::get("XIOS").suspend();
48  }
49
50  void cxios_get_filegroup_compression_level(filegroup_Ptr filegroup_hdl, int* compression_level)
51  {
52    CTimer::get("XIOS").resume();
53    *compression_level = filegroup_hdl->compression_level.getInheritedValue();
54    CTimer::get("XIOS").suspend();
55  }
56
57  bool cxios_is_defined_filegroup_compression_level(filegroup_Ptr filegroup_hdl)
58  {
59     CTimer::get("XIOS").resume();
60     bool isDefined = filegroup_hdl->compression_level.hasInheritedValue();
61     CTimer::get("XIOS").suspend();
62     return isDefined;
63  }
64
65
66  void cxios_set_filegroup_description(filegroup_Ptr filegroup_hdl, const char * description, int description_size)
67  {
68    std::string description_str;
69    if (!cstr2string(description, description_size, description_str)) return;
70    CTimer::get("XIOS").resume();
71    filegroup_hdl->description.setValue(description_str);
72    CTimer::get("XIOS").suspend();
73  }
74
75  void cxios_get_filegroup_description(filegroup_Ptr filegroup_hdl, char * description, int description_size)
76  {
77    CTimer::get("XIOS").resume();
78    if (!string_copy(filegroup_hdl->description.getInheritedValue(), description, description_size))
79      ERROR("void cxios_get_filegroup_description(filegroup_Ptr filegroup_hdl, char * description, int description_size)", << "Input string is too short");
80    CTimer::get("XIOS").suspend();
81  }
82
83  bool cxios_is_defined_filegroup_description(filegroup_Ptr filegroup_hdl)
84  {
85     CTimer::get("XIOS").resume();
86     bool isDefined = filegroup_hdl->description.hasInheritedValue();
87     CTimer::get("XIOS").suspend();
88     return isDefined;
89  }
90
91
92  void cxios_set_filegroup_enabled(filegroup_Ptr filegroup_hdl, bool enabled)
93  {
94    CTimer::get("XIOS").resume();
95    filegroup_hdl->enabled.setValue(enabled);
96    CTimer::get("XIOS").suspend();
97  }
98
99  void cxios_get_filegroup_enabled(filegroup_Ptr filegroup_hdl, bool* enabled)
100  {
101    CTimer::get("XIOS").resume();
102    *enabled = filegroup_hdl->enabled.getInheritedValue();
103    CTimer::get("XIOS").suspend();
104  }
105
106  bool cxios_is_defined_filegroup_enabled(filegroup_Ptr filegroup_hdl)
107  {
108     CTimer::get("XIOS").resume();
109     bool isDefined = filegroup_hdl->enabled.hasInheritedValue();
110     CTimer::get("XIOS").suspend();
111     return isDefined;
112  }
113
114
115  void cxios_set_filegroup_format(filegroup_Ptr filegroup_hdl, const char * format, int format_size)
116  {
117    std::string format_str;
118    if (!cstr2string(format, format_size, format_str)) return;
119    CTimer::get("XIOS").resume();
120    filegroup_hdl->format.fromString(format_str);
121    CTimer::get("XIOS").suspend();
122  }
123
124  void cxios_get_filegroup_format(filegroup_Ptr filegroup_hdl, char * format, int format_size)
125  {
126    CTimer::get("XIOS").resume();
127    if (!string_copy(filegroup_hdl->format.getInheritedStringValue(), format, format_size))
128      ERROR("void cxios_get_filegroup_format(filegroup_Ptr filegroup_hdl, char * format, int format_size)", << "Input string is too short");
129    CTimer::get("XIOS").suspend();
130  }
131
132  bool cxios_is_defined_filegroup_format(filegroup_Ptr filegroup_hdl)
133  {
134     CTimer::get("XIOS").resume();
135     bool isDefined = filegroup_hdl->format.hasInheritedValue();
136     CTimer::get("XIOS").suspend();
137     return isDefined;
138  }
139
140
141  void cxios_set_filegroup_group_ref(filegroup_Ptr filegroup_hdl, const char * group_ref, int group_ref_size)
142  {
143    std::string group_ref_str;
144    if (!cstr2string(group_ref, group_ref_size, group_ref_str)) return;
145    CTimer::get("XIOS").resume();
146    filegroup_hdl->group_ref.setValue(group_ref_str);
147    CTimer::get("XIOS").suspend();
148  }
149
150  void cxios_get_filegroup_group_ref(filegroup_Ptr filegroup_hdl, char * group_ref, int group_ref_size)
151  {
152    CTimer::get("XIOS").resume();
153    if (!string_copy(filegroup_hdl->group_ref.getInheritedValue(), group_ref, group_ref_size))
154      ERROR("void cxios_get_filegroup_group_ref(filegroup_Ptr filegroup_hdl, char * group_ref, int group_ref_size)", << "Input string is too short");
155    CTimer::get("XIOS").suspend();
156  }
157
158  bool cxios_is_defined_filegroup_group_ref(filegroup_Ptr filegroup_hdl)
159  {
160     CTimer::get("XIOS").resume();
161     bool isDefined = filegroup_hdl->group_ref.hasInheritedValue();
162     CTimer::get("XIOS").suspend();
163     return isDefined;
164  }
165
166
167  void cxios_set_filegroup_min_digits(filegroup_Ptr filegroup_hdl, int min_digits)
168  {
169    CTimer::get("XIOS").resume();
170    filegroup_hdl->min_digits.setValue(min_digits);
171    CTimer::get("XIOS").suspend();
172  }
173
174  void cxios_get_filegroup_min_digits(filegroup_Ptr filegroup_hdl, int* min_digits)
175  {
176    CTimer::get("XIOS").resume();
177    *min_digits = filegroup_hdl->min_digits.getInheritedValue();
178    CTimer::get("XIOS").suspend();
179  }
180
181  bool cxios_is_defined_filegroup_min_digits(filegroup_Ptr filegroup_hdl)
182  {
183     CTimer::get("XIOS").resume();
184     bool isDefined = filegroup_hdl->min_digits.hasInheritedValue();
185     CTimer::get("XIOS").suspend();
186     return isDefined;
187  }
188
189
190  void cxios_set_filegroup_mode(filegroup_Ptr filegroup_hdl, const char * mode, int mode_size)
191  {
192    std::string mode_str;
193    if (!cstr2string(mode, mode_size, mode_str)) return;
194    CTimer::get("XIOS").resume();
195    filegroup_hdl->mode.fromString(mode_str);
196    CTimer::get("XIOS").suspend();
197  }
198
199  void cxios_get_filegroup_mode(filegroup_Ptr filegroup_hdl, char * mode, int mode_size)
200  {
201    CTimer::get("XIOS").resume();
202    if (!string_copy(filegroup_hdl->mode.getInheritedStringValue(), mode, mode_size))
203      ERROR("void cxios_get_filegroup_mode(filegroup_Ptr filegroup_hdl, char * mode, int mode_size)", << "Input string is too short");
204    CTimer::get("XIOS").suspend();
205  }
206
207  bool cxios_is_defined_filegroup_mode(filegroup_Ptr filegroup_hdl)
208  {
209     CTimer::get("XIOS").resume();
210     bool isDefined = filegroup_hdl->mode.hasInheritedValue();
211     CTimer::get("XIOS").suspend();
212     return isDefined;
213  }
214
215
216  void cxios_set_filegroup_name(filegroup_Ptr filegroup_hdl, const char * name, int name_size)
217  {
218    std::string name_str;
219    if (!cstr2string(name, name_size, name_str)) return;
220    CTimer::get("XIOS").resume();
221    filegroup_hdl->name.setValue(name_str);
222    CTimer::get("XIOS").suspend();
223  }
224
225  void cxios_get_filegroup_name(filegroup_Ptr filegroup_hdl, char * name, int name_size)
226  {
227    CTimer::get("XIOS").resume();
228    if (!string_copy(filegroup_hdl->name.getInheritedValue(), name, name_size))
229      ERROR("void cxios_get_filegroup_name(filegroup_Ptr filegroup_hdl, char * name, int name_size)", << "Input string is too short");
230    CTimer::get("XIOS").suspend();
231  }
232
233  bool cxios_is_defined_filegroup_name(filegroup_Ptr filegroup_hdl)
234  {
235     CTimer::get("XIOS").resume();
236     bool isDefined = filegroup_hdl->name.hasInheritedValue();
237     CTimer::get("XIOS").suspend();
238     return isDefined;
239  }
240
241
242  void cxios_set_filegroup_name_suffix(filegroup_Ptr filegroup_hdl, const char * name_suffix, int name_suffix_size)
243  {
244    std::string name_suffix_str;
245    if (!cstr2string(name_suffix, name_suffix_size, name_suffix_str)) return;
246    CTimer::get("XIOS").resume();
247    filegroup_hdl->name_suffix.setValue(name_suffix_str);
248    CTimer::get("XIOS").suspend();
249  }
250
251  void cxios_get_filegroup_name_suffix(filegroup_Ptr filegroup_hdl, char * name_suffix, int name_suffix_size)
252  {
253    CTimer::get("XIOS").resume();
254    if (!string_copy(filegroup_hdl->name_suffix.getInheritedValue(), name_suffix, name_suffix_size))
255      ERROR("void cxios_get_filegroup_name_suffix(filegroup_Ptr filegroup_hdl, char * name_suffix, int name_suffix_size)", << "Input string is too short");
256    CTimer::get("XIOS").suspend();
257  }
258
259  bool cxios_is_defined_filegroup_name_suffix(filegroup_Ptr filegroup_hdl)
260  {
261     CTimer::get("XIOS").resume();
262     bool isDefined = filegroup_hdl->name_suffix.hasInheritedValue();
263     CTimer::get("XIOS").suspend();
264     return isDefined;
265  }
266
267
268  void cxios_set_filegroup_output_freq(filegroup_Ptr filegroup_hdl, cxios_duration output_freq_c)
269  {
270    CTimer::get("XIOS").resume();
271    filegroup_hdl->output_freq.allocate();
272    CDuration& output_freq = filegroup_hdl->output_freq.get();
273    output_freq.year = output_freq_c.year;
274    output_freq.month = output_freq_c.month;
275    output_freq.day = output_freq_c.day;
276    output_freq.hour = output_freq_c.hour;
277    output_freq.minute = output_freq_c.minute;
278    output_freq.second = output_freq_c.second;
279    output_freq.timestep = output_freq_c.timestep;
280    CTimer::get("XIOS").suspend();
281  }
282
283  void cxios_get_filegroup_output_freq(filegroup_Ptr filegroup_hdl, cxios_duration* output_freq_c)
284  {
285    CTimer::get("XIOS").resume();
286    CDuration output_freq = filegroup_hdl->output_freq.getInheritedValue();
287    output_freq_c->year = output_freq.year;
288    output_freq_c->month = output_freq.month;
289    output_freq_c->day = output_freq.day;
290    output_freq_c->hour = output_freq.hour;
291    output_freq_c->minute = output_freq.minute;
292    output_freq_c->second = output_freq.second;
293    output_freq_c->timestep = output_freq.timestep;
294    CTimer::get("XIOS").suspend();
295  }
296
297  bool cxios_is_defined_filegroup_output_freq(filegroup_Ptr filegroup_hdl)
298  {
299     CTimer::get("XIOS").resume();
300     bool isDefined = filegroup_hdl->output_freq.hasInheritedValue();
301     CTimer::get("XIOS").suspend();
302     return isDefined;
303  }
304
305
306  void cxios_set_filegroup_output_level(filegroup_Ptr filegroup_hdl, int output_level)
307  {
308    CTimer::get("XIOS").resume();
309    filegroup_hdl->output_level.setValue(output_level);
310    CTimer::get("XIOS").suspend();
311  }
312
313  void cxios_get_filegroup_output_level(filegroup_Ptr filegroup_hdl, int* output_level)
314  {
315    CTimer::get("XIOS").resume();
316    *output_level = filegroup_hdl->output_level.getInheritedValue();
317    CTimer::get("XIOS").suspend();
318  }
319
320  bool cxios_is_defined_filegroup_output_level(filegroup_Ptr filegroup_hdl)
321  {
322     CTimer::get("XIOS").resume();
323     bool isDefined = filegroup_hdl->output_level.hasInheritedValue();
324     CTimer::get("XIOS").suspend();
325     return isDefined;
326  }
327
328
329  void cxios_set_filegroup_par_access(filegroup_Ptr filegroup_hdl, const char * par_access, int par_access_size)
330  {
331    std::string par_access_str;
332    if (!cstr2string(par_access, par_access_size, par_access_str)) return;
333    CTimer::get("XIOS").resume();
334    filegroup_hdl->par_access.fromString(par_access_str);
335    CTimer::get("XIOS").suspend();
336  }
337
338  void cxios_get_filegroup_par_access(filegroup_Ptr filegroup_hdl, char * par_access, int par_access_size)
339  {
340    CTimer::get("XIOS").resume();
341    if (!string_copy(filegroup_hdl->par_access.getInheritedStringValue(), par_access, par_access_size))
342      ERROR("void cxios_get_filegroup_par_access(filegroup_Ptr filegroup_hdl, char * par_access, int par_access_size)", << "Input string is too short");
343    CTimer::get("XIOS").suspend();
344  }
345
346  bool cxios_is_defined_filegroup_par_access(filegroup_Ptr filegroup_hdl)
347  {
348     CTimer::get("XIOS").resume();
349     bool isDefined = filegroup_hdl->par_access.hasInheritedValue();
350     CTimer::get("XIOS").suspend();
351     return isDefined;
352  }
353
354
355  void cxios_set_filegroup_split_freq(filegroup_Ptr filegroup_hdl, cxios_duration split_freq_c)
356  {
357    CTimer::get("XIOS").resume();
358    filegroup_hdl->split_freq.allocate();
359    CDuration& split_freq = filegroup_hdl->split_freq.get();
360    split_freq.year = split_freq_c.year;
361    split_freq.month = split_freq_c.month;
362    split_freq.day = split_freq_c.day;
363    split_freq.hour = split_freq_c.hour;
364    split_freq.minute = split_freq_c.minute;
365    split_freq.second = split_freq_c.second;
366    split_freq.timestep = split_freq_c.timestep;
367    CTimer::get("XIOS").suspend();
368  }
369
370  void cxios_get_filegroup_split_freq(filegroup_Ptr filegroup_hdl, cxios_duration* split_freq_c)
371  {
372    CTimer::get("XIOS").resume();
373    CDuration split_freq = filegroup_hdl->split_freq.getInheritedValue();
374    split_freq_c->year = split_freq.year;
375    split_freq_c->month = split_freq.month;
376    split_freq_c->day = split_freq.day;
377    split_freq_c->hour = split_freq.hour;
378    split_freq_c->minute = split_freq.minute;
379    split_freq_c->second = split_freq.second;
380    split_freq_c->timestep = split_freq.timestep;
381    CTimer::get("XIOS").suspend();
382  }
383
384  bool cxios_is_defined_filegroup_split_freq(filegroup_Ptr filegroup_hdl)
385  {
386     CTimer::get("XIOS").resume();
387     bool isDefined = filegroup_hdl->split_freq.hasInheritedValue();
388     CTimer::get("XIOS").suspend();
389     return isDefined;
390  }
391
392
393  void cxios_set_filegroup_split_freq_format(filegroup_Ptr filegroup_hdl, const char * split_freq_format, int split_freq_format_size)
394  {
395    std::string split_freq_format_str;
396    if (!cstr2string(split_freq_format, split_freq_format_size, split_freq_format_str)) return;
397    CTimer::get("XIOS").resume();
398    filegroup_hdl->split_freq_format.setValue(split_freq_format_str);
399    CTimer::get("XIOS").suspend();
400  }
401
402  void cxios_get_filegroup_split_freq_format(filegroup_Ptr filegroup_hdl, char * split_freq_format, int split_freq_format_size)
403  {
404    CTimer::get("XIOS").resume();
405    if (!string_copy(filegroup_hdl->split_freq_format.getInheritedValue(), split_freq_format, split_freq_format_size))
406      ERROR("void cxios_get_filegroup_split_freq_format(filegroup_Ptr filegroup_hdl, char * split_freq_format, int split_freq_format_size)", << "Input string is too short");
407    CTimer::get("XIOS").suspend();
408  }
409
410  bool cxios_is_defined_filegroup_split_freq_format(filegroup_Ptr filegroup_hdl)
411  {
412     CTimer::get("XIOS").resume();
413     bool isDefined = filegroup_hdl->split_freq_format.hasInheritedValue();
414     CTimer::get("XIOS").suspend();
415     return isDefined;
416  }
417
418
419  void cxios_set_filegroup_sync_freq(filegroup_Ptr filegroup_hdl, cxios_duration sync_freq_c)
420  {
421    CTimer::get("XIOS").resume();
422    filegroup_hdl->sync_freq.allocate();
423    CDuration& sync_freq = filegroup_hdl->sync_freq.get();
424    sync_freq.year = sync_freq_c.year;
425    sync_freq.month = sync_freq_c.month;
426    sync_freq.day = sync_freq_c.day;
427    sync_freq.hour = sync_freq_c.hour;
428    sync_freq.minute = sync_freq_c.minute;
429    sync_freq.second = sync_freq_c.second;
430    sync_freq.timestep = sync_freq_c.timestep;
431    CTimer::get("XIOS").suspend();
432  }
433
434  void cxios_get_filegroup_sync_freq(filegroup_Ptr filegroup_hdl, cxios_duration* sync_freq_c)
435  {
436    CTimer::get("XIOS").resume();
437    CDuration sync_freq = filegroup_hdl->sync_freq.getInheritedValue();
438    sync_freq_c->year = sync_freq.year;
439    sync_freq_c->month = sync_freq.month;
440    sync_freq_c->day = sync_freq.day;
441    sync_freq_c->hour = sync_freq.hour;
442    sync_freq_c->minute = sync_freq.minute;
443    sync_freq_c->second = sync_freq.second;
444    sync_freq_c->timestep = sync_freq.timestep;
445    CTimer::get("XIOS").suspend();
446  }
447
448  bool cxios_is_defined_filegroup_sync_freq(filegroup_Ptr filegroup_hdl)
449  {
450     CTimer::get("XIOS").resume();
451     bool isDefined = filegroup_hdl->sync_freq.hasInheritedValue();
452     CTimer::get("XIOS").suspend();
453     return isDefined;
454  }
455
456
457  void cxios_set_filegroup_time_counter(filegroup_Ptr filegroup_hdl, const char * time_counter, int time_counter_size)
458  {
459    std::string time_counter_str;
460    if (!cstr2string(time_counter, time_counter_size, time_counter_str)) return;
461    CTimer::get("XIOS").resume();
462    filegroup_hdl->time_counter.fromString(time_counter_str);
463    CTimer::get("XIOS").suspend();
464  }
465
466  void cxios_get_filegroup_time_counter(filegroup_Ptr filegroup_hdl, char * time_counter, int time_counter_size)
467  {
468    CTimer::get("XIOS").resume();
469    if (!string_copy(filegroup_hdl->time_counter.getInheritedStringValue(), time_counter, time_counter_size))
470      ERROR("void cxios_get_filegroup_time_counter(filegroup_Ptr filegroup_hdl, char * time_counter, int time_counter_size)", << "Input string is too short");
471    CTimer::get("XIOS").suspend();
472  }
473
474  bool cxios_is_defined_filegroup_time_counter(filegroup_Ptr filegroup_hdl)
475  {
476     CTimer::get("XIOS").resume();
477     bool isDefined = filegroup_hdl->time_counter.hasInheritedValue();
478     CTimer::get("XIOS").suspend();
479     return isDefined;
480  }
481
482
483  void cxios_set_filegroup_timeseries(filegroup_Ptr filegroup_hdl, const char * timeseries, int timeseries_size)
484  {
485    std::string timeseries_str;
486    if (!cstr2string(timeseries, timeseries_size, timeseries_str)) return;
487    CTimer::get("XIOS").resume();
488    filegroup_hdl->timeseries.fromString(timeseries_str);
489    CTimer::get("XIOS").suspend();
490  }
491
492  void cxios_get_filegroup_timeseries(filegroup_Ptr filegroup_hdl, char * timeseries, int timeseries_size)
493  {
494    CTimer::get("XIOS").resume();
495    if (!string_copy(filegroup_hdl->timeseries.getInheritedStringValue(), timeseries, timeseries_size))
496      ERROR("void cxios_get_filegroup_timeseries(filegroup_Ptr filegroup_hdl, char * timeseries, int timeseries_size)", << "Input string is too short");
497    CTimer::get("XIOS").suspend();
498  }
499
500  bool cxios_is_defined_filegroup_timeseries(filegroup_Ptr filegroup_hdl)
501  {
502     CTimer::get("XIOS").resume();
503     bool isDefined = filegroup_hdl->timeseries.hasInheritedValue();
504     CTimer::get("XIOS").suspend();
505     return isDefined;
506  }
507
508
509  void cxios_set_filegroup_ts_prefix(filegroup_Ptr filegroup_hdl, const char * ts_prefix, int ts_prefix_size)
510  {
511    std::string ts_prefix_str;
512    if (!cstr2string(ts_prefix, ts_prefix_size, ts_prefix_str)) return;
513    CTimer::get("XIOS").resume();
514    filegroup_hdl->ts_prefix.setValue(ts_prefix_str);
515    CTimer::get("XIOS").suspend();
516  }
517
518  void cxios_get_filegroup_ts_prefix(filegroup_Ptr filegroup_hdl, char * ts_prefix, int ts_prefix_size)
519  {
520    CTimer::get("XIOS").resume();
521    if (!string_copy(filegroup_hdl->ts_prefix.getInheritedValue(), ts_prefix, ts_prefix_size))
522      ERROR("void cxios_get_filegroup_ts_prefix(filegroup_Ptr filegroup_hdl, char * ts_prefix, int ts_prefix_size)", << "Input string is too short");
523    CTimer::get("XIOS").suspend();
524  }
525
526  bool cxios_is_defined_filegroup_ts_prefix(filegroup_Ptr filegroup_hdl)
527  {
528     CTimer::get("XIOS").resume();
529     bool isDefined = filegroup_hdl->ts_prefix.hasInheritedValue();
530     CTimer::get("XIOS").suspend();
531     return isDefined;
532  }
533
534
535  void cxios_set_filegroup_type(filegroup_Ptr filegroup_hdl, const char * type, int type_size)
536  {
537    std::string type_str;
538    if (!cstr2string(type, type_size, type_str)) return;
539    CTimer::get("XIOS").resume();
540    filegroup_hdl->type.fromString(type_str);
541    CTimer::get("XIOS").suspend();
542  }
543
544  void cxios_get_filegroup_type(filegroup_Ptr filegroup_hdl, char * type, int type_size)
545  {
546    CTimer::get("XIOS").resume();
547    if (!string_copy(filegroup_hdl->type.getInheritedStringValue(), type, type_size))
548      ERROR("void cxios_get_filegroup_type(filegroup_Ptr filegroup_hdl, char * type, int type_size)", << "Input string is too short");
549    CTimer::get("XIOS").suspend();
550  }
551
552  bool cxios_is_defined_filegroup_type(filegroup_Ptr filegroup_hdl)
553  {
554     CTimer::get("XIOS").resume();
555     bool isDefined = filegroup_hdl->type.hasInheritedValue();
556     CTimer::get("XIOS").suspend();
557     return isDefined;
558  }
559}
Note: See TracBrowser for help on using the repository browser.