1
C===========================================================================
2
C Copyright (C) 1995-2009 European Southern Observatory (ESO)
4
C This program is free software; you can redistribute it and/or
5
C modify it under the terms of the GNU General Public License as
6
C published by the Free Software Foundation; either version 2 of
7
C the License, or (at your option) any later version.
9
C This program is distributed in the hope that it will be useful,
10
C but WITHOUT ANY WARRANTY; without even the implied warranty of
11
C MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
C GNU General Public License for more details.
14
C You should have received a copy of the GNU General Public
15
C License along with this program; if not, write to the Free
16
C Software Foundation, Inc., 675 Massachusetts Ave, Cambridge,
19
C Correspondence concerning ESO-MIDAS should be addressed as follows:
20
C Internet e-mail: midas@eso.org
21
C Postal address: European Southern Observatory
22
C Data Management Division
23
C Karl-Schwarzschild-Strasse 2
24
C D 85748 Garching bei Muenchen
26
C===========================================================================
28
C ++++++++++++++++++++++++ ystd.for +++++++++++++++++++++++++++++++++++++++
29
C .LANGUAGE Fortran 77
30
C .IDENTIFICATION Module ystd.for
32
C Module contains layer between the keyword related FORTRAN STxxxx interfaces
33
C and the SC_interfaces written in (hopefully independent) C
34
C .AUTHOR K. Banse ESO - Garching
35
C .KEYWORDS standard interfaces.
36
C .ENVIRONMENT FORTRAN and C standards
37
C .VERSION [1.00] 871207:
40
C -----------------------------------------------------------------------------
42
SUBROUTINE STDRDI(NO,DESCR,FELEM,MAXVALS,ACTVALS,VALUES,DUNIT,
49
INTEGER FELEM, MAXVALS, ACTVALS
57
CALL STSTR(1,DESCR) !STRIPPED_STRING
59
CALL STD1(NO,FELEM,MAXVALS,ACTVALS,VALUES,STATUS)
66
SUBROUTINE STDRDL(NO,DESCR,FELEM,MAXVALS,ACTVALS,VALUES,DUNIT,
73
INTEGER FELEM, MAXVALS, ACTVALS
81
CALL STSTR(1,DESCR) !STRIPPED_STRING
83
CALL STD2(NO,FELEM,MAXVALS,ACTVALS,VALUES,STATUS)
89
SUBROUTINE STDRDR(NO,DESCR,FELEM,MAXVALS,ACTVALS,VALUES,DUNIT,
96
INTEGER FELEM, MAXVALS, ACTVALS
104
CALL STSTR(1,DESCR) !STRIPPED_STRING
106
CALL STD3(NO,FELEM,MAXVALS,ACTVALS,VALUES,STATUS)
112
SUBROUTINE STDRDD(NO,DESCR,FELEM,MAXVALS,ACTVALS,VALUES,DUNIT,
119
INTEGER FELEM, MAXVALS, ACTVALS
120
DOUBLE PRECISION VALUES(*)
127
CALL STSTR(1,DESCR) !STRIPPED_STRING
129
CALL STD4(NO,FELEM,MAXVALS,ACTVALS,VALUES,STATUS)
135
SUBROUTINE STDRDS(NO,DESCR,FELEM,MAXVALS,ACTVALS,VALUES,DUNIT,
142
INTEGER FELEM, MAXVALS, ACTVALS
150
CALL STSTR(1,DESCR) !STRIPPED_STRING
152
CALL STD4a(NO,FELEM,MAXVALS,ACTVALS,VALUES,STATUS)
158
SUBROUTINE STDRDC(NO,DESCR,NOELM,FELEM,MAXVALS,ACTVALS,VALUES,
159
+ DUNIT,DNULL,STATUS)
164
CHARACTER*(*) DESCR, VALUES
165
INTEGER NOELM, FELEM, MAXVALS, ACTVALS
172
CALL STSTR(1,DESCR) !STRIPPED_STRING
173
CALL STLOC(1,1,VALUES) !blanked CHAR_LOC
175
CALL STD5(NO,NOELM,FELEM,MAXVALS,ACTVALS,STATUS)
181
SUBROUTINE STDRDH(NO,DESCR,FELEM,MAXVALS,ACTVALS,VALUES,
187
CHARACTER*(*) DESCR, VALUES
188
INTEGER TOTAL, FELEM, MAXVALS, ACTVALS
191
CALL STSTR(1,DESCR) !STRIPPED_STRING
192
CALL STLOC(1,1,VALUES) !blanked CHAR_LOC
194
CALL STD6(NO,FELEM,MAXVALS,ACTVALS,TOTAL,STATUS)
200
SUBROUTINE STDFND(NO,DESCR,CTYPE,NOELEM,BYTELEM,STATUS)
205
CHARACTER*(*) DESCR, CTYPE
206
INTEGER NOELEM, BYTELEM
209
CALL STSTR(1,DESCR) !STRIPPED_STRING
210
CALL STLOC(1,1,CTYPE) !blanked CHAR_LOC
212
CALL STD7(NO,NOELEM,BYTELEM,STATUS)
218
SUBROUTINE STDINF(NO,NPOS,FIELD,BUF,NUMBUF,STATUS)
224
INTEGER NPOS, FIELD, NUMBUF
227
CALL STLOC(1,1,BUF) !blanked CHAR_LOC
229
CALL STD8(NO,NPOS,FIELD,NUMBUF,STATUS)
235
SUBROUTINE STDRDX(NO,FLAG,DESCR,CTYPE,BYTEL,NOEL,HNC,STATUS)
240
CHARACTER*(*) DESCR, CTYPE
241
INTEGER FLAG, BYTEL, NOEL, HNC
244
CALL STLOC(1,1,DESCR) !blanked CHAR_LOC
245
CALL STLOC(2,1,CTYPE) !blanked CHAR_LOC
247
CALL STD9(NO,FLAG,BYTEL,NOEL,HNC,STATUS)
253
SUBROUTINE STDWRC(NO,DESCR,NOELM,VALUES,FELEM,MAXVALS,
259
CHARACTER*(*) DESCR, VALUES
260
INTEGER NOELM, FELEM, MAXVALS
264
CALL STSTR(1,DESCR) !STRIPPED_STRING
265
CALL STLOC(1,0,VALUES) !untouched CHAR_LOC
267
CALL STD10(NO,NOELM,FELEM,MAXVALS,STATUS)
273
SUBROUTINE STDWRD(NO,DESCR,VALUES,FELEM,MAXVALS,DUNIT,STATUS)
279
INTEGER FELEM, MAXVALS
280
DOUBLE PRECISION VALUES(*)
284
CALL STSTR(1,DESCR) !STRIPPED_STRING
286
CALL STD11(NO,VALUES,FELEM,MAXVALS,STATUS)
292
SUBROUTINE STDWRH(NO,DESCR,VALUES,FELEM,MAXVALS,STATUS)
297
CHARACTER*(*) DESCR, VALUES
298
INTEGER FELEM, MAXVALS
301
CALL STSTR(1,DESCR) !STRIPPED_STRING
302
CALL STSTR(2,VALUES) !STRIPPED_STRING (not too long)
304
CALL STD12(NO,FELEM,MAXVALS,STATUS)
310
SUBROUTINE STDWRI(NO,DESCR,VALUES,FELEM,MAXVALS,DUNIT,STATUS)
316
INTEGER FELEM, MAXVALS
321
CALL STSTR(1,DESCR) !STRIPPED_STRING
323
CALL STD13(NO,VALUES,FELEM,MAXVALS,STATUS)
329
SUBROUTINE STDWRL(NO,DESCR,VALUES,FELEM,MAXVALS,DUNIT,STATUS)
335
INTEGER FELEM, MAXVALS
340
CALL STSTR(1,DESCR) !STRIPPED_STRING
342
CALL STD14(NO,VALUES,FELEM,MAXVALS,STATUS)
348
SUBROUTINE STDWRR(NO,DESCR,VALUES,FELEM,MAXVALS,DUNIT,STATUS)
354
INTEGER FELEM, MAXVALS
359
CALL STSTR(1,DESCR) !STRIPPED_STRING
361
CALL STD15(NO,VALUES,FELEM,MAXVALS,STATUS)
366
SUBROUTINE STDDEL(NO,DESCR,STATUS)
374
CALL STSTR(1,DESCR) !STRIPPED_STRING
376
CALL STD16(NO,STATUS)
381
SUBROUTINE STDCOP(FROM,TO,MASK,DESCR,STATUS)
389
CALL STSTR(1,DESCR) !STRIPPED_STRING
391
CALL STD17(FROM,TO,MASK,STATUS)