~ubuntu-branches/ubuntu/intrepid/plplot/intrepid

« back to all changes in this revision

Viewing changes to doc/docbook/src/api-fortran95.xml

  • Committer: Bazaar Package Importer
  • Author(s): Rafael Laboissiere
  • Date: 2006-11-04 10:19:34 UTC
  • mfrom: (2.1.8 edgy)
  • Revision ID: james.westby@ubuntu.com-20061104101934-mlirvdg4gpwi6i5q
Tags: 5.6.1-10
* Orphaning the package
* debian/control: Changed the maintainer to the Debian QA Group

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
<!--
 
2
    api-fortran95.xml: "The Specialized Fortran 95 API for PLplot" chapter
 
3
 
 
4
    Copyright (C) 1994  Geoffrey Furnish and Maurice LeBrun
 
5
    Copyright (C) 1999, 2000, 2001, 2002, 2003  Rafael Laboissiere
 
6
    Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004  Alan W. Irwin
 
7
    Copyright (C) 2003  Joao Cardoso
 
8
    Copyright (C) 2004  Andrew Ross
 
9
 
 
10
    Redistribution and use in source (XML DocBook) and "compiled" forms
 
11
    (HTML, PDF, PostScript, DVI, TeXinfo and so forth) with or without
 
12
    modification, are permitted provided that the following conditions are
 
13
    met:
 
14
 
 
15
       1. Redistributions of source code (XML DocBook) must retain the
 
16
          above copyright notice, this list of conditions and the following
 
17
          disclaimer as the first lines of this file unmodified.
 
18
 
 
19
       2. Redistributions in compiled form (transformed to other DTDs,
 
20
          converted to HTML, PDF, PostScript, and other formats) must
 
21
          reproduce the above copyright notice, this list of conditions and
 
22
          the following disclaimer in the documentation and/or other
 
23
          materials provided with the distribution.
 
24
 
 
25
    Important: THIS DOCUMENTATION IS PROVIDED BY THE PLPLOT PROJECT "AS IS"
 
26
    AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
 
27
    THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 
28
    PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE PLPLOT PROJECT BE LIABLE
 
29
    FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
 
30
    CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
 
31
    SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
 
32
    BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
 
33
    WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
 
34
    OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS DOCUMENTATION,
 
35
    EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
36
-->
 
37
 
 
38
<chapter id="API-FORTRAN-95">
 
39
  <title>The Specialized Fortran 95 API for PLplot</title>
 
40
 
 
41
  <para>
 
42
  The purpose of this Chapter is to document the API for each Fortran 95 function
 
43
  in PLplot that differs substantially (usually in argument lists)
 
44
  from the common API that has already been
 
45
  documented in <xref linkend="API"/>.
 
46
  </para>
 
47
 
 
48
  <para>
 
49
  Normally, the common API is wrapped in such a way for Fortran 95 that there is
 
50
  and one-to-one correspondence between each Fortran 95 and C argument
 
51
  (see <xref linkend="fortran95"/>
 
52
  for discussion).  However, for certain routines documented in this
 
53
  chapter the Fortran 95 argument lists
 
54
  necessarily differ substantially from the C versions.
 
55
  </para>
 
56
 
 
57
  <para>
 
58
  This chapter is incomplete and NEEDS DOCUMENTATION.
 
59
  </para>
 
60
 
 
61
  <sect1 id="plcontfortran95" renderas="sect3">
 
62
    <title>
 
63
      <function>plcont</function>: Contour plot for Fortran 95
 
64
    </title>
 
65
 
 
66
    <para>
 
67
      This is an overloaded function with a variety of argument lists
 
68
      which NEED DOCUMENTATION.
 
69
    </para>
 
70
 
 
71
    <para>
 
72
      When called from Fortran 95, this overloaded routine has the same 
 
73
      effect as when invoked from C.  See
 
74
      <filename>examples/f95/x??f.f90</filename> for various ways to call
 
75
      plcont from Fortran 95.
 
76
    </para>
 
77
 
 
78
  </sect1>
 
79
 
 
80
  <sect1 id="plshadefortran95" renderas="sect3">
 
81
    <title>
 
82
      <function>plshade</function>: Shaded plot for Fortran 95
 
83
    </title>
 
84
 
 
85
    <para>
 
86
      This is an overloaded function with a variety of argument lists
 
87
      which NEED DOCUMENTATION.
 
88
    </para>
 
89
 
 
90
    <para>
 
91
      When called from Fortran 95, this overloaded routine has the same 
 
92
      effect as when invoked from C.  See
 
93
      <filename>examples/f95/x??f.f90</filename> for various ways to call
 
94
      plshade from Fortran 95.
 
95
    </para>
 
96
 
 
97
  </sect1>
 
98
 
 
99
  <sect1 id="plshadesfortran95" renderas="sect3">
 
100
    <title>
 
101
      <function>plshades</function>: Continuously shaded plot for Fortran 95
 
102
    </title>
 
103
 
 
104
    <para>
 
105
      This is an overloaded function with a variety of argument lists
 
