source: trunk/include/cee/RpLibraryCInterface.h @ 77

Last change on this file since 77 was 77, checked in by dkearney, 15 years ago
  1. initial checkin of RpLibrary? code, includes c++/c/fortran bindings
  2. minor modifications to makefiles to accommodate new code
  3. updated README in src to tell how to compile code in src and test
File size: 3.4 KB
Line 
1
2
3#ifdef __cplusplus
4extern "C" {
5#endif
6
7    typedef struct RpLibrary RpLibrary;
8
9    // unit definition functions
10    RpLibrary*  library             (const char* path);
11    void freeLibrary                (RpLibrary* lib);
12
13    // RpLibrary member functions
14    RpLibrary*  element             (RpLibrary* lib, const char* path);
15    RpLibrary*  elementAsObject     (RpLibrary* lib, const char* path);
16    const char* elementAsType       (RpLibrary* lib, const char* path);
17    const char* elementAsComp       (RpLibrary* lib, const char* path);
18    const char* elementAsId         (RpLibrary* lib, const char* path);
19
20    RpLibrary* children             (RpLibrary* lib,
21                                     const char* path,
22                                     RpLibrary* childEle);
23    RpLibrary* childrenByType       (RpLibrary* lib,
24                                     const char* path,
25                                     RpLibrary* childEle,
26                                     const char* type   );
27    RpLibrary* childrenAsObject     (RpLibrary* lib,
28                                     const char* path,
29                                     const char* type   );
30    const char* childrenAsType      (RpLibrary* lib,
31                                     const char* path,
32                                     const char* type   );
33    const char* childrenAsComp      (RpLibrary* lib,
34                                     const char* path,
35                                     const char* type   );
36    const char* childrenAsId        (RpLibrary* lib,
37                                     const char* path,
38                                     const char* type   );
39
40    RpLibrary*  get                 (RpLibrary* lib, const char* path);
41    const char* getString           (RpLibrary* lib, const char* path);
42    double      getDouble           (RpLibrary* lib, const char* path);
43
44    void        put                 (RpLibrary* lib,
45                                     const char* path,
46                                     const char* value,
47                                     const char* id,
48                                     int append         );
49    void        putStringId         (RpLibrary* lib,
50                                     const char* path,
51                                     const char* value,
52                                     const char* id,
53                                     int append         );
54    void        putString           (RpLibrary* lib,
55                                     const char* path,
56                                     const char* value,
57                                     int append         );
58    void        putDoubleId         (RpLibrary* lib,
59                                     const char* path,
60                                     double value,
61                                     const char* id,
62                                     int append         );
63    void        putDouble           (RpLibrary* lib,
64                                     const char* path,
65                                     double value,
66                                     int append         );
67
68    const char* xml                 (RpLibrary* lib);
69
70    const char* nodeComp            (RpLibrary* node);
71    const char* nodeType            (RpLibrary* node);
72    const char* nodeId              (RpLibrary* node);
73
74#ifdef __cplusplus
75}
76#endif
Note: See TracBrowser for help on using the repository browser.