source: XIOS/trunk/src/fortran/ifile.F90 @ 313

Last change on this file since 313 was 313, checked in by ymipsl, 12 years ago

Fortran attribut interface are now automaticaly generated.
Add get attribut fonctionnality from fortran.

YM

File size: 1.6 KB
Line 
1#include "xios_fortran_prefix.hpp"
2
3MODULE IFILE
4   USE, INTRINSIC :: ISO_C_BINDING
5   USE FILE_INTERFACE
6   USE FILEGROUP_INTERFACE
7!   USE IFILE_ATTR
8!   USE IFILEGROUP_ATTR
9   
10   TYPE txios(file)
11      INTEGER(kind = C_INTPTR_T) :: daddr
12   END TYPE txios(file)
13   
14   TYPE txios(filegroup)
15      INTEGER(kind = C_INTPTR_T) :: daddr
16   END TYPE txios(filegroup)
17   
18   CONTAINS ! Fonctions disponibles pour les utilisateurs.
19
20   SUBROUTINE xios(get_file_handle)( idt, ret)
21      IMPLICIT NONE
22      CHARACTER(len = *),   INTENT(IN) :: idt     
23      TYPE(txios(file)) , INTENT(OUT):: ret
24
25      CALL cxios_file_handle_create(ret%daddr, idt, len(idt))           
26
27   END SUBROUTINE xios(get_file_handle)
28   
29   SUBROUTINE xios(get_filegroup_handle)(idt,ret)
30      IMPLICIT NONE
31      CHARACTER(len = *)    ,   INTENT(IN) :: idt     
32      TYPE(txios(filegroup)), INTENT(OUT):: ret
33
34      CALL cxios_filegroup_handle_create(ret%daddr, idt, len(idt))           
35
36   END SUBROUTINE xios(get_filegroup_handle)
37
38   LOGICAL FUNCTION xios(is_valid_file)(idt)
39      IMPLICIT NONE
40      CHARACTER(len  = *)    , INTENT(IN) :: idt
41      LOGICAL  (kind = 1)                 :: val
42
43      CALL cxios_file_valid_id(val, idt, len(idt));
44      xios(is_valid_file) = val
45
46   END FUNCTION  xios(is_valid_file)
47
48   LOGICAL FUNCTION xios(is_valid_filegroup)(idt)
49      IMPLICIT NONE
50      CHARACTER(len  = *)    , INTENT(IN) :: idt
51      LOGICAL  (kind = 1)                 :: val
52
53      CALL cxios_filegroup_valid_id(val, idt, len(idt));
54      xios(is_valid_filegroup) = val
55
56   END FUNCTION  xios(is_valid_filegroup)
57
58   
59END MODULE IFILE
Note: See TracBrowser for help on using the repository browser.