source: trunk/src/core/RpLibraryFInterface.h @ 2305

Last change on this file since 2305 was 1086, checked in by dkearney, 16 years ago

adding RpDXWriter fortran bindings. updates to RpDXWriter and RpSimpleBuffer? objects

File size: 5.7 KB
RevLine 
[83]1/*
2 * ----------------------------------------------------------------------
3 *  INTERFACE: Fortran Rappture Library Header
4 *
5 * ======================================================================
[93]6 *  AUTHOR:  Derrick S. Kearney, Purdue University
[591]7 *  Copyright (c) 2004-2007  Purdue Research Foundation
[115]8 *
9 *  See the file "license.terms" for information on usage and
10 *  redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
[83]11 * ======================================================================
12 */
[77]13
[656]14#ifndef _RAPPTURE_LIBRARY_F_H
15#define _RAPPTURE_LIBRARY_F_H
[77]16
[84]17#ifdef __cplusplus
[554]18    #include "RpLibrary.h"
19    #include <string.h>
20    #include <fstream>
21    #include "RpFortranCommon.h"
22    #include "RpLibraryFStubs.h"
23
[77]24    extern "C" {
[554]25#endif // ifdef __cplusplus
[77]26
[83]27int rp_lib ( const char* filePath, int filePath_len );
[77]28
[83]29void rp_lib_element_comp (  int* handle,
[77]30                            char* path,
31                            char* retText,
32                            int path_len,
33                            int retText_len );
34
[83]35void rp_lib_element_id (    int* handle,
[77]36                            char* path,
37                            char* retText,
38                            int path_len,
39                            int retText_len );
40
[83]41void rp_lib_element_type (  int* handle,
[77]42                            char* path,
43                            char* retText,
44                            int path_len,
45                            int retText_len );
46
[83]47int rp_lib_element_obj (    int* handle,
[77]48                            char* path,
49                            int path_len );
50
[83]51int rp_lib_children (       int* handle, /* integer handle of library */
52                            char* path, /* search path of the xml */
53                            int* childHandle, /*int handle of last returned child*/
54                            int path_len  /*length of the search path buffer*/
55                    );
[77]56
[84]57void rp_lib_get (           int* handle,
[77]58                            char* path,
59                            char* retText,
60                            int path_len,
61                            int retText_len );
62
[125]63void rp_lib_get_str (       int* handle,
64                            char* path,
65                            char* retText,
66                            int path_len,
67                            int retText_len );
68
[84]69double rp_lib_get_double (  int* handle,
[77]70                            char* path,
71                            int path_len);
72
[496]73int rp_lib_get_integer (    int* handle,
74                            char* path,
75                            int path_len);
76
77int rp_lib_get_boolean (    int* handle,
78                            char* path,
79                            int path_len);
80
[84]81void rp_lib_put_str (       int* handle,
82                            char* path,
83                            char* value,
[77]84                            int* append,
85                            int path_len,
[84]86                            int value_len );
[77]87
[84]88void rp_lib_put_id_str (    int* handle,
89                            char* path,
90                            char* value,
91                            char* id,
[77]92                            int* append,
93                            int path_len,
94                            int value_len,
[84]95                            int id_len );
[77]96
[591]97void rp_lib_put_data (      int* handle,
98                            char* path,
99                            char* bytes,
100                            int* nbytes,
101                            int* append,
102                            int path_len,
103                            int bytes_len );
104
105void rp_lib_put_file (      int* handle,
106                            char* path,
107                            char* fileName,
[597]108                            int* compress,
[591]109                            int* append,
110                            int path_len,
111                            int fileName_len );
112
[84]113/*
114 * rp_lib_put_obj still needs to be written
115 * keep function declaration around
[1086]116*/
[84]117void rp_lib_put_obj (       int* handle,
118                            char* path,
119                            int* valHandle,
[77]120                            int* append,
[84]121                            int path_len );
[77]122
[84]123/*
124 * rp_lib_put_id_obj still needs to be written
125 * keep function declaration around
126void rp_lib_put_id_obj (    int* handle,
127                            char* path,
128                            int* valHandle,
129                            char* id,
[77]130                            int* append,
131                            int path_len,
[84]132                            int id_len );
133*/
[77]134
[84]135/*
136 * rp_lib_remove still needs to be written
137 * keep function declaration around
[83]138int rp_lib_remove (         int* handle,
139                            char* path,
[77]140                            int path_len);
[84]141*/
[77]142
[84]143/*
144 * rp_lib_xml_len still needs to be written
145 * keep function declaration around
[83]146int rp_lib_xml_len(         int* handle);
[84]147*/
[77]148
[83]149void rp_lib_xml(            int* handle,
150                            char* retText,
[77]151                            int retText_len);
152
[83]153int rp_lib_write_xml(       int* handle,
154                            char* outFile,
[77]155                            int outFile_len);
[83]156
157void rp_lib_node_comp (     int* handle,
158                            char* retText,
159                            int retText_len);
160
161void rp_lib_node_type (     int* handle,
162                            char* retText,
163                            int retText_len);
164
165void rp_lib_node_id (       int* handle,
166                            char* retText,
167                            int retText_len);
168
169void rp_result(             int* handle );
170
[77]171/**********************************************************/
172
[84]173#ifdef __cplusplus
[77]174    }
[554]175#endif // ifdef __cplusplus
176
[656]177#endif // ifndef _RAPPTURE_LIBRARY_F_H
Note: See TracBrowser for help on using the repository browser.