106
      which NEED DOCUMENTATION.
 
107
    </para>
 
108
 
 
109
    <para>
 
110
      When called from Fortran 95, this overloaded routine has the same 
 
111
      effect as when invoked from C.  See
 
112
      <filename>examples/f95/x??f.f90</filename> for various ways to call
 
113
      plshades from Fortran 95.
 
114
    </para>
 
115
 
 
116
  </sect1>
 
117
 
 
118
  <sect1 id="plvectfortran95" renderas="sect3">
 
119
    <title>
 
120
      <function>plvect</function>: Vector plot for Fortran 95
 
121
    </title>
 
122
 
 
123
    <para>
 
124
      This is an overloaded function with a variety of argument lists
 
125
      which NEED DOCUMENTATION.
 
126
    </para>
 
127
 
 
128
    <para>
 
129
      When called from Fortran 95, this overloaded routine has the same 
 
130
      effect as when invoked from C.  See
 
131
      <filename>examples/f95/x??f.f90</filename> for various ways to call
 
132
      plvect from Fortran 95.
 
133
    </para>
 
134
 
 
135
  </sect1>
 
136
 
 
137
  <sect1 id="plmeshfortran95" renderas="sect3">
 
138
    <title>
 
139
      <function>plmesh</function>: Plot surface mesh for Fortran 95
 
140
    </title>
 
141
 
 
142
    <para>
 
143
      <funcsynopsis>
 
144
      <funcprototype>
 
145
        <funcdef>
 
146
          <function>plmesh</function>
 
147
        </funcdef>
 
148
        <paramdef><parameter>x</parameter></paramdef>
 
149
        <paramdef><parameter>y</parameter></paramdef>
 
150
        <paramdef><parameter>z</parameter></paramdef>
 
151
        <paramdef><parameter>nx</parameter></paramdef>
 
152
        <paramdef><parameter>ny</parameter></paramdef>
 
153
        <paramdef><parameter>opt</parameter></paramdef>
 
154
        <paramdef><parameter>mx</parameter></paramdef>
 
155
      </funcprototype>
 
156
      </funcsynopsis>
 
157
    </para>
 
158
 
 
159
    <para>
 
160
      When called from Fortran 95, this routine has the same effect as when
 
161
      invoked from C.  The interpretation of all parameters (see &plmesh;)
 
162
      is also the same except there is an additional parameter given by:
 
163
    </para>
 
164
 
 
165
    <variablelist>
 
166
      <varlistentry>
 
167
        <term>
 
168
          <parameter>mx</parameter>
 
169
          (<literal>PLINT</literal>, input)
 
170
        </term>
 
171
        <listitem>
 
172
          <para>
 
173
            Length of array in x direction, for plotting subarrays.
 
174
          </para>
 
175
        </listitem>
 
176
      </varlistentry>
 
177
    </variablelist>
 
178
 
 
179
  </sect1>
 
180
 
 
181
  <sect1 id="plot3dfortran95" renderas="sect3">
 
182
    <title>
 
183
      <function>plot3d</function>: Plot 3-d surface plot for Fortran 95
 
184
    </title>
 
185
 
 
186
    <para>
 
187
      <funcsynopsis>
 
188
      <funcprototype>
 
189
        <funcdef>
 
190
          <function>plot3d</function>
 
191
        </funcdef>
 
192
        <paramdef><parameter>x</parameter></paramdef>
 
193
        <paramdef><parameter>y</parameter></paramdef>
 
194
        <paramdef><parameter>z</parameter></paramdef>
 
195
        <paramdef><parameter>nx</parameter></paramdef>
 
196
        <paramdef><parameter>ny</parameter></paramdef>
 
197
        <paramdef><parameter>opt</parameter></paramdef>
 
198
        <paramdef><parameter>side</parameter></paramdef>
 
199
        <paramdef><parameter>mx</parameter></paramdef>
 
200
      </funcprototype>
 
201
      </funcsynopsis>
 
202
    </para>
 
203
 
 
204
    <para>
 
205
      When called from Fortran 95, this routine has the same effect as when
 
206
      invoked from C.  The interpretation of all parameters (see &plot3d;)
 
207
      is also the same except there is an additional parameter given by:
 
208
    </para>
 
209
 
 
210
    <variablelist>
 
211
      <varlistentry>
 
212
        <term>
 
213
          <parameter>mx</parameter>
 
214
          (<literal>PLINT</literal>, input)
 
215
        </term>
 
216
        <listitem>
 
217
          <para>
 
218
            Length of array in x direction, for plotting subarrays.
 
219
          </para>
 
220
        </listitem>
 
221
      </varlistentry>
 
222
    </variablelist>
 
223
 
 
224
  </sect1>
 
225
 
 
226
  <sect1 id="plparseoptsfortran95" renderas="sect3">
 
227
    <title>
 
228
      <function>plparseopts</function>: parse arguments for Fortran 95
 
229
    </title>
 
230
 
 
231
    <para>
 
232
      <funcsynopsis>
 
233
      <funcprototype>
 
234
        <funcdef>
 
