source: XIOS/trunk/src/interface/c_attr/icfile_attr.cpp @ 509

Last change on this file since 509 was 509, checked in by mhnguyen, 7 years ago

Implementing buffer size auto-detection for mode client -server

+) Process xml tree in client side then send all the information to server
+) Only information enabled fields in enabled files are sent to server
+) Some important change in structure of code which must be refactored

Test
+) On Curie
+) Only mode client-server
+) Passed for all tests

  • 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: 10.3 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 "xmlioserver.hpp"
8#include "attribute_template.hpp"
9#include "object_template.hpp"
10#include "group_template.hpp"
11#include "icutil.hpp"
12#include "timer.hpp"
13#include "node_type.hpp"
14
15extern "C"
16{
17  typedef xios::CFile*  file_Ptr;
18 
19  void cxios_set_file_description(file_Ptr file_hdl, const char * description, int description_size)
20  {
21    std::string description_str;
22    if(!cstr2string(description, description_size, description_str)) return;
23     CTimer::get("XIOS").resume();
24    file_hdl->description.setValue(description_str);
25     CTimer::get("XIOS").suspend();
26  }
27 
28  void cxios_get_file_description(file_Ptr file_hdl, char * description, int description_size)
29  {
30     CTimer::get("XIOS").resume();
31    if(!string_copy(file_hdl->description.getInheritedValue(),description , description_size))
32      ERROR("void cxios_get_file_description(file_Ptr file_hdl, char * description, int description_size)", <<"Input string is to short");
33     CTimer::get("XIOS").suspend();
34  }
35 
36  bool cxios_is_defined_file_description(file_Ptr file_hdl )
37  {
38     CTimer::get("XIOS").resume();
39    return file_hdl->description.hasInheritedValue();
40     CTimer::get("XIOS").suspend();
41  }
42 
43 
44 
45  void cxios_set_file_enabled(file_Ptr file_hdl, bool enabled)
46  {
47     CTimer::get("XIOS").resume();
48    file_hdl->enabled.setValue(enabled);
49     CTimer::get("XIOS").suspend();
50  }
51 
52  void cxios_get_file_enabled(file_Ptr file_hdl, bool* enabled)
53  {
54    *enabled = file_hdl->enabled.getInheritedValue();
55  }
56 
57  bool cxios_is_defined_file_enabled(file_Ptr file_hdl )
58  {
59     CTimer::get("XIOS").resume();
60    return file_hdl->enabled.hasInheritedValue();
61     CTimer::get("XIOS").suspend();
62  }
63 
64 
65 
66  void cxios_set_file_min_digits(file_Ptr file_hdl, int min_digits)
67  {
68     CTimer::get("XIOS").resume();
69    file_hdl->min_digits.setValue(min_digits);
70     CTimer::get("XIOS").suspend();
71  }
72 
73  void cxios_get_file_min_digits(file_Ptr file_hdl, int* min_digits)
74  {
75    *min_digits = file_hdl->min_digits.getInheritedValue();
76  }
77 
78  bool cxios_is_defined_file_min_digits(file_Ptr file_hdl )
79  {
80     CTimer::get("XIOS").resume();
81    return file_hdl->min_digits.hasInheritedValue();
82     CTimer::get("XIOS").suspend();
83  }
84 
85 
86 
87  void cxios_set_file_name(file_Ptr file_hdl, const char * name, int name_size)
88  {
89    std::string name_str;
90    if(!cstr2string(name, name_size, name_str)) return;
91     CTimer::get("XIOS").resume();
92    file_hdl->name.setValue(name_str);
93     CTimer::get("XIOS").suspend();
94  }
95 
96  void cxios_get_file_name(file_Ptr file_hdl, char * name, int name_size)
97  {
98     CTimer::get("XIOS").resume();
99    if(!string_copy(file_hdl->name.getInheritedValue(),name , name_size))
100      ERROR("void cxios_get_file_name(file_Ptr file_hdl, char * name, int name_size)", <<"Input string is to short");
101     CTimer::get("XIOS").suspend();
102  }
103 
104  bool cxios_is_defined_file_name(file_Ptr file_hdl )
105  {
106     CTimer::get("XIOS").resume();
107    return file_hdl->name.hasInheritedValue();
108     CTimer::get("XIOS").suspend();
109  }
110 
111 
112 
113  void cxios_set_file_name_suffix(file_Ptr file_hdl, const char * name_suffix, int name_suffix_size)
114  {
115    std::string name_suffix_str;
116    if(!cstr2string(name_suffix, name_suffix_size, name_suffix_str)) return;
117     CTimer::get("XIOS").resume();
118    file_hdl->name_suffix.setValue(name_suffix_str);
119     CTimer::get("XIOS").suspend();
120  }
121 
122  void cxios_get_file_name_suffix(file_Ptr file_hdl, char * name_suffix, int name_suffix_size)
123  {
124     CTimer::get("XIOS").resume();
125    if(!string_copy(file_hdl->name_suffix.getInheritedValue(),name_suffix , name_suffix_size))
126      ERROR("void cxios_get_file_name_suffix(file_Ptr file_hdl, char * name_suffix, int name_suffix_size)", <<"Input string is to short");
127     CTimer::get("XIOS").suspend();
128  }
129 
130  bool cxios_is_defined_file_name_suffix(file_Ptr file_hdl )
131  {
132     CTimer::get("XIOS").resume();
133    return file_hdl->name_suffix.hasInheritedValue();
134     CTimer::get("XIOS").suspend();
135  }
136 
137 
138 
139  void cxios_set_file_output_freq(file_Ptr file_hdl, const char * output_freq, int output_freq_size)
140  {
141    std::string output_freq_str;
142    if(!cstr2string(output_freq, output_freq_size, output_freq_str)) return;
143     CTimer::get("XIOS").resume();
144    file_hdl->output_freq.setValue(output_freq_str);
145     CTimer::get("XIOS").suspend();
146  }
147 
148  void cxios_get_file_output_freq(file_Ptr file_hdl, char * output_freq, int output_freq_size)
149  {
150     CTimer::get("XIOS").resume();
151    if(!string_copy(file_hdl->output_freq.getInheritedValue(),output_freq , output_freq_size))
152      ERROR("void cxios_get_file_output_freq(file_Ptr file_hdl, char * output_freq, int output_freq_size)", <<"Input string is to short");
153     CTimer::get("XIOS").suspend();
154  }
155 
156  bool cxios_is_defined_file_output_freq(file_Ptr file_hdl )
157  {
158     CTimer::get("XIOS").resume();
159    return file_hdl->output_freq.hasInheritedValue();
160     CTimer::get("XIOS").suspend();
161  }
162 
163 
164 
165  void cxios_set_file_output_level(file_Ptr file_hdl, int output_level)
166  {
167     CTimer::get("XIOS").resume();
168    file_hdl->output_level.setValue(output_level);
169     CTimer::get("XIOS").suspend();
170  }
171 
172  void cxios_get_file_output_level(file_Ptr file_hdl, int* output_level)
173  {
174    *output_level = file_hdl->output_level.getInheritedValue();
175  }
176 
177  bool cxios_is_defined_file_output_level(file_Ptr file_hdl )
178  {
179     CTimer::get("XIOS").resume();
180    return file_hdl->output_level.hasInheritedValue();
181     CTimer::get("XIOS").suspend();
182  }
183 
184 
185 
186  void cxios_set_file_par_access(file_Ptr file_hdl, const char * par_access, int par_access_size)
187  {
188    std::string par_access_str;
189    if(!cstr2string(par_access, par_access_size, par_access_str)) return;
190     CTimer::get("XIOS").resume();
191    file_hdl->par_access.setValue(par_access_str);
192     CTimer::get("XIOS").suspend();
193  }
194 
195  void cxios_get_file_par_access(file_Ptr file_hdl, char * par_access, int par_access_size)
196  {
197     CTimer::get("XIOS").resume();
198    if(!string_copy(file_hdl->par_access.getInheritedValue(),par_access , par_access_size))
199      ERROR("void cxios_get_file_par_access(file_Ptr file_hdl, char * par_access, int par_access_size)", <<"Input string is to short");
200     CTimer::get("XIOS").suspend();
201  }
202 
203  bool cxios_is_defined_file_par_access(file_Ptr file_hdl )
204  {
205     CTimer::get("XIOS").resume();
206    return file_hdl->par_access.hasInheritedValue();
207     CTimer::get("XIOS").suspend();
208  }
209 
210 
211 
212  void cxios_set_file_split_freq(file_Ptr file_hdl, const char * split_freq, int split_freq_size)
213  {
214    std::string split_freq_str;
215    if(!cstr2string(split_freq, split_freq_size, split_freq_str)) return;
216     CTimer::get("XIOS").resume();
217    file_hdl->split_freq.setValue(split_freq_str);
218     CTimer::get("XIOS").suspend();
219  }
220 
221  void cxios_get_file_split_freq(file_Ptr file_hdl, char * split_freq, int split_freq_size)
222  {
223     CTimer::get("XIOS").resume();
224    if(!string_copy(file_hdl->split_freq.getInheritedValue(),split_freq , split_freq_size))
225      ERROR("void cxios_get_file_split_freq(file_Ptr file_hdl, char * split_freq, int split_freq_size)", <<"Input string is to short");
226     CTimer::get("XIOS").suspend();
227  }
228 
229  bool cxios_is_defined_file_split_freq(file_Ptr file_hdl )
230  {
231     CTimer::get("XIOS").resume();
232    return file_hdl->split_freq.hasInheritedValue();
233     CTimer::get("XIOS").suspend();
234  }
235 
236 
237 
238  void cxios_set_file_split_freq_format(file_Ptr file_hdl, const char * split_freq_format, int split_freq_format_size)
239  {
240    std::string split_freq_format_str;
241    if(!cstr2string(split_freq_format, split_freq_format_size, split_freq_format_str)) return;
242     CTimer::get("XIOS").resume();
243    file_hdl->split_freq_format.setValue(split_freq_format_str);
244     CTimer::get("XIOS").suspend();
245  }
246 
247  void cxios_get_file_split_freq_format(file_Ptr file_hdl, char * split_freq_format, int split_freq_format_size)
248  {
249     CTimer::get("XIOS").resume();
250    if(!string_copy(file_hdl->split_freq_format.getInheritedValue(),split_freq_format , split_freq_format_size))
251      ERROR("void cxios_get_file_split_freq_format(file_Ptr file_hdl, char * split_freq_format, int split_freq_format_size)", <<"Input string is to short");
252     CTimer::get("XIOS").suspend();
253  }
254 
255  bool cxios_is_defined_file_split_freq_format(file_Ptr file_hdl )
256  {
257     CTimer::get("XIOS").resume();
258    return file_hdl->split_freq_format.hasInheritedValue();
259     CTimer::get("XIOS").suspend();
260  }
261 
262 
263 
264  void cxios_set_file_sync_freq(file_Ptr file_hdl, const char * sync_freq, int sync_freq_size)
265  {
266    std::string sync_freq_str;
267    if(!cstr2string(sync_freq, sync_freq_size, sync_freq_str)) return;
268     CTimer::get("XIOS").resume();
269    file_hdl->sync_freq.setValue(sync_freq_str);
270     CTimer::get("XIOS").suspend();
271  }
272 
273  void cxios_get_file_sync_freq(file_Ptr file_hdl, char * sync_freq, int sync_freq_size)
274  {
275     CTimer::get("XIOS").resume();
276    if(!string_copy(file_hdl->sync_freq.getInheritedValue(),sync_freq , sync_freq_size))
277      ERROR("void cxios_get_file_sync_freq(file_Ptr file_hdl, char * sync_freq, int sync_freq_size)", <<"Input string is to short");
278     CTimer::get("XIOS").suspend();
279  }
280 
281  bool cxios_is_defined_file_sync_freq(file_Ptr file_hdl )
282  {
283     CTimer::get("XIOS").resume();
284    return file_hdl->sync_freq.hasInheritedValue();
285     CTimer::get("XIOS").suspend();
286  }
287 
288 
289 
290  void cxios_set_file_type(file_Ptr file_hdl, const char * type, int type_size)
291  {
292    std::string type_str;
293    if(!cstr2string(type, type_size, type_str)) return;
294     CTimer::get("XIOS").resume();
295    file_hdl->type.fromString(type_str);
296     CTimer::get("XIOS").suspend();
297  }
298 
299  void cxios_get_file_type(file_Ptr file_hdl, char * type, int type_size)
300  {
301     CTimer::get("XIOS").resume();
302    if(!string_copy(file_hdl->type.getInheritedStringValue(),type , type_size))
303      ERROR("void cxios_get_file_type(file_Ptr file_hdl, char * type, int type_size)", <<"Input string is to short");
304     CTimer::get("XIOS").suspend();
305  }
306 
307  bool cxios_is_defined_file_type(file_Ptr file_hdl )
308  {
309     CTimer::get("XIOS").resume();
310    return file_hdl->type.hasInheritedValue();
311     CTimer::get("XIOS").suspend();
312  }
313 
314 
315 
316 
317}
Note: See TracBrowser for help on using the repository browser.