source: XMLIO_V2/dev/dev_rv/src4/xmlio/fortran/field_interface.f90 @ 242

Last change on this file since 242 was 242, checked in by hozdoba, 10 years ago

Ajout d'une partie d'Interface fortran pour la version 4

File size: 4.7 KB
Line 
1MODULE FIELD_INTERFACE
2   USE, INTRINSIC :: ISO_C_BINDING
3   
4   INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99
5   
6      SUBROUTINE xios_set_field_name(field_hdl, name ,name_size) BIND(C)
7         USE ISO_C_BINDING
8         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
9         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: name
10         INTEGER  (kind = C_INT)                    :: name_size
11      END SUBROUTINE xios_set_field_name
12
13      SUBROUTINE xios_set_field_standard_name(field_hdl, standard_name ,standard_name_size) BIND(C)
14         USE ISO_C_BINDING
15         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
16         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: standard_name
17         INTEGER  (kind = C_INT)                    :: standard_name_size
18      END SUBROUTINE xios_set_field_standard_name
19
20      SUBROUTINE xios_set_field_long_name(field_hdl, long_name ,long_name_size) BIND(C)
21         USE ISO_C_BINDING
22         INTEGER (kind = C_INTPTR_T), VALUE        :: field_hdl
23         CHARACTER(kind = C_CHAR)   , DIMENSION(*) :: long_name
24         INTEGER (kind = C_INT)                    :: long_name_size
25      END SUBROUTINE xios_set_field_long_name
26
27      SUBROUTINE xios_set_field_unit(field_hdl, unit ,unit_size) BIND(C)
28         USE ISO_C_BINDING
29         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
30         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: unit
31         INTEGER  (kind = C_INT)                    :: unit_size
32      END SUBROUTINE xios_set_field_unit
33
34      SUBROUTINE xios_set_field_operation(field_hdl, operation ,operation_size) BIND(C)
35         USE ISO_C_BINDING
36         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
37         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: operation
38         INTEGER  (kind = C_INT)                    :: operation_size
39      END SUBROUTINE xios_set_field_operation
40
41      SUBROUTINE xios_set_field_freq_op(field_hdl, freq_op ,freq_op_size) BIND(C)
42         USE ISO_C_BINDING
43         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
44         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: freq_op
45         INTEGER  (kind = C_INT)                    :: freq_op_size
46      END SUBROUTINE xios_set_field_freq_op
47
48      SUBROUTINE xios_set_field_level(field_hdl, level) BIND(C)
49         USE ISO_C_BINDING
50         INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl
51         INTEGER (kind = C_INT)             :: level
52      END SUBROUTINE xios_set_field_level
53
54      SUBROUTINE xios_set_field_prec(field_hdl, prec) BIND(C)
55         USE ISO_C_BINDING
56         INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl
57         INTEGER (kind = C_INT)             :: prec
58      END SUBROUTINE xios_set_field_prec
59
60      SUBROUTINE xios_set_field_enabled(field_hdl, enabled) BIND(C)
61         USE ISO_C_BINDING
62         INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl
63         LOGICAL (kind = C_BOOL)            :: enabled
64         END SUBROUTINE xios_set_field_enabled
65
66      SUBROUTINE xios_set_field_domain_ref(field_hdl, domain_ref ,domain_ref_size) BIND(C)
67         USE ISO_C_BINDING
68         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
69         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: domain_ref
70         INTEGER  (kind = C_INT)                    :: domain_ref_size
71      END SUBROUTINE xios_set_field_domain_ref
72
73      SUBROUTINE xios_set_field_axis_ref(field_hdl, axis_ref ,axis_ref_size) BIND(C)
74         USE ISO_C_BINDING
75         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
76         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: axis_ref
77         INTEGER  (kind = C_INT)                    :: axis_ref_size
78      END SUBROUTINE xios_set_field_axis_ref
79
80      SUBROUTINE xios_set_field_grid_ref(field_hdl, grid_ref ,grid_ref_size) BIND(C)
81         USE ISO_C_BINDING
82         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
83         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: grid_ref
84         INTEGER  (kind = C_INT)                    :: grid_ref_size
85      END SUBROUTINE xios_set_field_grid_ref
86
87      SUBROUTINE xios_set_field_field_ref(field_hdl, field_ref ,field_ref_size) BIND(C)
88         USE ISO_C_BINDING
89         INTEGER  (kind = C_INTPTR_T), VALUE        :: field_hdl
90         CHARACTER(kind = C_CHAR)    , DIMENSION(*) :: field_ref
91         INTEGER  (kind = C_INT)                    :: field_ref_size
92      END SUBROUTINE xios_set_field_field_ref
93
94      SUBROUTINE xios_set_field_default_value(field_hdl, default_value) BIND(C)
95         USE ISO_C_BINDING
96         INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl
97         REAL    (kind = C_DOUBLE)          :: default_value
98      END SUBROUTINE xios_set_field_default_value
99   
100   END INTERFACE
101   
102END MODULE FIELD_INTERFACE
Note: See TracBrowser for help on using the repository browser.