Changeset 313 for XIOS/trunk/src/fortran
- Timestamp:
- 02/18/12 22:43:24 (12 years ago)
- Location:
- XIOS/trunk/src/fortran
- Files:
-
- 25 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/fortran/axis_interface.f90
r286 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_axis_name(axis_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_axis_name12 13 SUBROUTINE cxios_set_axis_standard_name(axis_hdl, standard_name, standard_name_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: standard_name17 INTEGER (kind = C_INT) , VALUE :: standard_name_size18 END SUBROUTINE cxios_set_axis_standard_name19 20 SUBROUTINE cxios_set_axis_long_name(axis_hdl, long_name, long_name_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: long_name24 INTEGER (kind = C_INT) , VALUE :: long_name_size25 END SUBROUTINE cxios_set_axis_long_name26 27 SUBROUTINE cxios_set_axis_unit(axis_hdl, unit, unit_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: unit31 INTEGER (kind = C_INT) , VALUE :: unit_size32 END SUBROUTINE cxios_set_axis_unit33 34 SUBROUTINE cxios_set_axis_size(axis_hdl, size) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl37 INTEGER (kind = C_INT) , VALUE :: size38 END SUBROUTINE cxios_set_axis_size39 40 SUBROUTINE cxios_set_axis_zvalue(axis_hdl, zvalue, zvalue_extent1) BIND(C)41 USE ISO_C_BINDING42 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl43 REAL (kind = C_DOUBLE) , DIMENSION(*) :: zvalue44 INTEGER (kind = C_INT) , VALUE :: zvalue_extent145 END SUBROUTINE cxios_set_axis_zvalue46 47 6 SUBROUTINE cxios_axis_handle_create(ret, idt, idt_size) BIND(C) 48 7 USE ISO_C_BINDING -
XIOS/trunk/src/fortran/axisgroup_interface.f90
r286 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_axisgroup_name(axisgroup_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_axisgroup_name12 13 SUBROUTINE cxios_set_axisgroup_standard_name(axisgroup_hdl, standard_name, standard_name_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: standard_name17 INTEGER (kind = C_INT) , VALUE :: standard_name_size18 END SUBROUTINE cxios_set_axisgroup_standard_name19 20 SUBROUTINE cxios_set_axisgroup_long_name(axisgroup_hdl, long_name, long_name_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: long_name24 INTEGER (kind = C_INT) , VALUE :: long_name_size25 END SUBROUTINE cxios_set_axisgroup_long_name26 27 SUBROUTINE cxios_set_axisgroup_unit(axisgroup_hdl, unit, unit_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: unit31 INTEGER (kind = C_INT) , VALUE :: unit_size32 END SUBROUTINE cxios_set_axisgroup_unit33 34 SUBROUTINE cxios_set_axisgroup_size(axisgroup_hdl, size) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl37 INTEGER (kind = C_INT) , VALUE :: size38 END SUBROUTINE cxios_set_axisgroup_size39 40 SUBROUTINE cxios_set_axisgroup_zvalue(axisgroup_hdl, zvalue, zvalue_extent1) BIND(C)41 USE ISO_C_BINDING42 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl43 REAL (kind = C_DOUBLE) , DIMENSION(*) :: zvalue44 INTEGER (kind = C_INT) , VALUE :: zvalue_extent145 END SUBROUTINE cxios_set_axisgroup_zvalue46 6 47 7 SUBROUTINE cxios_axisgroup_handle_create(ret, idt, idt_size) BIND(C) -
XIOS/trunk/src/fortran/context_interface.f90
r312 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_context_calendar_type(context_hdl, calendar_type ,calendar_type_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: context_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: calendar_type10 INTEGER (kind = C_INT) , VALUE :: calendar_type_size11 END SUBROUTINE cxios_set_context_calendar_type12 13 SUBROUTINE cxios_set_context_start_date(context_hdl, start_date ,start_date_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: context_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: start_date17 INTEGER (kind = C_INT) , VALUE :: start_date_size18 END SUBROUTINE cxios_set_context_start_date19 20 SUBROUTINE cxios_set_context_output_dir(context_hdl, output_dir ,output_dir_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: context_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: output_dir24 INTEGER (kind = C_INT) , VALUE :: output_dir_size25 END SUBROUTINE cxios_set_context_output_dir26 27 6 SUBROUTINE cxios_context_handle_create(ret, idt, idt_size) BIND(C) 28 7 import C_CHAR, C_INTPTR_T, C_INT -
XIOS/trunk/src/fortran/domain_interface.f90
r312 r313 3 3 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 6 SUBROUTINE cxios_set_domain_name(domain_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_domain_name12 13 SUBROUTINE cxios_set_domain_standard_name(domain_hdl, standard_name, standard_name_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: standard_name17 INTEGER (kind = C_INT) , VALUE :: standard_name_size18 END SUBROUTINE cxios_set_domain_standard_name19 20 SUBROUTINE cxios_set_domain_long_name(domain_hdl, long_name, long_name_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: long_name24 INTEGER (kind = C_INT) , VALUE :: long_name_size25 END SUBROUTINE cxios_set_domain_long_name26 27 SUBROUTINE cxios_set_domain_domain_group_ref(domain_hdl, domain_group_ref, domain_group_ref_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: domain_group_ref31 INTEGER (kind = C_INT) , VALUE :: domain_group_ref_size32 END SUBROUTINE cxios_set_domain_domain_group_ref33 34 SUBROUTINE cxios_set_domain_ni_glo(domain_hdl, ni_glo) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl37 INTEGER (kind = C_INT) , VALUE :: ni_glo38 END SUBROUTINE cxios_set_domain_ni_glo39 40 SUBROUTINE cxios_set_domain_nj_glo(domain_hdl, nj_glo) BIND(C)41 USE ISO_C_BINDING42 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl43 INTEGER (kind = C_INT) , VALUE :: nj_glo44 END SUBROUTINE cxios_set_domain_nj_glo45 46 SUBROUTINE cxios_set_domain_ibegin(domain_hdl, ibegin) BIND(C)47 USE ISO_C_BINDING48 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl49 INTEGER (kind = C_INT) , VALUE :: ibegin50 END SUBROUTINE cxios_set_domain_ibegin51 52 SUBROUTINE cxios_set_domain_iend(domain_hdl, iend) BIND(C)53 USE ISO_C_BINDING54 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl55 INTEGER (kind = C_INT) , VALUE :: iend56 END SUBROUTINE cxios_set_domain_iend57 58 SUBROUTINE cxios_set_domain_ni(domain_hdl, ni) BIND(C)59 USE ISO_C_BINDING60 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl61 INTEGER (kind = C_INT) , VALUE :: ni62 END SUBROUTINE cxios_set_domain_ni63 64 SUBROUTINE cxios_set_domain_jbegin(domain_hdl, jbegin) BIND(C)65 USE ISO_C_BINDING66 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl67 INTEGER (kind = C_INT) , VALUE :: jbegin68 END SUBROUTINE cxios_set_domain_jbegin69 70 SUBROUTINE cxios_set_domain_jend(domain_hdl, jend) BIND(C)71 USE ISO_C_BINDING72 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl73 INTEGER (kind = C_INT) , VALUE :: jend74 END SUBROUTINE cxios_set_domain_jend75 76 SUBROUTINE cxios_set_domain_nj(domain_hdl, nj) BIND(C)77 USE ISO_C_BINDING78 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl79 INTEGER (kind = C_INT) , VALUE :: nj80 END SUBROUTINE cxios_set_domain_nj81 82 SUBROUTINE cxios_set_domain_mask(domain_hdl, mask, mask_extent1, mask_extent2) BIND(C)83 USE ISO_C_BINDING84 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl85 LOGICAL(kind = C_BOOL) , DIMENSION(*) :: mask86 INTEGER (kind = C_INT) , VALUE :: mask_extent187 INTEGER (kind = C_INT) , VALUE :: mask_extent288 END SUBROUTINE cxios_set_domain_mask89 90 SUBROUTINE cxios_set_domain_data_dim(domain_hdl, data_dim) BIND(C)91 USE ISO_C_BINDING92 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl93 INTEGER (kind = C_INT) , VALUE :: data_dim94 END SUBROUTINE cxios_set_domain_data_dim95 96 SUBROUTINE cxios_set_domain_data_ni(domain_hdl, data_ni) BIND(C)97 USE ISO_C_BINDING98 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl99 INTEGER (kind = C_INT) , VALUE :: data_ni100 END SUBROUTINE cxios_set_domain_data_ni101 102 SUBROUTINE cxios_set_domain_data_nj(domain_hdl, data_nj) BIND(C)103 USE ISO_C_BINDING104 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl105 INTEGER (kind = C_INT) , VALUE :: data_nj106 END SUBROUTINE cxios_set_domain_data_nj107 108 SUBROUTINE cxios_set_domain_data_ibegin(domain_hdl, data_ibegin) BIND(C)109 USE ISO_C_BINDING110 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl111 INTEGER (kind = C_INT) , VALUE :: data_ibegin112 END SUBROUTINE cxios_set_domain_data_ibegin113 114 SUBROUTINE cxios_set_domain_data_jbegin(domain_hdl, data_jbegin) BIND(C)115 USE ISO_C_BINDING116 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl117 INTEGER (kind = C_INT) , VALUE :: data_jbegin118 END SUBROUTINE cxios_set_domain_data_jbegin119 120 SUBROUTINE cxios_set_domain_zoom_ni(domain_hdl, zoom_ni) BIND(C)121 USE ISO_C_BINDING122 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl123 INTEGER (kind = C_INT) , VALUE :: zoom_ni124 END SUBROUTINE cxios_set_domain_zoom_ni125 126 SUBROUTINE cxios_set_domain_zoom_nj(domain_hdl, zoom_nj) BIND(C)127 USE ISO_C_BINDING128 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl129 INTEGER (kind = C_INT) , VALUE :: zoom_nj130 END SUBROUTINE cxios_set_domain_zoom_nj131 132 SUBROUTINE cxios_set_domain_zoom_ibegin(domain_hdl, zoom_ibegin) BIND(C)133 USE ISO_C_BINDING134 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl135 INTEGER (kind = C_INT) , VALUE :: zoom_ibegin136 END SUBROUTINE cxios_set_domain_zoom_ibegin137 138 SUBROUTINE cxios_set_domain_zoom_jbegin(domain_hdl, zoom_jbegin) BIND(C)139 USE ISO_C_BINDING140 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl141 INTEGER (kind = C_INT) , VALUE :: zoom_jbegin142 END SUBROUTINE cxios_set_domain_zoom_jbegin143 144 SUBROUTINE cxios_set_domain_data_n_index(domain_hdl, data_n_index) BIND(C)145 USE ISO_C_BINDING146 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl147 INTEGER (kind = C_INT) , VALUE :: data_n_index148 END SUBROUTINE cxios_set_domain_data_n_index149 150 SUBROUTINE cxios_set_domain_data_i_index(domain_hdl, data_i_index, data_i_index_extent1) BIND(C)151 USE ISO_C_BINDING152 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl153 INTEGER (kind = C_INT) , DIMENSION(*) :: data_i_index154 INTEGER (kind = C_INT) , VALUE :: data_i_index_extent1155 END SUBROUTINE cxios_set_domain_data_i_index156 157 SUBROUTINE cxios_set_domain_data_j_index(domain_hdl, data_j_index, data_j_index_extent1) BIND(C)158 USE ISO_C_BINDING159 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl160 INTEGER (kind = C_INT) , DIMENSION(*) :: data_j_index161 INTEGER (kind = C_INT) , VALUE :: data_j_index_extent1162 END SUBROUTINE cxios_set_domain_data_j_index163 164 SUBROUTINE cxios_set_domain_lonvalue(domain_hdl, lonvalue, lonvalue_extent1) BIND(C)165 USE ISO_C_BINDING166 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl167 REAL (kind = C_DOUBLE) , DIMENSION(*) :: lonvalue168 INTEGER (kind = C_INT) , VALUE :: lonvalue_extent1169 END SUBROUTINE cxios_set_domain_lonvalue170 171 SUBROUTINE cxios_set_domain_latvalue(domain_hdl, latvalue, latvalue_extent1) BIND(C)172 USE ISO_C_BINDING173 INTEGER (kind = C_INTPTR_T), VALUE :: domain_hdl174 REAL (kind = C_DOUBLE) , DIMENSION(*) :: latvalue175 INTEGER (kind = C_INT) , VALUE :: latvalue_extent1176 END SUBROUTINE cxios_set_domain_latvalue177 5 178 6 SUBROUTINE cxios_domain_handle_create(ret, idt, idt_size) BIND(C) -
XIOS/trunk/src/fortran/domaingroup_interface.f90
r312 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_domaingroup_name(domaingroup_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_domaingroup_name12 13 SUBROUTINE cxios_set_domaingroup_standard_name(domaingroup_hdl, standard_name, standard_name_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: standard_name17 INTEGER (kind = C_INT) , VALUE :: standard_name_size18 END SUBROUTINE cxios_set_domaingroup_standard_name19 20 SUBROUTINE cxios_set_domaingroup_long_name(domaingroup_hdl, long_name, long_name_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: long_name24 INTEGER (kind = C_INT) , VALUE :: long_name_size25 END SUBROUTINE cxios_set_domaingroup_long_name26 27 SUBROUTINE cxios_set_domaingroup_domain_group_ref(domaingroup_hdl, domain_group_ref, domain_group_ref_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: domain_group_ref31 INTEGER (kind = C_INT) , VALUE :: domain_group_ref_size32 END SUBROUTINE cxios_set_domaingroup_domain_group_ref33 34 SUBROUTINE cxios_set_domaingroup_ni_glo(domaingroup_hdl, ni_glo) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl37 INTEGER (kind = C_INT) , VALUE :: ni_glo38 END SUBROUTINE cxios_set_domaingroup_ni_glo39 40 SUBROUTINE cxios_set_domaingroup_nj_glo(domaingroup_hdl, nj_glo) BIND(C)41 USE ISO_C_BINDING42 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl43 INTEGER (kind = C_INT) , VALUE :: nj_glo44 END SUBROUTINE cxios_set_domaingroup_nj_glo45 46 SUBROUTINE cxios_set_domaingroup_ibegin(domaingroup_hdl, ibegin) BIND(C)47 USE ISO_C_BINDING48 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl49 INTEGER (kind = C_INT) , VALUE :: ibegin50 END SUBROUTINE cxios_set_domaingroup_ibegin51 52 SUBROUTINE cxios_set_domaingroup_iend(domaingroup_hdl, iend) BIND(C)53 USE ISO_C_BINDING54 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl55 INTEGER (kind = C_INT) , VALUE :: iend56 END SUBROUTINE cxios_set_domaingroup_iend57 58 SUBROUTINE cxios_set_domaingroup_ni(domaingroup_hdl, ni) BIND(C)59 USE ISO_C_BINDING60 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl61 INTEGER (kind = C_INT) , VALUE :: ni62 END SUBROUTINE cxios_set_domaingroup_ni63 64 SUBROUTINE cxios_set_domaingroup_jbegin(domaingroup_hdl, jbegin) BIND(C)65 USE ISO_C_BINDING66 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl67 INTEGER (kind = C_INT) , VALUE :: jbegin68 END SUBROUTINE cxios_set_domaingroup_jbegin69 70 SUBROUTINE cxios_set_domaingroup_jend(domaingroup_hdl, jend) BIND(C)71 USE ISO_C_BINDING72 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl73 INTEGER (kind = C_INT) , VALUE :: jend74 END SUBROUTINE cxios_set_domaingroup_jend75 76 SUBROUTINE cxios_set_domaingroup_nj(domaingroup_hdl, nj) BIND(C)77 USE ISO_C_BINDING78 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl79 INTEGER (kind = C_INT) , VALUE :: nj80 END SUBROUTINE cxios_set_domaingroup_nj81 82 SUBROUTINE cxios_set_domaingroup_mask(domaingroup_hdl, mask, mask_extent1, mask_extent2) BIND(C)83 USE ISO_C_BINDING84 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl85 LOGICAL(kind = C_BOOL) , DIMENSION(*) :: mask86 INTEGER (kind = C_INT) , VALUE :: mask_extent187 INTEGER (kind = C_INT) , VALUE :: mask_extent288 END SUBROUTINE cxios_set_domaingroup_mask89 90 SUBROUTINE cxios_set_domaingroup_data_dim(domaingroup_hdl, data_dim) BIND(C)91 USE ISO_C_BINDING92 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl93 INTEGER (kind = C_INT) , VALUE :: data_dim94 END SUBROUTINE cxios_set_domaingroup_data_dim95 96 SUBROUTINE cxios_set_domaingroup_data_ni(domaingroup_hdl, data_ni) BIND(C)97 USE ISO_C_BINDING98 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl99 INTEGER (kind = C_INT) , VALUE :: data_ni100 END SUBROUTINE cxios_set_domaingroup_data_ni101 102 SUBROUTINE cxios_set_domaingroup_data_nj(domaingroup_hdl, data_nj) BIND(C)103 USE ISO_C_BINDING104 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl105 INTEGER (kind = C_INT) , VALUE :: data_nj106 END SUBROUTINE cxios_set_domaingroup_data_nj107 108 SUBROUTINE cxios_set_domaingroup_data_ibegin(domaingroup_hdl, data_ibegin) BIND(C)109 USE ISO_C_BINDING110 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl111 INTEGER (kind = C_INT) , VALUE :: data_ibegin112 END SUBROUTINE cxios_set_domaingroup_data_ibegin113 114 SUBROUTINE cxios_set_domaingroup_data_jbegin(domaingroup_hdl, data_jbegin) BIND(C)115 USE ISO_C_BINDING116 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl117 INTEGER (kind = C_INT) , VALUE :: data_jbegin118 END SUBROUTINE cxios_set_domaingroup_data_jbegin119 120 SUBROUTINE cxios_set_domaingroup_zoom_ni(domaingroup_hdl, zoom_ni) BIND(C)121 USE ISO_C_BINDING122 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl123 INTEGER (kind = C_INT) , VALUE :: zoom_ni124 END SUBROUTINE cxios_set_domaingroup_zoom_ni125 126 SUBROUTINE cxios_set_domaingroup_zoom_nj(domaingroup_hdl, zoom_nj) BIND(C)127 USE ISO_C_BINDING128 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl129 INTEGER (kind = C_INT) , VALUE :: zoom_nj130 END SUBROUTINE cxios_set_domaingroup_zoom_nj131 132 SUBROUTINE cxios_set_domaingroup_zoom_ibegin(domaingroup_hdl, zoom_ibegin) BIND(C)133 USE ISO_C_BINDING134 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl135 INTEGER (kind = C_INT) , VALUE :: zoom_ibegin136 END SUBROUTINE cxios_set_domaingroup_zoom_ibegin137 138 SUBROUTINE cxios_set_domaingroup_zoom_jbegin(domaingroup_hdl, zoom_jbegin) BIND(C)139 USE ISO_C_BINDING140 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl141 INTEGER (kind = C_INT) , VALUE :: zoom_jbegin142 END SUBROUTINE cxios_set_domaingroup_zoom_jbegin143 144 SUBROUTINE cxios_set_domaingroup_data_n_index(domaingroup_hdl, data_n_index) BIND(C)145 USE ISO_C_BINDING146 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl147 INTEGER (kind = C_INT) , VALUE :: data_n_index148 END SUBROUTINE cxios_set_domaingroup_data_n_index149 150 SUBROUTINE cxios_set_domaingroup_data_i_index(domaingroup_hdl, data_i_index, data_i_index_extent1) BIND(C)151 USE ISO_C_BINDING152 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl153 INTEGER (kind = C_INT) , DIMENSION(*) :: data_i_index154 INTEGER (kind = C_INT) , VALUE :: data_i_index_extent1155 END SUBROUTINE cxios_set_domaingroup_data_i_index156 157 SUBROUTINE cxios_set_domaingroup_data_j_index(domaingroup_hdl, data_j_index, data_j_index_extent1) BIND(C)158 USE ISO_C_BINDING159 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl160 INTEGER (kind = C_INT) , DIMENSION(*) :: data_j_index161 INTEGER (kind = C_INT) , VALUE :: data_j_index_extent1162 END SUBROUTINE cxios_set_domaingroup_data_j_index163 164 SUBROUTINE cxios_set_domaingroup_lonvalue(domaingroup_hdl, lonvalue, lonvalue_extent1) BIND(C)165 USE ISO_C_BINDING166 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl167 REAL (kind = C_DOUBLE) , DIMENSION(*) :: lonvalue168 INTEGER (kind = C_INT) , VALUE :: lonvalue_extent1169 END SUBROUTINE cxios_set_domaingroup_lonvalue170 171 SUBROUTINE cxios_set_domaingroup_latvalue(domaingroup_hdl, latvalue, latvalue_extent1) BIND(C)172 USE ISO_C_BINDING173 INTEGER (kind = C_INTPTR_T), VALUE :: domaingroup_hdl174 REAL (kind = C_DOUBLE) , DIMENSION(*) :: latvalue175 INTEGER (kind = C_INT) , VALUE :: latvalue_extent1176 END SUBROUTINE cxios_set_domaingroup_latvalue177 178 6 SUBROUTINE cxios_domaingroup_handle_create(ret, idt, idt_size) BIND(C) 179 7 USE ISO_C_BINDING -
XIOS/trunk/src/fortran/field_interface.f90
r310 r313 3 3 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 6 SUBROUTINE cxios_set_field_name(field_hdl, name ,name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_field_name12 13 SUBROUTINE cxios_set_field_standard_name(field_hdl, standard_name ,standard_name_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: standard_name17 INTEGER (kind = C_INT) , VALUE :: standard_name_size18 END SUBROUTINE cxios_set_field_standard_name19 20 SUBROUTINE cxios_set_field_long_name(field_hdl, long_name ,long_name_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: long_name24 INTEGER (kind = C_INT) , VALUE :: long_name_size25 END SUBROUTINE cxios_set_field_long_name26 27 SUBROUTINE cxios_set_field_unit(field_hdl, unit ,unit_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: unit31 INTEGER (kind = C_INT) , VALUE :: unit_size32 END SUBROUTINE cxios_set_field_unit33 34 SUBROUTINE cxios_set_field_operation(field_hdl, operation ,operation_size) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl37 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: operation38 INTEGER (kind = C_INT) , VALUE :: operation_size39 END SUBROUTINE cxios_set_field_operation40 41 SUBROUTINE cxios_set_field_freq_op(field_hdl, freq_op ,freq_op_size) BIND(C)42 USE ISO_C_BINDING43 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl44 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: freq_op45 INTEGER (kind = C_INT) , VALUE :: freq_op_size46 END SUBROUTINE cxios_set_field_freq_op47 48 SUBROUTINE cxios_set_field_level(field_hdl, level) BIND(C)49 USE ISO_C_BINDING50 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl51 INTEGER (kind = C_INT) , VALUE :: level52 END SUBROUTINE cxios_set_field_level53 54 SUBROUTINE cxios_set_field_prec(field_hdl, prec) BIND(C)55 USE ISO_C_BINDING56 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl57 INTEGER (kind = C_INT) , VALUE :: prec58 END SUBROUTINE cxios_set_field_prec59 60 SUBROUTINE cxios_set_field_enabled(field_hdl, enabled) BIND(C)61 USE ISO_C_BINDING62 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl63 LOGICAL (kind = C_BOOL) , VALUE :: enabled64 END SUBROUTINE cxios_set_field_enabled65 66 SUBROUTINE cxios_set_field_domain_ref(field_hdl, domain_ref ,domain_ref_size) BIND(C)67 USE ISO_C_BINDING68 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl69 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: domain_ref70 INTEGER (kind = C_INT) , VALUE :: domain_ref_size71 END SUBROUTINE cxios_set_field_domain_ref72 73 SUBROUTINE cxios_set_field_axis_ref(field_hdl, axis_ref ,axis_ref_size) BIND(C)74 USE ISO_C_BINDING75 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl76 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: axis_ref77 INTEGER (kind = C_INT) , VALUE :: axis_ref_size78 END SUBROUTINE cxios_set_field_axis_ref79 80 SUBROUTINE cxios_set_field_grid_ref(field_hdl, grid_ref ,grid_ref_size) BIND(C)81 USE ISO_C_BINDING82 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl83 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: grid_ref84 INTEGER (kind = C_INT) , VALUE :: grid_ref_size85 END SUBROUTINE cxios_set_field_grid_ref86 87 SUBROUTINE cxios_set_field_field_ref(field_hdl, field_ref ,field_ref_size) BIND(C)88 USE ISO_C_BINDING89 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl90 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: field_ref91 INTEGER (kind = C_INT) , VALUE :: field_ref_size92 END SUBROUTINE cxios_set_field_field_ref93 94 SUBROUTINE cxios_set_field_default_value(field_hdl, default_value) BIND(C)95 USE ISO_C_BINDING96 INTEGER (kind = C_INTPTR_T), VALUE :: field_hdl97 REAL (kind = C_DOUBLE) , VALUE :: default_value98 END SUBROUTINE cxios_set_field_default_value99 5 100 6 SUBROUTINE cxios_field_handle_create(ret, idt, idt_size) BIND(C) -
XIOS/trunk/src/fortran/fieldgroup_interface.f90
r286 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_fieldgroup_name(fieldgroup_hdl, name ,name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_fieldgroup_name12 13 SUBROUTINE cxios_set_fieldgroup_standard_name(fieldgroup_hdl, standard_name ,standard_name_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: standard_name17 INTEGER (kind = C_INT) , VALUE :: standard_name_size18 END SUBROUTINE cxios_set_fieldgroup_standard_name19 20 SUBROUTINE cxios_set_fieldgroup_long_name(fieldgroup_hdl, long_name ,long_name_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: long_name24 INTEGER (kind = C_INT) , VALUE :: long_name_size25 END SUBROUTINE cxios_set_fieldgroup_long_name26 27 SUBROUTINE cxios_set_fieldgroup_unit(fieldgroup_hdl, unit ,unit_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: unit31 INTEGER (kind = C_INT) , VALUE :: unit_size32 END SUBROUTINE cxios_set_fieldgroup_unit33 34 SUBROUTINE cxios_set_fieldgroup_operation(fieldgroup_hdl, operation ,operation_size) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl37 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: operation38 INTEGER (kind = C_INT) , VALUE :: operation_size39 END SUBROUTINE cxios_set_fieldgroup_operation40 41 SUBROUTINE cxios_set_fieldgroup_freq_op(fieldgroup_hdl, freq_op ,freq_op_size) BIND(C)42 USE ISO_C_BINDING43 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl44 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: freq_op45 INTEGER (kind = C_INT) , VALUE :: freq_op_size46 END SUBROUTINE cxios_set_fieldgroup_freq_op47 48 SUBROUTINE cxios_set_fieldgroup_level(fieldgroup_hdl, level) BIND(C)49 USE ISO_C_BINDING50 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl51 INTEGER (kind = C_INT) , VALUE :: level52 END SUBROUTINE cxios_set_fieldgroup_level53 54 SUBROUTINE cxios_set_fieldgroup_prec(fieldgroup_hdl, prec) BIND(C)55 USE ISO_C_BINDING56 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl57 INTEGER (kind = C_INT) , VALUE :: prec58 END SUBROUTINE cxios_set_fieldgroup_prec59 60 SUBROUTINE cxios_set_fieldgroup_enabled(fieldgroup_hdl, enabled) BIND(C)61 USE ISO_C_BINDING62 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl63 LOGICAL (kind = C_BOOL) , VALUE :: enabled64 END SUBROUTINE cxios_set_fieldgroup_enabled65 66 SUBROUTINE cxios_set_fieldgroup_domain_ref(fieldgroup_hdl, domain_ref ,domain_ref_size) BIND(C)67 USE ISO_C_BINDING68 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl69 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: domain_ref70 INTEGER (kind = C_INT) , VALUE :: domain_ref_size71 END SUBROUTINE cxios_set_fieldgroup_domain_ref72 73 SUBROUTINE cxios_set_fieldgroup_axis_ref(fieldgroup_hdl, axis_ref ,axis_ref_size) BIND(C)74 USE ISO_C_BINDING75 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl76 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: axis_ref77 INTEGER (kind = C_INT) , VALUE :: axis_ref_size78 END SUBROUTINE cxios_set_fieldgroup_axis_ref79 80 SUBROUTINE cxios_set_fieldgroup_grid_ref(fieldgroup_hdl, grid_ref ,grid_ref_size) BIND(C)81 USE ISO_C_BINDING82 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl83 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: grid_ref84 INTEGER (kind = C_INT) , VALUE :: grid_ref_size85 END SUBROUTINE cxios_set_fieldgroup_grid_ref86 87 SUBROUTINE cxios_set_fieldgroup_field_ref(fieldgroup_hdl, field_ref ,field_ref_size) BIND(C)88 USE ISO_C_BINDING89 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl90 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: field_ref91 INTEGER (kind = C_INT) , VALUE :: field_ref_size92 END SUBROUTINE cxios_set_fieldgroup_field_ref93 94 SUBROUTINE cxios_set_fieldgroup_default_value(fieldgroup_hdl, default_value) BIND(C)95 USE ISO_C_BINDING96 INTEGER (kind = C_INTPTR_T), VALUE :: fieldgroup_hdl97 REAL (kind = C_DOUBLE) , VALUE :: default_value98 END SUBROUTINE cxios_set_fieldgroup_default_value99 100 6 SUBROUTINE cxios_fieldgroup_handle_create(ret, idt, idt_size) BIND(C) 101 7 USE ISO_C_BINDING -
XIOS/trunk/src/fortran/file_interface.f90
r300 r313 3 3 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 6 SUBROUTINE cxios_set_file_name(file_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_file_name12 13 SUBROUTINE cxios_set_file_description(file_hdl, description, description_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: description17 INTEGER (kind = C_INT) , VALUE :: description_size18 END SUBROUTINE cxios_set_file_description19 20 SUBROUTINE cxios_set_file_name_suffix(file_hdl, name_suffix, name_suffix_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name_suffix24 INTEGER (kind = C_INT) , VALUE :: name_suffix_size25 END SUBROUTINE cxios_set_file_name_suffix26 27 SUBROUTINE cxios_set_file_output_freq(file_hdl, output_freq, output_freq_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: output_freq31 INTEGER (kind = C_INT) , VALUE :: output_freq_size32 END SUBROUTINE cxios_set_file_output_freq33 34 SUBROUTINE cxios_set_file_output_level(file_hdl, output_level) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl37 INTEGER (kind = C_INT) , VALUE :: output_level38 END SUBROUTINE cxios_set_file_output_level39 40 SUBROUTINE cxios_set_file_enabled(file_hdl, enabled) BIND(C)41 USE ISO_C_BINDING42 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl43 LOGICAL (kind = C_BOOL) , VALUE :: enabled44 END SUBROUTINE cxios_set_file_enabled45 5 46 6 SUBROUTINE cxios_file_handle_create(ret, idt, idt_size) BIND(C) … … 58 18 END SUBROUTINE cxios_file_valid_id 59 19 60 SUBROUTINE cxios_set_file_type(file_hdl, type, type_size) BIND(C)61 USE ISO_C_BINDING62 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl63 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: type64 INTEGER (kind = C_INT) , VALUE :: type_size65 END SUBROUTINE cxios_set_file_type66 67 20 END INTERFACE 68 21 -
XIOS/trunk/src/fortran/filegroup_interface.f90
r300 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_filegroup_name(filegroup_hdl, name ,name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_filegroup_name12 13 SUBROUTINE cxios_set_filegroup_description(filegroup_hdl, description ,description_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: description17 INTEGER (kind = C_INT) , VALUE :: description_size18 END SUBROUTINE cxios_set_filegroup_description19 20 SUBROUTINE cxios_set_filegroup_name_suffix(filegroup_hdl, name_suffix ,name_suffix_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name_suffix24 INTEGER (kind = C_INT) , VALUE :: name_suffix_size25 END SUBROUTINE cxios_set_filegroup_name_suffix26 27 SUBROUTINE cxios_set_filegroup_output_freq(filegroup_hdl, output_freq ,output_freq_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: output_freq31 INTEGER (kind = C_INT) , VALUE :: output_freq_size32 END SUBROUTINE cxios_set_filegroup_output_freq33 34 SUBROUTINE cxios_set_filegroup_output_level(filegroup_hdl, output_level) BIND(C)35 USE ISO_C_BINDING36 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl37 INTEGER (kind = C_INT) , VALUE :: output_level38 END SUBROUTINE cxios_set_filegroup_output_level39 40 SUBROUTINE cxios_set_filegroup_enabled(filegroup_hdl, enabled) BIND(C)41 USE ISO_C_BINDING42 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl43 LOGICAL (kind = C_BOOL) , VALUE :: enabled44 END SUBROUTINE cxios_set_filegroup_enabled45 46 6 SUBROUTINE cxios_filegroup_handle_create(ret, idt, idt_size) BIND(C) 47 7 USE ISO_C_BINDING … … 58 18 END SUBROUTINE cxios_filegroup_valid_id 59 19 60 SUBROUTINE cxios_set_filegroup_type(filegroup_hdl, type ,type_size) BIND(C)61 USE ISO_C_BINDING62 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl63 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: type64 INTEGER (kind = C_INT) , VALUE :: type_size65 END SUBROUTINE cxios_set_filegroup_type66 67 20 END INTERFACE 68 21 -
XIOS/trunk/src/fortran/grid_interface.f90
r286 r313 3 3 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 6 SUBROUTINE cxios_set_grid_name(grid_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: grid_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_grid_name12 5 13 SUBROUTINE cxios_set_grid_description(grid_hdl, description, description_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: grid_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: description17 INTEGER (kind = C_INT) , VALUE :: description_size18 END SUBROUTINE cxios_set_grid_description19 20 SUBROUTINE cxios_set_grid_domain_ref(grid_hdl, domain_ref, domain_ref_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: grid_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: domain_ref24 INTEGER (kind = C_INT) , VALUE :: domain_ref_size25 END SUBROUTINE cxios_set_grid_domain_ref26 27 SUBROUTINE cxios_set_grid_axis_ref(grid_hdl, axis_ref, axis_ref_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: grid_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: axis_ref31 INTEGER (kind = C_INT) , VALUE :: axis_ref_size32 END SUBROUTINE cxios_set_grid_axis_ref33 34 6 SUBROUTINE cxios_grid_handle_create(ret, idt, idt_size) BIND(C) 35 7 USE ISO_C_BINDING -
XIOS/trunk/src/fortran/gridgroup_interface.f90
r286 r313 4 4 INTERFACE ! Ne pas appeler directement/Interface FORTRAN 2003 <-> C99 5 5 6 SUBROUTINE cxios_set_gridgroup_name(gridgroup_hdl, name, name_size) BIND(C)7 USE ISO_C_BINDING8 INTEGER (kind = C_INTPTR_T), VALUE :: gridgroup_hdl9 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: name10 INTEGER (kind = C_INT) , VALUE :: name_size11 END SUBROUTINE cxios_set_gridgroup_name12 13 SUBROUTINE cxios_set_gridgroup_description(gridgroup_hdl, description, description_size) BIND(C)14 USE ISO_C_BINDING15 INTEGER (kind = C_INTPTR_T), VALUE :: gridgroup_hdl16 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: description17 INTEGER (kind = C_INT) , VALUE :: description_size18 END SUBROUTINE cxios_set_gridgroup_description19 20 SUBROUTINE cxios_set_gridgroup_domain_ref(gridgroup_hdl, domain_ref, domain_ref_size) BIND(C)21 USE ISO_C_BINDING22 INTEGER (kind = C_INTPTR_T), VALUE :: gridgroup_hdl23 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: domain_ref24 INTEGER (kind = C_INT) , VALUE :: domain_ref_size25 END SUBROUTINE cxios_set_gridgroup_domain_ref26 27 SUBROUTINE cxios_set_gridgroup_axis_ref(gridgroup_hdl, axis_ref, axis_ref_size) BIND(C)28 USE ISO_C_BINDING29 INTEGER (kind = C_INTPTR_T), VALUE :: gridgroup_hdl30 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: axis_ref31 INTEGER (kind = C_INT) , VALUE :: axis_ref_size32 END SUBROUTINE cxios_set_gridgroup_axis_ref33 34 6 SUBROUTINE cxios_domaingroup_handle_create(ret, idt, idt_size) BIND(C) 35 7 USE ISO_C_BINDING -
XIOS/trunk/src/fortran/iaxis.F90
r312 r313 5 5 USE AXIS_INTERFACE 6 6 USE AXISGROUP_INTERFACE 7 7 8 8 TYPE txios(axis) 9 9 INTEGER(kind = C_INTPTR_T) :: daddr … … 17 17 18 18 CONTAINS ! Fonctions disponibles pour les utilisateurs. 19 20 21 22 SUBROUTINE xios(set_axis_attr)(axis_id, name, standard_name, long_name, unit, size, value)23 IMPLICIT NONE24 TYPE(txios(axis)) :: axis_hdl25 CHARACTER(len = *) , INTENT(IN) :: axis_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 INTEGER , OPTIONAL, INTENT(IN) :: size31 REAL(kind=8), dimension(*), OPTIONAL, INTENT(IN) :: value(:)32 33 CALL xios(get_axis_handle)(axis_id,axis_hdl)34 CALL xios(set_axis_attr_hdl_)(axis_hdl, name, standard_name, long_name, unit, size, value)35 36 END SUBROUTINE xios(set_axis_attr)37 38 39 SUBROUTINE xios(set_axis_attr_hdl)(axis_hdl, name, standard_name, long_name, unit, size, value)40 IMPLICIT NONE41 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl42 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name43 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name44 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name45 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit46 INTEGER , OPTIONAL, INTENT(IN) :: size47 REAL(kind=8), dimension(*), OPTIONAL, INTENT(IN) :: value(:)48 49 CALL xios(set_axis_attr_hdl_)(axis_hdl, name, standard_name, long_name, unit, size, value)50 51 END SUBROUTINE xios(set_axis_attr_hdl)52 53 54 SUBROUTINE xios(set_axis_attr_hdl_)(axis_hdl, name_, standard_name_, long_name_, unit_, size_, value_)55 IMPLICIT NONE56 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl57 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_58 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_59 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_60 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_61 INTEGER , OPTIONAL, INTENT(IN) :: size_62 REAL(kind=8), dimension(*), OPTIONAL, INTENT(IN) :: value_(:)63 64 IF (PRESENT(name_)) THEN65 CALL cxios_set_axis_name(axis_hdl%daddr, name_, len(name_))66 END IF67 IF (PRESENT(standard_name_)) THEN68 CALL cxios_set_axis_standard_name(axis_hdl%daddr, standard_name_, len(standard_name_))69 END IF70 IF (PRESENT(long_name_)) THEN71 CALL cxios_set_axis_long_name(axis_hdl%daddr, long_name_, len(long_name_))72 END IF73 IF (PRESENT(unit_)) THEN74 CALL cxios_set_axis_unit(axis_hdl%daddr, unit_, len(unit_))75 END IF76 IF (PRESENT(size_)) THEN77 CALL cxios_set_axis_size(axis_hdl%daddr, size_)78 END IF79 IF (PRESENT(value_)) THEN80 CALL cxios_set_axis_zvalue(axis_hdl%daddr, value_, size(value_, 1))81 END IF82 83 END SUBROUTINE xios(set_axis_attr_hdl_)84 85 86 SUBROUTINE xios(set_axisgroup_attr)(axisgroup_id, name, standard_name, long_name, unit, size, value)87 IMPLICIT NONE88 TYPE(txios(axisgroup)) :: axisgroup_hdl89 CHARACTER(len = *) , INTENT(IN) :: axisgroup_id90 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name91 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name92 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name93 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit94 INTEGER , OPTIONAL, INTENT(IN) :: size95 REAL(kind=8), dimension(*), OPTIONAL, INTENT(IN) :: value(:)96 97 CALL xios(get_axisgroup_handle)(axisgroup_id,axisgroup_hdl)98 CALL xios(set_axisgroup_attr_hdl_)(axisgroup_hdl, name, standard_name, long_name, unit, size, value)99 100 END SUBROUTINE xios(set_axisgroup_attr)101 102 103 SUBROUTINE xios(set_axisgroup_attr_hdl)(axisgroup_hdl, name, standard_name, long_name, unit, size, value)104 IMPLICIT NONE105 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl106 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name107 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name108 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name109 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit110 INTEGER , OPTIONAL, INTENT(IN) :: size111 REAL(kind=8), dimension(*), OPTIONAL, INTENT(IN) :: value(:)112 113 CALL xios(set_axisgroup_attr_hdl_)(axisgroup_hdl, name, standard_name, long_name, unit, size, value)114 115 END SUBROUTINE xios(set_axisgroup_attr_hdl)116 117 118 SUBROUTINE xios(set_axisgroup_attr_hdl_)(axisgroup_hdl, name_, standard_name_, long_name_, unit_, size_, value_)119 IMPLICIT NONE120 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl121 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_122 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_123 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_124 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: unit_125 INTEGER , OPTIONAL, INTENT(IN) :: size_126 REAL(kind=8), dimension(*), OPTIONAL, INTENT(IN) :: value_(:)127 128 IF (PRESENT(name_)) THEN129 CALL cxios_set_axisgroup_name(axisgroup_hdl%daddr, name_, len(name_))130 END IF131 IF (PRESENT(standard_name_)) THEN132 CALL cxios_set_axisgroup_standard_name(axisgroup_hdl%daddr, standard_name_, len(standard_name_))133 END IF134 IF (PRESENT(long_name_)) THEN135 CALL cxios_set_axisgroup_long_name(axisgroup_hdl%daddr, long_name_, len(long_name_))136 END IF137 IF (PRESENT(unit_)) THEN138 CALL cxios_set_axisgroup_unit(axisgroup_hdl%daddr, unit_, len(unit_))139 END IF140 IF (PRESENT(size_)) THEN141 CALL cxios_set_axisgroup_size(axisgroup_hdl%daddr, size_)142 END IF143 IF (PRESENT(value_)) THEN144 CALL cxios_set_axisgroup_zvalue(axisgroup_hdl%daddr, value_, size(value_, 1))145 END IF146 END SUBROUTINE xios(set_axisgroup_attr_hdl_)147 148 19 149 20 SUBROUTINE xios(get_axis_handle)(idt,ret) -
XIOS/trunk/src/fortran/icaxis.cpp
r300 r313 23 23 typedef xmlioserver::tree::CAxisGroup * XAxisGroupPtr; 24 24 25 // ------------------------- Attributs des axes -----------------------------26 void cxios_set_axis_name27 (XAxisPtr axis_hdl, const char * name , int name_size)28 {29 std::string name_str;30 if (!cstr2string(name, name_size, name_str)) return;31 32 axis_hdl->name.setValue(name_str);33 axis_hdl->sendAttributToServer(axis_hdl->name) ;34 }35 36 void cxios_set_axis_standard_name37 (XAxisPtr axis_hdl, const char * standard_name , int standard_name_size)38 {39 std::string standard_name_str;40 if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;41 42 axis_hdl->standard_name.setValue(standard_name_str);43 axis_hdl->sendAttributToServer(axis_hdl->standard_name);44 }45 46 void cxios_set_axis_long_name47 (XAxisPtr axis_hdl, const char * long_name , int long_name_size)48 {49 std::string long_name_str;50 if (!cstr2string(long_name, long_name_size, long_name_str)) return;51 52 axis_hdl->long_name.setValue(long_name_str);53 axis_hdl->sendAttributToServer(axis_hdl->long_name) ;54 }55 56 void cxios_set_axis_unit57 (XAxisPtr axis_hdl, const char * unit , int unit_size)58 {59 std::string unit_str;60 if (!cstr2string(unit, unit_size, unit_str)) return;61 62 axis_hdl->unit.setValue(unit_str);63 axis_hdl->sendAttributToServer(axis_hdl->unit) ;64 }65 66 void cxios_set_axis_size(XAxisPtr axis_hdl, int size)67 {68 axis_hdl->size.setValue(size);69 axis_hdl->sendAttributToServer(axis_hdl->size) ;70 }71 72 void cxios_set_axis_zvalue73 (XAxisPtr axis_hdl, const double * zvalue , int zvalue_extent1)74 {75 ARRAY(double, 1) zvalue_val(new CArray<double, 1>(boost::extents [zvalue_extent1]));76 std::copy(zvalue, &(zvalue[zvalue_val->num_elements()]), zvalue_val->data());77 78 axis_hdl->zvalue.setValue(zvalue_val);79 axis_hdl->sendAttributToServer(axis_hdl->zvalue) ;80 81 }82 83 // -------------------- Attributs des groupes d'axes -------------------------84 85 void cxios_set_axisgroup_name86 (XAxisGroupPtr axisgroup_hdl, const char * name , int name_size)87 {88 std::string name_str;89 if (!cstr2string(name, name_size, name_str)) return;90 91 axisgroup_hdl->name.setValue(name_str);92 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->name) ;93 }94 95 void cxios_set_axisgroup_standard_name96 (XAxisGroupPtr axisgroup_hdl, const char * standard_name , int standard_name_size)97 {98 std::string standard_name_str;99 if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;100 101 axisgroup_hdl->standard_name.setValue(standard_name_str);102 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->standard_name) ;103 }104 105 void cxios_set_axisgroup_long_name106 (XAxisGroupPtr axisgroup_hdl, const char * long_name , int long_name_size)107 {108 std::string long_name_str;109 if (!cstr2string(long_name, long_name_size, long_name_str)) return;110 111 axisgroup_hdl->long_name.setValue(long_name_str);112 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->long_name) ;113 }114 115 void cxios_set_axisgroup_unit116 (XAxisGroupPtr axisgroup_hdl, const char * unit , int unit_size)117 {118 std::string unit_str;119 if (!cstr2string(unit, unit_size, unit_str)) return;120 121 axisgroup_hdl->unit.setValue(unit_str);122 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->unit) ;123 }124 125 void cxios_set_axisgroup_size(XAxisGroupPtr axisgroup_hdl, int size)126 {127 axisgroup_hdl->size.setValue(size);128 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->size) ;129 }130 131 void cxios_set_axisgroup_zvalue132 (XAxisGroupPtr axisgroup_hdl, const double * zvalue , int zvalue_extent1)133 {134 ARRAY(double, 1) zvalue_val(new CArray<double, 1>(boost::extents [zvalue_extent1]));135 std::copy(zvalue, &(zvalue[zvalue_val->num_elements()]), zvalue_val->data());136 137 axisgroup_hdl->zvalue.setValue(zvalue_val);138 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->zvalue) ;139 }140 141 25 // ------------------------ Création des handle ----------------------------- 142 26 -
XIOS/trunk/src/fortran/iccontext.cpp
r312 r313 26 26 typedef xmlioserver::tree::CContext * XContextPtr; 27 27 28 // ------------------------- Attributs des contextes ------------------------29 30 31 void cxios_set_context_calendar_type(XContextPtr context_hdl, const char * calendar_type, int calendar_type_size)32 {33 std::string calendar_type_str;34 if (!cstr2string(calendar_type, calendar_type_size, calendar_type_str)) return;35 context_hdl->calendar_type.setValue(calendar_type_str);36 context_hdl->sendAttributToServer(context_hdl->calendar_type) ;37 }38 39 void cxios_set_context_start_date(XContextPtr context_hdl, const char * start_date, int start_date_size)40 {41 std::string start_date_str;42 if (!cstr2string(start_date, start_date_size, start_date_str)) return;43 44 context_hdl->start_date.setValue(start_date_str);45 context_hdl->sendAttributToServer(context_hdl->start_date) ;46 }47 48 void cxios_set_context_output_dir(XContextPtr context_hdl, const char * output_dir, int output_dir_size)49 {50 std::string output_dir_str;51 if (!cstr2string(output_dir, output_dir_size, output_dir_str)) return;52 53 context_hdl->output_dir.setValue(output_dir_str);54 context_hdl->sendAttributToServer(context_hdl->output_dir) ;55 }56 57 28 // ------------------------ Création des handle ----------------------------- 58 29 … … 71 42 return; 72 43 } 73 // Lever une exec ption ici44 // Lever une exeception ici 74 45 } 75 46 -
XIOS/trunk/src/fortran/icdomain.cpp
r312 r313 23 23 typedef xmlioserver::tree::CDomainGroup * XDomainGroupPtr; 24 24 25 // ------------------------- Attributs des axes -----------------------------26 27 void cxios_set_domain_name(XDomainPtr domain_hdl, const char * name, int name_size)28 {29 std::string name_str;30 if (!cstr2string(name, name_size, name_str)) return;31 32 domain_hdl->name.setValue(name_str);33 domain_hdl->sendAttributToServer(domain_hdl->name) ;34 }35 36 void cxios_set_domain_standard_name(XDomainPtr domain_hdl, const char * standard_name, int standard_name_size)37 {38 std::string standard_name_str;39 if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;40 41 domain_hdl->standard_name.setValue(standard_name_str);42 domain_hdl->sendAttributToServer(domain_hdl->standard_name) ;43 }44 45 void cxios_set_domain_long_name(XDomainPtr domain_hdl, const char * long_name, int long_name_size)46 {47 std::string long_name_str;48 if (!cstr2string(long_name, long_name_size, long_name_str)) return;49 50 domain_hdl->long_name.setValue(long_name_str);51 domain_hdl->sendAttributToServer(domain_hdl->long_name) ;52 }53 54 void cxios_set_domain_domain_group_ref(XDomainPtr domain_hdl, const char * domain_group_ref, int domain_group_ref_size)55 {56 std::string domain_group_ref_str;57 if (!cstr2string(domain_group_ref, domain_group_ref_size, domain_group_ref_str)) return;58 59 domain_hdl->domain_group_ref.setValue(domain_group_ref_str);60 domain_hdl->sendAttributToServer(domain_hdl->domain_group_ref) ;61 }62 63 void cxios_set_domain_ni_glo(XDomainPtr domain_hdl, int ni_glo)64 {65 domain_hdl->ni_glo.setValue(ni_glo);66 domain_hdl->sendAttributToServer(domain_hdl->ni_glo) ;67 }68 69 void cxios_set_domain_nj_glo(XDomainPtr domain_hdl, int nj_glo)70 {71 domain_hdl->nj_glo.setValue(nj_glo);72 domain_hdl->sendAttributToServer(domain_hdl->nj_glo) ;73 }74 75 void cxios_set_domain_ibegin(XDomainPtr domain_hdl, int ibegin)76 {77 domain_hdl->ibegin.setValue(ibegin);78 domain_hdl->sendAttributToServer(domain_hdl->ibegin) ;79 }80 81 void cxios_set_domain_iend(XDomainPtr domain_hdl, int iend)82 {83 domain_hdl->iend.setValue(iend);84 domain_hdl->sendAttributToServer(domain_hdl->iend) ;85 }86 87 void cxios_set_domain_ni(XDomainPtr domain_hdl, int ni)88 {89 domain_hdl->ni.setValue(ni);90 domain_hdl->sendAttributToServer(domain_hdl->ni) ;91 }92 93 void cxios_set_domain_jbegin(XDomainPtr domain_hdl, int jbegin)94 {95 domain_hdl->jbegin.setValue(jbegin);96 domain_hdl->sendAttributToServer(domain_hdl->jbegin) ;97 }98 99 void cxios_set_domain_jend(XDomainPtr domain_hdl, int jend)100 {101 domain_hdl->jend.setValue(jend);102 domain_hdl->sendAttributToServer(domain_hdl->jend) ;103 }104 105 void cxios_set_domain_nj(XDomainPtr domain_hdl, int nj)106 {107 domain_hdl->nj.setValue(nj);108 domain_hdl->sendAttributToServer(domain_hdl->nj) ;109 }110 111 void cxios_set_domain_mask(XDomainPtr domain_hdl, bool * mask, int mask_extent1, int mask_extent2)112 {113 ARRAY(bool, 2) mask_val(new CArray<bool, 2>(boost::extents [mask_extent1][mask_extent2]));114 std::copy(mask, &(mask[mask_val->num_elements()]), mask_val->data());115 116 domain_hdl->mask.setValue(mask_val);117 domain_hdl->sendAttributToServer(domain_hdl->mask) ;118 }119 120 void cxios_set_domain_data_dim(XDomainPtr domain_hdl, int data_dim)121 {122 domain_hdl->data_dim.setValue(data_dim);123 domain_hdl->sendAttributToServer(domain_hdl->data_dim) ;124 }125 126 void cxios_set_domain_data_ni(XDomainPtr domain_hdl, int data_ni)127 {128 domain_hdl->data_ni.setValue(data_ni);129 domain_hdl->sendAttributToServer(domain_hdl->data_ni) ;130 }131 132 void cxios_set_domain_data_nj(XDomainPtr domain_hdl, int data_nj)133 {134 domain_hdl->data_nj.setValue(data_nj);135 domain_hdl->sendAttributToServer(domain_hdl->data_nj) ;136 }137 138 void cxios_set_domain_data_ibegin(XDomainPtr domain_hdl, int data_ibegin)139 {140 domain_hdl->data_ibegin.setValue(data_ibegin);141 domain_hdl->sendAttributToServer(domain_hdl->data_ibegin) ;142 }143 144 void cxios_set_domain_data_jbegin(XDomainPtr domain_hdl, int data_jbegin)145 {146 domain_hdl->data_jbegin.setValue(data_jbegin);147 domain_hdl->sendAttributToServer(domain_hdl->data_jbegin) ;148 }149 150 void cxios_set_domain_zoom_ni(XDomainPtr domain_hdl, int zoom_ni)151 {152 domain_hdl->zoom_ni.setValue(zoom_ni);153 domain_hdl->sendAttributToServer(domain_hdl->zoom_ni) ;154 }155 156 void cxios_set_domain_zoom_nj(XDomainPtr domain_hdl, int zoom_nj)157 {158 domain_hdl->zoom_nj.setValue(zoom_nj);159 domain_hdl->sendAttributToServer(domain_hdl->zoom_nj) ;160 }161 162 void cxios_set_domain_zoom_ibegin(XDomainPtr domain_hdl, int zoom_ibegin)163 {164 domain_hdl->zoom_ibegin.setValue(zoom_ibegin);165 domain_hdl->sendAttributToServer(domain_hdl->zoom_ibegin) ;166 }167 168 void cxios_set_domain_zoom_jbegin(XDomainPtr domain_hdl, int zoom_jbegin)169 {170 domain_hdl->zoom_jbegin.setValue(zoom_jbegin);171 domain_hdl->sendAttributToServer(domain_hdl->zoom_jbegin) ;172 }173 174 void cxios_set_domain_data_n_index(XDomainPtr domain_hdl, int data_n_index)175 {176 domain_hdl->data_n_index.setValue(data_n_index);177 domain_hdl->sendAttributToServer(domain_hdl->data_n_index) ;178 }179 180 void cxios_set_domain_data_i_index(XDomainPtr domain_hdl, int * data_i_index, int data_i_index_extent1)181 {182 ARRAY(int, 1) data_i_index_val(new CArray<int, 1>(boost::extents [data_i_index_extent1]));183 std::copy(data_i_index, &(data_i_index[data_i_index_val->num_elements()]), data_i_index_val->data());184 185 domain_hdl->data_i_index.setValue(data_i_index_val);186 domain_hdl->sendAttributToServer(domain_hdl->data_i_index) ;187 }188 189 void cxios_set_domain_data_j_index(XDomainPtr domain_hdl, int * data_j_index, int data_j_index_extent1)190 {191 ARRAY(int, 1) data_j_index_val(new CArray<int, 1>(boost::extents [data_j_index_extent1]));192 std::copy(data_j_index, &(data_j_index[data_j_index_val->num_elements()]), data_j_index_val->data());193 194 domain_hdl->data_j_index.setValue(data_j_index_val);195 domain_hdl->sendAttributToServer(domain_hdl->data_j_index) ;196 }197 198 void cxios_set_domain_lonvalue(XDomainPtr domain_hdl, double * lonvalue, int lonvalue_extent1)199 {200 ARRAY(double, 1) lonvalue_val(new CArray<double, 1>(boost::extents [lonvalue_extent1]));201 std::copy(lonvalue, &(lonvalue[lonvalue_val->num_elements()]), lonvalue_val->data());202 203 domain_hdl->lonvalue.setValue(lonvalue_val);204 domain_hdl->sendAttributToServer(domain_hdl->lonvalue) ;205 }206 207 void cxios_set_domain_latvalue(XDomainPtr domain_hdl, double * latvalue, int latvalue_extent1)208 {209 ARRAY(double, 1) latvalue_val(new CArray<double, 1>(boost::extents [latvalue_extent1]));210 std::copy(latvalue, &(latvalue[latvalue_val->num_elements()]), latvalue_val->data());211 212 domain_hdl->latvalue.setValue(latvalue_val);213 domain_hdl->sendAttributToServer(domain_hdl->latvalue) ;214 }215 216 // -------------------- Attributs des groupes de domaine ------------------------217 218 219 void cxios_set_domaingroup_name(XDomainGroupPtr domaingroup_hdl, const char * name, int name_size)220 {221 std::string name_str;222 if (!cstr2string(name, name_size, name_str)) return;223 224 domaingroup_hdl->name.setValue(name_str);225 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->name) ;226 227 }228 229 void cxios_set_domaingroup_standard_name(XDomainGroupPtr domaingroup_hdl, const char * standard_name, int standard_name_size)230 {231 std::string standard_name_str;232 if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return;233 234 domaingroup_hdl->standard_name.setValue(standard_name_str);235 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->standard_name) ;236 }237 238 void cxios_set_domaingroup_long_name(XDomainGroupPtr domaingroup_hdl, const char * long_name, int long_name_size)239 {240 std::string long_name_str;241 if (!cstr2string(long_name, long_name_size, long_name_str)) return;242 243 domaingroup_hdl->long_name.setValue(long_name_str);244 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->long_name) ;245 }246 247 void cxios_set_domaingroup_domain_group_ref(XDomainGroupPtr domaingroup_hdl, const char * domain_group_ref, int domain_group_ref_size)248 {249 std::string domain_group_ref_str;250 if (!cstr2string(domain_group_ref, domain_group_ref_size, domain_group_ref_str)) return;251 252 domaingroup_hdl->domain_group_ref.setValue(domain_group_ref_str);253 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->domain_group_ref) ;254 }255 256 void cxios_set_domaingroup_ni_glo(XDomainGroupPtr domaingroup_hdl, int ni_glo)257 {258 domaingroup_hdl->ni_glo.setValue(ni_glo);259 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->ni_glo) ;260 }261 262 void cxios_set_domaingroup_nj_glo(XDomainGroupPtr domaingroup_hdl, int nj_glo)263 {264 domaingroup_hdl->nj_glo.setValue(nj_glo);265 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->nj_glo) ;266 }267 268 void cxios_set_domaingroup_ibegin(XDomainGroupPtr domaingroup_hdl, int ibegin)269 {270 domaingroup_hdl->ibegin.setValue(ibegin);271 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->ibegin) ;272 }273 274 void cxios_set_domaingroup_iend(XDomainGroupPtr domaingroup_hdl, int iend)275 {276 domaingroup_hdl->iend.setValue(iend);277 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->iend) ;278 }279 280 void cxios_set_domaingroup_ni(XDomainGroupPtr domaingroup_hdl, int ni)281 {282 domaingroup_hdl->ni.setValue(ni);283 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->ni) ;284 }285 286 void cxios_set_domaingroup_jbegin(XDomainGroupPtr domaingroup_hdl, int jbegin)287 {288 domaingroup_hdl->jbegin.setValue(jbegin);289 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->jbegin) ;290 }291 292 void cxios_set_domaingroup_jend(XDomainGroupPtr domaingroup_hdl, int jend)293 {294 domaingroup_hdl->jend.setValue(jend);295 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->jend) ;296 }297 298 void cxios_set_domaingroup_nj(XDomainGroupPtr domaingroup_hdl, int nj)299 {300 domaingroup_hdl->nj.setValue(nj);301 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->nj) ;302 }303 304 void cxios_set_domaingroup_mask(XDomainGroupPtr domaingroup_hdl, bool * mask, int mask_extent1, int mask_extent2)305 {306 ARRAY(bool, 2) mask_val(new CArray<bool, 2>(boost::extents [mask_extent1][mask_extent2]));307 std::copy(mask, &(mask[mask_val->num_elements()]), mask_val->data());308 309 domaingroup_hdl->mask.setValue(mask_val);310 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->mask) ;311 }312 313 void cxios_set_domaingroup_data_dim(XDomainGroupPtr domaingroup_hdl, int data_dim)314 {315 domaingroup_hdl->data_dim.setValue(data_dim);316 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_dim) ;317 }318 319 void cxios_set_domaingroup_data_ni(XDomainGroupPtr domaingroup_hdl, int data_ni)320 {321 domaingroup_hdl->data_ni.setValue(data_ni);322 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_ni) ;323 }324 325 void cxios_set_domaingroup_data_nj(XDomainGroupPtr domaingroup_hdl, int data_nj)326 {327 domaingroup_hdl->data_nj.setValue(data_nj);328 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_nj) ;329 }330 331 void cxios_set_domaingroup_data_ibegin(XDomainGroupPtr domaingroup_hdl, int data_ibegin)332 {333 domaingroup_hdl->data_ibegin.setValue(data_ibegin);334 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_ibegin) ;335 }336 337 void cxios_set_domaingroup_data_jbegin(XDomainGroupPtr domaingroup_hdl, int data_jbegin)338 {339 domaingroup_hdl->data_jbegin.setValue(data_jbegin);340 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_jbegin) ;341 }342 343 void cxios_set_domaingroup_zoom_ni(XDomainGroupPtr domaingroup_hdl, int zoom_ni)344 {345 domaingroup_hdl->zoom_ni.setValue(zoom_ni);346 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->zoom_ni) ;347 }348 349 void cxios_set_domaingroup_zoom_nj(XDomainGroupPtr domaingroup_hdl, int zoom_nj)350 {351 domaingroup_hdl->zoom_nj.setValue(zoom_nj);352 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->zoom_nj) ;353 }354 355 void cxios_set_domaingroup_zoom_ibegin(XDomainGroupPtr domaingroup_hdl, int zoom_ibegin)356 {357 domaingroup_hdl->zoom_ibegin.setValue(zoom_ibegin);358 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->zoom_ibegin) ;359 }360 361 void cxios_set_domaingroup_zoom_jbegin(XDomainGroupPtr domaingroup_hdl, int zoom_jbegin)362 {363 domaingroup_hdl->zoom_jbegin.setValue(zoom_jbegin);364 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->zoom_jbegin) ;365 }366 367 void cxios_set_domaingroup_data_n_index(XDomainGroupPtr domaingroup_hdl, int data_n_index)368 {369 domaingroup_hdl->data_n_index.setValue(data_n_index);370 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_n_index) ;371 }372 373 void cxios_set_domaingroup_data_i_index(XDomainGroupPtr domaingroup_hdl, int * data_i_index, int data_i_index_extent1)374 {375 ARRAY(int, 1) data_i_index_val(new CArray<int, 1>(boost::extents [data_i_index_extent1]));376 std::copy(data_i_index, &(data_i_index[data_i_index_val->num_elements()]), data_i_index_val->data());377 378 domaingroup_hdl->data_i_index.setValue(data_i_index_val);379 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_i_index) ;380 }381 382 void cxios_set_domaingroup_data_j_index(XDomainGroupPtr domaingroup_hdl, int * data_j_index, int data_j_index_extent1)383 {384 ARRAY(int, 1) data_j_index_val(new CArray<int, 1>(boost::extents [data_j_index_extent1]));385 std::copy(data_j_index, &(data_j_index[data_j_index_val->num_elements()]), data_j_index_val->data());386 387 domaingroup_hdl->data_j_index.setValue(data_j_index_val);388 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->data_j_index) ;389 }390 391 void cxios_set_domaingroup_lonvalue(XDomainGroupPtr domaingroup_hdl, double * lonvalue, int lonvalue_extent1)392 {393 ARRAY(double, 1) lonvalue_val(new CArray<double, 1>(boost::extents [lonvalue_extent1]));394 std::copy(lonvalue, &(lonvalue[lonvalue_val->num_elements()]), lonvalue_val->data());395 396 domaingroup_hdl->lonvalue.setValue(lonvalue_val);397 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->lonvalue) ;398 }399 400 void cxios_set_domaingroup_latvalue(XDomainGroupPtr domaingroup_hdl, double * latvalue, int latvalue_extent1)401 {402 ARRAY(double, 1) latvalue_val(new CArray<double, 1>(boost::extents [latvalue_extent1]));403 std::copy(latvalue, &(latvalue[latvalue_val->num_elements()]), latvalue_val->data());404 405 domaingroup_hdl->latvalue.setValue(latvalue_val);406 domaingroup_hdl->sendAttributToServer(domaingroup_hdl->latvalue) ;407 }408 409 25 // ------------------------ Création des handle ----------------------------- 410 26 -
XIOS/trunk/src/fortran/icfield.cpp
r310 r313 22 22 typedef xmlioserver::tree::CField * XFieldPtr; 23 23 typedef xmlioserver::tree::CFieldGroup * XFieldGroupPtr; 24 25 // ------------------------- Attributs des champs ---------------------------26 24 27 void cxios_set_field_name(XFieldPtr field_hdl, const char * name, int name_size) 28 { 29 std::string name_str; 30 if (!cstr2string(name, name_size, name_str)) return; 31 32 field_hdl->name.setValue(name_str); 33 field_hdl->sendAttributToServer(field_hdl->name) ; 34 } 35 36 void cxios_set_field_standard_name(XFieldPtr field_hdl, const char * standard_name, int standard_name_size) 37 { 38 std::string standard_name_str; 39 if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return; 40 41 field_hdl->standard_name.setValue(standard_name_str); 42 field_hdl->sendAttributToServer(field_hdl->standard_name) ; 43 } 44 45 void cxios_set_field_long_name(XFieldPtr field_hdl, const char * long_name, int long_name_size) 46 { 47 std::string long_name_str; 48 if (!cstr2string(long_name, long_name_size, long_name_str)) return; 49 50 field_hdl->long_name.setValue(long_name_str); 51 field_hdl->sendAttributToServer(field_hdl->long_name) ; 52 } 53 54 void cxios_set_field_unit(XFieldPtr field_hdl, const char * unit, int unit_size) 55 { 56 std::string unit_str; 57 if (!cstr2string(unit, unit_size, unit_str)) return; 58 59 field_hdl->unit.setValue(unit_str); 60 field_hdl->sendAttributToServer(field_hdl->unit) ; 61 62 } 63 64 void cxios_set_field_operation(XFieldPtr field_hdl, const char * operation, int operation_size) 65 { 66 std::string operation_str; 67 if (!cstr2string(operation, operation_size, operation_str)) return; 68 69 field_hdl->operation.setValue(operation_str); 70 field_hdl->sendAttributToServer(field_hdl->operation) ; 71 } 72 73 void cxios_set_field_freq_op(XFieldPtr field_hdl, const char * freq_op, int freq_op_size) 74 { 75 std::string freq_op_str; 76 if (!cstr2string(freq_op, freq_op_size, freq_op_str)) return; 77 78 field_hdl->freq_op.setValue(freq_op_str); 79 field_hdl->sendAttributToServer(field_hdl->freq_op) ; 80 } 81 82 void cxios_set_field_level(XFieldPtr field_hdl, int level) 83 { 84 field_hdl->level.setValue(level); 85 field_hdl->sendAttributToServer(field_hdl->level) ; 86 } 87 88 void cxios_set_field_prec(XFieldPtr field_hdl, int prec) 89 { 90 field_hdl->prec.setValue(prec); 91 field_hdl->sendAttributToServer(field_hdl->prec) ; 92 } 93 94 void cxios_set_field_enabled(XFieldPtr field_hdl, bool enabled) 95 { 96 field_hdl->enabled.setValue(enabled); 97 field_hdl->sendAttributToServer(field_hdl->enabled) ; 98 } 99 100 void cxios_set_field_domain_ref(XFieldPtr field_hdl, const char * domain_ref, int domain_ref_size) 101 { 102 std::string domain_ref_str; 103 if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return; 104 105 field_hdl->domain_ref.setValue(domain_ref_str); 106 field_hdl->sendAttributToServer(field_hdl->domain_ref) ; 107 } 108 109 void cxios_set_field_axis_ref(XFieldPtr field_hdl, const char * axis_ref, int axis_ref_size) 110 { 111 std::string axis_ref_str; 112 if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return; 113 114 field_hdl->axis_ref.setValue(axis_ref_str); 115 field_hdl->sendAttributToServer(field_hdl->axis_ref) ; 116 } 117 118 void cxios_set_field_grid_ref(XFieldPtr field_hdl, const char * grid_ref, int grid_ref_size) 119 { 120 std::string grid_ref_str; 121 if (!cstr2string(grid_ref, grid_ref_size, grid_ref_str)) return; 122 123 field_hdl->grid_ref.setValue(grid_ref_str); 124 field_hdl->sendAttributToServer(field_hdl->grid_ref) ; 125 } 126 127 void cxios_set_field_field_ref(XFieldPtr field_hdl, const char * field_ref, int field_ref_size) 128 { 129 std::string field_ref_str; 130 if (!cstr2string(field_ref, field_ref_size, field_ref_str)) return; 131 132 field_hdl->field_ref.setValue(field_ref_str); 133 field_hdl->sendAttributToServer(field_hdl->field_ref) ; 134 } 135 136 void cxios_set_field_default_value(XFieldPtr field_hdl, double default_value) 137 { 138 field_hdl->default_value.setValue(default_value); 139 field_hdl->sendAttributToServer(field_hdl->default_value) ; 140 } 141 142 // -------------------- Attributs des groupes de champs --------------------- 143 144 void cxios_set_fieldgroup_name(XFieldGroupPtr fieldgroup_hdl, const char * name, int name_size) 145 { 146 std::string name_str; 147 if (!cstr2string(name, name_size, name_str)) return; 148 149 fieldgroup_hdl->name.setValue(name_str); 150 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->name); 151 } 152 153 void cxios_set_fieldgroup_standard_name(XFieldGroupPtr fieldgroup_hdl, const char * standard_name, int standard_name_size) 154 { 155 std::string standard_name_str; 156 if (!cstr2string(standard_name, standard_name_size, standard_name_str)) return; 157 158 fieldgroup_hdl->standard_name.setValue(standard_name_str); 159 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->standard_name); 160 } 161 162 void cxios_set_fieldgroup_long_name(XFieldGroupPtr fieldgroup_hdl, const char * long_name, int long_name_size) 163 { 164 std::string long_name_str; 165 if (!cstr2string(long_name, long_name_size, long_name_str)) return; 166 167 fieldgroup_hdl->long_name.setValue(long_name_str); 168 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->long_name); 169 } 170 171 void cxios_set_fieldgroup_unit(XFieldGroupPtr fieldgroup_hdl, const char * unit, int unit_size) 172 { 173 std::string unit_str; 174 if (!cstr2string(unit, unit_size, unit_str)) return; 175 176 fieldgroup_hdl->unit.setValue(unit_str); 177 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->unit); 178 } 179 180 void cxios_set_fieldgroup_operation(XFieldGroupPtr fieldgroup_hdl, const char * operation, int operation_size) 181 { 182 std::string operation_str; 183 if (!cstr2string(operation, operation_size, operation_str)) return; 184 185 fieldgroup_hdl->operation.setValue(operation_str); 186 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->operation); 187 } 188 189 void cxios_set_fieldgroup_freq_op(XFieldGroupPtr fieldgroup_hdl, const char * freq_op, int freq_op_size) 190 { 191 std::string freq_op_str; 192 if (!cstr2string(freq_op, freq_op_size, freq_op_str)) return; 193 194 fieldgroup_hdl->freq_op.setValue(freq_op_str); 195 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->freq_op); 196 } 197 198 void cxios_set_fieldgroup_level(XFieldGroupPtr fieldgroup_hdl, int level) 199 { 200 fieldgroup_hdl->level.setValue(level); 201 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->level); 202 } 203 204 void cxios_set_fieldgroup_prec(XFieldGroupPtr fieldgroup_hdl, int prec) 205 { 206 fieldgroup_hdl->prec.setValue(prec); 207 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->prec); 208 } 209 210 void cxios_set_fieldgroup_enabled(XFieldGroupPtr fieldgroup_hdl, bool enabled) 211 { 212 fieldgroup_hdl->enabled.setValue(enabled); 213 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->enabled); 214 } 215 216 void cxios_set_fieldgroup_domain_ref(XFieldGroupPtr fieldgroup_hdl, const char * domain_ref, int domain_ref_size) 217 { 218 std::string domain_ref_str; 219 if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return; 220 221 fieldgroup_hdl->domain_ref.setValue(domain_ref_str); 222 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->domain_ref); 223 } 224 225 void cxios_set_fieldgroup_axis_ref(XFieldGroupPtr fieldgroup_hdl, const char * axis_ref, int axis_ref_size) 226 { 227 std::string axis_ref_str; 228 if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return; 229 230 fieldgroup_hdl->axis_ref.setValue(axis_ref_str); 231 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->axis_ref); 232 } 233 234 void cxios_set_fieldgroup_grid_ref(XFieldGroupPtr fieldgroup_hdl, const char * grid_ref, int grid_ref_size) 235 { 236 std::string grid_ref_str; 237 if (!cstr2string(grid_ref, grid_ref_size, grid_ref_str)) return; 238 239 fieldgroup_hdl->grid_ref.setValue(grid_ref_str); 240 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->grid_ref); 241 } 242 243 void cxios_set_fieldgroup_field_ref(XFieldGroupPtr fieldgroup_hdl, const char * field_ref, int field_ref_size) 244 { 245 std::string field_ref_str; 246 if (!cstr2string(field_ref, field_ref_size, field_ref_str)) return; 247 248 fieldgroup_hdl->field_ref.setValue(field_ref_str); 249 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->field_ref); 250 } 251 252 void cxios_set_fieldgroup_default_value(XFieldGroupPtr fieldgroup_hdl, double default_value) 253 { 254 fieldgroup_hdl->default_value.setValue(default_value); 255 fieldgroup_hdl->sendAttributToServer(fieldgroup_hdl->default_value); 256 } 257 258 // ------------------------ Création des handle ----------------------------- 25 // -------------------------------------------------------------------------- 26 // ------------------------ Création des handle ----------------------------- 27 // -------------------------------------------------------------------------- 259 28 260 29 void cxios_field_handle_create (XFieldPtr * _ret, const char * _id, int _id_len) … … 292 61 *_ret = xmlioserver::CObjectFactory::HasObject<xmlioserver::tree::CFieldGroup>(id); 293 62 } 294 295 void cxios_field_is_active (XFieldPtr field_hdl, bool* ret) 296 { 297 *ret = field_hdl->isActive(); 298 } 63 64 // ----------------------------------------------------------------------------------------------------- 65 // ------------------------- other function---------- --------------------------- --------------------- 66 // ----------------------------------------------------------------------------------------------------- 67 68 void cxios_field_is_active (XFieldPtr field_hdl, bool* ret) 69 { 70 *ret = field_hdl->isActive(); 71 } 299 72 300 73 } // extern "C" -
XIOS/trunk/src/fortran/icfile.cpp
r300 r313 23 23 typedef xmlioserver::tree::CFileGroup * XFileGroupPtr; 24 24 25 // ------------------------- Attributs des axes -----------------------------26 27 void cxios_set_file_name(XFilePtr file_hdl, const char * name, int name_size)28 {29 std::string name_str;30 if (!cstr2string(name, name_size, name_str)) return;31 32 file_hdl->name.setValue(name_str);33 file_hdl->sendAttributToServer(file_hdl->name) ;34 }35 36 void cxios_set_file_description(XFilePtr file_hdl, const char * description, int description_size)37 {38 std::string description_str;39 if (!cstr2string(description, description_size, description_str)) return;40 41 file_hdl->description.setValue(description_str);42 file_hdl->sendAttributToServer(file_hdl->description) ;43 }44 45 void cxios_set_file_name_suffix(XFilePtr file_hdl, const char * name_suffix, int name_suffix_size)46 {47 std::string name_suffix_str;48 if (!cstr2string(name_suffix, name_suffix_size, name_suffix_str)) return;49 50 file_hdl->name_suffix.setValue(name_suffix_str);51 file_hdl->sendAttributToServer(file_hdl->name_suffix) ;52 }53 54 void cxios_set_file_output_freq(XFilePtr file_hdl, const char * output_freq, int output_freq_size)55 {56 std::string output_freq_str;57 if (!cstr2string(output_freq, output_freq_size, output_freq_str)) return;58 59 file_hdl->output_freq.setValue(output_freq_str);60 file_hdl->sendAttributToServer(file_hdl->output_freq) ;61 }62 63 void cxios_set_file_output_level(XFilePtr file_hdl, int output_level)64 {65 file_hdl->output_level.setValue(output_level);66 file_hdl->sendAttributToServer(file_hdl->output_level) ;67 }68 69 void cxios_set_file_enabled(XFilePtr file_hdl, bool enabled)70 {71 file_hdl->enabled.setValue(enabled);72 file_hdl->sendAttributToServer(file_hdl->enabled) ;73 }74 75 void cxios_set_file_type(XFilePtr file_hdl, const char * type, int type_size)76 {77 std::string type_str;78 if (!cstr2string(type, type_size, type_str)) return;79 80 file_hdl->type.setValue(type_str);81 file_hdl->sendAttributToServer(file_hdl->type) ;82 }83 84 // -------------------- Attributs des groupes d'axes ------------------------85 86 void cxios_set_filegroup_name(XFileGroupPtr filegroup_hdl, const char * name, int name_size)87 {88 std::string name_str;89 if (!cstr2string(name, name_size, name_str)) return;90 91 filegroup_hdl->name.setValue(name_str);92 filegroup_hdl->sendAttributToServer(filegroup_hdl->name) ;93 }94 95 void cxios_set_filegroup_description(XFileGroupPtr filegroup_hdl, const char * description, int description_size)96 {97 std::string description_str;98 if (!cstr2string(description, description_size, description_str)) return;99 100 filegroup_hdl->description.setValue(description_str);101 filegroup_hdl->sendAttributToServer(filegroup_hdl->description) ;102 }103 104 void cxios_set_filegroup_name_suffix(XFileGroupPtr filegroup_hdl, const char * name_suffix, int name_suffix_size)105 {106 std::string name_suffix_str;107 if (!cstr2string(name_suffix, name_suffix_size, name_suffix_str)) return;108 109 filegroup_hdl->name_suffix.setValue(name_suffix_str);110 filegroup_hdl->sendAttributToServer(filegroup_hdl->name_suffix) ;111 }112 113 void cxios_set_filegroup_output_freq(XFileGroupPtr filegroup_hdl, const char * output_freq, int output_freq_size)114 {115 std::string output_freq_str;116 if (!cstr2string(output_freq, output_freq_size, output_freq_str)) return;117 118 filegroup_hdl->output_freq.setValue(output_freq_str);119 filegroup_hdl->sendAttributToServer(filegroup_hdl->output_freq) ;120 }121 122 void cxios_set_filegroup_output_level(XFileGroupPtr filegroup_hdl, int output_level)123 {124 filegroup_hdl->output_level.setValue(output_level);125 filegroup_hdl->sendAttributToServer(filegroup_hdl->output_level) ;126 }127 128 void cxios_set_filegroup_enabled(XFileGroupPtr filegroup_hdl, bool enabled)129 {130 filegroup_hdl->enabled.setValue(enabled);131 filegroup_hdl->sendAttributToServer(filegroup_hdl->enabled) ;132 }133 134 void cxios_set_filegroup_type(XFileGroupPtr filegroup_hdl, const char * type, int type_size)135 {136 std::string type_str;137 if (!cstr2string(type, type_size, type_str)) return;138 139 filegroup_hdl->type.setValue(type_str);140 filegroup_hdl->sendAttributToServer(filegroup_hdl->type) ;141 }142 143 25 // ------------------------ Création des handle ----------------------------- 144 26 -
XIOS/trunk/src/fortran/icgrid.cpp
r300 r313 23 23 typedef xmlioserver::tree::CGridGroup * XGridGroupPtr; 24 24 25 // ------------------------- Attributs des axes -----------------------------26 27 void cxios_set_grid_name(XGridPtr grid_hdl, const char * name, int name_size)28 {29 std::string name_str;30 if (!cstr2string(name, name_size, name_str)) return;31 32 grid_hdl->name.setValue(name_str);33 grid_hdl->sendAttributToServer(name_str) ;34 }35 36 void cxios_set_grid_description(XGridPtr grid_hdl, const char * description, int description_size)37 {38 std::string description_str;39 if (!cstr2string(description, description_size, description_str)) return;40 41 grid_hdl->description.setValue(description_str);42 grid_hdl->sendAttributToServer(description_str) ;43 }44 45 void cxios_set_grid_domain_ref(XGridPtr grid_hdl, const char * domain_ref, int domain_ref_size)46 {47 std::string domain_ref_str;48 if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return;49 50 grid_hdl->domain_ref.setValue(domain_ref_str);51 grid_hdl->sendAttributToServer(domain_ref_str) ;52 }53 54 void cxios_set_grid_axis_ref(XGridPtr grid_hdl, const char * axis_ref, int axis_ref_size)55 {56 std::string axis_ref_str;57 if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return;58 59 grid_hdl->axis_ref.setValue(axis_ref_str);60 grid_hdl->sendAttributToServer(axis_ref_str) ;61 }62 63 // -------------------- Attributs des groupes de grilles --------------------64 65 void cxios_set_gridgroup_name(XGridGroupPtr gridgroup_hdl, const char * name, int name_size)66 {67 std::string name_str;68 if (!cstr2string(name, name_size, name_str)) return;69 70 gridgroup_hdl->name.setValue(name_str);71 gridgroup_hdl->sendAttributToServer(gridgroup_hdl->name) ;72 }73 74 void cxios_set_gridgroup_description(XGridGroupPtr gridgroup_hdl, const char * description, int description_size)75 {76 std::string description_str;77 if (!cstr2string(description, description_size, description_str)) return;78 79 gridgroup_hdl->description.setValue(description_str);80 gridgroup_hdl->sendAttributToServer(gridgroup_hdl->description) ;81 }82 83 void cxios_set_gridgroup_domain_ref(XGridGroupPtr gridgroup_hdl, const char * domain_ref, int domain_ref_size)84 {85 std::string domain_ref_str;86 if (!cstr2string(domain_ref, domain_ref_size, domain_ref_str)) return;87 88 gridgroup_hdl->domain_ref.setValue(domain_ref_str);89 gridgroup_hdl->sendAttributToServer(gridgroup_hdl->domain_ref) ;90 }91 92 void cxios_set_gridgroup_axis_ref(XGridGroupPtr gridgroup_hdl, const char * axis_ref, int axis_ref_size)93 {94 std::string axis_ref_str;95 if (!cstr2string(axis_ref, axis_ref_size, axis_ref_str)) return;96 97 gridgroup_hdl->axis_ref.setValue(axis_ref_str);98 gridgroup_hdl->sendAttributToServer(gridgroup_hdl->axis_ref) ;99 }100 101 25 // ------------------------ Création des handle ----------------------------- 102 26 -
XIOS/trunk/src/fortran/icontext.F90
r312 r313 4 4 USE, INTRINSIC :: ISO_C_BINDING 5 5 USE CONTEXT_INTERFACE 6 ! USE icontext_attr 6 7 USE IDATE 7 8 … … 14 15 CONTAINS ! Fonctions disponibles pour les utilisateurs. 15 16 16 SUBROUTINE xios(set_context_attr)( context_id, calendar_type, start_date, output_dir)17 IMPLICIT NONE18 CHARACTER(len = *) , INTENT(IN) :: context_id19 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: calendar_type20 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date21 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_dir22 23 CALL xios(set_context_attr_)( context_id, calendar_type, start_date, output_dir)24 END SUBROUTINE xios(set_context_attr)25 26 27 SUBROUTINE xios(set_context_attr_)( context_id, calendar_type_, start_date_, output_dir_)28 IMPLICIT NONE29 CHARACTER(len = *) , INTENT(IN) :: context_id30 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: calendar_type_31 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date_32 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_dir_33 TYPE(txios(context)) :: context_hdl34 35 CALL xios(get_context_handle)(context_id,context_hdl)36 CALL xios(set_context_attr_hdl_)( context_hdl, calendar_type_, start_date_, output_dir_)37 END SUBROUTINE xios(set_context_attr_)38 39 40 SUBROUTINE xios(set_context_attr_hdl)( context_hdl, calendar_type, start_date, output_dir)41 IMPLICIT NONE42 TYPE(txios(context)) , INTENT(IN) :: context_hdl43 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: calendar_type44 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date45 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_dir46 47 CALL xios(set_context_attr_hdl_)( context_hdl, calendar_type, start_date, output_dir)48 49 END SUBROUTINE xios(set_context_attr_hdl)50 51 SUBROUTINE xios(set_context_attr_hdl_)( context_hdl, calendar_type_, start_date_, output_dir_)52 IMPLICIT NONE53 TYPE(txios(context)) , INTENT(IN) :: context_hdl54 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: calendar_type_55 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date_56 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: output_dir_57 58 IF (PRESENT(calendar_type_)) THEN59 CALL cxios_set_context_calendar_type(context_hdl%daddr, calendar_type_, len(calendar_type_))60 END IF61 IF (PRESENT(start_date_)) THEN62 CALL cxios_set_context_start_date(context_hdl%daddr, start_date_, len(start_date_))63 END IF64 IF (PRESENT(output_dir_)) THEN65 CALL cxios_set_context_output_dir(context_hdl%daddr, output_dir_, len(output_dir_))66 END IF67 END SUBROUTINE xios(set_context_attr_hdl_)68 69 70 71 17 SUBROUTINE xios(get_context_handle)(idt,ret) 72 18 IMPLICIT NONE -
XIOS/trunk/src/fortran/icutil.hpp
r274 r313 8 8 9 9 #include <string> 10 10 #include <string.h> 11 11 // ///////////////////////// Définitions/Déclarations /////////////////////// // 12 12 … … 29 29 } 30 30 31 inline bool string_copy(const string& str, char* cstr,int cstr_size) 32 { 33 34 if (str.size()>cstr_size) return false ; 35 else 36 { 37 std::memset (cstr,' ',cstr_size); 38 str.copy(cstr,cstr_size) ; 39 return true ; 40 } 41 } 42 template<class T> 43 inline bool array_copy(ARRAY(T,1) array_in, T* array_out, size_t extent1) 44 { 45 if (array_in->num_elements() != extent1) return false ; 46 std::copy(array_in->data(), array_in->data() + array_in->num_elements(), array_out); 47 return true ; 48 } 49 50 template<class T> 51 inline bool array_copy(ARRAY(T,2) array_in, T* array_out, size_t extent1, size_t extent2) 52 { 53 if (array_in->num_elements() != extent1*extent2) return false ; 54 std::copy(array_in->data(), array_in->data() + array_in->num_elements(), array_out); 55 return true ; 56 } 57 58 template<class T> 59 inline bool array_copy(ARRAY(T,3) array_in, T* array_out, size_t extent1, size_t extent2, size_t extent3) 60 { 61 if (array_in->num_elements() != extent1*extent2*extent3) return false ; 62 std::copy(array_in->data(), array_in->data() + array_in->num_elements(), array_out); 63 return true ; 64 } 65 66 31 67 #endif // __ICUTIL_HPP__ -
XIOS/trunk/src/fortran/idomain.F90
r312 r313 5 5 USE DOMAIN_INTERFACE 6 6 USE DOMAINGROUP_INTERFACE 7 7 ! USE IDOMAIN_ATTR 8 ! USE IDOMAINGROUP_ATTR 9 8 10 TYPE txios(domain) 9 11 INTEGER(kind = C_INTPTR_T) :: daddr … … 17 19 CONTAINS ! Fonctions disponibles pour les utilisateurs. 18 20 19 20 SUBROUTINE xios(set_domaingroup_attr) &21 ( domaingroup_id, name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &22 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &23 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, data_j_index, &24 lonvalue, latvalue)25 IMPLICIT NONE26 TYPE(txios(domaingroup)) :: domaingroup_hdl27 CHARACTER(len = *) , INTENT(IN) :: domaingroup_id28 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name29 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name30 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name31 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_group_ref32 INTEGER , OPTIONAL, INTENT(IN) :: ni_glo33 INTEGER , OPTIONAL, INTENT(IN) :: nj_glo34 INTEGER , OPTIONAL, INTENT(IN) :: ibegin35 INTEGER , OPTIONAL, INTENT(IN) :: iend36 INTEGER , OPTIONAL, INTENT(IN) :: ni37 INTEGER , OPTIONAL, INTENT(IN) :: jbegin38 INTEGER , OPTIONAL, INTENT(IN) :: jend39 INTEGER , OPTIONAL, INTENT(IN) :: nj40 LOGICAL , dimension(*), OPTIONAL, INTENT(IN) :: mask(:,:)41 INTEGER , OPTIONAL, INTENT(IN) :: data_dim42 INTEGER , OPTIONAL, INTENT(IN) :: data_ni43 INTEGER , OPTIONAL, INTENT(IN) :: data_nj44 INTEGER , OPTIONAL, INTENT(IN) :: data_ibegin45 INTEGER , OPTIONAL, INTENT(IN) :: data_jbegin46 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ni47 INTEGER , OPTIONAL, INTENT(IN) :: zoom_nj48 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ibegin49 INTEGER , OPTIONAL, INTENT(IN) :: zoom_jbegin50 INTEGER , OPTIONAL, INTENT(IN) :: data_n_index51 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_i_index(:)52 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_j_index(:)53 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: lonvalue(:)54 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: latvalue(:)55 56 CALL xios(get_domaingroup_handle)(domaingroup_id,domaingroup_hdl)57 CALL xios(set_domaingroup_attr_hdl_) &58 ( domaingroup_hdl, name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &59 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &60 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, data_j_index, &61 lonvalue, latvalue)62 63 END SUBROUTINE xios(set_domaingroup_attr)64 65 SUBROUTINE xios(set_domaingroup_attr_hdl) &66 ( domaingroup_hdl,name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &67 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &68 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, &69 data_j_index, lonvalue, latvalue)70 IMPLICIT NONE71 TYPE(txios(domaingroup)) , INTENT(IN) :: domaingroup_hdl72 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name73 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name74 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name75 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_group_ref76 INTEGER , OPTIONAL, INTENT(IN) :: ni_glo77 INTEGER , OPTIONAL, INTENT(IN) :: nj_glo78 INTEGER , OPTIONAL, INTENT(IN) :: ibegin79 INTEGER , OPTIONAL, INTENT(IN) :: iend80 INTEGER , OPTIONAL, INTENT(IN) :: ni81 INTEGER , OPTIONAL, INTENT(IN) :: jbegin82 INTEGER , OPTIONAL, INTENT(IN) :: jend83 INTEGER , OPTIONAL, INTENT(IN) :: nj84 LOGICAL , dimension(*) , OPTIONAL, INTENT(IN) :: mask(:,:)85 INTEGER , OPTIONAL, INTENT(IN) :: data_dim86 INTEGER , OPTIONAL, INTENT(IN) :: data_ni87 INTEGER , OPTIONAL, INTENT(IN) :: data_nj88 INTEGER , OPTIONAL, INTENT(IN) :: data_ibegin89 INTEGER , OPTIONAL, INTENT(IN) :: data_jbegin90 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ni91 INTEGER , OPTIONAL, INTENT(IN) :: zoom_nj92 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ibegin93 INTEGER , OPTIONAL, INTENT(IN) :: zoom_jbegin94 INTEGER , OPTIONAL, INTENT(IN) :: data_n_index95 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_i_index(:)96 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_j_index(:)97 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: lonvalue(:)98 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: latvalue(:)99 100 CALL xios(set_domaingroup_attr_hdl_) &101 ( domaingroup_hdl,name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &102 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &103 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, data_j_index, &104 lonvalue, latvalue)105 106 END SUBROUTINE xios(set_domaingroup_attr_hdl)107 108 SUBROUTINE xios(set_domaingroup_attr_hdl_) &109 ( domaingroup_hdl, name_, standard_name_, long_name_, domain_group_ref_, ni_glo_, nj_glo_, ibegin_, iend_, &110 ni_, jbegin_, jend_, nj_, mask_, data_dim_, data_ni_, data_nj_, data_ibegin_, data_jbegin_, &111 zoom_ni_, zoom_nj_, zoom_ibegin_, zoom_jbegin_, data_n_index_, data_i_index_, data_j_index_, &112 lonvalue_, latvalue_)113 IMPLICIT NONE114 TYPE(txios(domaingroup)) , INTENT(IN) :: domaingroup_hdl115 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_116 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_117 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_118 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_group_ref_119 INTEGER , OPTIONAL, INTENT(IN) :: ni_glo_120 INTEGER , OPTIONAL, INTENT(IN) :: nj_glo_121 INTEGER , OPTIONAL, INTENT(IN) :: ibegin_122 INTEGER , OPTIONAL, INTENT(IN) :: iend_123 INTEGER , OPTIONAL, INTENT(IN) :: ni_124 INTEGER , OPTIONAL, INTENT(IN) :: jbegin_125 INTEGER , OPTIONAL, INTENT(IN) :: jend_126 INTEGER , OPTIONAL, INTENT(IN) :: nj_127 LOGICAL , dimension(*) , OPTIONAL, INTENT(IN) :: mask_(:,:)128 LOGICAL(kind = 1), dimension(:,:), ALLOCATABLE :: mask__! (size(mask_,1),size(mask,2))129 INTEGER , OPTIONAL, INTENT(IN) :: data_dim_130 INTEGER , OPTIONAL, INTENT(IN) :: data_ni_131 INTEGER , OPTIONAL, INTENT(IN) :: data_nj_132 INTEGER , OPTIONAL, INTENT(IN) :: data_ibegin_133 INTEGER , OPTIONAL, INTENT(IN) :: data_jbegin_134 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ni_135 INTEGER , OPTIONAL, INTENT(IN) :: zoom_nj_136 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ibegin_137 INTEGER , OPTIONAL, INTENT(IN) :: zoom_jbegin_138 INTEGER , OPTIONAL, INTENT(IN) :: data_n_index_139 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_i_index_(:)140 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_j_index_(:)141 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: lonvalue_(:)142 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: latvalue_(:)143 144 IF (PRESENT(name_)) THEN145 CALL cxios_set_domaingroup_name(domaingroup_hdl%daddr, name_, len(name_))146 END IF147 IF (PRESENT(standard_name_)) THEN148 CALL cxios_set_domaingroup_standard_name(domaingroup_hdl%daddr, standard_name_, len(standard_name_))149 END IF150 IF (PRESENT(long_name_)) THEN151 CALL cxios_set_domaingroup_long_name(domaingroup_hdl%daddr, long_name_, len(long_name_))152 END IF153 IF (PRESENT(domain_group_ref_)) THEN154 CALL cxios_set_domaingroup_domain_group_ref(domaingroup_hdl%daddr, domain_group_ref_, len(domain_group_ref_))155 END IF156 IF (PRESENT(ni_glo_)) THEN157 CALL cxios_set_domaingroup_ni_glo(domaingroup_hdl%daddr, ni_glo_)158 END IF159 IF (PRESENT(nj_glo_)) THEN160 CALL cxios_set_domaingroup_nj_glo(domaingroup_hdl%daddr, nj_glo_)161 END IF162 IF (PRESENT(ibegin_)) THEN163 CALL cxios_set_domaingroup_ibegin(domaingroup_hdl%daddr, ibegin_)164 END IF165 IF (PRESENT(iend_)) THEN166 CALL cxios_set_domaingroup_iend(domaingroup_hdl%daddr, iend_)167 END IF168 IF (PRESENT(ni_)) THEN169 CALL cxios_set_domaingroup_ni(domaingroup_hdl%daddr, ni_)170 END IF171 IF (PRESENT(jbegin_)) THEN172 CALL cxios_set_domaingroup_jbegin(domaingroup_hdl%daddr, jbegin_)173 END IF174 IF (PRESENT(jend_)) THEN175 CALL cxios_set_domaingroup_jend(domaingroup_hdl%daddr, jend_)176 END IF177 IF (PRESENT(nj_)) THEN178 CALL cxios_set_domaingroup_nj(domaingroup_hdl%daddr, nj_)179 END IF180 IF (PRESENT(mask_)) THEN181 ALLOCATE(mask__(size(mask_, 1), size(mask_, 2)))182 mask__(:,:) = mask_(:,:)183 CALL cxios_set_domaingroup_mask(domaingroup_hdl%daddr, mask__, size(mask_, 1), size(mask_, 2))184 DEALLOCATE(mask__)185 END IF186 IF (PRESENT(data_dim_)) THEN187 CALL cxios_set_domaingroup_data_dim(domaingroup_hdl%daddr, data_dim_)188 END IF189 IF (PRESENT(data_ni_)) THEN190 CALL cxios_set_domaingroup_data_ni(domaingroup_hdl%daddr, data_ni_)191 END IF192 IF (PRESENT(data_nj_)) THEN193 CALL cxios_set_domaingroup_data_nj(domaingroup_hdl%daddr, data_nj_)194 END IF195 IF (PRESENT(data_ibegin_)) THEN196 CALL cxios_set_domaingroup_data_ibegin(domaingroup_hdl%daddr, data_ibegin_)197 END IF198 IF (PRESENT(data_jbegin_)) THEN199 CALL cxios_set_domaingroup_data_jbegin(domaingroup_hdl%daddr, data_jbegin_)200 END IF201 IF (PRESENT(zoom_ni_)) THEN202 CALL cxios_set_domaingroup_zoom_ni(domaingroup_hdl%daddr, zoom_ni_)203 END IF204 IF (PRESENT(zoom_nj_)) THEN205 CALL cxios_set_domaingroup_zoom_nj(domaingroup_hdl%daddr, zoom_nj_)206 END IF207 IF (PRESENT(zoom_ibegin_)) THEN208 CALL cxios_set_domaingroup_zoom_ibegin(domaingroup_hdl%daddr, zoom_ibegin_)209 END IF210 IF (PRESENT(zoom_jbegin_)) THEN211 CALL cxios_set_domaingroup_zoom_jbegin(domaingroup_hdl%daddr, zoom_jbegin_)212 END IF213 214 IF (PRESENT(data_n_index_)) THEN215 CALL cxios_set_domaingroup_data_n_index(domaingroup_hdl%daddr, data_n_index_)216 END IF217 IF (PRESENT(data_i_index_)) THEN218 CALL cxios_set_domaingroup_data_i_index(domaingroup_hdl%daddr, data_i_index_, size(data_i_index_, 1))219 END IF220 IF (PRESENT(data_j_index_)) THEN221 CALL cxios_set_domaingroup_data_j_index(domaingroup_hdl%daddr, data_j_index_, size(data_j_index_, 1))222 END IF223 IF (PRESENT(lonvalue_)) THEN224 CALL cxios_set_domaingroup_lonvalue(domaingroup_hdl%daddr, lonvalue_, size(lonvalue_, 1))225 END IF226 IF (PRESENT(latvalue_)) THEN227 CALL cxios_set_domaingroup_latvalue(domaingroup_hdl%daddr, latvalue_, size(latvalue_, 1))228 END IF229 230 END SUBROUTINE xios(set_domaingroup_attr_hdl_)231 232 233 SUBROUTINE xios(set_domain_attr) &234 ( domain_id, name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &235 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &236 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, data_j_index, &237 lonvalue, latvalue)238 IMPLICIT NONE239 240 TYPE(txios(domain)) :: domain_hdl241 CHARACTER(len = *) , INTENT(IN) :: domain_id242 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name243 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name244 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name245 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_group_ref246 INTEGER , OPTIONAL, INTENT(IN) :: ni_glo247 INTEGER , OPTIONAL, INTENT(IN) :: nj_glo248 INTEGER , OPTIONAL, INTENT(IN) :: ibegin249 INTEGER , OPTIONAL, INTENT(IN) :: iend250 INTEGER , OPTIONAL, INTENT(IN) :: ni251 INTEGER , OPTIONAL, INTENT(IN) :: jbegin252 INTEGER , OPTIONAL, INTENT(IN) :: jend253 INTEGER , OPTIONAL, INTENT(IN) :: nj254 LOGICAL , dimension(*), OPTIONAL, INTENT(IN) :: mask(:,:)255 INTEGER , OPTIONAL, INTENT(IN) :: data_dim256 INTEGER , OPTIONAL, INTENT(IN) :: data_ni257 INTEGER , OPTIONAL, INTENT(IN) :: data_nj258 INTEGER , OPTIONAL, INTENT(IN) :: data_ibegin259 INTEGER , OPTIONAL, INTENT(IN) :: data_jbegin260 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ni261 INTEGER , OPTIONAL, INTENT(IN) :: zoom_nj262 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ibegin263 INTEGER , OPTIONAL, INTENT(IN) :: zoom_jbegin264 INTEGER , OPTIONAL, INTENT(IN) :: data_n_index265 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_i_index(:)266 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_j_index(:)267 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: lonvalue(:)268 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: latvalue(:)269 270 CALL xios(get_domain_handle)(domain_id,domain_hdl)271 CALL xios(set_domain_attr_hdl_) &272 ( domain_hdl, name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &273 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &274 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, data_j_index, &275 lonvalue, latvalue)276 277 END SUBROUTINE xios(set_domain_attr)278 279 280 SUBROUTINE xios(set_domain_attr_hdl) &281 ( domain_hdl,name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &282 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &283 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, &284 data_j_index, lonvalue, latvalue)285 IMPLICIT NONE286 287 TYPE(txios(domain)) , INTENT(IN) :: domain_hdl288 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name289 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name290 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name291 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_group_ref292 INTEGER , OPTIONAL, INTENT(IN) :: ni_glo293 INTEGER , OPTIONAL, INTENT(IN) :: nj_glo294 INTEGER , OPTIONAL, INTENT(IN) :: ibegin295 INTEGER , OPTIONAL, INTENT(IN) :: iend296 INTEGER , OPTIONAL, INTENT(IN) :: ni297 INTEGER , OPTIONAL, INTENT(IN) :: jbegin298 INTEGER , OPTIONAL, INTENT(IN) :: jend299 INTEGER , OPTIONAL, INTENT(IN) :: nj300 LOGICAL , dimension(*) , OPTIONAL, INTENT(IN) :: mask(:,:)301 INTEGER , OPTIONAL, INTENT(IN) :: data_dim302 INTEGER , OPTIONAL, INTENT(IN) :: data_ni303 INTEGER , OPTIONAL, INTENT(IN) :: data_nj304 INTEGER , OPTIONAL, INTENT(IN) :: data_ibegin305 INTEGER , OPTIONAL, INTENT(IN) :: data_jbegin306 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ni307 INTEGER , OPTIONAL, INTENT(IN) :: zoom_nj308 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ibegin309 INTEGER , OPTIONAL, INTENT(IN) :: zoom_jbegin310 INTEGER , OPTIONAL, INTENT(IN) :: data_n_index311 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_i_index(:)312 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_j_index(:)313 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: lonvalue(:)314 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: latvalue(:)315 316 CALL xios(set_domain_attr_hdl_) &317 ( domain_hdl,name, standard_name, long_name, domain_group_ref, ni_glo, nj_glo, ibegin, iend, &318 ni, jbegin, jend, nj, mask, data_dim, data_ni, data_nj, data_ibegin, data_jbegin, &319 zoom_ni, zoom_nj, zoom_ibegin, zoom_jbegin, data_n_index, data_i_index, data_j_index, &320 lonvalue, latvalue)321 322 END SUBROUTINE xios(set_domain_attr_hdl)323 324 SUBROUTINE xios(set_domain_attr_hdl_) &325 ( domain_hdl,name_, standard_name_, long_name_, domain_group_ref_, ni_glo_, nj_glo_, ibegin_, iend_, &326 ni_, jbegin_, jend_, nj_, mask_, data_dim_, data_ni_, data_nj_, data_ibegin_, data_jbegin_, &327 zoom_ni_, zoom_nj_, zoom_ibegin_, zoom_jbegin_, data_n_index_, data_i_index_, data_j_index_, &328 lonvalue_, latvalue_)329 330 IMPLICIT NONE331 TYPE(txios(domain)) , INTENT(IN) :: domain_hdl332 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_333 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: standard_name_334 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_335 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_group_ref_336 INTEGER , OPTIONAL, INTENT(IN) :: ni_glo_337 INTEGER , OPTIONAL, INTENT(IN) :: nj_glo_338 INTEGER , OPTIONAL, INTENT(IN) :: ibegin_339 INTEGER , OPTIONAL, INTENT(IN) :: iend_340 INTEGER , OPTIONAL, INTENT(IN) :: ni_341 INTEGER , OPTIONAL, INTENT(IN) :: jbegin_342 INTEGER , OPTIONAL, INTENT(IN) :: jend_343 INTEGER , OPTIONAL, INTENT(IN) :: nj_344 LOGICAL , dimension(*) , OPTIONAL, INTENT(IN) :: mask_(:,:)345 LOGICAL(kind = 1), dimension(:,:), ALLOCATABLE :: mask__346 INTEGER , OPTIONAL, INTENT(IN) :: data_dim_347 INTEGER , OPTIONAL, INTENT(IN) :: data_ni_348 INTEGER , OPTIONAL, INTENT(IN) :: data_nj_349 INTEGER , OPTIONAL, INTENT(IN) :: data_ibegin_350 INTEGER , OPTIONAL, INTENT(IN) :: data_jbegin_351 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ni_352 INTEGER , OPTIONAL, INTENT(IN) :: zoom_nj_353 INTEGER , OPTIONAL, INTENT(IN) :: zoom_ibegin_354 INTEGER , OPTIONAL, INTENT(IN) :: zoom_jbegin_355 INTEGER , OPTIONAL, INTENT(IN) :: data_n_index_356 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_i_index_(:)357 INTEGER , dimension(*) , OPTIONAL, INTENT(IN) :: data_j_index_(:)358 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: lonvalue_(:)359 REAL(kind = 8), dimension(*) , OPTIONAL, INTENT(IN) :: latvalue_(:)360 IF (PRESENT(name_)) THEN361 CALL cxios_set_domain_name(domain_hdl%daddr, name_, len(name_))362 END IF363 IF (PRESENT(standard_name_)) THEN364 CALL cxios_set_domain_standard_name(domain_hdl%daddr, standard_name_, len(standard_name_))365 END IF366 IF (PRESENT(long_name_)) THEN367 CALL cxios_set_domain_long_name(domain_hdl%daddr, long_name_, len(long_name_))368 END IF369 IF (PRESENT(domain_group_ref_)) THEN370 CALL cxios_set_domain_domain_group_ref(domain_hdl%daddr, domain_group_ref_, len(domain_group_ref_))371 END IF372 IF (PRESENT(ni_glo_)) THEN373 CALL cxios_set_domain_ni_glo(domain_hdl%daddr, ni_glo_)374 END IF375 IF (PRESENT(nj_glo_)) THEN376 CALL cxios_set_domain_nj_glo(domain_hdl%daddr, nj_glo_)377 END IF378 IF (PRESENT(ibegin_)) THEN379 CALL cxios_set_domain_ibegin(domain_hdl%daddr, ibegin_)380 END IF381 IF (PRESENT(iend_)) THEN382 CALL cxios_set_domain_iend(domain_hdl%daddr, iend_)383 END IF384 IF (PRESENT(ni_)) THEN385 CALL cxios_set_domain_ni(domain_hdl%daddr, ni_)386 END IF387 IF (PRESENT(jbegin_)) THEN388 CALL cxios_set_domain_jbegin(domain_hdl%daddr, jbegin_)389 END IF390 IF (PRESENT(jend_)) THEN391 CALL cxios_set_domain_jend(domain_hdl%daddr, jend_)392 END IF393 IF (PRESENT(nj_)) THEN394 CALL cxios_set_domain_nj(domain_hdl%daddr, nj_)395 END IF396 IF (PRESENT(mask_)) THEN397 ALLOCATE(mask__(size(mask_, 1), size(mask_, 2)))398 mask__(:,:) = mask_(:,:)399 CALL cxios_set_domain_mask(domain_hdl%daddr, mask__, size(mask_, 1), size(mask_, 2))400 DEALLOCATE(mask__)401 END IF402 IF (PRESENT(data_dim_)) THEN403 CALL cxios_set_domain_data_dim(domain_hdl%daddr, data_dim_)404 END IF405 IF (PRESENT(data_ni_)) THEN406 CALL cxios_set_domain_data_ni(domain_hdl%daddr, data_ni_)407 END IF408 IF (PRESENT(data_nj_)) THEN409 CALL cxios_set_domain_data_nj(domain_hdl%daddr, data_nj_)410 END IF411 IF (PRESENT(data_ibegin_)) THEN412 CALL cxios_set_domain_data_ibegin(domain_hdl%daddr, data_ibegin_)413 END IF414 IF (PRESENT(data_jbegin_)) THEN415 CALL cxios_set_domain_data_jbegin(domain_hdl%daddr, data_jbegin_)416 END IF417 IF (PRESENT(zoom_ni_)) THEN418 CALL cxios_set_domain_zoom_ni(domain_hdl%daddr, zoom_ni_)419 END IF420 IF (PRESENT(zoom_nj_)) THEN421 CALL cxios_set_domain_zoom_nj(domain_hdl%daddr, zoom_nj_)422 END IF423 IF (PRESENT(zoom_ibegin_)) THEN424 CALL cxios_set_domain_zoom_ibegin(domain_hdl%daddr, zoom_ibegin_)425 END IF426 IF (PRESENT(zoom_jbegin_)) THEN427 CALL cxios_set_domain_zoom_jbegin(domain_hdl%daddr, zoom_jbegin_)428 END IF429 IF (PRESENT(data_n_index_)) THEN430 CALL cxios_set_domain_data_n_index(domain_hdl%daddr, data_n_index_)431 END IF432 IF (PRESENT(data_i_index_)) THEN433 CALL cxios_set_domain_data_i_index(domain_hdl%daddr, data_i_index_, size(data_i_index_, 1))434 END IF435 IF (PRESENT(data_j_index_)) THEN436 CALL cxios_set_domain_data_j_index(domain_hdl%daddr, data_j_index_, size(data_j_index_, 1))437 END IF438 IF (PRESENT(lonvalue_)) THEN439 CALL cxios_set_domain_lonvalue(domain_hdl%daddr, lonvalue_, size(lonvalue_, 1))440 END IF441 IF (PRESENT(latvalue_)) THEN442 CALL cxios_set_domain_latvalue(domain_hdl%daddr, latvalue_, size(latvalue_, 1))443 END IF444 445 END SUBROUTINE xios(set_domain_attr_hdl_)446 447 448 449 21 SUBROUTINE xios(get_domain_handle)(idt,ret) 450 22 IMPLICIT NONE -
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) -
XIOS/trunk/src/fortran/ifile.F90
r312 r313 5 5 USE FILE_INTERFACE 6 6 USE FILEGROUP_INTERFACE 7 ! USE IFILE_ATTR 8 ! USE IFILEGROUP_ATTR 7 9 8 10 TYPE txios(file) … … 15 17 16 18 CONTAINS ! Fonctions disponibles pour les utilisateurs. 17 18 19 SUBROUTINE xios(set_file_attr)(file_id, name , description, name_suffix, output_freq, output_level, enabled, type)20 IMPLICIT NONE21 TYPE(txios(file)) :: file_hdl22 CHARACTER(len = *) , INTENT(IN) :: file_id23 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name24 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: description25 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_suffix26 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: output_freq27 INTEGER , OPTIONAL, INTENT(IN) :: output_level28 LOGICAL , OPTIONAL, INTENT(IN) :: enabled29 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: type30 31 CALL xios(get_file_handle)(file_id,file_hdl)32 CALL xios(set_file_attr_hdl_)(file_hdl, name , description, name_suffix, output_freq, output_level, enabled, type)33 34 END SUBROUTINE xios(set_file_attr)35 36 37 SUBROUTINE xios(set_file_attr_hdl)(file_hdl, name , description, name_suffix, output_freq, output_level, enabled,type)38 TYPE(txios(file)) , INTENT(IN) :: file_hdl39 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name40 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: description41 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_suffix42 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: output_freq43 INTEGER , OPTIONAL, INTENT(IN) :: output_level44 LOGICAL , OPTIONAL, INTENT(IN) :: enabled45 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: type46 47 CALL xios(set_file_attr_hdl_)(file_hdl, name , description, name_suffix, output_freq, output_level, enabled, type)48 49 END SUBROUTINE xios(set_file_attr_hdl)50 51 SUBROUTINE xios(set_file_attr_hdl_)(file_hdl, name_ , description_, name_suffix_, output_freq_, output_level_, enabled_, type_)52 TYPE(txios(file)) , INTENT(IN) :: file_hdl53 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_54 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: description_55 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_suffix_56 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: output_freq_57 INTEGER , OPTIONAL, INTENT(IN) :: output_level_58 LOGICAL(kind = 1) :: enabled__59 LOGICAL , OPTIONAL, INTENT(IN) :: enabled_60 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: type_61 62 IF (PRESENT(name_)) THEN63 CALL cxios_set_file_name(file_hdl%daddr, name_, len(name_))64 END IF65 IF (PRESENT(description_)) THEN66 CALL cxios_set_file_description(file_hdl%daddr, description_, len(description_))67 END IF68 IF (PRESENT(name_suffix_)) THEN69 CALL cxios_set_file_name_suffix(file_hdl%daddr, name_suffix_, len(name_suffix_))70 END IF71 IF (PRESENT(output_freq_)) THEN72 CALL cxios_set_file_output_freq(file_hdl%daddr, output_freq_, len(output_freq_))73 END IF74 IF (PRESENT(output_level_)) THEN75 CALL cxios_set_file_output_level(file_hdl%daddr, output_level_)76 END IF77 IF (PRESENT(enabled_)) THEN78 enabled__ = enabled_79 CALL cxios_set_file_enabled(file_hdl%daddr, enabled__)80 END IF81 82 IF (PRESENT(type_)) THEN83 CALL cxios_set_file_type(file_hdl%daddr, type_, len(type_))84 END IF85 86 END SUBROUTINE xios(set_file_attr_hdl_)87 88 89 90 SUBROUTINE xios(set_filegroup_attr)(filegroup_id, name , description, name_suffix, output_freq, output_level, enabled, type)91 IMPLICIT NONE92 TYPE(txios(filegroup)) :: filegroup_hdl93 CHARACTER(len = *) , INTENT(IN) :: filegroup_id94 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name95 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: description96 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_suffix97 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: output_freq98 INTEGER , OPTIONAL, INTENT(IN) :: output_level99 LOGICAL , OPTIONAL, INTENT(IN) :: enabled100 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: type101 102 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl)103 CALL xios(set_filegroup_attr_hdl_)(filegroup_hdl, name , description, name_suffix, output_freq, output_level, enabled, type)104 105 END SUBROUTINE xios(set_filegroup_attr)106 107 108 SUBROUTINE xios(set_filegroup_attr_hdl)(filegroup_hdl, name , description, name_suffix, output_freq, output_level, enabled, type)109 IMPLICIT NONE110 TYPE(txios(filegroup)) , INTENT(IN) :: filegroup_hdl111 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name112 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: description113 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_suffix114 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: output_freq115 INTEGER , OPTIONAL, INTENT(IN) :: output_level116 LOGICAL , OPTIONAL, INTENT(IN) :: enabled117 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: type118 119 CALL xios(set_filegroup_attr_hdl_)(filegroup_hdl, name , description, name_suffix, output_freq, output_level, enabled, type)120 121 END SUBROUTINE xios(set_filegroup_attr_hdl)122 123 124 SUBROUTINE xios(set_filegroup_attr_hdl_)(filegroup_hdl, name_ , description_, name_suffix_, output_freq_, output_level_, &125 enabled_,type_)126 IMPLICIT NONE127 TYPE(txios(filegroup)) , INTENT(IN) :: filegroup_hdl128 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_129 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: description_130 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: name_suffix_131 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: output_freq_132 INTEGER , OPTIONAL, INTENT(IN) :: output_level_133 LOGICAL(kind = 1) :: enabled__134 LOGICAL , OPTIONAL, INTENT(IN) :: enabled_135 CHARACTER(len = *), OPTIONAL, INTENT(IN) :: type_136 137 IF (PRESENT(name_)) THEN138 CALL cxios_set_filegroup_name(filegroup_hdl%daddr, name_, len(name_))139 END IF140 IF (PRESENT(description_)) THEN141 CALL cxios_set_filegroup_description(filegroup_hdl%daddr, description_, len(description_))142 END IF143 IF (PRESENT(name_suffix_)) THEN144 CALL cxios_set_filegroup_name_suffix(filegroup_hdl%daddr, name_suffix_, len(name_suffix_))145 END IF146 IF (PRESENT(output_freq_)) THEN147 CALL cxios_set_filegroup_output_freq(filegroup_hdl%daddr, output_freq_, len(output_freq_))148 END IF149 IF (PRESENT(output_level_)) THEN150 CALL cxios_set_filegroup_output_level(filegroup_hdl%daddr, output_level_)151 END IF152 IF (PRESENT(enabled_)) THEN153 enabled__ = enabled_154 CALL cxios_set_filegroup_enabled(filegroup_hdl%daddr, enabled__)155 END IF156 157 IF (PRESENT(type_)) THEN158 CALL cxios_set_filegroup_type(filegroup_hdl%daddr, type_, len(type_))159 END IF160 161 END SUBROUTINE xios(set_filegroup_attr_hdl_)162 163 19 164 20 SUBROUTINE xios(get_file_handle)( idt, ret) -
XIOS/trunk/src/fortran/igrid.F90
r312 r313 5 5 USE GRID_INTERFACE 6 6 USE GRIDGROUP_INTERFACE 7 7 ! USE IGRID_ATTR 8 ! USE IGRIDGROUP_ATTR 9 8 10 TYPE txios(grid) 9 11 INTEGER(kind = C_INTPTR_T) :: daddr … … 16 18 17 19 CONTAINS ! Fonctions disponibles pour les utilisateurs. 18 19 20 21 SUBROUTINE xios(set_grid_attr)(grid_id, name, description, domain_ref, axis_ref)22 IMPLICIT NONE23 TYPE(txios(grid)) :: grid_hdl24 CHARACTER(len = *) , INTENT(IN) :: grid_id25 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name26 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description27 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref28 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref29 30 CALL xios(get_grid_handle)(grid_id,grid_hdl)31 CALL xios(set_grid_attr_hdl_)(grid_hdl, name, description, domain_ref, axis_ref)32 33 END SUBROUTINE xios(set_grid_attr)34 35 SUBROUTINE xios(set_grid_attr_hdl)(grid_hdl, name, description, domain_ref, axis_ref)36 IMPLICIT NONE37 TYPE (txios(grid)) :: grid_hdl38 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name39 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description40 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref41 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref42 43 CALL xios(set_grid_attr_hdl_)(grid_hdl, name, description, domain_ref, axis_ref)44 45 END SUBROUTINE xios(set_grid_attr_hdl)46 47 48 SUBROUTINE xios(set_grid_attr_hdl_)(grid_hdl, name_, description_, domain_ref_, axis_ref_)49 IMPLICIT NONE50 TYPE (txios(grid)) :: grid_hdl51 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_52 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_53 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_54 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_55 56 IF (PRESENT(name_)) THEN57 CALL cxios_set_grid_name(grid_hdl%daddr, name_, len(name_))58 END IF59 IF (PRESENT(description_)) THEN60 CALL cxios_set_grid_description(grid_hdl%daddr, description_, len(description_))61 END IF62 IF (PRESENT(domain_ref_)) THEN63 CALL cxios_set_grid_domain_ref(grid_hdl%daddr, domain_ref_, len(domain_ref_))64 END IF65 IF (PRESENT(axis_ref_)) THEN66 CALL cxios_set_grid_axis_ref(grid_hdl%daddr, axis_ref_, len(axis_ref_))67 END IF68 END SUBROUTINE xios(set_grid_attr_hdl_)69 70 71 72 SUBROUTINE xios(set_gridgroup_attr)(gridgroup_id, name, description, domain_ref, axis_ref)73 IMPLICIT NONE74 TYPE(txios(gridgroup)) :: gridgroup_hdl75 CHARACTER(len = *) , INTENT(IN) :: gridgroup_id76 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name77 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description78 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref79 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref80 81 CALL xios(get_gridgroup_handle)(gridgroup_id, gridgroup_hdl)82 CALL xios(set_gridgroup_attr_hdl_)(gridgroup_hdl, name, description, domain_ref, axis_ref)83 84 END SUBROUTINE xios(set_gridgroup_attr)85 86 SUBROUTINE xios(set_gridgroup_attr_hdl)(gridgroup_hdl, name, description, domain_ref, axis_ref)87 IMPLICIT NONE88 TYPE (txios(gridgroup)) :: gridgroup_hdl89 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name90 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description91 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref92 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref93 94 CALL xios(set_gridgroup_attr_hdl_)(gridgroup_hdl, name, description, domain_ref, axis_ref)95 96 END SUBROUTINE xios(set_gridgroup_attr_hdl)97 98 SUBROUTINE xios(set_gridgroup_attr_hdl_)(gridgroup_hdl, name_, description_, domain_ref_, axis_ref_)99 IMPLICIT NONE100 TYPE (txios(gridgroup)) :: gridgroup_hdl101 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_102 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: description_103 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: domain_ref_104 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: axis_ref_105 106 IF (PRESENT(name_)) THEN107 CALL cxios_set_gridgroup_name(gridgroup_hdl%daddr, name_, len(name_))108 END IF109 IF (PRESENT(description_)) THEN110 CALL cxios_set_gridgroup_description(gridgroup_hdl%daddr, description_, len(description_))111 END IF112 IF (PRESENT(domain_ref_)) THEN113 CALL cxios_set_gridgroup_domain_ref(gridgroup_hdl%daddr, domain_ref_, len(domain_ref_))114 END IF115 IF (PRESENT(axis_ref_)) THEN116 CALL cxios_set_gridgroup_axis_ref(gridgroup_hdl%daddr, axis_ref_, len(axis_ref_))117 END IF118 END SUBROUTINE xios(set_gridgroup_attr_hdl_)119 120 121 20 122 21 SUBROUTINE xios(get_grid_handle)(idt,ret) -
XIOS/trunk/src/fortran/ixios.F90
r310 r313 4 4 5 5 6 USE icontext, ONLY : txios(context), xios(set_context_attr), xios(set_context_attr_hdl), & 7 xios(get_context_handle), xios(set_current_context), & 6 USE icontext, ONLY : txios(context), xios(get_context_handle), xios(set_current_context), & 8 7 xios(is_valid_context) 9 8 9 USE icontext_attr, ONLY : xios(set_context_attr), xios(set_context_attr_hdl), & 10 xios(get_context_attr), xios(get_context_attr_hdl) 11 10 12 USE idata, ONLY : xios(initialize),xios(init_server), xios(finalize), xios(context_initialize), & 11 13 xios(close_context_definition), & … … 16 18 USE idate, ONLY : txios(date),txios(time), xios(set_timestep),xios(update_calendar) 17 19 18 USE idomain, ONLY : txios(domain), txios(domaingroup), xios(set_domaingroup_attr), & 19 xios(set_domaingroup_attr_hdl), xios(set_domain_attr), xios(set_domain_attr_hdl),& 20 xios(get_domain_handle), xios(get_domaingroup_handle),xios(is_valid_domain), & 20 USE idomain, ONLY : txios(domain), txios(domaingroup), xios(get_domain_handle), & 21 xios(get_domaingroup_handle),xios(is_valid_domain), & 21 22 xios(is_valid_domaingroup) 22 23 USE ifield, ONLY : txios(field), txios(fieldgroup), xios(set_fieldgroup_attr), & 24 xios(set_fieldgroup_attr_hdl),xios(set_field_attr),xios(set_field_attr_hdl), & 25 xios(get_field_handle), xios(get_fieldgroup_handle), xios(is_valid_field), & 23 24 USE idomain_attr, ONLY : xios(set_domain_attr), xios(set_domain_attr_hdl), & 25 xios(get_domain_attr), xios(get_domain_attr_hdl) 26 27 USE idomaingroup_attr, ONLY : xios(set_domaingroup_attr), xios(set_domaingroup_attr_hdl), & 28 xios(get_domaingroup_attr), xios(get_domaingroup_attr_hdl) 29 30 USE ifield, ONLY : txios(field), txios(fieldgroup), xios(get_field_handle), & 31 xios(get_fieldgroup_handle), xios(is_valid_field), & 26 32 xios(is_valid_fieldgroup),xios(field_is_active_id),xios(field_is_active_hdl) 27 28 USE ifile, ONLY : txios(file), txios(filegroup), xios(set_file_attr),xios(set_file_attr_hdl), & 29 xios(set_filegroup_attr), xios(set_filegroup_attr_hdl), xios(get_file_handle), & 33 34 USE ifield_attr, ONLY : xios(set_field_attr),xios(set_field_attr_hdl), & 35 xios(get_field_attr),xios(get_field_attr_hdl) 36 37 USE ifieldgroup_attr, ONLY : xios(set_fieldgroup_attr), xios(set_fieldgroup_attr_hdl), & 38 xios(get_fieldgroup_attr), xios(get_fieldgroup_attr_hdl) 39 40 USE ifile, ONLY : txios(file), txios(filegroup), xios(get_file_handle), & 30 41 xios(get_filegroup_handle), xios(is_valid_file), xios(is_valid_filegroup) 42 43 USE ifile_attr, ONLY : xios(set_file_attr),xios(set_file_attr_hdl), & 44 xios(get_file_attr),xios(get_file_attr_hdl) 45 46 USE ifilegroup_attr, ONLY : xios(set_filegroup_attr), xios(set_filegroup_attr_hdl), & 47 xios(get_filegroup_attr), xios(get_filegroup_attr_hdl) 31 48 32 USE igrid, ONLY : txios(grid), txios(gridgroup), xios(set_grid_attr), xios(set_grid_attr_hdl), & 33 xios(set_gridgroup_attr), xios(set_gridgroup_attr_hdl), xios(get_grid_handle), & 49 USE igrid, ONLY : txios(grid), txios(gridgroup), xios(get_grid_handle), & 34 50 xios(get_gridgroup_handle), xios(is_valid_grid), xios(is_valid_gridgroup) 35 51 36 USE iaxis, ONLY : txios(axis), txios(axisgroup), xios(set_axis_attr), xios(set_axis_attr_hdl), & 37 xios(set_axisgroup_attr), xios(set_axisgroup_attr_hdl), xios(get_axis_handle), & 52 USE igrid_attr, ONLY : xios(set_grid_attr_hdl), xios(set_grid_attr), & 53 xios(get_grid_attr_hdl), xios(get_grid_attr) 54 55 USE igridgroup_attr, ONLY : xios(set_gridgroup_attr), xios(set_gridgroup_attr_hdl), & 56 xios(get_gridgroup_attr), xios(get_gridgroup_attr_hdl) 57 58 USE iaxis, ONLY : txios(axis), txios(axisgroup), xios(get_axis_handle), & 38 59 xios(get_axisgroup_handle), xios(is_valid_axis), xios(is_valid_axisgroup) 60 61 USE iaxis_attr, ONLY : xios(set_axis_attr), xios(set_axis_attr_hdl), & 62 xios(get_axis_attr), xios(get_axis_attr_hdl) 63 64 USE iaxisgroup_attr, ONLY : xios(set_axisgroup_attr), xios(set_axisgroup_attr_hdl), & 65 xios(get_axisgroup_attr), xios(get_axisgroup_attr_hdl) 39 66 40 67 USE ixml_tree, ONLY : xios(add_axis), xios(add_file), xios(add_grid), xios(add_field), xios(add_domain), & … … 52 79 xios(set_axisgroup_attr_hdl), xios(set_context_attr_hdl) 53 80 END INTERFACE xios(set_attr) 81 82 INTERFACE xios(get_attr) 83 MODULE PROCEDURE xios(get_domaingroup_attr_hdl), xios(get_domain_attr_hdl), xios(get_fieldgroup_attr_hdl), & 84 xios(get_field_attr_hdl), xios(get_file_attr_hdl), xios(get_filegroup_attr_hdl), & 85 xios(get_grid_attr_hdl), xios(get_gridgroup_attr_hdl), xios(get_axis_attr_hdl) , & 86 xios(get_axisgroup_attr_hdl), xios(get_context_attr_hdl) 87 END INTERFACE xios(get_attr) 54 88 55 89 INTERFACE xios(get_handle) … … 84 118 xios(set_axisgroup_attr), xios(set_context_attr) 85 119 120 PUBLIC :: xios(get_attr), xios(get_domain_attr), xios(get_domaingroup_attr), xios(get_fieldgroup_attr), & 121 xios(get_field_attr), xios(get_file_attr), xios(get_filegroup_attr), & 122 xios(get_grid_attr), xios(get_gridgroup_attr), xios(get_axis_attr) , & 123 xios(get_axisgroup_attr), xios(get_context_attr) 124 86 125 PUBLIC :: xios(get_handle) 87 126 PUBLIC :: xios(add_child)
Note: See TracChangeset
for help on using the changeset viewer.