235
          <function>plparseopts</function>
 
236
        </funcdef>
 
237
        <paramdef><parameter>mode</parameter></paramdef>
 
238
      </funcprototype>
 
239
      </funcsynopsis>
 
240
    </para>
 
241
 
 
242
    <para> When called from Fortran 95, this routine has the same effect as
 
243
      when invoked from C (see &plparseopts;) except that the argument list
 
244
      just contains the parsing mode and the Fortran 95 system routines
 
245
      <function>iargc</function> and <function>getarg</function> 
 
246
      are used internally to obtain the number of arguments and
 
247
      argument values.  (Note, during configuration, the user's
 
248
      Fortran 95 compiler
 
249
      is checked to see whether it supports 
 
250
      <function>iargc</function> and <function>getarg</function>.  If it
 
251
      does not, the Fortran 95 plparseopts simply writes a warning message
 
252
      and returns.
 
253
    </para>
 
254
 
 
255
    <variablelist>
 
256
      <varlistentry>
 
257
        <term>
 
258
          <parameter>mode</parameter>
 
259
          (<literal>PLINT</literal>, input)
 
260
        </term>
 
261
        <listitem>
 
262
          <para>
 
263
            Parsing mode; see &plparseopts; for details.
 
264
          </para>
 
265
        </listitem>
 
266
      </varlistentry>
 
267
    </variablelist>
 
268
 
 
269
  </sect1>
 
270
 
 
271
  <sect1 id="plsescfortran95" renderas="sect3">
 
272
    <title>
 
273
      <function>plsesc</function>: Set the escape character for text strings
 
274
for Fortran 95
 
275
    </title>
 
276
 
 
277
    <para>
 
278
      <funcsynopsis>
 
279
      <funcprototype>
 
280
        <funcdef>
 
281
           <function>plsesc</function>
 
282
        </funcdef>
 
283
        <paramdef><parameter>esc</parameter></paramdef>
 
284
      </funcprototype>
 
285
      </funcsynopsis>
 
286
    </para>
 
287
 
 
288
    <para>
 
289
    Set the escape character for text strings.  From
 
290
    Fortran 95 it needs to be the decimal ASCII value.  Only
 
291
    selected characters are allowed to prevent the user from shooting
 
292
    himself in the foot (For example, a <quote>\</quote> isn't allowed since it conflicts with C's use
 
293
    of backslash as a character escape).  Here are the allowed escape
 
294
characters and their corresponding decimal ASCII values:
 
295
<itemizedlist>
 
296
<listitem>
 
297
<para>
 
298
  <quote>!</quote>, ASCII 33
 
299
</para>
 
300
</listitem>
 
301
<listitem>
 
302
<para>
 
303
  <quote>#</quote>, ASCII 35
 
304
</para>
 
305
</listitem>
 
306
<listitem>
 
307
<para>
 
308
  <quote>$</quote>, ASCII 36
 
309
</para>
 
310
</listitem>
 
311
<listitem>
 
312
<para>
 
313
  <quote>%</quote>, ASCII 37
 
314
</para>
 
315
</listitem>
 
316
<listitem>
 
317
<para>
 
318
  <quote>&amp;</quote>, ASCII 38
 
319
</para>
 
320
</listitem>
 
321
<listitem>
 
322
<para>
 
323
  <quote>*</quote>, ASCII 42
 
324
</para>
 
325
</listitem>
 
326
<listitem>
 
327
<para>
 
328
  <quote>@</quote>, ASCII 64
 
329
</para>
 
330
</listitem>
 
331
<listitem>
 
332
<para>
 
333
  <quote>^</quote>, ASCII 94
 
334
</para>
 
335
</listitem>
 
336
<listitem>
 
337
<para>
 
338
  <quote>~</quote>, ASCII 126
 
339
</para>
 
340
</listitem>
 
341
</itemizedlist>
 
342
    </para>
 
343
 
 
344
    <variablelist>
 
345
      <varlistentry>
 
346
        <term>
 
347
          <parameter>esc</parameter>
 
348
          (<literal>char</literal>, input)
 
349
        </term>
 
350
        <listitem>
 
351
          <para>
 
352
            NEEDS DOCUMENTATION
 
353
          </para>
 
354
        </listitem>
 
355
      </varlistentry>
 
356
    </variablelist>
 
357
 
 
358
  </sect1>
 
359
 
 
360
</chapter>
 
361
 
 
362
<!-- Keep this comment at the end of the file
 
363
Local variables:
 
364
mode: sgml
 
365
sgml-omittag:t
 
366
sgml-shorttag:t
 
367
sgml-minimize-attributes:nil
 
368
sgml-always-quote-attributes:t
 
369
sgml-indent-step:2
 
370
sgml-indent-data:t
 
371
sgml-parent-document: ("plplotdoc.xml" "book" "chapter" "")
 
372
sgml-default-dtd-file:nil
 
373
sgml-exposed-tags:nil
 
374
sgml-local-catalogs:("/usr/lib/sgml/catalog")
 
375
sgml-local-ecat-files:nil
 
376
End:
 
377
-->