Changeset 313 for XIOS/trunk/src/fortran/ifield.F90
- Timestamp:
- 02/18/12 22:43:24 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/fortran/ifield.F90
r312 r313 5 5 USE FIELD_INTERFACE 6 6 USE FIELDGROUP_INTERFACE 7 ! USE IFIELD_ATTR 8 ! USE IFIELDGROUP_ATTR 7 9 8 10 TYPE txios(field) … … 15 17 16 18 CONTAINS ! Fonctions disponibles pour les utilisateurs. 17 18 19 SUBROUTINE xios(set_fieldgroup_attr) &20 (fieldgroup_id, name, standard_name, long_name, unit, operation, freq_op, level, &21 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)22 23 IMPLICIT NONE24 TYPE(txios(fieldgroup)) :: fieldgroup_hdl25 CHARACTER(len = *) , INTENT(IN) :: fieldgroup_id26 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name27 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name28 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name29 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit30 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation31 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: freq_op32 INTEGER , OPTIONAL, INTENT(IN) :: level33 INTEGER , OPTIONAL, INTENT(IN) :: prec34 LOGICAL , OPTIONAL, INTENT(IN) :: enabled35 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref36 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref37 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref38 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref39 REAL(kind=8) , OPTIONAL, INTENT(IN) :: default_value40 41 CALL xios(get_fieldgroup_handle)(fieldgroup_id,fieldgroup_hdl)42 CALL xios(set_fieldgroup_attr_hdl_) &43 (fieldgroup_hdl, name, standard_name, long_name, unit, operation, freq_op, level, &44 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)45 46 END SUBROUTINE xios(set_fieldgroup_attr)47 48 SUBROUTINE xios(set_fieldgroup_attr_hdl) &49 (fieldgroup_hdl, name, standard_name, long_name, unit, operation, freq_op, level , &50 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)51 IMPLICIT NONE52 TYPE(txios(fieldgroup)) , INTENT(IN) :: fieldgroup_hdl53 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name54 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name55 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name56 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit57 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation58 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: freq_op59 INTEGER , OPTIONAL, INTENT(IN) :: level60 INTEGER , OPTIONAL, INTENT(IN) :: prec61 LOGICAL , OPTIONAL, INTENT(IN) :: enabled62 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref63 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref64 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref65 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref66 REAL(kind=8) , OPTIONAL, INTENT(IN) :: default_value67 68 CALL xios(set_fieldgroup_attr_hdl_) &69 (fieldgroup_hdl, name, standard_name, long_name, unit, operation, freq_op, level , &70 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)71 72 END SUBROUTINE xios(set_fieldgroup_attr_hdl)73 74 75 SUBROUTINE xios(set_fieldgroup_attr_hdl_) &76 (fieldgroup_hdl, name_, standard_name_, long_name_, unit_, operation_, freq_op_, level_, &77 prec_, enabled_, domain_ref_, axis_ref_, grid_ref_, field_ref_, default_value_)78 IMPLICIT NONE79 TYPE(txios(fieldgroup)) , INTENT(IN) :: fieldgroup_hdl80 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_81 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_82 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_83 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_84 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_85 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: freq_op_86 INTEGER , OPTIONAL, INTENT(IN) :: level_87 INTEGER , OPTIONAL, INTENT(IN) :: prec_88 LOGICAL(kind = 1) :: enabled__89 LOGICAL , OPTIONAL, INTENT(IN) :: enabled_90 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_91 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_92 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref_93 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref_94 REAL(kind=8) , OPTIONAL, INTENT(IN) :: default_value_95 96 IF (PRESENT(name_)) THEN97 CALL cxios_set_fieldgroup_name(fieldgroup_hdl%daddr, name_, len(name_))98 END IF99 IF (PRESENT(standard_name_)) THEN100 CALL cxios_set_fieldgroup_standard_name(fieldgroup_hdl%daddr, standard_name_, len(standard_name_))101 END IF102 IF (PRESENT(long_name_)) THEN103 CALL cxios_set_fieldgroup_long_name(fieldgroup_hdl%daddr, long_name_, len(long_name_))104 END IF105 IF (PRESENT(unit_)) THEN106 CALL cxios_set_fieldgroup_unit(fieldgroup_hdl%daddr, unit_, len(unit_))107 END IF108 IF (PRESENT(operation_)) THEN109 CALL cxios_set_fieldgroup_operation(fieldgroup_hdl%daddr, operation_, len(operation_))110 END IF111 IF (PRESENT(freq_op_)) THEN112 CALL cxios_set_fieldgroup_freq_op(fieldgroup_hdl%daddr, freq_op_, len(freq_op_))113 END IF114 IF (PRESENT(level_)) THEN115 CALL cxios_set_fieldgroup_level(fieldgroup_hdl%daddr, level_)116 END IF117 IF (PRESENT(prec_)) THEN118 CALL cxios_set_fieldgroup_prec(fieldgroup_hdl%daddr, prec_)119 END IF120 IF (PRESENT(enabled_)) THEN121 enabled__ = enabled_122 CALL cxios_set_fieldgroup_enabled(fieldgroup_hdl%daddr, enabled__)123 END IF124 IF (PRESENT(domain_ref_)) THEN125 CALL cxios_set_fieldgroup_domain_ref(fieldgroup_hdl%daddr, domain_ref_, len(domain_ref_))126 END IF127 IF (PRESENT(axis_ref_)) THEN128 CALL cxios_set_fieldgroup_axis_ref(fieldgroup_hdl%daddr, axis_ref_, len(axis_ref_))129 END IF130 IF (PRESENT(grid_ref_)) THEN131 CALL cxios_set_fieldgroup_grid_ref(fieldgroup_hdl%daddr, grid_ref_, len(grid_ref_))132 END IF133 IF (PRESENT(field_ref_)) THEN134 CALL cxios_set_fieldgroup_field_ref(fieldgroup_hdl%daddr, field_ref_, len(field_ref_))135 END IF136 IF (PRESENT(default_value_)) THEN137 CALL cxios_set_fieldgroup_default_value(fieldgroup_hdl%daddr, default_value_)138 END IF139 140 END SUBROUTINE xios(set_fieldgroup_attr_hdl_)141 142 143 SUBROUTINE xios(set_field_attr) &144 (field_id, name, standard_name, long_name, unit, operation, freq_op, level, &145 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)146 147 IMPLICIT NONE148 TYPE(txios(field)) :: field_hdl149 CHARACTER(len = *) , INTENT(IN) :: field_id150 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name151 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name152 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name153 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit154 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation155 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: freq_op156 INTEGER , OPTIONAL, INTENT(IN) :: level157 INTEGER , OPTIONAL, INTENT(IN) :: prec158 LOGICAL , OPTIONAL, INTENT(IN) :: enabled159 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref160 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref161 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref162 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref163 REAL(kind=8) , OPTIONAL, INTENT(IN) :: default_value164 165 CALL xios(get_field_handle)(field_id,field_hdl)166 CALL xios(set_field_attr_hdl_) &167 (field_hdl, name, standard_name, long_name, unit, operation, freq_op, level, &168 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)169 END SUBROUTINE xios(set_field_attr)170 171 172 SUBROUTINE xios(set_field_attr_hdl) &173 (field_hdl, name, standard_name, long_name, unit, operation, freq_op, level, &174 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)175 IMPLICIT NONE176 TYPE(txios(field)) , INTENT(IN):: field_hdl177 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name178 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name179 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name180 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit181 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation182 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: freq_op183 INTEGER , OPTIONAL, INTENT(IN) :: level184 INTEGER , OPTIONAL, INTENT(IN) :: prec185 LOGICAL , OPTIONAL, INTENT(IN) :: enabled186 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref187 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref188 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref189 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref190 REAL(kind=8) , OPTIONAL, INTENT(IN) :: default_value191 192 CALL xios(set_field_attr_hdl_) &193 (field_hdl, name, standard_name, long_name, unit, operation, freq_op, level, &194 prec, enabled, domain_ref, axis_ref, grid_ref, field_ref, default_value)195 196 END SUBROUTINE xios(set_field_attr_hdl)197 198 SUBROUTINE xios(set_field_attr_hdl_) &199 (field_hdl, name_, standard_name_, long_name_, unit_, operation_, freq_op_, level_, &200 prec_, enabled_, domain_ref_, axis_ref_, grid_ref_, field_ref_, default_value_)201 IMPLICIT NONE202 TYPE(txios(field)) , INTENT(IN):: field_hdl203 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_204 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_205 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_206 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_207 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: operation_208 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: freq_op_209 INTEGER , OPTIONAL, INTENT(IN) :: level_210 INTEGER , OPTIONAL, INTENT(IN) :: prec_211 LOGICAL(kind = 1) :: enabled__212 LOGICAL , OPTIONAL, INTENT(IN) :: enabled_213 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_214 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_215 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: grid_ref_216 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: field_ref_217 REAL(kind=8) , OPTIONAL, INTENT(IN) :: default_value_218 219 IF (PRESENT(name_)) THEN220 CALL cxios_set_field_name(field_hdl%daddr, name_, len(name_))221 END IF222 IF (PRESENT(standard_name_)) THEN223 CALL cxios_set_field_standard_name(field_hdl%daddr, standard_name_, len(standard_name_))224 END IF225 IF (PRESENT(long_name_)) THEN226 CALL cxios_set_field_long_name(field_hdl%daddr, long_name_, len(long_name_))227 END IF228 IF (PRESENT(unit_)) THEN229 CALL cxios_set_field_unit(field_hdl%daddr, unit_, len(unit_))230 END IF231 IF (PRESENT(operation_)) THEN232 CALL cxios_set_field_operation(field_hdl%daddr, operation_, len(operation_))233 END IF234 IF (PRESENT(freq_op_)) THEN235 CALL cxios_set_field_freq_op(field_hdl%daddr, freq_op_, len(freq_op_))236 END IF237 IF (PRESENT(level_)) THEN238 CALL cxios_set_field_level(field_hdl%daddr, level_)239 END IF240 IF (PRESENT(prec_)) THEN241 CALL cxios_set_field_prec(field_hdl%daddr, prec_)242 END IF243 IF (PRESENT(enabled_)) THEN244 enabled__ = enabled_245 CALL cxios_set_field_enabled(field_hdl%daddr, enabled__)246 END IF247 IF (PRESENT(domain_ref_)) THEN248 CALL cxios_set_field_domain_ref(field_hdl%daddr, domain_ref_, len(domain_ref_))249 END IF250 IF (PRESENT(axis_ref_)) THEN251 CALL cxios_set_field_axis_ref(field_hdl%daddr, axis_ref_, len(axis_ref_))252 END IF253 IF (PRESENT(grid_ref_)) THEN254 CALL cxios_set_field_grid_ref(field_hdl%daddr, grid_ref_, len(grid_ref_))255 END IF256 IF (PRESENT(field_ref_)) THEN257 CALL cxios_set_field_field_ref(field_hdl%daddr, field_ref_, len(field_ref_))258 END IF259 IF (PRESENT(default_value_)) THEN260 CALL cxios_set_field_default_value(field_hdl%daddr, default_value_)261 END IF262 263 END SUBROUTINE xios(set_field_attr_hdl_)264 265 19 266 20 SUBROUTINE xios(get_field_handle)(idt, ret)
Note: See TracChangeset
for help on using the changeset viewer.