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

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

Adding some attributes for axis and grid (ticket 71, 78)

+) Add index attribute for axis
+) Change mask?d to mask_?d for grid

Test
+) On Curie
+) Test passes

  • 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: 15.3 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::CAxisGroup* axisgroup_Ptr;
19
[546]20  void cxios_set_axisgroup_axis_ref(axisgroup_Ptr axisgroup_hdl, const char * axis_ref, int axis_ref_size)
21  {
22    std::string axis_ref_str;
[581]23    if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return;
24    CTimer::get("XIOS").resume();
[546]25    axisgroup_hdl->axis_ref.setValue(axis_ref_str);
[581]26    CTimer::get("XIOS").suspend();
[546]27  }
[581]28
[546]29  void cxios_get_axisgroup_axis_ref(axisgroup_Ptr axisgroup_hdl, char * axis_ref, int axis_ref_size)
30  {
[581]31    CTimer::get("XIOS").resume();
32    if (!string_copy(axisgroup_hdl->axis_ref.getInheritedValue(), axis_ref, axis_ref_size))
33      ERROR("void cxios_get_axisgroup_axis_ref(axisgroup_Ptr axisgroup_hdl, char * axis_ref, int axis_ref_size)", << "Input string is too short");
34    CTimer::get("XIOS").suspend();
[546]35  }
[581]36
37  bool cxios_is_defined_axisgroup_axis_ref(axisgroup_Ptr axisgroup_hdl)
[546]38  {
39     CTimer::get("XIOS").resume();
[581]40     bool isDefined = axisgroup_hdl->axis_ref.hasInheritedValue();
[546]41     CTimer::get("XIOS").suspend();
[581]42     return isDefined;
[546]43  }
[581]44
45
[666]46  void cxios_set_axisgroup_begin(axisgroup_Ptr axisgroup_hdl, int begin)
47  {
48    CTimer::get("XIOS").resume();
49    axisgroup_hdl->begin.setValue(begin);
50    CTimer::get("XIOS").suspend();
51  }
52
53  void cxios_get_axisgroup_begin(axisgroup_Ptr axisgroup_hdl, int* begin)
54  {
55    CTimer::get("XIOS").resume();
56    *begin = axisgroup_hdl->begin.getInheritedValue();
57    CTimer::get("XIOS").suspend();
58  }
59
60  bool cxios_is_defined_axisgroup_begin(axisgroup_Ptr axisgroup_hdl)
61  {
62     CTimer::get("XIOS").resume();
63     bool isDefined = axisgroup_hdl->begin.hasInheritedValue();
64     CTimer::get("XIOS").suspend();
65     return isDefined;
66  }
67
68
[674]69  void cxios_set_axisgroup_bounds(axisgroup_Ptr axisgroup_hdl, double* bounds, int* extent)
[609]70  {
71    CTimer::get("XIOS").resume();
[674]72    CArray<double,2> tmp(bounds, shape(extent[0], extent[1]), neverDeleteData);
[609]73    axisgroup_hdl->bounds.reference(tmp.copy());
74     CTimer::get("XIOS").suspend();
75  }
76
[674]77  void cxios_get_axisgroup_bounds(axisgroup_Ptr axisgroup_hdl, double* bounds, int* extent)
[609]78  {
79    CTimer::get("XIOS").resume();
[674]80    CArray<double,2> tmp(bounds, shape(extent[0], extent[1]), neverDeleteData);
[609]81    tmp=axisgroup_hdl->bounds.getInheritedValue();
82     CTimer::get("XIOS").suspend();
83  }
84
85  bool cxios_is_defined_axisgroup_bounds(axisgroup_Ptr axisgroup_hdl)
86  {
87     CTimer::get("XIOS").resume();
88     bool isDefined = axisgroup_hdl->bounds.hasInheritedValue();
89     CTimer::get("XIOS").suspend();
90     return isDefined;
91  }
92
93
[555]94  void cxios_set_axisgroup_data_begin(axisgroup_Ptr axisgroup_hdl, int data_begin)
95  {
[581]96    CTimer::get("XIOS").resume();
[555]97    axisgroup_hdl->data_begin.setValue(data_begin);
[581]98    CTimer::get("XIOS").suspend();
[555]99  }
[581]100
[555]101  void cxios_get_axisgroup_data_begin(axisgroup_Ptr axisgroup_hdl, int* data_begin)
102  {
[581]103    CTimer::get("XIOS").resume();
[555]104    *data_begin = axisgroup_hdl->data_begin.getInheritedValue();
[581]105    CTimer::get("XIOS").suspend();
[555]106  }
[581]107
108  bool cxios_is_defined_axisgroup_data_begin(axisgroup_Ptr axisgroup_hdl)
[555]109  {
110     CTimer::get("XIOS").resume();
[581]111     bool isDefined = axisgroup_hdl->data_begin.hasInheritedValue();
[555]112     CTimer::get("XIOS").suspend();
[581]113     return isDefined;
[555]114  }
[581]115
116
[674]117  void cxios_set_axisgroup_data_index(axisgroup_Ptr axisgroup_hdl, int* data_index, int* extent)
[555]118  {
119    CTimer::get("XIOS").resume();
[674]120    CArray<int,1> tmp(data_index, shape(extent[0]), neverDeleteData);
[555]121    axisgroup_hdl->data_index.reference(tmp.copy());
122     CTimer::get("XIOS").suspend();
123  }
[581]124
[674]125  void cxios_get_axisgroup_data_index(axisgroup_Ptr axisgroup_hdl, int* data_index, int* extent)
[555]126  {
127    CTimer::get("XIOS").resume();
[674]128    CArray<int,1> tmp(data_index, shape(extent[0]), neverDeleteData);
[581]129    tmp=axisgroup_hdl->data_index.getInheritedValue();
[555]130     CTimer::get("XIOS").suspend();
131  }
[581]132
133  bool cxios_is_defined_axisgroup_data_index(axisgroup_Ptr axisgroup_hdl)
[555]134  {
135     CTimer::get("XIOS").resume();
[581]136     bool isDefined = axisgroup_hdl->data_index.hasInheritedValue();
[555]137     CTimer::get("XIOS").suspend();
[581]138     return isDefined;
[555]139  }
[581]140
141
[555]142  void cxios_set_axisgroup_data_n(axisgroup_Ptr axisgroup_hdl, int data_n)
143  {
[581]144    CTimer::get("XIOS").resume();
[555]145    axisgroup_hdl->data_n.setValue(data_n);
[581]146    CTimer::get("XIOS").suspend();
[555]147  }
[581]148
[555]149  void cxios_get_axisgroup_data_n(axisgroup_Ptr axisgroup_hdl, int* data_n)
150  {
[581]151    CTimer::get("XIOS").resume();
[555]152    *data_n = axisgroup_hdl->data_n.getInheritedValue();
[581]153    CTimer::get("XIOS").suspend();
[555]154  }
[581]155
156  bool cxios_is_defined_axisgroup_data_n(axisgroup_Ptr axisgroup_hdl)
[555]157  {
158     CTimer::get("XIOS").resume();
[581]159     bool isDefined = axisgroup_hdl->data_n.hasInheritedValue();
[555]160     CTimer::get("XIOS").suspend();
[581]161     return isDefined;
[555]162  }
[581]163
164
[325]165  void cxios_set_axisgroup_group_ref(axisgroup_Ptr axisgroup_hdl, const char * group_ref, int group_ref_size)
166  {
167    std::string group_ref_str;
[581]168    if (!cstr2string(group_ref, group_ref_size, group_ref_str)) return;
169    CTimer::get("XIOS").resume();
[325]170    axisgroup_hdl->group_ref.setValue(group_ref_str);
[581]171    CTimer::get("XIOS").suspend();
[325]172  }
[581]173
[325]174  void cxios_get_axisgroup_group_ref(axisgroup_Ptr axisgroup_hdl, char * group_ref, int group_ref_size)
175  {
[581]176    CTimer::get("XIOS").resume();
177    if (!string_copy(axisgroup_hdl->group_ref.getInheritedValue(), group_ref, group_ref_size))
178      ERROR("void cxios_get_axisgroup_group_ref(axisgroup_Ptr axisgroup_hdl, char * group_ref, int group_ref_size)", << "Input string is too short");
179    CTimer::get("XIOS").suspend();
[325]180  }
[581]181
182  bool cxios_is_defined_axisgroup_group_ref(axisgroup_Ptr axisgroup_hdl)
[432]183  {
184     CTimer::get("XIOS").resume();
[581]185     bool isDefined = axisgroup_hdl->group_ref.hasInheritedValue();
[432]186     CTimer::get("XIOS").suspend();
[581]187     return isDefined;
[432]188  }
[581]189
190
[817]191  void cxios_set_axisgroup_index(axisgroup_Ptr axisgroup_hdl, int* index, int* extent)
192  {
193    CTimer::get("XIOS").resume();
194    CArray<int,1> tmp(index, shape(extent[0]), neverDeleteData);
195    axisgroup_hdl->index.reference(tmp.copy());
196     CTimer::get("XIOS").suspend();
197  }
198
199  void cxios_get_axisgroup_index(axisgroup_Ptr axisgroup_hdl, int* index, int* extent)
200  {
201    CTimer::get("XIOS").resume();
202    CArray<int,1> tmp(index, shape(extent[0]), neverDeleteData);
203    tmp=axisgroup_hdl->index.getInheritedValue();
204     CTimer::get("XIOS").suspend();
205  }
206
207  bool cxios_is_defined_axisgroup_index(axisgroup_Ptr axisgroup_hdl)
208  {
209     CTimer::get("XIOS").resume();
210     bool isDefined = axisgroup_hdl->index.hasInheritedValue();
211     CTimer::get("XIOS").suspend();
212     return isDefined;
213  }
214
215
[325]216  void cxios_set_axisgroup_long_name(axisgroup_Ptr axisgroup_hdl, const char * long_name, int long_name_size)
217  {
218    std::string long_name_str;
[581]219    if (!cstr2string(long_name, long_name_size, long_name_str)) return;
220    CTimer::get("XIOS").resume();
[325]221    axisgroup_hdl->long_name.setValue(long_name_str);
[581]222    CTimer::get("XIOS").suspend();
[325]223  }
[581]224
[325]225  void cxios_get_axisgroup_long_name(axisgroup_Ptr axisgroup_hdl, char * long_name, int long_name_size)
226  {
[581]227    CTimer::get("XIOS").resume();
228    if (!string_copy(axisgroup_hdl->long_name.getInheritedValue(), long_name, long_name_size))
229      ERROR("void cxios_get_axisgroup_long_name(axisgroup_Ptr axisgroup_hdl, char * long_name, int long_name_size)", << "Input string is too short");
230    CTimer::get("XIOS").suspend();
[325]231  }
[581]232
233  bool cxios_is_defined_axisgroup_long_name(axisgroup_Ptr axisgroup_hdl)
[432]234  {
235     CTimer::get("XIOS").resume();
[581]236     bool isDefined = axisgroup_hdl->long_name.hasInheritedValue();
[432]237     CTimer::get("XIOS").suspend();
[581]238     return isDefined;
[432]239  }
[581]240
241
[674]242  void cxios_set_axisgroup_mask(axisgroup_Ptr axisgroup_hdl, bool* mask, int* extent)
[555]243  {
244    CTimer::get("XIOS").resume();
[674]245    CArray<bool,1> tmp(mask, shape(extent[0]), neverDeleteData);
[555]246    axisgroup_hdl->mask.reference(tmp.copy());
247     CTimer::get("XIOS").suspend();
248  }
[581]249
[674]250  void cxios_get_axisgroup_mask(axisgroup_Ptr axisgroup_hdl, bool* mask, int* extent)
[555]251  {
252    CTimer::get("XIOS").resume();
[674]253    CArray<bool,1> tmp(mask, shape(extent[0]), neverDeleteData);
[581]254    tmp=axisgroup_hdl->mask.getInheritedValue();
[555]255     CTimer::get("XIOS").suspend();
256  }
[581]257
258  bool cxios_is_defined_axisgroup_mask(axisgroup_Ptr axisgroup_hdl)
[555]259  {
260     CTimer::get("XIOS").resume();
[581]261     bool isDefined = axisgroup_hdl->mask.hasInheritedValue();
[555]262     CTimer::get("XIOS").suspend();
[581]263     return isDefined;
[555]264  }
[581]265
266
[666]267  void cxios_set_axisgroup_n(axisgroup_Ptr axisgroup_hdl, int n)
[325]268  {
[581]269    CTimer::get("XIOS").resume();
[666]270    axisgroup_hdl->n.setValue(n);
[581]271    CTimer::get("XIOS").suspend();
[325]272  }
[581]273
[666]274  void cxios_get_axisgroup_n(axisgroup_Ptr axisgroup_hdl, int* n)
[325]275  {
[581]276    CTimer::get("XIOS").resume();
[666]277    *n = axisgroup_hdl->n.getInheritedValue();
[581]278    CTimer::get("XIOS").suspend();
[325]279  }
[581]280
[666]281  bool cxios_is_defined_axisgroup_n(axisgroup_Ptr axisgroup_hdl)
[432]282  {
283     CTimer::get("XIOS").resume();
[666]284     bool isDefined = axisgroup_hdl->n.hasInheritedValue();
[432]285     CTimer::get("XIOS").suspend();
[581]286     return isDefined;
[432]287  }
[581]288
289
[779]290  void cxios_set_axisgroup_n_distributed_partition(axisgroup_Ptr axisgroup_hdl, int n_distributed_partition)
291  {
292    CTimer::get("XIOS").resume();
293    axisgroup_hdl->n_distributed_partition.setValue(n_distributed_partition);
294    CTimer::get("XIOS").suspend();
295  }
296
297  void cxios_get_axisgroup_n_distributed_partition(axisgroup_Ptr axisgroup_hdl, int* n_distributed_partition)
298  {
299    CTimer::get("XIOS").resume();
300    *n_distributed_partition = axisgroup_hdl->n_distributed_partition.getInheritedValue();
301    CTimer::get("XIOS").suspend();
302  }
303
304  bool cxios_is_defined_axisgroup_n_distributed_partition(axisgroup_Ptr axisgroup_hdl)
305  {
306     CTimer::get("XIOS").resume();
307     bool isDefined = axisgroup_hdl->n_distributed_partition.hasInheritedValue();
308     CTimer::get("XIOS").suspend();
309     return isDefined;
310  }
311
312
[666]313  void cxios_set_axisgroup_n_glo(axisgroup_Ptr axisgroup_hdl, int n_glo)
[555]314  {
[581]315    CTimer::get("XIOS").resume();
[666]316    axisgroup_hdl->n_glo.setValue(n_glo);
[581]317    CTimer::get("XIOS").suspend();
[555]318  }
[581]319
[666]320  void cxios_get_axisgroup_n_glo(axisgroup_Ptr axisgroup_hdl, int* n_glo)
[555]321  {
[581]322    CTimer::get("XIOS").resume();
[666]323    *n_glo = axisgroup_hdl->n_glo.getInheritedValue();
[581]324    CTimer::get("XIOS").suspend();
[555]325  }
[581]326
[666]327  bool cxios_is_defined_axisgroup_n_glo(axisgroup_Ptr axisgroup_hdl)
[555]328  {
329     CTimer::get("XIOS").resume();
[666]330     bool isDefined = axisgroup_hdl->n_glo.hasInheritedValue();
[555]331     CTimer::get("XIOS").suspend();
[581]332     return isDefined;
[555]333  }
[581]334
335
[666]336  void cxios_set_axisgroup_name(axisgroup_Ptr axisgroup_hdl, const char * name, int name_size)
[415]337  {
[666]338    std::string name_str;
339    if (!cstr2string(name, name_size, name_str)) return;
[581]340    CTimer::get("XIOS").resume();
[666]341    axisgroup_hdl->name.setValue(name_str);
[581]342    CTimer::get("XIOS").suspend();
[415]343  }
[581]344
[666]345  void cxios_get_axisgroup_name(axisgroup_Ptr axisgroup_hdl, char * name, int name_size)
[415]346  {
[581]347    CTimer::get("XIOS").resume();
[666]348    if (!string_copy(axisgroup_hdl->name.getInheritedValue(), name, name_size))
349      ERROR("void cxios_get_axisgroup_name(axisgroup_Ptr axisgroup_hdl, char * name, int name_size)", << "Input string is too short");
[581]350    CTimer::get("XIOS").suspend();
[415]351  }
[581]352
[666]353  bool cxios_is_defined_axisgroup_name(axisgroup_Ptr axisgroup_hdl)
[432]354  {
355     CTimer::get("XIOS").resume();
[666]356     bool isDefined = axisgroup_hdl->name.hasInheritedValue();
[432]357     CTimer::get("XIOS").suspend();
[581]358     return isDefined;
[432]359  }
[581]360
361
[666]362  void cxios_set_axisgroup_positive(axisgroup_Ptr axisgroup_hdl, const char * positive, int positive_size)
[325]363  {
[666]364    std::string positive_str;
365    if (!cstr2string(positive, positive_size, positive_str)) return;
[581]366    CTimer::get("XIOS").resume();
[666]367    axisgroup_hdl->positive.fromString(positive_str);
[581]368    CTimer::get("XIOS").suspend();
[325]369  }
[581]370
[666]371  void cxios_get_axisgroup_positive(axisgroup_Ptr axisgroup_hdl, char * positive, int positive_size)
[325]372  {
[581]373    CTimer::get("XIOS").resume();
[666]374    if (!string_copy(axisgroup_hdl->positive.getInheritedStringValue(), positive, positive_size))
375      ERROR("void cxios_get_axisgroup_positive(axisgroup_Ptr axisgroup_hdl, char * positive, int positive_size)", << "Input string is too short");
[581]376    CTimer::get("XIOS").suspend();
[325]377  }
[581]378
[666]379  bool cxios_is_defined_axisgroup_positive(axisgroup_Ptr axisgroup_hdl)
[432]380  {
381     CTimer::get("XIOS").resume();
[666]382     bool isDefined = axisgroup_hdl->positive.hasInheritedValue();
[432]383     CTimer::get("XIOS").suspend();
[581]384     return isDefined;
[432]385  }
[581]386
387
[325]388  void cxios_set_axisgroup_standard_name(axisgroup_Ptr axisgroup_hdl, const char * standard_name, int standard_name_size)
389  {
390    std::string standard_name_str;
[581]391    if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;
392    CTimer::get("XIOS").resume();
[325]393    axisgroup_hdl->standard_name.setValue(standard_name_str);
[581]394    CTimer::get("XIOS").suspend();
[325]395  }
[581]396
[325]397  void cxios_get_axisgroup_standard_name(axisgroup_Ptr axisgroup_hdl, char * standard_name, int standard_name_size)
398  {
[581]399    CTimer::get("XIOS").resume();
400    if (!string_copy(axisgroup_hdl->standard_name.getInheritedValue(), standard_name, standard_name_size))
401      ERROR("void cxios_get_axisgroup_standard_name(axisgroup_Ptr axisgroup_hdl, char * standard_name, int standard_name_size)", << "Input string is too short");
402    CTimer::get("XIOS").suspend();
[325]403  }
[581]404
405  bool cxios_is_defined_axisgroup_standard_name(axisgroup_Ptr axisgroup_hdl)
[432]406  {
407     CTimer::get("XIOS").resume();
[581]408     bool isDefined = axisgroup_hdl->standard_name.hasInheritedValue();
[432]409     CTimer::get("XIOS").suspend();
[581]410     return isDefined;
[432]411  }
[581]412
413
[325]414  void cxios_set_axisgroup_unit(axisgroup_Ptr axisgroup_hdl, const char * unit, int unit_size)
415  {
416    std::string unit_str;
[581]417    if (!cstr2string(unit, unit_size, unit_str)) return;
418    CTimer::get("XIOS").resume();
[325]419    axisgroup_hdl->unit.setValue(unit_str);
[581]420    CTimer::get("XIOS").suspend();
[325]421  }
[581]422
[325]423  void cxios_get_axisgroup_unit(axisgroup_Ptr axisgroup_hdl, char * unit, int unit_size)
424  {
[581]425    CTimer::get("XIOS").resume();
426    if (!string_copy(axisgroup_hdl->unit.getInheritedValue(), unit, unit_size))
427      ERROR("void cxios_get_axisgroup_unit(axisgroup_Ptr axisgroup_hdl, char * unit, int unit_size)", << "Input string is too short");
428    CTimer::get("XIOS").suspend();
[325]429  }
[581]430
431  bool cxios_is_defined_axisgroup_unit(axisgroup_Ptr axisgroup_hdl)
[432]432  {
433     CTimer::get("XIOS").resume();
[581]434     bool isDefined = axisgroup_hdl->unit.hasInheritedValue();
[432]435     CTimer::get("XIOS").suspend();
[581]436     return isDefined;
[432]437  }
[581]438
439
[674]440  void cxios_set_axisgroup_value(axisgroup_Ptr axisgroup_hdl, double* value, int* extent)
[325]441  {
[369]442    CTimer::get("XIOS").resume();
[674]443    CArray<double,1> tmp(value, shape(extent[0]), neverDeleteData);
[369]444    axisgroup_hdl->value.reference(tmp.copy());
[416]445     CTimer::get("XIOS").suspend();
[325]446  }
[581]447
[674]448  void cxios_get_axisgroup_value(axisgroup_Ptr axisgroup_hdl, double* value, int* extent)
[325]449  {
[416]450    CTimer::get("XIOS").resume();
[674]451    CArray<double,1> tmp(value, shape(extent[0]), neverDeleteData);
[581]452    tmp=axisgroup_hdl->value.getInheritedValue();
[347]453     CTimer::get("XIOS").suspend();
[325]454  }
[581]455
456  bool cxios_is_defined_axisgroup_value(axisgroup_Ptr axisgroup_hdl)
[432]457  {
458     CTimer::get("XIOS").resume();
[581]459     bool isDefined = axisgroup_hdl->value.hasInheritedValue();
[432]460     CTimer::get("XIOS").suspend();
[581]461     return isDefined;
[432]462  }
[325]463}
Note: See TracBrowser for help on using the repository browser.