Changeset 598 for XIOS/trunk/src/interface
- Timestamp:
- 05/26/15 16:13:47 (9 years ago)
- Location:
- XIOS/trunk/src/interface
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/interface/c/iccalendar.cpp
r597 r598 16 16 context->updateCalendar(step); 17 17 context->sendUpdateCalendar(step); 18 context->checkPrefetchingOfEnabledReadModeFiles(); 18 19 CTimer::get("XIOS").suspend(); 19 20 } -
XIOS/trunk/src/interface/c_attr/icfile_attr.cpp
r591 r598 139 139 140 140 141 void cxios_set_file_mode(file_Ptr file_hdl, const char * mode, int mode_size) 142 { 143 std::string mode_str; 144 if (!cstr2string(mode, mode_size, mode_str)) return; 145 CTimer::get("XIOS").resume(); 146 file_hdl->mode.fromString(mode_str); 147 CTimer::get("XIOS").suspend(); 148 } 149 150 void cxios_get_file_mode(file_Ptr file_hdl, char * mode, int mode_size) 151 { 152 CTimer::get("XIOS").resume(); 153 if (!string_copy(file_hdl->mode.getInheritedStringValue(), mode, mode_size)) 154 ERROR("void cxios_get_file_mode(file_Ptr file_hdl, char * mode, int mode_size)", << "Input string is too short"); 155 CTimer::get("XIOS").suspend(); 156 } 157 158 bool cxios_is_defined_file_mode(file_Ptr file_hdl) 159 { 160 CTimer::get("XIOS").resume(); 161 bool isDefined = file_hdl->mode.hasInheritedValue(); 162 CTimer::get("XIOS").suspend(); 163 return isDefined; 164 } 165 166 141 167 void cxios_set_file_name(file_Ptr file_hdl, const char * name, int name_size) 142 168 { -
XIOS/trunk/src/interface/c_attr/icfilegroup_attr.cpp
r591 r598 165 165 166 166 167 void cxios_set_filegroup_mode(filegroup_Ptr filegroup_hdl, const char * mode, int mode_size) 168 { 169 std::string mode_str; 170 if (!cstr2string(mode, mode_size, mode_str)) return; 171 CTimer::get("XIOS").resume(); 172 filegroup_hdl->mode.fromString(mode_str); 173 CTimer::get("XIOS").suspend(); 174 } 175 176 void cxios_get_filegroup_mode(filegroup_Ptr filegroup_hdl, char * mode, int mode_size) 177 { 178 CTimer::get("XIOS").resume(); 179 if (!string_copy(filegroup_hdl->mode.getInheritedStringValue(), mode, mode_size)) 180 ERROR("void cxios_get_filegroup_mode(filegroup_Ptr filegroup_hdl, char * mode, int mode_size)", << "Input string is too short"); 181 CTimer::get("XIOS").suspend(); 182 } 183 184 bool cxios_is_defined_filegroup_mode(filegroup_Ptr filegroup_hdl) 185 { 186 CTimer::get("XIOS").resume(); 187 bool isDefined = filegroup_hdl->mode.hasInheritedValue(); 188 CTimer::get("XIOS").suspend(); 189 return isDefined; 190 } 191 192 167 193 void cxios_set_filegroup_name(filegroup_Ptr filegroup_hdl, const char * name, int name_size) 168 194 { -
XIOS/trunk/src/interface/fortran_attr/file_interface_attr.F90
r581 r598 109 109 110 110 111 SUBROUTINE cxios_set_file_mode(file_hdl, mode, mode_size) BIND(C) 112 USE ISO_C_BINDING 113 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 114 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: mode 115 INTEGER (kind = C_INT) , VALUE :: mode_size 116 END SUBROUTINE cxios_set_file_mode 117 118 SUBROUTINE cxios_get_file_mode(file_hdl, mode, mode_size) BIND(C) 119 USE ISO_C_BINDING 120 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 121 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: mode 122 INTEGER (kind = C_INT) , VALUE :: mode_size 123 END SUBROUTINE cxios_get_file_mode 124 125 FUNCTION cxios_is_defined_file_mode(file_hdl) BIND(C) 126 USE ISO_C_BINDING 127 LOGICAL(kind=C_BOOL) :: cxios_is_defined_file_mode 128 INTEGER (kind = C_INTPTR_T), VALUE :: file_hdl 129 END FUNCTION cxios_is_defined_file_mode 130 131 111 132 SUBROUTINE cxios_set_file_name(file_hdl, name, name_size) BIND(C) 112 133 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/filegroup_interface_attr.F90
r581 r598 130 130 131 131 132 SUBROUTINE cxios_set_filegroup_mode(filegroup_hdl, mode, mode_size) BIND(C) 133 USE ISO_C_BINDING 134 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl 135 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: mode 136 INTEGER (kind = C_INT) , VALUE :: mode_size 137 END SUBROUTINE cxios_set_filegroup_mode 138 139 SUBROUTINE cxios_get_filegroup_mode(filegroup_hdl, mode, mode_size) BIND(C) 140 USE ISO_C_BINDING 141 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl 142 CHARACTER(kind = C_CHAR) , DIMENSION(*) :: mode 143 INTEGER (kind = C_INT) , VALUE :: mode_size 144 END SUBROUTINE cxios_get_filegroup_mode 145 146 FUNCTION cxios_is_defined_filegroup_mode(filegroup_hdl) BIND(C) 147 USE ISO_C_BINDING 148 LOGICAL(kind=C_BOOL) :: cxios_is_defined_filegroup_mode 149 INTEGER (kind = C_INTPTR_T), VALUE :: filegroup_hdl 150 END FUNCTION cxios_is_defined_filegroup_mode 151 152 132 153 SUBROUTINE cxios_set_filegroup_name(filegroup_hdl, name, name_size) BIND(C) 133 154 USE ISO_C_BINDING -
XIOS/trunk/src/interface/fortran_attr/ifile_attr.F90
r581 r598 12 12 13 13 SUBROUTINE xios(set_file_attr) & 14 ( file_id, append, description, enabled, format, min_digits, name, name_suffix, output_freq &14 ( file_id, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 15 15 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 16 16 … … 25 25 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: format 26 26 INTEGER , OPTIONAL, INTENT(IN) :: min_digits 27 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode 27 28 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 28 29 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix … … 37 38 CALL xios(get_file_handle)(file_id,file_hdl) 38 39 CALL xios(set_file_attr_hdl_) & 39 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &40 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 40 41 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 41 42 … … 43 44 44 45 SUBROUTINE xios(set_file_attr_hdl) & 45 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &46 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 46 47 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 47 48 … … 55 56 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: format 56 57 INTEGER , OPTIONAL, INTENT(IN) :: min_digits 58 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode 57 59 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 58 60 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix … … 66 68 67 69 CALL xios(set_file_attr_hdl_) & 68 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &70 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 69 71 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 70 72 … … 72 74 73 75 SUBROUTINE xios(set_file_attr_hdl_) & 74 ( file_hdl, append_, description_, enabled_, format_, min_digits_, name_, name_suffix_, output_freq_ & 75 , output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ ) 76 ( file_hdl, append_, description_, enabled_, format_, min_digits_, mode_, name_, name_suffix_ & 77 , output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ & 78 ) 76 79 77 80 IMPLICIT NONE … … 84 87 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: format_ 85 88 INTEGER , OPTIONAL, INTENT(IN) :: min_digits_ 89 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode_ 86 90 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_ 87 91 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix_ … … 116 120 ENDIF 117 121 122 IF (PRESENT(mode_)) THEN 123 CALL cxios_set_file_mode(file_hdl%daddr, mode_, len(mode_)) 124 ENDIF 125 118 126 IF (PRESENT(name_)) THEN 119 127 CALL cxios_set_file_name(file_hdl%daddr, name_, len(name_)) … … 155 163 156 164 SUBROUTINE xios(get_file_attr) & 157 ( file_id, append, description, enabled, format, min_digits, name, name_suffix, output_freq &165 ( file_id, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 158 166 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 159 167 … … 168 176 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: format 169 177 INTEGER , OPTIONAL, INTENT(OUT) :: min_digits 178 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode 170 179 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 171 180 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix … … 180 189 CALL xios(get_file_handle)(file_id,file_hdl) 181 190 CALL xios(get_file_attr_hdl_) & 182 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &191 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 183 192 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 184 193 … … 186 195 187 196 SUBROUTINE xios(get_file_attr_hdl) & 188 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &197 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 189 198 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 190 199 … … 198 207 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: format 199 208 INTEGER , OPTIONAL, INTENT(OUT) :: min_digits 209 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode 200 210 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 201 211 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix … … 209 219 210 220 CALL xios(get_file_attr_hdl_) & 211 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &221 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 212 222 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 213 223 … … 215 225 216 226 SUBROUTINE xios(get_file_attr_hdl_) & 217 ( file_hdl, append_, description_, enabled_, format_, min_digits_, name_, name_suffix_, output_freq_ & 218 , output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ ) 227 ( file_hdl, append_, description_, enabled_, format_, min_digits_, mode_, name_, name_suffix_ & 228 , output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ & 229 ) 219 230 220 231 IMPLICIT NONE … … 227 238 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: format_ 228 239 INTEGER , OPTIONAL, INTENT(OUT) :: min_digits_ 240 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode_ 229 241 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_ 230 242 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix_ … … 259 271 ENDIF 260 272 273 IF (PRESENT(mode_)) THEN 274 CALL cxios_get_file_mode(file_hdl%daddr, mode_, len(mode_)) 275 ENDIF 276 261 277 IF (PRESENT(name_)) THEN 262 278 CALL cxios_get_file_name(file_hdl%daddr, name_, len(name_)) … … 298 314 299 315 SUBROUTINE xios(is_defined_file_attr) & 300 ( file_id, append, description, enabled, format, min_digits, name, name_suffix, output_freq &316 ( file_id, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 301 317 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 302 318 … … 314 330 LOGICAL, OPTIONAL, INTENT(OUT) :: min_digits 315 331 LOGICAL(KIND=C_BOOL) :: min_digits_tmp 332 LOGICAL, OPTIONAL, INTENT(OUT) :: mode 333 LOGICAL(KIND=C_BOOL) :: mode_tmp 316 334 LOGICAL, OPTIONAL, INTENT(OUT) :: name 317 335 LOGICAL(KIND=C_BOOL) :: name_tmp … … 335 353 CALL xios(get_file_handle)(file_id,file_hdl) 336 354 CALL xios(is_defined_file_attr_hdl_) & 337 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &355 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 338 356 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 339 357 … … 341 359 342 360 SUBROUTINE xios(is_defined_file_attr_hdl) & 343 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &361 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 344 362 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 345 363 … … 356 374 LOGICAL, OPTIONAL, INTENT(OUT) :: min_digits 357 375 LOGICAL(KIND=C_BOOL) :: min_digits_tmp 376 LOGICAL, OPTIONAL, INTENT(OUT) :: mode 377 LOGICAL(KIND=C_BOOL) :: mode_tmp 358 378 LOGICAL, OPTIONAL, INTENT(OUT) :: name 359 379 LOGICAL(KIND=C_BOOL) :: name_tmp … … 376 396 377 397 CALL xios(is_defined_file_attr_hdl_) & 378 ( file_hdl, append, description, enabled, format, min_digits, name, name_suffix, output_freq &398 ( file_hdl, append, description, enabled, format, min_digits, mode, name, name_suffix, output_freq & 379 399 , output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 380 400 … … 382 402 383 403 SUBROUTINE xios(is_defined_file_attr_hdl_) & 384 ( file_hdl, append_, description_, enabled_, format_, min_digits_, name_, name_suffix_, output_freq_ & 385 , output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ ) 404 ( file_hdl, append_, description_, enabled_, format_, min_digits_, mode_, name_, name_suffix_ & 405 , output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ & 406 ) 386 407 387 408 IMPLICIT NONE … … 397 418 LOGICAL, OPTIONAL, INTENT(OUT) :: min_digits_ 398 419 LOGICAL(KIND=C_BOOL) :: min_digits__tmp 420 LOGICAL, OPTIONAL, INTENT(OUT) :: mode_ 421 LOGICAL(KIND=C_BOOL) :: mode__tmp 399 422 LOGICAL, OPTIONAL, INTENT(OUT) :: name_ 400 423 LOGICAL(KIND=C_BOOL) :: name__tmp … … 441 464 ENDIF 442 465 466 IF (PRESENT(mode_)) THEN 467 mode__tmp = cxios_is_defined_file_mode(file_hdl%daddr) 468 mode_ = mode__tmp 469 ENDIF 470 443 471 IF (PRESENT(name_)) THEN 444 472 name__tmp = cxios_is_defined_file_name(file_hdl%daddr) -
XIOS/trunk/src/interface/fortran_attr/ifilegroup_attr.F90
r581 r598 12 12 13 13 SUBROUTINE xios(set_filegroup_attr) & 14 ( filegroup_id, append, description, enabled, format, group_ref, min_digits, name, name_suffix &14 ( filegroup_id, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 15 15 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 16 16 … … 26 26 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref 27 27 INTEGER , OPTIONAL, INTENT(IN) :: min_digits 28 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode 28 29 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 29 30 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix … … 38 39 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl) 39 40 CALL xios(set_filegroup_attr_hdl_) & 40 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &41 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 41 42 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 42 43 … … 44 45 45 46 SUBROUTINE xios(set_filegroup_attr_hdl) & 46 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &47 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 47 48 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 48 49 … … 57 58 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref 58 59 INTEGER , OPTIONAL, INTENT(IN) :: min_digits 60 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode 59 61 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name 60 62 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix … … 68 70 69 71 CALL xios(set_filegroup_attr_hdl_) & 70 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &72 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 71 73 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 72 74 … … 74 76 75 77 SUBROUTINE xios(set_filegroup_attr_hdl_) & 76 ( filegroup_hdl, append_, description_, enabled_, format_, group_ref_, min_digits_, name_, name_suffix_ &77 , output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ &78 )78 ( filegroup_hdl, append_, description_, enabled_, format_, group_ref_, min_digits_, mode_, name_ & 79 , name_suffix_, output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_ & 80 , type_ ) 79 81 80 82 IMPLICIT NONE … … 88 90 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref_ 89 91 INTEGER , OPTIONAL, INTENT(IN) :: min_digits_ 92 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: mode_ 90 93 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_ 91 94 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_suffix_ … … 124 127 ENDIF 125 128 129 IF (PRESENT(mode_)) THEN 130 CALL cxios_set_filegroup_mode(filegroup_hdl%daddr, mode_, len(mode_)) 131 ENDIF 132 126 133 IF (PRESENT(name_)) THEN 127 134 CALL cxios_set_filegroup_name(filegroup_hdl%daddr, name_, len(name_)) … … 163 170 164 171 SUBROUTINE xios(get_filegroup_attr) & 165 ( filegroup_id, append, description, enabled, format, group_ref, min_digits, name, name_suffix &172 ( filegroup_id, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 166 173 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 167 174 … … 177 184 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref 178 185 INTEGER , OPTIONAL, INTENT(OUT) :: min_digits 186 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode 179 187 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 180 188 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix … … 189 197 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl) 190 198 CALL xios(get_filegroup_attr_hdl_) & 191 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &199 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 192 200 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 193 201 … … 195 203 196 204 SUBROUTINE xios(get_filegroup_attr_hdl) & 197 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &205 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 198 206 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 199 207 … … 208 216 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref 209 217 INTEGER , OPTIONAL, INTENT(OUT) :: min_digits 218 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode 210 219 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name 211 220 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix … … 219 228 220 229 CALL xios(get_filegroup_attr_hdl_) & 221 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &230 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 222 231 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 223 232 … … 225 234 226 235 SUBROUTINE xios(get_filegroup_attr_hdl_) & 227 ( filegroup_hdl, append_, description_, enabled_, format_, group_ref_, min_digits_, name_, name_suffix_ &228 , output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ &229 )236 ( filegroup_hdl, append_, description_, enabled_, format_, group_ref_, min_digits_, mode_, name_ & 237 , name_suffix_, output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_ & 238 , type_ ) 230 239 231 240 IMPLICIT NONE … … 239 248 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref_ 240 249 INTEGER , OPTIONAL, INTENT(OUT) :: min_digits_ 250 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: mode_ 241 251 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_ 242 252 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_suffix_ … … 275 285 ENDIF 276 286 287 IF (PRESENT(mode_)) THEN 288 CALL cxios_get_filegroup_mode(filegroup_hdl%daddr, mode_, len(mode_)) 289 ENDIF 290 277 291 IF (PRESENT(name_)) THEN 278 292 CALL cxios_get_filegroup_name(filegroup_hdl%daddr, name_, len(name_)) … … 314 328 315 329 SUBROUTINE xios(is_defined_filegroup_attr) & 316 ( filegroup_id, append, description, enabled, format, group_ref, min_digits, name, name_suffix &330 ( filegroup_id, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 317 331 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 318 332 … … 332 346 LOGICAL, OPTIONAL, INTENT(OUT) :: min_digits 333 347 LOGICAL(KIND=C_BOOL) :: min_digits_tmp 348 LOGICAL, OPTIONAL, INTENT(OUT) :: mode 349 LOGICAL(KIND=C_BOOL) :: mode_tmp 334 350 LOGICAL, OPTIONAL, INTENT(OUT) :: name 335 351 LOGICAL(KIND=C_BOOL) :: name_tmp … … 353 369 CALL xios(get_filegroup_handle)(filegroup_id,filegroup_hdl) 354 370 CALL xios(is_defined_filegroup_attr_hdl_) & 355 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &371 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 356 372 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 357 373 … … 359 375 360 376 SUBROUTINE xios(is_defined_filegroup_attr_hdl) & 361 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &377 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 362 378 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 363 379 … … 376 392 LOGICAL, OPTIONAL, INTENT(OUT) :: min_digits 377 393 LOGICAL(KIND=C_BOOL) :: min_digits_tmp 394 LOGICAL, OPTIONAL, INTENT(OUT) :: mode 395 LOGICAL(KIND=C_BOOL) :: mode_tmp 378 396 LOGICAL, OPTIONAL, INTENT(OUT) :: name 379 397 LOGICAL(KIND=C_BOOL) :: name_tmp … … 396 414 397 415 CALL xios(is_defined_filegroup_attr_hdl_) & 398 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, name, name_suffix &416 ( filegroup_hdl, append, description, enabled, format, group_ref, min_digits, mode, name, name_suffix & 399 417 , output_freq, output_level, par_access, split_freq, split_freq_format, sync_freq, type ) 400 418 … … 402 420 403 421 SUBROUTINE xios(is_defined_filegroup_attr_hdl_) & 404 ( filegroup_hdl, append_, description_, enabled_, format_, group_ref_, min_digits_, name_, name_suffix_ &405 , output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_, type_ &406 )422 ( filegroup_hdl, append_, description_, enabled_, format_, group_ref_, min_digits_, mode_, name_ & 423 , name_suffix_, output_freq_, output_level_, par_access_, split_freq_, split_freq_format_, sync_freq_ & 424 , type_ ) 407 425 408 426 IMPLICIT NONE … … 420 438 LOGICAL, OPTIONAL, INTENT(OUT) :: min_digits_ 421 439 LOGICAL(KIND=C_BOOL) :: min_digits__tmp 440 LOGICAL, OPTIONAL, INTENT(OUT) :: mode_ 441 LOGICAL(KIND=C_BOOL) :: mode__tmp 422 442 LOGICAL, OPTIONAL, INTENT(OUT) :: name_ 423 443 LOGICAL(KIND=C_BOOL) :: name__tmp … … 469 489 ENDIF 470 490 491 IF (PRESENT(mode_)) THEN 492 mode__tmp = cxios_is_defined_filegroup_mode(filegroup_hdl%daddr) 493 mode_ = mode__tmp 494 ENDIF 495 471 496 IF (PRESENT(name_)) THEN 472 497 name__tmp = cxios_is_defined_filegroup_name(filegroup_hdl%daddr)
Note: See TracChangeset
for help on using the changeset viewer.