source: XIOS3/trunk/src/interface/c_attr/icredistribute_domain_attr.cpp @ 2622

Last change on this file since 2622 was 2616, checked in by jderouillat, 4 months ago

Add XIOS3 fortran interfaces (resources management, chunking, compression)

File size: 3.4 KB
Line 
1/* ************************************************************************** *
2 *               Interface auto generated - do not modify                     *
3 * ************************************************************************** */
4
5#include <boost/multi_array.hpp>
6#include "xios.hpp"
7#include "attribute_template.hpp"
8#include "object_template.hpp"
9#include "group_template.hpp"
10#include "icutil.hpp"
11#include "icdate.hpp"
12#include "timer.hpp"
13#include "node_type.hpp"
14
15extern "C"
16{
17  typedef xios::CRedistributeDomain* redistribute_domain_Ptr;
18
19  void cxios_set_redistribute_domain_index(redistribute_domain_Ptr redistribute_domain_hdl, int* index, int* extent)
20  {
21    CTimer::get("XIOS").resume();
22    CArray<int,1> tmp(index, shape(extent[0]), neverDeleteData);
23    redistribute_domain_hdl->index.reference(tmp.copy());
24     CTimer::get("XIOS").suspend();
25  }
26
27  void cxios_get_redistribute_domain_index(redistribute_domain_Ptr redistribute_domain_hdl, int* index, int* extent)
28  {
29    CTimer::get("XIOS").resume();
30    CArray<int,1> tmp(index, shape(extent[0]), neverDeleteData);
31    tmp=redistribute_domain_hdl->index.getInheritedValue();
32     CTimer::get("XIOS").suspend();
33  }
34
35  bool cxios_is_defined_redistribute_domain_index(redistribute_domain_Ptr redistribute_domain_hdl)
36  {
37     CTimer::get("XIOS").resume();
38     bool isDefined = redistribute_domain_hdl->index.hasInheritedValue();
39     CTimer::get("XIOS").suspend();
40     return isDefined;
41  }
42
43
44  void cxios_set_redistribute_domain_mask(redistribute_domain_Ptr redistribute_domain_hdl, bool* mask, int* extent)
45  {
46    CTimer::get("XIOS").resume();
47    CArray<bool,1> tmp(mask, shape(extent[0]), neverDeleteData);
48    redistribute_domain_hdl->mask.reference(tmp.copy());
49     CTimer::get("XIOS").suspend();
50  }
51
52  void cxios_get_redistribute_domain_mask(redistribute_domain_Ptr redistribute_domain_hdl, bool* mask, int* extent)
53  {
54    CTimer::get("XIOS").resume();
55    CArray<bool,1> tmp(mask, shape(extent[0]), neverDeleteData);
56    tmp=redistribute_domain_hdl->mask.getInheritedValue();
57     CTimer::get("XIOS").suspend();
58  }
59
60  bool cxios_is_defined_redistribute_domain_mask(redistribute_domain_Ptr redistribute_domain_hdl)
61  {
62     CTimer::get("XIOS").resume();
63     bool isDefined = redistribute_domain_hdl->mask.hasInheritedValue();
64     CTimer::get("XIOS").suspend();
65     return isDefined;
66  }
67
68
69  void cxios_set_redistribute_domain_type(redistribute_domain_Ptr redistribute_domain_hdl, const char * type, int type_size)
70  {
71    std::string type_str;
72    if (!cstr2string(type, type_size, type_str)) return;
73    CTimer::get("XIOS").resume();
74    redistribute_domain_hdl->type.fromString(type_str);
75    CTimer::get("XIOS").suspend();
76  }
77
78  void cxios_get_redistribute_domain_type(redistribute_domain_Ptr redistribute_domain_hdl, char * type, int type_size)
79  {
80    CTimer::get("XIOS").resume();
81    if (!string_copy(redistribute_domain_hdl->type.getInheritedStringValue(), type, type_size))
82      ERROR("void cxios_get_redistribute_domain_type(redistribute_domain_Ptr redistribute_domain_hdl, char * type, int type_size)", << "Input string is too short");
83    CTimer::get("XIOS").suspend();
84  }
85
86  bool cxios_is_defined_redistribute_domain_type(redistribute_domain_Ptr redistribute_domain_hdl)
87  {
88     CTimer::get("XIOS").resume();
89     bool isDefined = redistribute_domain_hdl->type.hasInheritedValue();
90     CTimer::get("XIOS").suspend();
91     return isDefined;
92  }
93}
Note: See TracBrowser for help on using the repository browser.