source: XIOS/trunk/src/generate_fortran_interface.cpp @ 539

Last change on this file since 539 was 531, checked in by rlacroix, 9 years ago

Fortran interface: Make sure all files are preprocessed.

This will be needed for future changes.

  • 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: 5.1 KB
Line 
1#include "xmlioserver.hpp"
2#include "generate_interface.hpp"
3#include "indent.hpp"
4#include "attribute_template.hpp"
5#include "object_template.hpp"
6#include "group_template.hpp"
7#include "context.hpp"
8#include "file.hpp"
9
10int main (int argc, char ** argv, char ** UNUSED (env))
11{
12//  string path="./src/attr_interface/" ;
13  string path="./interface/" ;
14 
15  CContext* context=CContext::create("interface") ;
16  CAxis axis ;
17  CAxisGroup axisgroup ;
18  CField field;
19  CFieldGroup fieldgroup ;
20  CVariable variable;
21  CVariableGroup variablegroup ;
22  CDomain domain ;
23  CDomainGroup domaingroup ;
24  CGrid grid ;
25  CGridGroup gridgroup ;
26 
27  CFile afile;
28  CFileGroup filegroup;
29 
30  ostringstream oss ;
31  ofstream file;
32 
33  file.open((path+"axis_interface_attr.F90").c_str()); 
34  axis.generateFortran2003Interface(file) ;
35  file.close();
36 
37  file.open((path+"icaxis_attr.cpp").c_str()); 
38  axis.generateCInterface(file) ;
39  file.close();
40 
41  file.open((path+"iaxis_attr.F90").c_str()); 
42  axis.generateFortranInterface(file) ;
43  file.close();
44 
45  file.open((path+"axisgroup_interface_attr.F90").c_str()); 
46  axisgroup.generateFortran2003Interface(file) ;
47  file.close();
48 
49  file.open((path+"icaxisgroup_attr.cpp").c_str()); 
50  axisgroup.generateCInterface(file) ;
51  file.close();
52 
53  file.open((path+"iaxisgroup_attr.F90").c_str()); 
54  axisgroup.generateFortranInterface(file) ;
55  file.close();
56 
57  file.open((path+"domain_interface_attr.F90").c_str()); 
58  domain.generateFortran2003Interface(file) ;
59  file.close();
60 
61  file.open((path+"icdomain_attr.cpp").c_str()); 
62  domain.generateCInterface(file) ;
63  file.close();
64 
65  file.open((path+"idomain_attr.F90").c_str()); 
66  domain.generateFortranInterface(file) ;
67  file.close();
68 
69  file.open((path+"domaingroup_interface_attr.F90").c_str()); 
70  domaingroup.generateFortran2003Interface(file) ;
71  file.close();
72 
73  file.open((path+"icdomaingroup_attr.cpp").c_str()); 
74  domaingroup.generateCInterface(file) ;
75  file.close();
76 
77  file.open((path+"idomaingroup_attr.F90").c_str()); 
78  domaingroup.generateFortranInterface(file) ;
79  file.close();
80 
81 
82  file.open((path+"grid_interface_attr.F90").c_str()); 
83  grid.generateFortran2003Interface(file) ;
84  file.close();
85 
86  file.open((path+"icgrid_attr.cpp").c_str()); 
87  grid.generateCInterface(file) ;
88  file.close();
89 
90  file.open((path+"igrid_attr.F90").c_str()); 
91  grid.generateFortranInterface(file) ;
92  file.close();
93 
94  file.open((path+"gridgroup_interface_attr.F90").c_str()); 
95  gridgroup.generateFortran2003Interface(file) ;
96  file.close();
97 
98  file.open((path+"icgridgroup_attr.cpp").c_str()); 
99  gridgroup.generateCInterface(file) ;
100  file.close();
101 
102  file.open((path+"igridgroup_attr.F90").c_str()); 
103  gridgroup.generateFortranInterface(file) ;
104  file.close();
105 
106 
107  file.open((path+"field_interface_attr.F90").c_str()); 
108  field.generateFortran2003Interface(file) ;
109  file.close();
110 
111  file.open((path+"icfield_attr.cpp").c_str()); 
112  field.generateCInterface(file) ;
113  file.close();
114 
115  file.open((path+"ifield_attr.F90").c_str()); 
116  field.generateFortranInterface(file) ;
117  file.close();
118 
119  file.open((path+"fieldgroup_interface_attr.F90").c_str()); 
120  fieldgroup.generateFortran2003Interface(file) ;
121  file.close();
122 
123  file.open((path+"icfieldgroup_attr.cpp").c_str()); 
124  fieldgroup.generateCInterface(file) ;
125  file.close();
126 
127  file.open((path+"ifieldgroup_attr.F90").c_str()); 
128  fieldgroup.generateFortranInterface(file) ;
129  file.close();
130 
131
132
133  file.open((path+"variable_interface_attr.F90").c_str()); 
134  variable.generateFortran2003Interface(file) ;
135  file.close();
136 
137  file.open((path+"icvariable_attr.cpp").c_str()); 
138  variable.generateCInterface(file) ;
139  file.close();
140 
141  file.open((path+"ivariable_attr.F90").c_str()); 
142  variable.generateFortranInterface(file) ;
143  file.close();
144 
145  file.open((path+"variablegroup_interface_attr.F90").c_str()); 
146  variablegroup.generateFortran2003Interface(file) ;
147  file.close();
148 
149  file.open((path+"icvariablegroup_attr.cpp").c_str()); 
150  variablegroup.generateCInterface(file) ;
151  file.close();
152 
153  file.open((path+"ivariablegroup_attr.F90").c_str()); 
154  variablegroup.generateFortranInterface(file) ;
155  file.close();
156
157
158
159  file.open((path+"file_interface_attr.F90").c_str()); 
160  afile.generateFortran2003Interface(file) ;
161  file.close();
162 
163  file.open((path+"icfile_attr.cpp").c_str()); 
164  afile.generateCInterface(file) ;
165  file.close();
166 
167  file.open((path+"ifile_attr.F90").c_str()); 
168  afile.generateFortranInterface(file) ;
169  file.close();
170 
171  file.open((path+"filegroup_interface_attr.F90").c_str()); 
172  filegroup.generateFortran2003Interface(file) ;
173  file.close();
174 
175  file.open((path+"icfilegroup_attr.cpp").c_str()); 
176  filegroup.generateCInterface(file) ;
177  file.close();
178 
179  file.open((path+"ifilegroup_attr.F90").c_str()); 
180  filegroup.generateFortranInterface(file) ;
181  file.close();
182 
183 
184  file.open((path+"context_interface_attr.F90").c_str()); 
185  context->generateFortran2003Interface(file) ;
186  file.close();
187 
188  file.open((path+"iccontext_attr.cpp").c_str()); 
189  context->generateCInterface(file) ;
190  file.close();
191 
192  file.open((path+"icontext_attr.F90").c_str()); 
193  context->generateFortranInterface(file) ;
194  file.close();
195 
196}
Note: See TracBrowser for help on using the repository browser.