source: trunk/src/core/RpLibraryFStubs.h @ 2408

Last change on this file since 2408 was 2408, checked in by dkearney, 11 years ago

adding a getFile function for rappture library and fortran bindings so fortran users no longer need to know the length of a string a user provides them as input, before compile time. they can now just dump the string into a file, and read the file as they are probably already used to doing. also fixed a bug in teh Rappture::Buffer dump function where it would correctly open a file pointer, but failed the check to see if the file pointer was opened.

File size: 15.3 KB
Line 
1/*
2 * ----------------------------------------------------------------------
3 *  INTERFACE: Fortran Rappture Library Stub Headers
4 *
5 * ======================================================================
6 *  AUTHOR:  Derrick Kearney, Purdue University
7 *  Copyright (c) 2004-2007  Purdue Research Foundation
8 *
9 *  See the file "license.terms" for information on usage and
10 *  redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
11 * ======================================================================
12 */
13
14#ifdef __cplusplus
15    extern "C" {
16#endif
17
18
19/**********************************************************/
20// INTERFACE FUNCTIONS - ONE UNDERSCORE
21
22void rp_init_();
23
24int rp_lib_ ( const char* filePath, int filePath_len );
25
26void rp_lib_element_comp_ ( int* handle,
27                            char* path,
28                            char* retText,
29                            int path_len,
30                            int retText_len );
31
32void rp_lib_element_id_ (   int* handle,
33                            char* path,
34                            char* retText,
35                            int path_len,
36                            int retText_len );
37
38void rp_lib_element_type_ ( int* handle,
39                            char* path,
40                            char* retText,
41                            int path_len,
42                            int retText_len );
43
44int rp_lib_element_obj_ (   int* handle,
45                            char* path,
46                            int path_len );
47
48int rp_lib_child_num_ (     int* handle,
49                            char* path,
50                            int* childHandle,
51                            int path_len);
52
53int rp_lib_children_ (      int* handle, /* integer handle of library */
54                            char* path, /* search path of the xml */
55                            int* childHandle, /*int handle of last returned child*/
56                            int path_len  /*length of the search path buffer*/
57                    );
58
59
60void rp_lib_get_ (          int* handle,
61                            char* path,
62                            char* retText,
63                            int path_len,
64                            int retText_len );
65
66void rp_lib_get_str_ (      int* handle,
67                            char* path,
68                            char* retText,
69                            int path_len,
70                            int retText_len );
71
72double rp_lib_get_double_ ( int* handle,
73                            char* path,
74                            int path_len);
75
76int rp_lib_get_integer_ (   int* handle,
77                            char* path,
78                            int path_len);
79
80int rp_lib_get_boolean_ (   int* handle,
81                            char* path,
82                            int path_len);
83
84int rp_lib_get_file_ (      int* handle,
85                            char* path,
86                            char* fileName,
87                            int path_len,
88                            int fileName_len);
89
90void rp_lib_put_str_ (      int* handle,
91                            char* path,
92                            char* value,
93                            int* append,
94                            int path_len,
95                            int value_len );
96
97void rp_lib_put_id_str_ (   int* handle,
98                            char* path,
99                            char* value,
100                            char* id,
101                            int* append,
102                            int path_len,
103                            int value_len,
104                            int id_len );
105
106void rp_lib_put_data_ (     int* handle,
107                            char* path,
108                            char* bytes,
109                            int* nbytes,
110                            int* append,
111                            int path_len,
112                            int bytes_len );
113
114void rp_lib_put_file_ (     int* handle,
115                            char* path,
116                            char* fileName,
117                            int* compress,
118                            int* append,
119                            int path_len,
120                            int fileName_len );
121
122/*
123void rp_lib_put_obj_ (      int* handle,
124                            char* path,
125                            int* valHandle,
126                            int* append,
127                            int path_len );
128
129void rp_lib_put_id_obj_ (   int* handle,
130                            char* path,
131                            int* valHandle,
132                            char* id,
133                            int* append,
134                            int path_len,
135                            int id_len );
136*/
137
138int rp_lib_remove_ (        int* handle,
139                            char* path,
140                            int path_len);
141
142int rp_lib_xml_len_(        int* handle);
143
144void rp_lib_xml_(           int* handle,
145                            char* retText,
146                            int retText_len);
147
148int rp_lib_write_xml_(      int* handle,
149                            char* outFile,
150                            int outFile_len);
151
152void rp_lib_node_comp_ (    int* handle,
153                            char* retText,
154                            int retText_len);
155
156void rp_lib_node_type_ (    int* handle,
157                            char* retText,
158                            int retText_len);
159
160void rp_lib_node_id_ (      int* handle,
161                            char* retText,
162                            int retText_len);
163
164void rp_result_(            int* handle );
165
166
167/**********************************************************/
168
169void rp_init__();
170
171int rp_lib__ ( const char* filePath, int filePath_len );
172
173void rp_lib_element_comp__ (int* handle,
174                            char* path,
175                            char* retText,
176                            int path_len,
177                            int retText_len );
178
179void rp_lib_element_id__ (  int* handle,
180                            char* path,
181                            char* retText,
182                            int path_len,
183                            int retText_len );
184
185void rp_lib_element_type__ (int* handle,
186                            char* path,
187                            char* retText,
188                            int path_len,
189                            int retText_len );
190
191int rp_lib_element_obj__ (  int* handle,
192                            char* path,
193                            int path_len );
194
195int rp_lib_child_num__ (    int* handle,
196                            char* path,
197                            int* childHandle,
198                            int path_len);
199
200int rp_lib_children__ (     int* handle, /* integer handle of library */
201                            char* path, /* search path of the xml */
202                            int* childHandle, /*int handle of last returned child*/
203                            int path_len  /*length of the search path buffer*/
204                    );
205
206
207void rp_lib_get__ (         int* handle,
208                            char* path,
209                            char* retText,
210                            int path_len,
211                            int retText_len );
212
213void rp_lib_get_str__ (     int* handle,
214                            char* path,
215                            char* retText,
216                            int path_len,
217                            int retText_len );
218
219double rp_lib_get_double__ (int* handle,
220                            char* path,
221                            int path_len);
222
223int rp_lib_get_integer__ (  int* handle,
224                            char* path,
225                            int path_len);
226
227int rp_lib_get_boolean__ (  int* handle,
228                            char* path,
229                            int path_len);
230
231int rp_lib_get_file__ (     int* handle,
232                            char* path,
233                            char* fileName,
234                            int path_len,
235                            int fileName_len);
236
237void rp_lib_put_str__ (     int* handle,
238                            char* path,
239                            char* value,
240                            int* append,
241                            int path_len,
242                            int value_len );
243
244void rp_lib_put_id_str__ (  int* handle,
245                            char* path,
246                            char* value,
247                            char* id,
248                            int* append,
249                            int path_len,
250                            int value_len,
251                            int id_len );
252
253void rp_lib_put_data__ (    int* handle,
254                            char* path,
255                            char* bytes,
256                            int* nbytes,
257                            int* append,
258                            int path_len,
259                            int bytes_len );
260
261void rp_lib_put_file__ (    int* handle,
262                            char* path,
263                            char* fileName,
264                            int* compress,
265                            int* append,
266                            int path_len,
267                            int fileName_len );
268
269/*
270void rp_lib_put_obj__ (     int* handle,
271                            char* path,
272                            int* valHandle,
273                            int* append,
274                            int path_len );
275
276void rp_lib_put_id_obj__ (  int* handle,
277                            char* path,
278                            int* valHandle,
279                            char* id,
280                            int* append,
281                            int path_len,
282                            int id_len );
283*/
284
285int rp_lib_remove__ (       int* handle,
286                            char* path,
287                            int path_len);
288
289int rp_lib_xml_len__(       int* handle);
290
291void rp_lib_xml__(          int* handle,
292                            char* retText,
293                            int retText_len);
294
295int rp_lib_write_xml__(     int* handle,
296                            char* outFile,
297                            int outFile_len);
298
299void rp_lib_node_comp__ (   int* handle,
300                            char* retText,
301                            int retText_len);
302
303void rp_lib_node_type__ (   int* handle,
304                            char* retText,
305                            int retText_len);
306
307void rp_lib_node_id__ (     int* handle,
308                            char* retText,
309                            int retText_len);
310
311void rp_result__(           int* handle );
312
313
314/**********************************************************/
315// INTERFACE STUB FUNCTIONS - ALL CAPS
316
317void RP_INIT();
318
319int RP_LIB ( const char* filePath, int filePath_len );
320
321void RP_LIB_ELEMENT_COMP (  int* handle,
322                            char* path,
323                            char* retText,
324                            int path_len,
325                            int retText_len );
326
327void RP_LIB_ELEMENT_ID(    int* handle,
328                            char* path,
329                            char* retText,
330                            int path_len,
331                            int retText_len );
332
333void RP_LIB_ELEMENT_TYPE (  int* handle,
334                            char* path,
335                            char* retText,
336                            int path_len,
337                            int retText_len );
338
339int RP_LIB_ELEMENT_OBJ (    int* handle,
340                            char* path,
341                            int path_len );
342
343int RP_LIB_CHILD_NUM (      int* handle,
344                            char* path,
345                            int* childHandle,
346                            int path_len);
347
348int RP_LIB_CHILDREN (       int* handle, /* integer handle of library */
349                            char* path, /* search path of the xml */
350                            int* childHandle, /*int handle of last returned child*/
351                            int path_len  /*length of the search path buffer*/
352                    );
353
354
355void RP_LIB_GET (           int* handle,
356                            char* path,
357                            char* retText,
358                            int path_len,
359                            int retText_len );
360
361void RP_LIB_GET_STR (       int* handle,
362                            char* path,
363                            char* retText,
364                            int path_len,
365                            int retText_len );
366
367double RP_LIB_GET_DOUBLE (  int* handle,
368                            char* path,
369                            int path_len);
370
371int RP_LIB_GET_INTEGER (    int* handle,
372                            char* path,
373                            int path_len);
374
375int RP_LIB_GET_BOOLEAN (    int* handle,
376                            char* path,
377                            int path_len);
378
379int RP_LIB_GET_FILE (       int* handle,
380                            char* path,
381                            char* fileName,
382                            int path_len,
383                            int fileName_len);
384
385void RP_LIB_PUT_STR (       int* handle,
386                            char* path,
387                            char* value,
388                            int* append,
389                            int path_len,
390                            int value_len );
391
392void RP_LIB_PUT_ID_STR (    int* handle,
393                            char* path,
394                            char* value,
395                            char* id,
396                            int* append,
397                            int path_len,
398                            int value_len,
399                            int id_len );
400
401void RP_LIB_PUT_DATA (      int* handle,
402                            char* path,
403                            char* bytes,
404                            int* nbytes,
405                            int* append,
406                            int path_len,
407                            int bytes_len );
408
409void RP_LIB_PUT_FILE (      int* handle,
410                            char* path,
411                            char* fileName,
412                            int* compress,
413                            int* append,
414                            int path_len,
415                            int fileName_len );
416/*
417void RP_LIB_PUT_OBJ (       int* handle,
418                            char* path,
419                            int* valHandle,
420                            int* append,
421                            int path_len );
422
423void RP_LIB_PUT_ID_OBJ (    int* handle,
424                            char* path,
425                            int* valHandle,
426                            char* id,
427                            int* append,
428                            int path_len,
429                            int id_len );
430*/
431
432int RP_LIB_REMOVE (         int* handle,
433                            char* path,
434                            int path_len);
435
436int RP_LIB_XML_LEN(         int* handle);
437
438void RP_LIB_XML(            int* handle,
439                            char* retText,
440                            int retText_len);
441
442int RP_LIB_WRITE_XML(       int* handle,
443                            char* outFile,
444                            int outFile_len);
445
446void RP_LIB_NODE_COMP (     int* handle,
447                            char* retText,
448                            int retText_len);
449
450void RP_LIB_NODE_TYPE (     int* handle,
451                            char* retText,
452                            int retText_len);
453
454void RP_LIB_NODE_ID (       int* handle,
455                            char* retText,
456                            int retText_len);
457
458void RP_RESULT(             int* handle );
459
460
461/**********************************************************/
462/**********************************************************/
463
464#ifdef __cplusplus
465    }
466#endif
Note: See TracBrowser for help on using the repository browser.