1 /*
2  * Copyright (c) 2017, NVIDIA CORPORATION.  All rights reserved.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17 
18 /* fiodf.h - define global data for Fortran I/O */
19 
20 #include "global.h"
21 
22 /* define global variables for fortran I/O (members of struct fioFcbTbls): */
23 
24 FIO_TBL fioFcbTbls = {0};
25 
26 #ifdef WINNT
27 FIO_FCB *
__get_hpfio_fcbs(void)28 __get_hpfio_fcbs(void)
29 {
30   return fioFcbTbls.fcbs;
31 }
32 #endif
33 
34 /* define array giving sizes in bytes of the different data types: */
35 
36 short __fortio_type_size[] = {
37     1,  /* (byte) */
38     2,  /* signed short */
39     2,  /* unsigned short */
40     4,  /* signed int */
41     4,  /* unsigned int */
42     4,  /* signed long int */
43     4,  /* unsigned long int */
44     4,  /* float */
45     8,  /* double */
46     8,  /* (float complex) */
47     16, /* (double complex) */
48     1,  /* signed char */
49     1,  /* unsigned char */
50     16, /* long double */
51     1,  /* (string) */
52     8,  /* long long */
53     8,  /* unsigned long long */
54     1,  /* byte logical */
55     2,  /* short logical */
56     4,  /* logical */
57     8,  /* logical*8 */
58     4,  /* typeless */
59     8,  /* double typeless */
60     2,  /* ncharacter - kanji */
61 };
62