Changeset 312 for XIOS/trunk/src/fortran/igrid.F90
- Timestamp:
- 02/14/12 15:36:14 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/fortran/igrid.F90
r286 r312 5 5 USE GRID_INTERFACE 6 6 USE GRIDGROUP_INTERFACE 7 8 TYPE XGridHandle9 INTEGER(kind = C_INTPTR_T) :: daddr10 END TYPE XGridHandle11 12 TYPE XGridGroupHandle13 INTEGER(kind = C_INTPTR_T) :: daddr14 END TYPE XGridGroupHandle15 7 16 8 TYPE txios(grid) … … 22 14 END TYPE txios(gridgroup) 23 15 24 !----------------------------------------------------------------------------25 INTERFACE set_grid_attributes26 MODULE PROCEDURE set_grid_attributes_id,set_grid_attributes_hdl27 END INTERFACE28 29 INTERFACE set_grid_group_attributes30 MODULE PROCEDURE set_gridgroup_attributes_id,set_gridgroup_attributes_hdl31 END INTERFACE32 !----------------------------------------------------------------------------33 16 34 17 CONTAINS ! Fonctions disponibles pour les utilisateurs. … … 175 158 END FUNCTION xios(is_valid_gridgroup) 176 159 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 !!!!!!!!!!!!!!!!!!!! Anciennes interfaces !!!!!!!!!!!!!!!!!!!!!!!!!!!!198 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!199 200 SUBROUTINE set_grid_attributes_id(grid_id, name_, description_, domain_ref_, axis_ref_)201 IMPLICIT NONE202 TYPE(XGridHandle) :: grid_hdl203 CHARACTER(len = *) , INTENT(IN) :: grid_id204 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_205 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_206 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_207 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_208 209 CALL grid_handle_create(grid_hdl, grid_id)210 CALL set_grid_attributes_hdl(grid_hdl, name_, description_, domain_ref_, axis_ref_)211 212 END SUBROUTINE set_grid_attributes_id213 214 SUBROUTINE set_grid_attributes_hdl(grid_hdl, name_, description_, domain_ref_, axis_ref_)215 IMPLICIT NONE216 TYPE (XGridHandle) :: grid_hdl217 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_218 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_219 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_220 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_221 222 IF (PRESENT(name_)) THEN223 CALL cxios_set_grid_name(grid_hdl%daddr, name_, len(name_))224 END IF225 IF (PRESENT(description_)) THEN226 CALL cxios_set_grid_description(grid_hdl%daddr, description_, len(description_))227 END IF228 IF (PRESENT(domain_ref_)) THEN229 CALL cxios_set_grid_domain_ref(grid_hdl%daddr, domain_ref_, len(domain_ref_))230 END IF231 IF (PRESENT(axis_ref_)) THEN232 CALL cxios_set_grid_axis_ref(grid_hdl%daddr, axis_ref_, len(axis_ref_))233 END IF234 END SUBROUTINE set_grid_attributes_hdl235 236 SUBROUTINE set_gridgroup_attributes_id(gridgroup_id, name_, description_, domain_ref_, axis_ref_)237 IMPLICIT NONE238 TYPE(XGridGroupHandle) :: gridgroup_hdl239 CHARACTER(len = *) , INTENT(IN) :: gridgroup_id240 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_241 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_242 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_243 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_244 245 CALL gridgroup_handle_create(gridgroup_hdl, gridgroup_id)246 CALL set_gridgroup_attributes_hdl(gridgroup_hdl, name_, description_, domain_ref_, axis_ref_)247 248 END SUBROUTINE set_gridgroup_attributes_id249 250 SUBROUTINE set_gridgroup_attributes_hdl(gridgroup_hdl, name_, description_, domain_ref_, axis_ref_)251 IMPLICIT NONE252 TYPE (XGridGroupHandle) :: gridgroup_hdl253 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_254 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_255 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_256 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_257 258 IF (PRESENT(name_)) THEN259 CALL cxios_set_gridgroup_name(gridgroup_hdl%daddr, name_, len(name_))260 END IF261 IF (PRESENT(description_)) THEN262 CALL cxios_set_gridgroup_description(gridgroup_hdl%daddr, description_, len(description_))263 END IF264 IF (PRESENT(domain_ref_)) THEN265 CALL cxios_set_gridgroup_domain_ref(gridgroup_hdl%daddr, domain_ref_, len(domain_ref_))266 END IF267 IF (PRESENT(axis_ref_)) THEN268 CALL cxios_set_gridgroup_axis_ref(gridgroup_hdl%daddr, axis_ref_, len(axis_ref_))269 END IF270 END SUBROUTINE set_gridgroup_attributes_hdl271 272 SUBROUTINE grid_handle_create(ret, idt)273 IMPLICIT NONE274 TYPE(XGridHandle), INTENT(OUT):: ret275 CHARACTER(len = *), INTENT(IN) :: idt276 CALL cxios_grid_handle_create(ret%daddr, idt, len(idt))277 END SUBROUTINE grid_handle_create278 279 SUBROUTINE gridgroup_handle_create(ret, idt)280 IMPLICIT NONE281 TYPE(XGridGroupHandle), INTENT(OUT):: ret282 CHARACTER(len = *) , INTENT(IN) :: idt283 CALL cxios_gridgroup_handle_create(ret%daddr, idt, len(idt))284 END SUBROUTINE gridgroup_handle_create285 286 LOGICAL FUNCTION grid_valid_id(idt)287 IMPLICIT NONE288 CHARACTER(len = *) , INTENT(IN) :: idt289 LOGICAL (kind = 1) :: val290 CALL cxios_grid_valid_id(val, idt, len(idt));291 grid_valid_id = val292 END FUNCTION grid_valid_id293 294 LOGICAL FUNCTION gridgroup_valid_id(idt)295 IMPLICIT NONE296 CHARACTER(len = *) , INTENT(IN) :: idt297 LOGICAL (kind = 1) :: val298 CALL cxios_gridgroup_valid_id(val, idt, len(idt));299 gridgroup_valid_id = val300 END FUNCTION gridgroup_valid_id301 160 302 161 END MODULE IGRID
Note: See TracChangeset
for help on using the changeset viewer.