source: XIOS/trunk/src/interface/c_attr/icdomaingroup_attr.cpp @ 657

Last change on this file since 657 was 657, checked in by mhnguyen, 9 years ago

Making changes in domain to make sure unstructed grid work with new method of index distribution

+) Change the way define i_index and j_index of a domain
+) Remove some redundant attributes of domain
+) Adjust the way to calculate index distribution on server side

Test
+) Make some minor change to test_unstruct_complete to work with new XIOS
+) On Curie
+) All test pass and correct

  • 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: 24.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::CDomainGroup* domaingroup_Ptr;
19
20  void cxios_set_domaingroup_area(domaingroup_Ptr domaingroup_hdl, double* area, int extent1, int extent2)
21  {
22    CTimer::get("XIOS").resume();
23    CArray<double,2> tmp(area, shape(extent1, extent2), neverDeleteData);
24    domaingroup_hdl->area.reference(tmp.copy());
25     CTimer::get("XIOS").suspend();
26  }
27
28  void cxios_get_domaingroup_area(domaingroup_Ptr domaingroup_hdl, double* area, int extent1, int extent2)
29  {
30    CTimer::get("XIOS").resume();
31    CArray<double,2> tmp(area, shape(extent1, extent2), neverDeleteData);
32    tmp=domaingroup_hdl->area.getInheritedValue();
33     CTimer::get("XIOS").suspend();
34  }
35
36  bool cxios_is_defined_domaingroup_area(domaingroup_Ptr domaingroup_hdl)
37  {
38     CTimer::get("XIOS").resume();
39     bool isDefined = domaingroup_hdl->area.hasInheritedValue();
40     CTimer::get("XIOS").suspend();
41     return isDefined;
42  }
43
44
45  void cxios_set_domaingroup_bounds_lat(domaingroup_Ptr domaingroup_hdl, double* bounds_lat, int extent1, int extent2)
46  {
47    CTimer::get("XIOS").resume();
48    CArray<double,2> tmp(bounds_lat, shape(extent1, extent2), neverDeleteData);
49    domaingroup_hdl->bounds_lat.reference(tmp.copy());
50     CTimer::get("XIOS").suspend();
51  }
52
53  void cxios_get_domaingroup_bounds_lat(domaingroup_Ptr domaingroup_hdl, double* bounds_lat, int extent1, int extent2)
54  {
55    CTimer::get("XIOS").resume();
56    CArray<double,2> tmp(bounds_lat, shape(extent1, extent2), neverDeleteData);
57    tmp=domaingroup_hdl->bounds_lat.getInheritedValue();
58     CTimer::get("XIOS").suspend();
59  }
60
61  bool cxios_is_defined_domaingroup_bounds_lat(domaingroup_Ptr domaingroup_hdl)
62  {
63     CTimer::get("XIOS").resume();
64     bool isDefined = domaingroup_hdl->bounds_lat.hasInheritedValue();
65     CTimer::get("XIOS").suspend();
66     return isDefined;
67  }
68
69
70  void cxios_set_domaingroup_bounds_lon(domaingroup_Ptr domaingroup_hdl, double* bounds_lon, int extent1, int extent2)
71  {
72    CTimer::get("XIOS").resume();
73    CArray<double,2> tmp(bounds_lon, shape(extent1, extent2), neverDeleteData);
74    domaingroup_hdl->bounds_lon.reference(tmp.copy());
75     CTimer::get("XIOS").suspend();
76  }
77
78  void cxios_get_domaingroup_bounds_lon(domaingroup_Ptr domaingroup_hdl, double* bounds_lon, int extent1, int extent2)
79  {
80    CTimer::get("XIOS").resume();
81    CArray<double,2> tmp(bounds_lon, shape(extent1, extent2), neverDeleteData);
82    tmp=domaingroup_hdl->bounds_lon.getInheritedValue();
83     CTimer::get("XIOS").suspend();
84  }
85
86  bool cxios_is_defined_domaingroup_bounds_lon(domaingroup_Ptr domaingroup_hdl)
87  {
88     CTimer::get("XIOS").resume();
89     bool isDefined = domaingroup_hdl->bounds_lon.hasInheritedValue();
90     CTimer::get("XIOS").suspend();
91     return isDefined;
92  }
93
94
95  void cxios_set_domaingroup_data_dim(domaingroup_Ptr domaingroup_hdl, int data_dim)
96  {
97    CTimer::get("XIOS").resume();
98    domaingroup_hdl->data_dim.setValue(data_dim);
99    CTimer::get("XIOS").suspend();
100  }
101
102  void cxios_get_domaingroup_data_dim(domaingroup_Ptr domaingroup_hdl, int* data_dim)
103  {
104    CTimer::get("XIOS").resume();
105    *data_dim = domaingroup_hdl->data_dim.getInheritedValue();
106    CTimer::get("XIOS").suspend();
107  }
108
109  bool cxios_is_defined_domaingroup_data_dim(domaingroup_Ptr domaingroup_hdl)
110  {
111     CTimer::get("XIOS").resume();
112     bool isDefined = domaingroup_hdl->data_dim.hasInheritedValue();
113     CTimer::get("XIOS").suspend();
114     return isDefined;
115  }
116
117
118  void cxios_set_domaingroup_data_i_index(domaingroup_Ptr domaingroup_hdl, int* data_i_index, int extent1)
119  {
120    CTimer::get("XIOS").resume();
121    CArray<int,1> tmp(data_i_index, shape(extent1), neverDeleteData);
122    domaingroup_hdl->data_i_index.reference(tmp.copy());
123     CTimer::get("XIOS").suspend();
124  }
125
126  void cxios_get_domaingroup_data_i_index(domaingroup_Ptr domaingroup_hdl, int* data_i_index, int extent1)
127  {
128    CTimer::get("XIOS").resume();
129    CArray<int,1> tmp(data_i_index, shape(extent1), neverDeleteData);
130    tmp=domaingroup_hdl->data_i_index.getInheritedValue();
131     CTimer::get("XIOS").suspend();
132  }
133
134  bool cxios_is_defined_domaingroup_data_i_index(domaingroup_Ptr domaingroup_hdl)
135  {
136     CTimer::get("XIOS").resume();
137     bool isDefined = domaingroup_hdl->data_i_index.hasInheritedValue();
138     CTimer::get("XIOS").suspend();
139     return isDefined;
140  }
141
142
143  void cxios_set_domaingroup_data_ibegin(domaingroup_Ptr domaingroup_hdl, int data_ibegin)
144  {
145    CTimer::get("XIOS").resume();
146    domaingroup_hdl->data_ibegin.setValue(data_ibegin);
147    CTimer::get("XIOS").suspend();
148  }
149
150  void cxios_get_domaingroup_data_ibegin(domaingroup_Ptr domaingroup_hdl, int* data_ibegin)
151  {
152    CTimer::get("XIOS").resume();
153    *data_ibegin = domaingroup_hdl->data_ibegin.getInheritedValue();
154    CTimer::get("XIOS").suspend();
155  }
156
157  bool cxios_is_defined_domaingroup_data_ibegin(domaingroup_Ptr domaingroup_hdl)
158  {
159     CTimer::get("XIOS").resume();
160     bool isDefined = domaingroup_hdl->data_ibegin.hasInheritedValue();
161     CTimer::get("XIOS").suspend();
162     return isDefined;
163  }
164
165
166  void cxios_set_domaingroup_data_j_index(domaingroup_Ptr domaingroup_hdl, int* data_j_index, int extent1)
167  {
168    CTimer::get("XIOS").resume();
169    CArray<int,1> tmp(data_j_index, shape(extent1), neverDeleteData);
170    domaingroup_hdl->data_j_index.reference(tmp.copy());
171     CTimer::get("XIOS").suspend();
172  }
173
174  void cxios_get_domaingroup_data_j_index(domaingroup_Ptr domaingroup_hdl, int* data_j_index, int extent1)
175  {
176    CTimer::get("XIOS").resume();
177    CArray<int,1> tmp(data_j_index, shape(extent1), neverDeleteData);
178    tmp=domaingroup_hdl->data_j_index.getInheritedValue();
179     CTimer::get("XIOS").suspend();
180  }
181
182  bool cxios_is_defined_domaingroup_data_j_index(domaingroup_Ptr domaingroup_hdl)
183  {
184     CTimer::get("XIOS").resume();
185     bool isDefined = domaingroup_hdl->data_j_index.hasInheritedValue();
186     CTimer::get("XIOS").suspend();
187     return isDefined;
188  }
189
190
191  void cxios_set_domaingroup_data_jbegin(domaingroup_Ptr domaingroup_hdl, int data_jbegin)
192  {
193    CTimer::get("XIOS").resume();
194    domaingroup_hdl->data_jbegin.setValue(data_jbegin);
195    CTimer::get("XIOS").suspend();
196  }
197
198  void cxios_get_domaingroup_data_jbegin(domaingroup_Ptr domaingroup_hdl, int* data_jbegin)
199  {
200    CTimer::get("XIOS").resume();
201    *data_jbegin = domaingroup_hdl->data_jbegin.getInheritedValue();
202    CTimer::get("XIOS").suspend();
203  }
204
205  bool cxios_is_defined_domaingroup_data_jbegin(domaingroup_Ptr domaingroup_hdl)
206  {
207     CTimer::get("XIOS").resume();
208     bool isDefined = domaingroup_hdl->data_jbegin.hasInheritedValue();
209     CTimer::get("XIOS").suspend();
210     return isDefined;
211  }
212
213
214  void cxios_set_domaingroup_data_n_index(domaingroup_Ptr domaingroup_hdl, int data_n_index)
215  {
216    CTimer::get("XIOS").resume();
217    domaingroup_hdl->data_n_index.setValue(data_n_index);
218    CTimer::get("XIOS").suspend();
219  }
220
221  void cxios_get_domaingroup_data_n_index(domaingroup_Ptr domaingroup_hdl, int* data_n_index)
222  {
223    CTimer::get("XIOS").resume();
224    *data_n_index = domaingroup_hdl->data_n_index.getInheritedValue();
225    CTimer::get("XIOS").suspend();
226  }
227
228  bool cxios_is_defined_domaingroup_data_n_index(domaingroup_Ptr domaingroup_hdl)
229  {
230     CTimer::get("XIOS").resume();
231     bool isDefined = domaingroup_hdl->data_n_index.hasInheritedValue();
232     CTimer::get("XIOS").suspend();
233     return isDefined;
234  }
235
236
237  void cxios_set_domaingroup_data_ni(domaingroup_Ptr domaingroup_hdl, int data_ni)
238  {
239    CTimer::get("XIOS").resume();
240    domaingroup_hdl->data_ni.setValue(data_ni);
241    CTimer::get("XIOS").suspend();
242  }
243
244  void cxios_get_domaingroup_data_ni(domaingroup_Ptr domaingroup_hdl, int* data_ni)
245  {
246    CTimer::get("XIOS").resume();
247    *data_ni = domaingroup_hdl->data_ni.getInheritedValue();
248    CTimer::get("XIOS").suspend();
249  }
250
251  bool cxios_is_defined_domaingroup_data_ni(domaingroup_Ptr domaingroup_hdl)
252  {
253     CTimer::get("XIOS").resume();
254     bool isDefined = domaingroup_hdl->data_ni.hasInheritedValue();
255     CTimer::get("XIOS").suspend();
256     return isDefined;
257  }
258
259
260  void cxios_set_domaingroup_data_nj(domaingroup_Ptr domaingroup_hdl, int data_nj)
261  {
262    CTimer::get("XIOS").resume();
263    domaingroup_hdl->data_nj.setValue(data_nj);
264    CTimer::get("XIOS").suspend();
265  }
266
267  void cxios_get_domaingroup_data_nj(domaingroup_Ptr domaingroup_hdl, int* data_nj)
268  {
269    CTimer::get("XIOS").resume();
270    *data_nj = domaingroup_hdl->data_nj.getInheritedValue();
271    CTimer::get("XIOS").suspend();
272  }
273
274  bool cxios_is_defined_domaingroup_data_nj(domaingroup_Ptr domaingroup_hdl)
275  {
276     CTimer::get("XIOS").resume();
277     bool isDefined = domaingroup_hdl->data_nj.hasInheritedValue();
278     CTimer::get("XIOS").suspend();
279     return isDefined;
280  }
281
282
283  void cxios_set_domaingroup_domain_group_ref(domaingroup_Ptr domaingroup_hdl, const char * domain_group_ref, int domain_group_ref_size)
284  {
285    std::string domain_group_ref_str;
286    if (!cstr2string(domain_group_ref, domain_group_ref_size, domain_group_ref_str)) return;
287    CTimer::get("XIOS").resume();
288    domaingroup_hdl->domain_group_ref.setValue(domain_group_ref_str);
289    CTimer::get("XIOS").suspend();
290  }
291
292  void cxios_get_domaingroup_domain_group_ref(domaingroup_Ptr domaingroup_hdl, char * domain_group_ref, int domain_group_ref_size)
293  {
294    CTimer::get("XIOS").resume();
295    if (!string_copy(domaingroup_hdl->domain_group_ref.getInheritedValue(), domain_group_ref, domain_group_ref_size))
296      ERROR("void cxios_get_domaingroup_domain_group_ref(domaingroup_Ptr domaingroup_hdl, char * domain_group_ref, int domain_group_ref_size)", << "Input string is too short");
297    CTimer::get("XIOS").suspend();
298  }
299
300  bool cxios_is_defined_domaingroup_domain_group_ref(domaingroup_Ptr domaingroup_hdl)
301  {
302     CTimer::get("XIOS").resume();
303     bool isDefined = domaingroup_hdl->domain_group_ref.hasInheritedValue();
304     CTimer::get("XIOS").suspend();
305     return isDefined;
306  }
307
308
309  void cxios_set_domaingroup_domain_ref(domaingroup_Ptr domaingroup_hdl, const char * domain_ref, int domain_ref_size)
310  {
311    std::string domain_ref_str;
312    if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return;
313    CTimer::get("XIOS").resume();
314    domaingroup_hdl->domain_ref.setValue(domain_ref_str);
315    CTimer::get("XIOS").suspend();
316  }
317
318  void cxios_get_domaingroup_domain_ref(domaingroup_Ptr domaingroup_hdl, char * domain_ref, int domain_ref_size)
319  {
320    CTimer::get("XIOS").resume();
321    if (!string_copy(domaingroup_hdl->domain_ref.getInheritedValue(), domain_ref, domain_ref_size))
322      ERROR("void cxios_get_domaingroup_domain_ref(domaingroup_Ptr domaingroup_hdl, char * domain_ref, int domain_ref_size)", << "Input string is too short");
323    CTimer::get("XIOS").suspend();
324  }
325
326  bool cxios_is_defined_domaingroup_domain_ref(domaingroup_Ptr domaingroup_hdl)
327  {
328     CTimer::get("XIOS").resume();
329     bool isDefined = domaingroup_hdl->domain_ref.hasInheritedValue();
330     CTimer::get("XIOS").suspend();
331     return isDefined;
332  }
333
334
335  void cxios_set_domaingroup_group_ref(domaingroup_Ptr domaingroup_hdl, const char * group_ref, int group_ref_size)
336  {
337    std::string group_ref_str;
338    if (!cstr2string(group_ref, group_ref_size, group_ref_str)) return;
339    CTimer::get("XIOS").resume();
340    domaingroup_hdl->group_ref.setValue(group_ref_str);
341    CTimer::get("XIOS").suspend();
342  }
343
344  void cxios_get_domaingroup_group_ref(domaingroup_Ptr domaingroup_hdl, char * group_ref, int group_ref_size)
345  {
346    CTimer::get("XIOS").resume();
347    if (!string_copy(domaingroup_hdl->group_ref.getInheritedValue(), group_ref, group_ref_size))
348      ERROR("void cxios_get_domaingroup_group_ref(domaingroup_Ptr domaingroup_hdl, char * group_ref, int group_ref_size)", << "Input string is too short");
349    CTimer::get("XIOS").suspend();
350  }
351
352  bool cxios_is_defined_domaingroup_group_ref(domaingroup_Ptr domaingroup_hdl)
353  {
354     CTimer::get("XIOS").resume();
355     bool isDefined = domaingroup_hdl->group_ref.hasInheritedValue();
356     CTimer::get("XIOS").suspend();
357     return isDefined;
358  }
359
360
361  void cxios_set_domaingroup_i_index(domaingroup_Ptr domaingroup_hdl, int* i_index, int extent1)
362  {
363    CTimer::get("XIOS").resume();
364    CArray<int,1> tmp(i_index, shape(extent1), neverDeleteData);
365    domaingroup_hdl->i_index.reference(tmp.copy());
366     CTimer::get("XIOS").suspend();
367  }
368
369  void cxios_get_domaingroup_i_index(domaingroup_Ptr domaingroup_hdl, int* i_index, int extent1)
370  {
371    CTimer::get("XIOS").resume();
372    CArray<int,1> tmp(i_index, shape(extent1), neverDeleteData);
373    tmp=domaingroup_hdl->i_index.getInheritedValue();
374     CTimer::get("XIOS").suspend();
375  }
376
377  bool cxios_is_defined_domaingroup_i_index(domaingroup_Ptr domaingroup_hdl)
378  {
379     CTimer::get("XIOS").resume();
380     bool isDefined = domaingroup_hdl->i_index.hasInheritedValue();
381     CTimer::get("XIOS").suspend();
382     return isDefined;
383  }
384
385
386  void cxios_set_domaingroup_ibegin(domaingroup_Ptr domaingroup_hdl, int ibegin)
387  {
388    CTimer::get("XIOS").resume();
389    domaingroup_hdl->ibegin.setValue(ibegin);
390    CTimer::get("XIOS").suspend();
391  }
392
393  void cxios_get_domaingroup_ibegin(domaingroup_Ptr domaingroup_hdl, int* ibegin)
394  {
395    CTimer::get("XIOS").resume();
396    *ibegin = domaingroup_hdl->ibegin.getInheritedValue();
397    CTimer::get("XIOS").suspend();
398  }
399
400  bool cxios_is_defined_domaingroup_ibegin(domaingroup_Ptr domaingroup_hdl)
401  {
402     CTimer::get("XIOS").resume();
403     bool isDefined = domaingroup_hdl->ibegin.hasInheritedValue();
404     CTimer::get("XIOS").suspend();
405     return isDefined;
406  }
407
408
409  void cxios_set_domaingroup_j_index(domaingroup_Ptr domaingroup_hdl, int* j_index, int extent1)
410  {
411    CTimer::get("XIOS").resume();
412    CArray<int,1> tmp(j_index, shape(extent1), neverDeleteData);
413    domaingroup_hdl->j_index.reference(tmp.copy());
414     CTimer::get("XIOS").suspend();
415  }
416
417  void cxios_get_domaingroup_j_index(domaingroup_Ptr domaingroup_hdl, int* j_index, int extent1)
418  {
419    CTimer::get("XIOS").resume();
420    CArray<int,1> tmp(j_index, shape(extent1), neverDeleteData);
421    tmp=domaingroup_hdl->j_index.getInheritedValue();
422     CTimer::get("XIOS").suspend();
423  }
424
425  bool cxios_is_defined_domaingroup_j_index(domaingroup_Ptr domaingroup_hdl)
426  {
427     CTimer::get("XIOS").resume();
428     bool isDefined = domaingroup_hdl->j_index.hasInheritedValue();
429     CTimer::get("XIOS").suspend();
430     return isDefined;
431  }
432
433
434  void cxios_set_domaingroup_jbegin(domaingroup_Ptr domaingroup_hdl, int jbegin)
435  {
436    CTimer::get("XIOS").resume();
437    domaingroup_hdl->jbegin.setValue(jbegin);
438    CTimer::get("XIOS").suspend();
439  }
440
441  void cxios_get_domaingroup_jbegin(domaingroup_Ptr domaingroup_hdl, int* jbegin)
442  {
443    CTimer::get("XIOS").resume();
444    *jbegin = domaingroup_hdl->jbegin.getInheritedValue();
445    CTimer::get("XIOS").suspend();
446  }
447
448  bool cxios_is_defined_domaingroup_jbegin(domaingroup_Ptr domaingroup_hdl)
449  {
450     CTimer::get("XIOS").resume();
451     bool isDefined = domaingroup_hdl->jbegin.hasInheritedValue();
452     CTimer::get("XIOS").suspend();
453     return isDefined;
454  }
455
456
457  void cxios_set_domaingroup_latvalue(domaingroup_Ptr domaingroup_hdl, double* latvalue, int extent1)
458  {
459    CTimer::get("XIOS").resume();
460    CArray<double,1> tmp(latvalue, shape(extent1), neverDeleteData);
461    domaingroup_hdl->latvalue.reference(tmp.copy());
462     CTimer::get("XIOS").suspend();
463  }
464
465  void cxios_get_domaingroup_latvalue(domaingroup_Ptr domaingroup_hdl, double* latvalue, int extent1)
466  {
467    CTimer::get("XIOS").resume();
468    CArray<double,1> tmp(latvalue, shape(extent1), neverDeleteData);
469    tmp=domaingroup_hdl->latvalue.getInheritedValue();
470     CTimer::get("XIOS").suspend();
471  }
472
473  bool cxios_is_defined_domaingroup_latvalue(domaingroup_Ptr domaingroup_hdl)
474  {
475     CTimer::get("XIOS").resume();
476     bool isDefined = domaingroup_hdl->latvalue.hasInheritedValue();
477     CTimer::get("XIOS").suspend();
478     return isDefined;
479  }
480
481
482  void cxios_set_domaingroup_long_name(domaingroup_Ptr domaingroup_hdl, const char * long_name, int long_name_size)
483  {
484    std::string long_name_str;
485    if (!cstr2string(long_name, long_name_size, long_name_str)) return;
486    CTimer::get("XIOS").resume();
487    domaingroup_hdl->long_name.setValue(long_name_str);
488    CTimer::get("XIOS").suspend();
489  }
490
491  void cxios_get_domaingroup_long_name(domaingroup_Ptr domaingroup_hdl, char * long_name, int long_name_size)
492  {
493    CTimer::get("XIOS").resume();
494    if (!string_copy(domaingroup_hdl->long_name.getInheritedValue(), long_name, long_name_size))
495      ERROR("void cxios_get_domaingroup_long_name(domaingroup_Ptr domaingroup_hdl, char * long_name, int long_name_size)", << "Input string is too short");
496    CTimer::get("XIOS").suspend();
497  }
498
499  bool cxios_is_defined_domaingroup_long_name(domaingroup_Ptr domaingroup_hdl)
500  {
501     CTimer::get("XIOS").resume();
502     bool isDefined = domaingroup_hdl->long_name.hasInheritedValue();
503     CTimer::get("XIOS").suspend();
504     return isDefined;
505  }
506
507
508  void cxios_set_domaingroup_lonvalue(domaingroup_Ptr domaingroup_hdl, double* lonvalue, int extent1)
509  {
510    CTimer::get("XIOS").resume();
511    CArray<double,1> tmp(lonvalue, shape(extent1), neverDeleteData);
512    domaingroup_hdl->lonvalue.reference(tmp.copy());
513     CTimer::get("XIOS").suspend();
514  }
515
516  void cxios_get_domaingroup_lonvalue(domaingroup_Ptr domaingroup_hdl, double* lonvalue, int extent1)
517  {
518    CTimer::get("XIOS").resume();
519    CArray<double,1> tmp(lonvalue, shape(extent1), neverDeleteData);
520    tmp=domaingroup_hdl->lonvalue.getInheritedValue();
521     CTimer::get("XIOS").suspend();
522  }
523
524  bool cxios_is_defined_domaingroup_lonvalue(domaingroup_Ptr domaingroup_hdl)
525  {
526     CTimer::get("XIOS").resume();
527     bool isDefined = domaingroup_hdl->lonvalue.hasInheritedValue();
528     CTimer::get("XIOS").suspend();
529     return isDefined;
530  }
531
532
533  void cxios_set_domaingroup_mask(domaingroup_Ptr domaingroup_hdl, bool* mask, int extent1, int extent2)
534  {
535    CTimer::get("XIOS").resume();
536    CArray<bool,2> tmp(mask, shape(extent1, extent2), neverDeleteData);
537    domaingroup_hdl->mask.reference(tmp.copy());
538     CTimer::get("XIOS").suspend();
539  }
540
541  void cxios_get_domaingroup_mask(domaingroup_Ptr domaingroup_hdl, bool* mask, int extent1, int extent2)
542  {
543    CTimer::get("XIOS").resume();
544    CArray<bool,2> tmp(mask, shape(extent1, extent2), neverDeleteData);
545    tmp=domaingroup_hdl->mask.getInheritedValue();
546     CTimer::get("XIOS").suspend();
547  }
548
549  bool cxios_is_defined_domaingroup_mask(domaingroup_Ptr domaingroup_hdl)
550  {
551     CTimer::get("XIOS").resume();
552     bool isDefined = domaingroup_hdl->mask.hasInheritedValue();
553     CTimer::get("XIOS").suspend();
554     return isDefined;
555  }
556
557
558  void cxios_set_domaingroup_name(domaingroup_Ptr domaingroup_hdl, const char * name, int name_size)
559  {
560    std::string name_str;
561    if (!cstr2string(name, name_size, name_str)) return;
562    CTimer::get("XIOS").resume();
563    domaingroup_hdl->name.setValue(name_str);
564    CTimer::get("XIOS").suspend();
565  }
566
567  void cxios_get_domaingroup_name(domaingroup_Ptr domaingroup_hdl, char * name, int name_size)
568  {
569    CTimer::get("XIOS").resume();
570    if (!string_copy(domaingroup_hdl->name.getInheritedValue(), name, name_size))
571      ERROR("void cxios_get_domaingroup_name(domaingroup_Ptr domaingroup_hdl, char * name, int name_size)", << "Input string is too short");
572    CTimer::get("XIOS").suspend();
573  }
574
575  bool cxios_is_defined_domaingroup_name(domaingroup_Ptr domaingroup_hdl)
576  {
577     CTimer::get("XIOS").resume();
578     bool isDefined = domaingroup_hdl->name.hasInheritedValue();
579     CTimer::get("XIOS").suspend();
580     return isDefined;
581  }
582
583
584  void cxios_set_domaingroup_ni(domaingroup_Ptr domaingroup_hdl, int ni)
585  {
586    CTimer::get("XIOS").resume();
587    domaingroup_hdl->ni.setValue(ni);
588    CTimer::get("XIOS").suspend();
589  }
590
591  void cxios_get_domaingroup_ni(domaingroup_Ptr domaingroup_hdl, int* ni)
592  {
593    CTimer::get("XIOS").resume();
594    *ni = domaingroup_hdl->ni.getInheritedValue();
595    CTimer::get("XIOS").suspend();
596  }
597
598  bool cxios_is_defined_domaingroup_ni(domaingroup_Ptr domaingroup_hdl)
599  {
600     CTimer::get("XIOS").resume();
601     bool isDefined = domaingroup_hdl->ni.hasInheritedValue();
602     CTimer::get("XIOS").suspend();
603     return isDefined;
604  }
605
606
607  void cxios_set_domaingroup_ni_glo(domaingroup_Ptr domaingroup_hdl, int ni_glo)
608  {
609    CTimer::get("XIOS").resume();
610    domaingroup_hdl->ni_glo.setValue(ni_glo);
611    CTimer::get("XIOS").suspend();
612  }
613
614  void cxios_get_domaingroup_ni_glo(domaingroup_Ptr domaingroup_hdl, int* ni_glo)
615  {
616    CTimer::get("XIOS").resume();
617    *ni_glo = domaingroup_hdl->ni_glo.getInheritedValue();
618    CTimer::get("XIOS").suspend();
619  }
620
621  bool cxios_is_defined_domaingroup_ni_glo(domaingroup_Ptr domaingroup_hdl)
622  {
623     CTimer::get("XIOS").resume();
624     bool isDefined = domaingroup_hdl->ni_glo.hasInheritedValue();
625     CTimer::get("XIOS").suspend();
626     return isDefined;
627  }
628
629
630  void cxios_set_domaingroup_nj(domaingroup_Ptr domaingroup_hdl, int nj)
631  {
632    CTimer::get("XIOS").resume();
633    domaingroup_hdl->nj.setValue(nj);
634    CTimer::get("XIOS").suspend();
635  }
636
637  void cxios_get_domaingroup_nj(domaingroup_Ptr domaingroup_hdl, int* nj)
638  {
639    CTimer::get("XIOS").resume();
640    *nj = domaingroup_hdl->nj.getInheritedValue();
641    CTimer::get("XIOS").suspend();
642  }
643
644  bool cxios_is_defined_domaingroup_nj(domaingroup_Ptr domaingroup_hdl)
645  {
646     CTimer::get("XIOS").resume();
647     bool isDefined = domaingroup_hdl->nj.hasInheritedValue();
648     CTimer::get("XIOS").suspend();
649     return isDefined;
650  }
651
652
653  void cxios_set_domaingroup_nj_glo(domaingroup_Ptr domaingroup_hdl, int nj_glo)
654  {
655    CTimer::get("XIOS").resume();
656    domaingroup_hdl->nj_glo.setValue(nj_glo);
657    CTimer::get("XIOS").suspend();
658  }
659
660  void cxios_get_domaingroup_nj_glo(domaingroup_Ptr domaingroup_hdl, int* nj_glo)
661  {
662    CTimer::get("XIOS").resume();
663    *nj_glo = domaingroup_hdl->nj_glo.getInheritedValue();
664    CTimer::get("XIOS").suspend();
665  }
666
667  bool cxios_is_defined_domaingroup_nj_glo(domaingroup_Ptr domaingroup_hdl)
668  {
669     CTimer::get("XIOS").resume();
670     bool isDefined = domaingroup_hdl->nj_glo.hasInheritedValue();
671     CTimer::get("XIOS").suspend();
672     return isDefined;
673  }
674
675
676  void cxios_set_domaingroup_nvertex(domaingroup_Ptr domaingroup_hdl, int nvertex)
677  {
678    CTimer::get("XIOS").resume();
679    domaingroup_hdl->nvertex.setValue(nvertex);
680    CTimer::get("XIOS").suspend();
681  }
682
683  void cxios_get_domaingroup_nvertex(domaingroup_Ptr domaingroup_hdl, int* nvertex)
684  {
685    CTimer::get("XIOS").resume();
686    *nvertex = domaingroup_hdl->nvertex.getInheritedValue();
687    CTimer::get("XIOS").suspend();
688  }
689
690  bool cxios_is_defined_domaingroup_nvertex(domaingroup_Ptr domaingroup_hdl)
691  {
692     CTimer::get("XIOS").resume();
693     bool isDefined = domaingroup_hdl->nvertex.hasInheritedValue();
694     CTimer::get("XIOS").suspend();
695     return isDefined;
696  }
697
698
699  void cxios_set_domaingroup_standard_name(domaingroup_Ptr domaingroup_hdl, const char * standard_name, int standard_name_size)
700  {
701    std::string standard_name_str;
702    if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;
703    CTimer::get("XIOS").resume();
704    domaingroup_hdl->standard_name.setValue(standard_name_str);
705    CTimer::get("XIOS").suspend();
706  }
707
708  void cxios_get_domaingroup_standard_name(domaingroup_Ptr domaingroup_hdl, char * standard_name, int standard_name_size)
709  {
710    CTimer::get("XIOS").resume();
711    if (!string_copy(domaingroup_hdl->standard_name.getInheritedValue(), standard_name, standard_name_size))
712      ERROR("void cxios_get_domaingroup_standard_name(domaingroup_Ptr domaingroup_hdl, char * standard_name, int standard_name_size)", << "Input string is too short");
713    CTimer::get("XIOS").suspend();
714  }
715
716  bool cxios_is_defined_domaingroup_standard_name(domaingroup_Ptr domaingroup_hdl)
717  {
718     CTimer::get("XIOS").resume();
719     bool isDefined = domaingroup_hdl->standard_name.hasInheritedValue();
720     CTimer::get("XIOS").suspend();
721     return isDefined;
722  }
723
724
725  void cxios_set_domaingroup_type(domaingroup_Ptr domaingroup_hdl, const char * type, int type_size)
726  {
727    std::string type_str;
728    if (!cstr2string(type, type_size, type_str)) return;
729    CTimer::get("XIOS").resume();
730    domaingroup_hdl->type.fromString(type_str);
731    CTimer::get("XIOS").suspend();
732  }
733
734  void cxios_get_domaingroup_type(domaingroup_Ptr domaingroup_hdl, char * type, int type_size)
735  {
736    CTimer::get("XIOS").resume();
737    if (!string_copy(domaingroup_hdl->type.getInheritedStringValue(), type, type_size))
738      ERROR("void cxios_get_domaingroup_type(domaingroup_Ptr domaingroup_hdl, char * type, int type_size)", << "Input string is too short");
739    CTimer::get("XIOS").suspend();
740  }
741
742  bool cxios_is_defined_domaingroup_type(domaingroup_Ptr domaingroup_hdl)
743  {
744     CTimer::get("XIOS").resume();
745     bool isDefined = domaingroup_hdl->type.hasInheritedValue();
746     CTimer::get("XIOS").suspend();
747     return isDefined;
748  }
749}
Note: See TracBrowser for help on using the repository browser.