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