- Timestamp:
- 02/10/15 14:23:02 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/interface/fortran_attr/icalendar_wrapper_attr.F90
r549 r550 12 12 13 13 SUBROUTINE xios(set_calendar_wrapper_attr) & 14 ( calendar_wrapper_id, start_date, time_origin, timestep, type ) 14 ( calendar_wrapper_id, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 15 , month_lengths, start_date, time_origin, timestep, type, year_length ) 15 16 16 17 IMPLICIT NONE 17 18 TYPE(txios(calendar_wrapper)) :: calendar_wrapper_hdl 18 19 CHARACTER(LEN=*), INTENT(IN) ::calendar_wrapper_id 20 INTEGER , OPTIONAL, INTENT(IN) :: day_length 21 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: leap_year_drift 22 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: leap_year_drift_offset 23 INTEGER , OPTIONAL, INTENT(IN) :: leap_year_month 24 INTEGER , OPTIONAL, INTENT(IN) :: month_lengths(:) 19 25 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date 20 26 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: time_origin 21 27 TYPE(txios(duration)) , OPTIONAL, INTENT(IN) :: timestep 22 28 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 29 INTEGER , OPTIONAL, INTENT(IN) :: year_length 23 30 24 31 CALL xios(get_calendar_wrapper_handle)(calendar_wrapper_id,calendar_wrapper_hdl) 25 32 CALL xios(set_calendar_wrapper_attr_hdl_) & 26 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 33 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 34 , month_lengths, start_date, time_origin, timestep, type, year_length ) 27 35 28 36 END SUBROUTINE xios(set_calendar_wrapper_attr) 29 37 30 38 SUBROUTINE xios(set_calendar_wrapper_attr_hdl) & 31 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 32 33 IMPLICIT NONE 34 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 39 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 40 , month_lengths, start_date, time_origin, timestep, type, year_length ) 41 42 IMPLICIT NONE 43 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 44 INTEGER , OPTIONAL, INTENT(IN) :: day_length 45 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: leap_year_drift 46 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: leap_year_drift_offset 47 INTEGER , OPTIONAL, INTENT(IN) :: leap_year_month 48 INTEGER , OPTIONAL, INTENT(IN) :: month_lengths(:) 35 49 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date 36 50 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: time_origin 37 51 TYPE(txios(duration)) , OPTIONAL, INTENT(IN) :: timestep 38 52 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type 53 INTEGER , OPTIONAL, INTENT(IN) :: year_length 39 54 40 55 CALL xios(set_calendar_wrapper_attr_hdl_) & 41 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 56 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 57 , month_lengths, start_date, time_origin, timestep, type, year_length ) 42 58 43 59 END SUBROUTINE xios(set_calendar_wrapper_attr_hdl) 44 60 45 61 SUBROUTINE xios(set_calendar_wrapper_attr_hdl_) & 46 ( calendar_wrapper_hdl, start_date_, time_origin_, timestep_, type_ ) 47 48 IMPLICIT NONE 49 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 62 ( calendar_wrapper_hdl, day_length_, leap_year_drift_, leap_year_drift_offset_, leap_year_month_ & 63 , month_lengths_, start_date_, time_origin_, timestep_, type_, year_length_ ) 64 65 IMPLICIT NONE 66 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 67 INTEGER , OPTIONAL, INTENT(IN) :: day_length_ 68 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: leap_year_drift_ 69 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: leap_year_drift_offset_ 70 INTEGER , OPTIONAL, INTENT(IN) :: leap_year_month_ 71 INTEGER , OPTIONAL, INTENT(IN) :: month_lengths_(:) 50 72 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: start_date_ 51 73 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: time_origin_ 52 74 TYPE(txios(duration)) , OPTIONAL, INTENT(IN) :: timestep_ 53 75 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: type_ 76 INTEGER , OPTIONAL, INTENT(IN) :: year_length_ 77 78 IF (PRESENT(day_length_)) THEN 79 CALL cxios_set_calendar_wrapper_day_length(calendar_wrapper_hdl%daddr, day_length_) 80 ENDIF 81 82 IF (PRESENT(leap_year_drift_)) THEN 83 CALL cxios_set_calendar_wrapper_leap_year_drift(calendar_wrapper_hdl%daddr, leap_year_drift_) 84 ENDIF 85 86 IF (PRESENT(leap_year_drift_offset_)) THEN 87 CALL cxios_set_calendar_wrapper_leap_year_drift_offset(calendar_wrapper_hdl%daddr, leap_year_drift_offset_) 88 ENDIF 89 90 IF (PRESENT(leap_year_month_)) THEN 91 CALL cxios_set_calendar_wrapper_leap_year_month(calendar_wrapper_hdl%daddr, leap_year_month_) 92 ENDIF 93 94 IF (PRESENT(month_lengths_)) THEN 95 CALL cxios_set_calendar_wrapper_month_lengths(calendar_wrapper_hdl%daddr, month_lengths_,size(month_lengths_,1)) 96 ENDIF 54 97 55 98 IF (PRESENT(start_date_)) THEN … … 69 112 ENDIF 70 113 114 IF (PRESENT(year_length_)) THEN 115 CALL cxios_set_calendar_wrapper_year_length(calendar_wrapper_hdl%daddr, year_length_) 116 ENDIF 117 71 118 72 119 … … 74 121 75 122 SUBROUTINE xios(get_calendar_wrapper_attr) & 76 ( calendar_wrapper_id, start_date, time_origin, timestep, type ) 123 ( calendar_wrapper_id, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 124 , month_lengths, start_date, time_origin, timestep, type, year_length ) 77 125 78 126 IMPLICIT NONE 79 127 TYPE(txios(calendar_wrapper)) :: calendar_wrapper_hdl 80 128 CHARACTER(LEN=*), INTENT(IN) ::calendar_wrapper_id 129 INTEGER , OPTIONAL, INTENT(OUT) :: day_length 130 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: leap_year_drift 131 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: leap_year_drift_offset 132 INTEGER , OPTIONAL, INTENT(OUT) :: leap_year_month 133 INTEGER , OPTIONAL, INTENT(OUT) :: month_lengths(:) 81 134 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: start_date 82 135 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: time_origin 83 136 TYPE(txios(duration)) , OPTIONAL, INTENT(OUT) :: timestep 84 137 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 138 INTEGER , OPTIONAL, INTENT(OUT) :: year_length 85 139 86 140 CALL xios(get_calendar_wrapper_handle)(calendar_wrapper_id,calendar_wrapper_hdl) 87 141 CALL xios(get_calendar_wrapper_attr_hdl_) & 88 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 142 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 143 , month_lengths, start_date, time_origin, timestep, type, year_length ) 89 144 90 145 END SUBROUTINE xios(get_calendar_wrapper_attr) 91 146 92 147 SUBROUTINE xios(get_calendar_wrapper_attr_hdl) & 93 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 94 95 IMPLICIT NONE 96 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 148 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 149 , month_lengths, start_date, time_origin, timestep, type, year_length ) 150 151 IMPLICIT NONE 152 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 153 INTEGER , OPTIONAL, INTENT(OUT) :: day_length 154 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: leap_year_drift 155 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: leap_year_drift_offset 156 INTEGER , OPTIONAL, INTENT(OUT) :: leap_year_month 157 INTEGER , OPTIONAL, INTENT(OUT) :: month_lengths(:) 97 158 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: start_date 98 159 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: time_origin 99 160 TYPE(txios(duration)) , OPTIONAL, INTENT(OUT) :: timestep 100 161 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type 162 INTEGER , OPTIONAL, INTENT(OUT) :: year_length 101 163 102 164 CALL xios(get_calendar_wrapper_attr_hdl_) & 103 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 165 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 166 , month_lengths, start_date, time_origin, timestep, type, year_length ) 104 167 105 168 END SUBROUTINE xios(get_calendar_wrapper_attr_hdl) 106 169 107 170 SUBROUTINE xios(get_calendar_wrapper_attr_hdl_) & 108 ( calendar_wrapper_hdl, start_date_, time_origin_, timestep_, type_ ) 109 110 IMPLICIT NONE 111 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 171 ( calendar_wrapper_hdl, day_length_, leap_year_drift_, leap_year_drift_offset_, leap_year_month_ & 172 , month_lengths_, start_date_, time_origin_, timestep_, type_, year_length_ ) 173 174 IMPLICIT NONE 175 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 176 INTEGER , OPTIONAL, INTENT(OUT) :: day_length_ 177 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: leap_year_drift_ 178 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: leap_year_drift_offset_ 179 INTEGER , OPTIONAL, INTENT(OUT) :: leap_year_month_ 180 INTEGER , OPTIONAL, INTENT(OUT) :: month_lengths_(:) 112 181 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: start_date_ 113 182 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: time_origin_ 114 183 TYPE(txios(duration)) , OPTIONAL, INTENT(OUT) :: timestep_ 115 184 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: type_ 185 INTEGER , OPTIONAL, INTENT(OUT) :: year_length_ 186 187 IF (PRESENT(day_length_)) THEN 188 CALL cxios_get_calendar_wrapper_day_length(calendar_wrapper_hdl%daddr, day_length_) 189 ENDIF 190 191 IF (PRESENT(leap_year_drift_)) THEN 192 CALL cxios_get_calendar_wrapper_leap_year_drift(calendar_wrapper_hdl%daddr, leap_year_drift_) 193 ENDIF 194 195 IF (PRESENT(leap_year_drift_offset_)) THEN 196 CALL cxios_get_calendar_wrapper_leap_year_drift_offset(calendar_wrapper_hdl%daddr, leap_year_drift_offset_) 197 ENDIF 198 199 IF (PRESENT(leap_year_month_)) THEN 200 CALL cxios_get_calendar_wrapper_leap_year_month(calendar_wrapper_hdl%daddr, leap_year_month_) 201 ENDIF 202 203 IF (PRESENT(month_lengths_)) THEN 204 CALL cxios_get_calendar_wrapper_month_lengths(calendar_wrapper_hdl%daddr, month_lengths_,size(month_lengths_,1)) 205 ENDIF 116 206 117 207 IF (PRESENT(start_date_)) THEN … … 131 221 ENDIF 132 222 223 IF (PRESENT(year_length_)) THEN 224 CALL cxios_get_calendar_wrapper_year_length(calendar_wrapper_hdl%daddr, year_length_) 225 ENDIF 226 133 227 134 228 … … 136 230 137 231 SUBROUTINE xios(is_defined_calendar_wrapper_attr) & 138 ( calendar_wrapper_id, start_date, time_origin, timestep, type ) 232 ( calendar_wrapper_id, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 233 , month_lengths, start_date, time_origin, timestep, type, year_length ) 139 234 140 235 IMPLICIT NONE 141 236 TYPE(txios(calendar_wrapper)) :: calendar_wrapper_hdl 142 237 CHARACTER(LEN=*), INTENT(IN) ::calendar_wrapper_id 238 LOGICAL, OPTIONAL, INTENT(OUT) :: day_length 239 LOGICAL(KIND=C_BOOL) :: day_length_tmp 240 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_drift 241 LOGICAL(KIND=C_BOOL) :: leap_year_drift_tmp 242 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_drift_offset 243 LOGICAL(KIND=C_BOOL) :: leap_year_drift_offset_tmp 244 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_month 245 LOGICAL(KIND=C_BOOL) :: leap_year_month_tmp 246 LOGICAL, OPTIONAL, INTENT(OUT) :: month_lengths 247 LOGICAL(KIND=C_BOOL) :: month_lengths_tmp 143 248 LOGICAL, OPTIONAL, INTENT(OUT) :: start_date 144 249 LOGICAL(KIND=C_BOOL) :: start_date_tmp … … 149 254 LOGICAL, OPTIONAL, INTENT(OUT) :: type 150 255 LOGICAL(KIND=C_BOOL) :: type_tmp 256 LOGICAL, OPTIONAL, INTENT(OUT) :: year_length 257 LOGICAL(KIND=C_BOOL) :: year_length_tmp 151 258 152 259 CALL xios(get_calendar_wrapper_handle)(calendar_wrapper_id,calendar_wrapper_hdl) 153 260 CALL xios(is_defined_calendar_wrapper_attr_hdl_) & 154 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 261 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 262 , month_lengths, start_date, time_origin, timestep, type, year_length ) 155 263 156 264 END SUBROUTINE xios(is_defined_calendar_wrapper_attr) 157 265 158 266 SUBROUTINE xios(is_defined_calendar_wrapper_attr_hdl) & 159 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 160 161 IMPLICIT NONE 162 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 267 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 268 , month_lengths, start_date, time_origin, timestep, type, year_length ) 269 270 IMPLICIT NONE 271 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 272 LOGICAL, OPTIONAL, INTENT(OUT) :: day_length 273 LOGICAL(KIND=C_BOOL) :: day_length_tmp 274 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_drift 275 LOGICAL(KIND=C_BOOL) :: leap_year_drift_tmp 276 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_drift_offset 277 LOGICAL(KIND=C_BOOL) :: leap_year_drift_offset_tmp 278 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_month 279 LOGICAL(KIND=C_BOOL) :: leap_year_month_tmp 280 LOGICAL, OPTIONAL, INTENT(OUT) :: month_lengths 281 LOGICAL(KIND=C_BOOL) :: month_lengths_tmp 163 282 LOGICAL, OPTIONAL, INTENT(OUT) :: start_date 164 283 LOGICAL(KIND=C_BOOL) :: start_date_tmp … … 169 288 LOGICAL, OPTIONAL, INTENT(OUT) :: type 170 289 LOGICAL(KIND=C_BOOL) :: type_tmp 290 LOGICAL, OPTIONAL, INTENT(OUT) :: year_length 291 LOGICAL(KIND=C_BOOL) :: year_length_tmp 171 292 172 293 CALL xios(is_defined_calendar_wrapper_attr_hdl_) & 173 ( calendar_wrapper_hdl, start_date, time_origin, timestep, type ) 294 ( calendar_wrapper_hdl, day_length, leap_year_drift, leap_year_drift_offset, leap_year_month & 295 , month_lengths, start_date, time_origin, timestep, type, year_length ) 174 296 175 297 END SUBROUTINE xios(is_defined_calendar_wrapper_attr_hdl) 176 298 177 299 SUBROUTINE xios(is_defined_calendar_wrapper_attr_hdl_) & 178 ( calendar_wrapper_hdl, start_date_, time_origin_, timestep_, type_ ) 179 180 IMPLICIT NONE 181 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 300 ( calendar_wrapper_hdl, day_length_, leap_year_drift_, leap_year_drift_offset_, leap_year_month_ & 301 , month_lengths_, start_date_, time_origin_, timestep_, type_, year_length_ ) 302 303 IMPLICIT NONE 304 TYPE(txios(calendar_wrapper)) , INTENT(IN) :: calendar_wrapper_hdl 305 LOGICAL, OPTIONAL, INTENT(OUT) :: day_length_ 306 LOGICAL(KIND=C_BOOL) :: day_length__tmp 307 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_drift_ 308 LOGICAL(KIND=C_BOOL) :: leap_year_drift__tmp 309 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_drift_offset_ 310 LOGICAL(KIND=C_BOOL) :: leap_year_drift_offset__tmp 311 LOGICAL, OPTIONAL, INTENT(OUT) :: leap_year_month_ 312 LOGICAL(KIND=C_BOOL) :: leap_year_month__tmp 313 LOGICAL, OPTIONAL, INTENT(OUT) :: month_lengths_ 314 LOGICAL(KIND=C_BOOL) :: month_lengths__tmp 182 315 LOGICAL, OPTIONAL, INTENT(OUT) :: start_date_ 183 316 LOGICAL(KIND=C_BOOL) :: start_date__tmp … … 188 321 LOGICAL, OPTIONAL, INTENT(OUT) :: type_ 189 322 LOGICAL(KIND=C_BOOL) :: type__tmp 323 LOGICAL, OPTIONAL, INTENT(OUT) :: year_length_ 324 LOGICAL(KIND=C_BOOL) :: year_length__tmp 325 326 IF (PRESENT(day_length_)) THEN 327 day_length__tmp=cxios_is_defined_calendar_wrapper_day_length(calendar_wrapper_hdl%daddr) 328 day_length_=day_length__tmp 329 ENDIF 330 331 IF (PRESENT(leap_year_drift_)) THEN 332 leap_year_drift__tmp=cxios_is_defined_calendar_wrapper_leap_year_drift(calendar_wrapper_hdl%daddr) 333 leap_year_drift_=leap_year_drift__tmp 334 ENDIF 335 336 IF (PRESENT(leap_year_drift_offset_)) THEN 337 leap_year_drift_offset__tmp=cxios_is_defined_calendar_wrapper_leap_year_drift_offset(calendar_wrapper_hdl%daddr) 338 leap_year_drift_offset_=leap_year_drift_offset__tmp 339 ENDIF 340 341 IF (PRESENT(leap_year_month_)) THEN 342 leap_year_month__tmp=cxios_is_defined_calendar_wrapper_leap_year_month(calendar_wrapper_hdl%daddr) 343 leap_year_month_=leap_year_month__tmp 344 ENDIF 345 346 IF (PRESENT(month_lengths_)) THEN 347 month_lengths__tmp=cxios_is_defined_calendar_wrapper_month_lengths(calendar_wrapper_hdl%daddr) 348 month_lengths_=month_lengths__tmp 349 ENDIF 190 350 191 351 IF (PRESENT(start_date_)) THEN … … 209 369 ENDIF 210 370 371 IF (PRESENT(year_length_)) THEN 372 year_length__tmp=cxios_is_defined_calendar_wrapper_year_length(calendar_wrapper_hdl%daddr) 373 year_length_=year_length__tmp 374 ENDIF 375 211 376 212 377
Note: See TracChangeset
for help on using the changeset viewer.