New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
generate_fortran_interface.cpp in vendors/XIOS/current/src – NEMO

source: vendors/XIOS/current/src/generate_fortran_interface.cpp @ 3408

Last change on this file since 3408 was 3408, checked in by rblod, 12 years ago

importing initial XIOS vendor drop

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