File: node145.html

package info (click to toggle)
babel 0.10.2-1
  • links: PTS
  • area: contrib
  • in suites: sarge
  • size: 43,932 kB
  • ctags: 29,707
  • sloc: java: 74,695; ansic: 73,142; cpp: 40,649; sh: 18,411; f90: 10,062; fortran: 6,727; python: 6,406; makefile: 3,866; xml: 118; perl: 48
file content (132 lines) | stat: -rw-r--r-- 4,968 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<!--Converted with LaTeX2HTML 2002-2-1 (1.70)
original version by:  Nikos Drakos, CBLU, University of Leeds
* revised and updated by:  Marcus Hennecke, Ross Moore, Herb Swan
* with significant contributions from:
  Jens Lippmann, Marek Rouchal, Martin Wilck and others -->
<HTML>
<HEAD>
<TITLE>Invoking Babel to Generate F90 Stubs</TITLE>
<META NAME="description" CONTENT="Invoking Babel to Generate F90 Stubs">
<META NAME="keywords" CONTENT="users_guide">
<META NAME="resource-type" CONTENT="document">
<META NAME="distribution" CONTENT="global">

<META NAME="Generator" CONTENT="LaTeX2HTML v2002-2-1">
<META HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">

<LINK REL="STYLESHEET" HREF="users_guide.css">

<LINK REL="next" HREF="node146.html">
<LINK REL="previous" HREF="node144.html">
<LINK REL="up" HREF="node140.html">
<LINK REL="next" HREF="node146.html">
</HEAD>

<BODY >

<DIV CLASS="navigation"><!--Navigation Panel-->
<A NAME="tex2html2874"
  HREF="node146.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<A NAME="tex2html2868"
  HREF="node140.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
<A NAME="tex2html2862"
  HREF="node144.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
<A NAME="tex2html2870"
  HREF="node14.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
<A NAME="tex2html2872"
  HREF="node317.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
<BR>
<B> Next:</B> <A NAME="tex2html2875"
  HREF="node146.html">Implementing Classes in FORTRAN</A>
<B> Up:</B> <A NAME="tex2html2869"
  HREF="node140.html">FORTRAN 90 Bindings</A>
<B> Previous:</B> <A NAME="tex2html2863"
  HREF="node144.html">Catching and Throwing Exceptions</A>
 &nbsp; <B>  <A NAME="tex2html2871"
  HREF="node14.html">Contents</A></B> 
 &nbsp; <B>  <A NAME="tex2html2873"
  HREF="node317.html">Index</A></B> 
<BR>
<BR></DIV>
<!--End of Navigation Panel-->

<H1><A NAME="SECTION03450000000000000000"></A>
<A NAME="8105"></A>
<BR>
Invoking Babel to Generate F90 Stubs
</H1>

<P>
Here is how you should invoke Babel to create the FORTRAN 90 stubs for an IDL 
file <A NAME="tex2html40"
  HREF="footnode.html#foot8191"><SUP><SPAN CLASS="arabic">10</SPAN>.<SPAN CLASS="arabic">1</SPAN></SUP></A>.

<P>
<BLOCKQUOTE>
<TT> <TT>%</TT> <TT><B>babel -client=f90 file.sidl</B></TT>
<BR>
</TT></BLOCKQUOTE>or simply
<BLOCKQUOTE>
<TT> <TT>%</TT> <TT><B>babel -c=f90 file.sidl</B></TT>
<BR>
</TT></BLOCKQUOTE>
<P>
This will create a babel.make file, numerous C headers, numerous C source 
files, and some FORTRAN 90 files.  The files ending in
<TT>_fStub.c</TT> are called by the FORTRAN 90 module which in turn
allow FORTRAN 90 to call a SIDL method. The files ending in
<TT>_type.F90</TT> contain derived type definitions for classes and
interfaces., and the other files ending in <TT>.F90</TT> are FORTRAN 90
modules containing methods.

<P>
You will need to compile and link the files ending in <TT>_fStub.c</TT>
(i.e., <TT>STUBSRCS</TT> in <TT>babel.make</TT>) and all the files ending
in <TT>.F90</TT> (i.e., <TT>STUBMODULESRCS</TT> and <TT>TYPEMODULESRCS</TT>
in <TT>babel.make</TT>) into your application.  Normally, the IOR files
(<TT>_IOR.c</TT>) are linked together with the implementation file, so
you probably don't need to compile them.

<P>

<DIV CLASS="navigation"><HR>
<!--Navigation Panel-->
<A NAME="tex2html2874"
  HREF="node146.html">
<IMG WIDTH="37" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="next" SRC="next.png"></A> 
<A NAME="tex2html2868"
  HREF="node140.html">
<IMG WIDTH="26" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="up" SRC="up.png"></A> 
<A NAME="tex2html2862"
  HREF="node144.html">
<IMG WIDTH="63" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="previous" SRC="prev.png"></A> 
<A NAME="tex2html2870"
  HREF="node14.html">
<IMG WIDTH="65" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="contents" SRC="contents.png"></A> 
<A NAME="tex2html2872"
  HREF="node317.html">
<IMG WIDTH="43" HEIGHT="24" ALIGN="BOTTOM" BORDER="0" ALT="index" SRC="index.png"></A> 
<BR>
<B> Next:</B> <A NAME="tex2html2875"
  HREF="node146.html">Implementing Classes in FORTRAN</A>
<B> Up:</B> <A NAME="tex2html2869"
  HREF="node140.html">FORTRAN 90 Bindings</A>
<B> Previous:</B> <A NAME="tex2html2863"
  HREF="node144.html">Catching and Throwing Exceptions</A>
 &nbsp; <B>  <A NAME="tex2html2871"
  HREF="node14.html">Contents</A></B> 
 &nbsp; <B>  <A NAME="tex2html2873"
  HREF="node317.html">Index</A></B> </DIV>
<!--End of Navigation Panel-->
<ADDRESS>
<br><br>babel-0.10.2<br>users_guide Last Modified 2005-03-23<br><br><a href="http://www.llnl.gov/CASC/components">http://www.llnl.gov/CASC/components</a><br><a href="mailto:components@llnl.gov">components@llnl.gov</a>
</ADDRESS>
</BODY>
</HTML>