source: XIOS/trunk/src/interface/fortran_attr/ifile_attr.F90 @ 369

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

Major Update

  • redesign Type and attribute manipulation
  • add enumerate type and attribute
  • use blitz class array instead of boost class array

YM

File size: 9.5 KB
Line 
1! * ************************************************************************** *
2! *               Interface auto generated - do not modify                     *
3! * ************************************************************************** *
4#include "xios_fortran_prefix.hpp"
5
6MODULE ifile_attr
7  USE, INTRINSIC :: ISO_C_BINDING
8  USE ifile
9  USE file_interface_attr
10 
11CONTAINS
12 
13  SUBROUTINE xios(set_file_attr)  &
14    ( file_id, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
15    , sync_freq, type )
16   
17    IMPLICIT NONE
18      TYPE(txios(file))  :: file_hdl
19      CHARACTER(LEN=*), INTENT(IN) ::file_id
20      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
21      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled
22      LOGICAL (KIND=C_BOOL) :: enabled_tmp
23      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
24      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix
25      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq
26      INTEGER  , OPTIONAL, INTENT(IN) :: output_level
27      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: par_access
28      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq
29      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq
30      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
31     
32      CALL xios(get_file_handle)(file_id,file_hdl)
33      CALL xios(set_file_attr_hdl_)   &
34      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
35      , sync_freq, type )
36   
37  END SUBROUTINE xios(set_file_attr)
38 
39  SUBROUTINE xios(set_file_attr_hdl)  &
40    ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
41    , sync_freq, type )
42   
43    IMPLICIT NONE
44      TYPE(txios(file)) , INTENT(IN) :: file_hdl
45      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description
46      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled
47      LOGICAL (KIND=C_BOOL) :: enabled_tmp
48      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name
49      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix
50      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq
51      INTEGER  , OPTIONAL, INTENT(IN) :: output_level
52      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: par_access
53      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq
54      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq
55      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type
56     
57      CALL xios(set_file_attr_hdl_)  &
58      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
59      , sync_freq, type )
60   
61  END SUBROUTINE xios(set_file_attr_hdl)
62 
63  SUBROUTINE xios(set_file_attr_hdl_)   &
64    ( file_hdl, description_, enabled_, name_, name_suffix_, output_freq_, output_level_, par_access_  &
65    , split_freq_, sync_freq_, type_ )
66   
67    IMPLICIT NONE
68      TYPE(txios(file)) , INTENT(IN) :: file_hdl
69      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_
70      LOGICAL  , OPTIONAL, INTENT(IN) :: enabled_
71      LOGICAL (KIND=C_BOOL) :: enabled__tmp
72      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_
73      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix_
74      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_freq_
75      INTEGER  , OPTIONAL, INTENT(IN) :: output_level_
76      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: par_access_
77      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: split_freq_
78      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: sync_freq_
79      CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_
80     
81      IF (PRESENT(description_)) THEN
82        CALL cxios_set_file_description(file_hdl%daddr, description_, len(description_))
83      ENDIF
84     
85      IF (PRESENT(enabled_)) THEN
86        enabled__tmp=enabled_
87        CALL cxios_set_file_enabled(file_hdl%daddr, enabled__tmp)
88      ENDIF
89     
90      IF (PRESENT(name_)) THEN
91        CALL cxios_set_file_name(file_hdl%daddr, name_, len(name_))
92      ENDIF
93     
94      IF (PRESENT(name_suffix_)) THEN
95        CALL cxios_set_file_name_suffix(file_hdl%daddr, name_suffix_, len(name_suffix_))
96      ENDIF
97     
98      IF (PRESENT(output_freq_)) THEN
99        CALL cxios_set_file_output_freq(file_hdl%daddr, output_freq_, len(output_freq_))
100      ENDIF
101     
102      IF (PRESENT(output_level_)) THEN
103        CALL cxios_set_file_output_level(file_hdl%daddr, output_level_)
104      ENDIF
105     
106      IF (PRESENT(par_access_)) THEN
107        CALL cxios_set_file_par_access(file_hdl%daddr, par_access_, len(par_access_))
108      ENDIF
109     
110      IF (PRESENT(split_freq_)) THEN
111        CALL cxios_set_file_split_freq(file_hdl%daddr, split_freq_, len(split_freq_))
112      ENDIF
113     
114      IF (PRESENT(sync_freq_)) THEN
115        CALL cxios_set_file_sync_freq(file_hdl%daddr, sync_freq_, len(sync_freq_))
116      ENDIF
117     
118      IF (PRESENT(type_)) THEN
119        CALL cxios_set_file_type(file_hdl%daddr, type_, len(type_))
120      ENDIF
121     
122     
123   
124  END SUBROUTINE xios(set_file_attr_hdl_)
125 
126  SUBROUTINE xios(get_file_attr)  &
127    ( file_id, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
128    , sync_freq, type )
129   
130    IMPLICIT NONE
131      TYPE(txios(file))  :: file_hdl
132      CHARACTER(LEN=*), INTENT(IN) ::file_id
133      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
134      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled
135      LOGICAL (KIND=C_BOOL) :: enabled_tmp
136      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
137      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix
138      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq
139      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level
140      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: par_access
141      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq
142      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq
143      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
144     
145      CALL xios(get_file_handle)(file_id,file_hdl)
146      CALL xios(get_file_attr_hdl_)   &
147      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
148      , sync_freq, type )
149   
150  END SUBROUTINE xios(get_file_attr)
151 
152  SUBROUTINE xios(get_file_attr_hdl)  &
153    ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
154    , sync_freq, type )
155   
156    IMPLICIT NONE
157      TYPE(txios(file)) , INTENT(IN) :: file_hdl
158      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description
159      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled
160      LOGICAL (KIND=C_BOOL) :: enabled_tmp
161      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name
162      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix
163      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq
164      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level
165      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: par_access
166      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq
167      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq
168      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type
169     
170      CALL xios(get_file_attr_hdl_)  &
171      ( file_hdl, description, enabled, name, name_suffix, output_freq, output_level, par_access, split_freq  &
172      , sync_freq, type )
173   
174  END SUBROUTINE xios(get_file_attr_hdl)
175 
176  SUBROUTINE xios(get_file_attr_hdl_)   &
177    ( file_hdl, description_, enabled_, name_, name_suffix_, output_freq_, output_level_, par_access_  &
178    , split_freq_, sync_freq_, type_ )
179   
180    IMPLICIT NONE
181      TYPE(txios(file)) , INTENT(IN) :: file_hdl
182      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: description_
183      LOGICAL  , OPTIONAL, INTENT(OUT) :: enabled_
184      LOGICAL (KIND=C_BOOL) :: enabled__tmp
185      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_
186      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix_
187      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: output_freq_
188      INTEGER  , OPTIONAL, INTENT(OUT) :: output_level_
189      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: par_access_
190      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: split_freq_
191      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: sync_freq_
192      CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_
193     
194      IF (PRESENT(description_)) THEN
195        CALL cxios_get_file_description(file_hdl%daddr, description_, len(description_))
196      ENDIF
197     
198      IF (PRESENT(enabled_)) THEN
199        CALL cxios_get_file_enabled(file_hdl%daddr, enabled__tmp)
200        enabled_=enabled__tmp
201      ENDIF
202     
203      IF (PRESENT(name_)) THEN
204        CALL cxios_get_file_name(file_hdl%daddr, name_, len(name_))
205      ENDIF
206     
207      IF (PRESENT(name_suffix_)) THEN
208        CALL cxios_get_file_name_suffix(file_hdl%daddr, name_suffix_, len(name_suffix_))
209      ENDIF
210     
211      IF (PRESENT(output_freq_)) THEN
212        CALL cxios_get_file_output_freq(file_hdl%daddr, output_freq_, len(output_freq_))
213      ENDIF
214     
215      IF (PRESENT(output_level_)) THEN
216        CALL cxios_get_file_output_level(file_hdl%daddr, output_level_)
217      ENDIF
218     
219      IF (PRESENT(par_access_)) THEN
220        CALL cxios_get_file_par_access(file_hdl%daddr, par_access_, len(par_access_))
221      ENDIF
222     
223      IF (PRESENT(split_freq_)) THEN
224        CALL cxios_get_file_split_freq(file_hdl%daddr, split_freq_, len(split_freq_))
225      ENDIF
226     
227      IF (PRESENT(sync_freq_)) THEN
228        CALL cxios_get_file_sync_freq(file_hdl%daddr, sync_freq_, len(sync_freq_))
229      ENDIF
230     
231      IF (PRESENT(type_)) THEN
232        CALL cxios_get_file_type(file_hdl%daddr, type_, len(type_))
233      ENDIF
234     
235     
236   
237  END SUBROUTINE xios(get_file_attr_hdl_)
238 
239END MODULE ifile_attr
Note: See TracBrowser for help on using the repository browser.