Changeset 609 for XIOS/branchs/xios-1.0/src/interface
- Timestamp:
- 06/05/15 16:42:18 (9 years ago)
- Location:
- XIOS/branchs/xios-1.0/src/interface
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/branchs/xios-1.0/src/interface/c_attr/icaxis_attr.cpp
r581 r609 17 17 typedef xios::CAxis* axis_Ptr; 18 18 19 void cxios_set_axis_bounds(axis_Ptr axis_hdl, double* bounds, int extent1, int extent2) 20 { 21 CTimer::get("XIOS").resume(); 22 CArray<double,2> tmp(bounds,shape(extent1,extent2),neverDeleteData) ; 23 axis_hdl->bounds.reference(tmp.copy()); 24 axis_hdl->sendAttributToServer(axis_hdl->bounds); 25 CTimer::get("XIOS").suspend(); 26 } 27 28 void cxios_get_axis_bounds(axis_Ptr axis_hdl, double* bounds, int extent1, int extent2) 29 { 30 CTimer::get("XIOS").resume(); 31 CArray<double,2> tmp(bounds,shape(extent1,extent2),neverDeleteData) ; 32 tmp=axis_hdl->bounds.getInheritedValue() ; 33 CTimer::get("XIOS").suspend(); 34 } 35 36 bool cxios_is_defined_axis_bounds(axis_Ptr axis_hdl ) 37 { 38 CTimer::get("XIOS").resume(); 39 bool isDefined = axis_hdl->bounds.hasInheritedValue(); 40 CTimer::get("XIOS").suspend(); 41 return isDefined; 42 } 43 44 45 19 46 void cxios_set_axis_long_name(axis_Ptr axis_hdl, const char * long_name, int long_name_size) 20 47 { -
XIOS/branchs/xios-1.0/src/interface/c_attr/icaxisgroup_attr.cpp
r581 r609 17 17 typedef xios::CAxisGroup* axisgroup_Ptr; 18 18 19 void cxios_set_axisgroup_bounds(axisgroup_Ptr axisgroup_hdl, double* bounds, int extent1, int extent2) 20 { 21 CTimer::get("XIOS").resume(); 22 CArray<double,2> tmp(bounds,shape(extent1,extent2),neverDeleteData) ; 23 axisgroup_hdl->bounds.reference(tmp.copy()); 24 axisgroup_hdl->sendAttributToServer(axisgroup_hdl->bounds); 25 CTimer::get("XIOS").suspend(); 26 } 27 28 void cxios_get_axisgroup_bounds(axisgroup_Ptr axisgroup_hdl, double* bounds, int extent1, int extent2) 29 { 30 CTimer::get("XIOS").resume(); 31 CArray<double,2> tmp(bounds,shape(extent1,extent2),neverDeleteData) ; 32 tmp=axisgroup_hdl->bounds.getInheritedValue() ; 33 CTimer::get("XIOS").suspend(); 34 } 35 36 bool cxios_is_defined_axisgroup_bounds(axisgroup_Ptr axisgroup_hdl ) 37 { 38 CTimer::get("XIOS").resume(); 39 bool isDefined = axisgroup_hdl->bounds.hasInheritedValue(); 40 CTimer::get("XIOS").suspend(); 41 return isDefined; 42 } 43 44 45 19 46 void cxios_set_axisgroup_group_ref(axisgroup_Ptr axisgroup_hdl, const char * group_ref, int group_ref_size) 20 47 { -
XIOS/branchs/xios-1.0/src/interface/fortran_attr/axis_interface_attr.f90
r501 r609 9 9 10 10 11 SUBROUTINE cxios_set_axis_bounds(axis_hdl, bounds, extent1, extent2) BIND(C) 12 USE ISO_C_BINDING 13 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 14 REAL (KIND=C_DOUBLE) , DIMENSION(*) :: bounds 15 INTEGER (kind = C_INT), VALUE :: extent1 16 INTEGER (kind = C_INT), VALUE :: extent2 17 END SUBROUTINE cxios_set_axis_bounds 18 19 SUBROUTINE cxios_get_axis_bounds(axis_hdl, bounds, extent1, extent2) BIND(C) 20 USE ISO_C_BINDING 21 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 22 REAL (KIND=C_DOUBLE) , DIMENSION(*) :: bounds 23 INTEGER (kind = C_INT), VALUE :: extent1 24 INTEGER (kind = C_INT), VALUE :: extent2 25 END SUBROUTINE cxios_get_axis_bounds 26 27 FUNCTION cxios_is_defined_axis_bounds(axis_hdl ) BIND(C) 28 USE ISO_C_BINDING 29 LOGICAL(kind=C_BOOL) :: cxios_is_defined_axis_bounds 30 INTEGER (kind = C_INTPTR_T), VALUE :: axis_hdl 31 END FUNCTION cxios_is_defined_axis_bounds 32 33 11 34 SUBROUTINE cxios_set_axis_long_name(axis_hdl, long_name, long_name_size) BIND(C) 12 35 USE ISO_C_BINDING -
XIOS/branchs/xios-1.0/src/interface/fortran_attr/axisgroup_interface_attr.f90
r501 r609 9 9 10 10 11 SUBROUTINE cxios_set_axisgroup_bounds(axisgroup_hdl, bounds, extent1, extent2) BIND(C) 12 USE ISO_C_BINDING 13 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl 14 REAL (KIND=C_DOUBLE) , DIMENSION(*) :: bounds 15 INTEGER (kind = C_INT), VALUE :: extent1 16 INTEGER (kind = C_INT), VALUE :: extent2 17 END SUBROUTINE cxios_set_axisgroup_bounds 18 19 SUBROUTINE cxios_get_axisgroup_bounds(axisgroup_hdl, bounds, extent1, extent2) BIND(C) 20 USE ISO_C_BINDING 21 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl 22 REAL (KIND=C_DOUBLE) , DIMENSION(*) :: bounds 23 INTEGER (kind = C_INT), VALUE :: extent1 24 INTEGER (kind = C_INT), VALUE :: extent2 25 END SUBROUTINE cxios_get_axisgroup_bounds 26 27 FUNCTION cxios_is_defined_axisgroup_bounds(axisgroup_hdl ) BIND(C) 28 USE ISO_C_BINDING 29 LOGICAL(kind=C_BOOL) :: cxios_is_defined_axisgroup_bounds 30 INTEGER (kind = C_INTPTR_T), VALUE :: axisgroup_hdl 31 END FUNCTION cxios_is_defined_axisgroup_bounds 32 33 11 34 SUBROUTINE cxios_set_axisgroup_group_ref(axisgroup_hdl, group_ref, group_ref_size) BIND(C) 12 35 USE ISO_C_BINDING -
XIOS/branchs/xios-1.0/src/interface/fortran_attr/iaxis_attr.F90
r501 r609 12 12 13 13 SUBROUTINE xios(set_axis_attr) & 14 ( axis_id, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end &14 ( axis_id, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end & 15 15 , zoom_size ) 16 16 … … 18 18 TYPE(txios(axis)) :: axis_hdl 19 19 CHARACTER(LEN=*), INTENT(IN) ::axis_id 20 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: bounds(:,:) 20 21 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name 21 22 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name … … 31 32 CALL xios(get_axis_handle)(axis_id,axis_hdl) 32 33 CALL xios(set_axis_attr_hdl_) & 33 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end&34 , zoom_ size )34 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 35 , zoom_end, zoom_size ) 35 36 36 37 END SUBROUTINE xios(set_axis_attr) 37 38 38 39 SUBROUTINE xios(set_axis_attr_hdl) & 39 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end & 40 , zoom_size ) 41 42 IMPLICIT NONE 43 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 40 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 41 , zoom_end, zoom_size ) 42 43 IMPLICIT NONE 44 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 45 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: bounds(:,:) 44 46 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name 45 47 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name … … 54 56 55 57 CALL xios(set_axis_attr_hdl_) & 56 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end&57 , zoom_ size )58 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 59 , zoom_end, zoom_size ) 58 60 59 61 END SUBROUTINE xios(set_axis_attr_hdl) 60 62 61 63 SUBROUTINE xios(set_axis_attr_hdl_) & 62 ( axis_hdl, long_name_, name_, positive_, size_, standard_name_, unit_, value_, zoom_begin_ &64 ( axis_hdl, bounds_, long_name_, name_, positive_, size_, standard_name_, unit_, value_, zoom_begin_ & 63 65 , zoom_end_, zoom_size_ ) 64 66 65 67 IMPLICIT NONE 66 68 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 69 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: bounds_(:,:) 67 70 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_ 68 71 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: name_ … … 76 79 INTEGER , OPTIONAL, INTENT(IN) :: zoom_size_ 77 80 81 IF (PRESENT(bounds_)) THEN 82 CALL cxios_set_axis_bounds(axis_hdl%daddr, bounds_,size(bounds_,1),size(bounds_,2)) 83 ENDIF 84 78 85 IF (PRESENT(long_name_)) THEN 79 86 CALL cxios_set_axis_long_name(axis_hdl%daddr, long_name_, len(long_name_)) … … 121 128 122 129 SUBROUTINE xios(get_axis_attr) & 123 ( axis_id, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end &130 ( axis_id, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end & 124 131 , zoom_size ) 125 132 … … 127 134 TYPE(txios(axis)) :: axis_hdl 128 135 CHARACTER(LEN=*), INTENT(IN) ::axis_id 136 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: bounds(:,:) 129 137 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name 130 138 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name … … 140 148 CALL xios(get_axis_handle)(axis_id,axis_hdl) 141 149 CALL xios(get_axis_attr_hdl_) & 142 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end&143 , zoom_ size )150 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 151 , zoom_end, zoom_size ) 144 152 145 153 END SUBROUTINE xios(get_axis_attr) 146 154 147 155 SUBROUTINE xios(get_axis_attr_hdl) & 148 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end & 149 , zoom_size ) 150 151 IMPLICIT NONE 152 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 156 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 157 , zoom_end, zoom_size ) 158 159 IMPLICIT NONE 160 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 161 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: bounds(:,:) 153 162 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name 154 163 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name … … 163 172 164 173 CALL xios(get_axis_attr_hdl_) & 165 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end&166 , zoom_ size )174 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 175 , zoom_end, zoom_size ) 167 176 168 177 END SUBROUTINE xios(get_axis_attr_hdl) 169 178 170 179 SUBROUTINE xios(get_axis_attr_hdl_) & 171 ( axis_hdl, long_name_, name_, positive_, size_, standard_name_, unit_, value_, zoom_begin_ &180 ( axis_hdl, bounds_, long_name_, name_, positive_, size_, standard_name_, unit_, value_, zoom_begin_ & 172 181 , zoom_end_, zoom_size_ ) 173 182 174 183 IMPLICIT NONE 175 184 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 185 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: bounds_(:,:) 176 186 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name_ 177 187 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: name_ … … 185 195 INTEGER , OPTIONAL, INTENT(OUT) :: zoom_size_ 186 196 197 IF (PRESENT(bounds_)) THEN 198 CALL cxios_get_axis_bounds(axis_hdl%daddr, bounds_,size(bounds_,1),size(bounds_,2)) 199 ENDIF 200 187 201 IF (PRESENT(long_name_)) THEN 188 202 CALL cxios_get_axis_long_name(axis_hdl%daddr, long_name_, len(long_name_)) … … 230 244 231 245 SUBROUTINE xios(is_defined_axis_attr) & 232 ( axis_id, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end &246 ( axis_id, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end & 233 247 , zoom_size ) 234 248 … … 236 250 TYPE(txios(axis)) :: axis_hdl 237 251 CHARACTER(LEN=*), INTENT(IN) ::axis_id 252 LOGICAL, OPTIONAL, INTENT(OUT) :: bounds 253 LOGICAL(KIND=C_BOOL) :: bounds_tmp 238 254 LOGICAL, OPTIONAL, INTENT(OUT) :: long_name 239 255 LOGICAL(KIND=C_BOOL) :: long_name_tmp … … 259 275 CALL xios(get_axis_handle)(axis_id,axis_hdl) 260 276 CALL xios(is_defined_axis_attr_hdl_) & 261 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end&262 , zoom_ size )277 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 278 , zoom_end, zoom_size ) 263 279 264 280 END SUBROUTINE xios(is_defined_axis_attr) 265 281 266 282 SUBROUTINE xios(is_defined_axis_attr_hdl) & 267 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end & 268 , zoom_size ) 269 270 IMPLICIT NONE 271 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 283 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 284 , zoom_end, zoom_size ) 285 286 IMPLICIT NONE 287 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 288 LOGICAL, OPTIONAL, INTENT(OUT) :: bounds 289 LOGICAL(KIND=C_BOOL) :: bounds_tmp 272 290 LOGICAL, OPTIONAL, INTENT(OUT) :: long_name 273 291 LOGICAL(KIND=C_BOOL) :: long_name_tmp … … 292 310 293 311 CALL xios(is_defined_axis_attr_hdl_) & 294 ( axis_hdl, long_name, name, positive, size, standard_name, unit, value, zoom_begin, zoom_end&295 , zoom_ size )312 ( axis_hdl, bounds, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 313 , zoom_end, zoom_size ) 296 314 297 315 END SUBROUTINE xios(is_defined_axis_attr_hdl) 298 316 299 317 SUBROUTINE xios(is_defined_axis_attr_hdl_) & 300 ( axis_hdl, long_name_, name_, positive_, size_, standard_name_, unit_, value_, zoom_begin_ &318 ( axis_hdl, bounds_, long_name_, name_, positive_, size_, standard_name_, unit_, value_, zoom_begin_ & 301 319 , zoom_end_, zoom_size_ ) 302 320 303 321 IMPLICIT NONE 304 322 TYPE(txios(axis)) , INTENT(IN) :: axis_hdl 323 LOGICAL, OPTIONAL, INTENT(OUT) :: bounds_ 324 LOGICAL(KIND=C_BOOL) :: bounds__tmp 305 325 LOGICAL, OPTIONAL, INTENT(OUT) :: long_name_ 306 326 LOGICAL(KIND=C_BOOL) :: long_name__tmp … … 324 344 LOGICAL(KIND=C_BOOL) :: zoom_size__tmp 325 345 346 IF (PRESENT(bounds_)) THEN 347 bounds__tmp=cxios_is_defined_axis_bounds(axis_hdl%daddr) 348 bounds_=bounds__tmp 349 ENDIF 350 326 351 IF (PRESENT(long_name_)) THEN 327 352 long_name__tmp=cxios_is_defined_axis_long_name(axis_hdl%daddr) -
XIOS/branchs/xios-1.0/src/interface/fortran_attr/iaxisgroup_attr.F90
r501 r609 12 12 13 13 SUBROUTINE xios(set_axisgroup_attr) & 14 ( axisgroup_id, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&15 , zoom_ end, zoom_size )14 ( axisgroup_id, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 15 , zoom_begin, zoom_end, zoom_size ) 16 16 17 17 IMPLICIT NONE 18 18 TYPE(txios(axisgroup)) :: axisgroup_hdl 19 19 CHARACTER(LEN=*), INTENT(IN) ::axisgroup_id 20 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: bounds(:,:) 20 21 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref 21 22 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name … … 32 33 CALL xios(get_axisgroup_handle)(axisgroup_id,axisgroup_hdl) 33 34 CALL xios(set_axisgroup_attr_hdl_) & 34 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&35 , zoom_ end, zoom_size )35 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 36 , zoom_begin, zoom_end, zoom_size ) 36 37 37 38 END SUBROUTINE xios(set_axisgroup_attr) 38 39 39 40 SUBROUTINE xios(set_axisgroup_attr_hdl) & 40 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 41 , zoom_end, zoom_size ) 42 43 IMPLICIT NONE 44 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 41 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 42 , zoom_begin, zoom_end, zoom_size ) 43 44 IMPLICIT NONE 45 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 46 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: bounds(:,:) 45 47 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref 46 48 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name … … 56 58 57 59 CALL xios(set_axisgroup_attr_hdl_) & 58 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&59 , zoom_ end, zoom_size )60 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 61 , zoom_begin, zoom_end, zoom_size ) 60 62 61 63 END SUBROUTINE xios(set_axisgroup_attr_hdl) 62 64 63 65 SUBROUTINE xios(set_axisgroup_attr_hdl_) & 64 ( axisgroup_hdl, group_ref_, long_name_, name_, positive_, size_, standard_name_, unit_, value_ & 65 , zoom_begin_, zoom_end_, zoom_size_ ) 66 67 IMPLICIT NONE 68 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 66 ( axisgroup_hdl, bounds_, group_ref_, long_name_, name_, positive_, size_, standard_name_, unit_ & 67 , value_, zoom_begin_, zoom_end_, zoom_size_ ) 68 69 IMPLICIT NONE 70 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 71 REAL (KIND=8) , OPTIONAL, INTENT(IN) :: bounds_(:,:) 69 72 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: group_ref_ 70 73 CHARACTER(len = *) , OPTIONAL, INTENT(IN) :: long_name_ … … 79 82 INTEGER , OPTIONAL, INTENT(IN) :: zoom_size_ 80 83 84 IF (PRESENT(bounds_)) THEN 85 CALL cxios_set_axisgroup_bounds(axisgroup_hdl%daddr, bounds_,size(bounds_,1),size(bounds_,2)) 86 ENDIF 87 81 88 IF (PRESENT(group_ref_)) THEN 82 89 CALL cxios_set_axisgroup_group_ref(axisgroup_hdl%daddr, group_ref_, len(group_ref_)) … … 128 135 129 136 SUBROUTINE xios(get_axisgroup_attr) & 130 ( axisgroup_id, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&131 , zoom_ end, zoom_size )137 ( axisgroup_id, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 138 , zoom_begin, zoom_end, zoom_size ) 132 139 133 140 IMPLICIT NONE 134 141 TYPE(txios(axisgroup)) :: axisgroup_hdl 135 142 CHARACTER(LEN=*), INTENT(IN) ::axisgroup_id 143 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: bounds(:,:) 136 144 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref 137 145 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name … … 148 156 CALL xios(get_axisgroup_handle)(axisgroup_id,axisgroup_hdl) 149 157 CALL xios(get_axisgroup_attr_hdl_) & 150 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&151 , zoom_ end, zoom_size )158 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 159 , zoom_begin, zoom_end, zoom_size ) 152 160 153 161 END SUBROUTINE xios(get_axisgroup_attr) 154 162 155 163 SUBROUTINE xios(get_axisgroup_attr_hdl) & 156 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 157 , zoom_end, zoom_size ) 158 159 IMPLICIT NONE 160 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 164 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 165 , zoom_begin, zoom_end, zoom_size ) 166 167 IMPLICIT NONE 168 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 169 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: bounds(:,:) 161 170 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref 162 171 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name … … 172 181 173 182 CALL xios(get_axisgroup_attr_hdl_) & 174 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&175 , zoom_ end, zoom_size )183 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 184 , zoom_begin, zoom_end, zoom_size ) 176 185 177 186 END SUBROUTINE xios(get_axisgroup_attr_hdl) 178 187 179 188 SUBROUTINE xios(get_axisgroup_attr_hdl_) & 180 ( axisgroup_hdl, group_ref_, long_name_, name_, positive_, size_, standard_name_, unit_, value_ & 181 , zoom_begin_, zoom_end_, zoom_size_ ) 182 183 IMPLICIT NONE 184 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 189 ( axisgroup_hdl, bounds_, group_ref_, long_name_, name_, positive_, size_, standard_name_, unit_ & 190 , value_, zoom_begin_, zoom_end_, zoom_size_ ) 191 192 IMPLICIT NONE 193 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 194 REAL (KIND=8) , OPTIONAL, INTENT(OUT) :: bounds_(:,:) 185 195 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: group_ref_ 186 196 CHARACTER(len = *) , OPTIONAL, INTENT(OUT) :: long_name_ … … 195 205 INTEGER , OPTIONAL, INTENT(OUT) :: zoom_size_ 196 206 207 IF (PRESENT(bounds_)) THEN 208 CALL cxios_get_axisgroup_bounds(axisgroup_hdl%daddr, bounds_,size(bounds_,1),size(bounds_,2)) 209 ENDIF 210 197 211 IF (PRESENT(group_ref_)) THEN 198 212 CALL cxios_get_axisgroup_group_ref(axisgroup_hdl%daddr, group_ref_, len(group_ref_)) … … 244 258 245 259 SUBROUTINE xios(is_defined_axisgroup_attr) & 246 ( axisgroup_id, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&247 , zoom_ end, zoom_size )260 ( axisgroup_id, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 261 , zoom_begin, zoom_end, zoom_size ) 248 262 249 263 IMPLICIT NONE 250 264 TYPE(txios(axisgroup)) :: axisgroup_hdl 251 265 CHARACTER(LEN=*), INTENT(IN) ::axisgroup_id 266 LOGICAL, OPTIONAL, INTENT(OUT) :: bounds 267 LOGICAL(KIND=C_BOOL) :: bounds_tmp 252 268 LOGICAL, OPTIONAL, INTENT(OUT) :: group_ref 253 269 LOGICAL(KIND=C_BOOL) :: group_ref_tmp … … 275 291 CALL xios(get_axisgroup_handle)(axisgroup_id,axisgroup_hdl) 276 292 CALL xios(is_defined_axisgroup_attr_hdl_) & 277 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&278 , zoom_ end, zoom_size )293 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 294 , zoom_begin, zoom_end, zoom_size ) 279 295 280 296 END SUBROUTINE xios(is_defined_axisgroup_attr) 281 297 282 298 SUBROUTINE xios(is_defined_axisgroup_attr_hdl) & 283 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin & 284 , zoom_end, zoom_size ) 285 286 IMPLICIT NONE 287 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 299 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 300 , zoom_begin, zoom_end, zoom_size ) 301 302 IMPLICIT NONE 303 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 304 LOGICAL, OPTIONAL, INTENT(OUT) :: bounds 305 LOGICAL(KIND=C_BOOL) :: bounds_tmp 288 306 LOGICAL, OPTIONAL, INTENT(OUT) :: group_ref 289 307 LOGICAL(KIND=C_BOOL) :: group_ref_tmp … … 310 328 311 329 CALL xios(is_defined_axisgroup_attr_hdl_) & 312 ( axisgroup_hdl, group_ref, long_name, name, positive, size, standard_name, unit, value, zoom_begin&313 , zoom_ end, zoom_size )330 ( axisgroup_hdl, bounds, group_ref, long_name, name, positive, size, standard_name, unit, value & 331 , zoom_begin, zoom_end, zoom_size ) 314 332 315 333 END SUBROUTINE xios(is_defined_axisgroup_attr_hdl) 316 334 317 335 SUBROUTINE xios(is_defined_axisgroup_attr_hdl_) & 318 ( axisgroup_hdl, group_ref_, long_name_, name_, positive_, size_, standard_name_, unit_, value_ & 319 , zoom_begin_, zoom_end_, zoom_size_ ) 320 321 IMPLICIT NONE 322 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 336 ( axisgroup_hdl, bounds_, group_ref_, long_name_, name_, positive_, size_, standard_name_, unit_ & 337 , value_, zoom_begin_, zoom_end_, zoom_size_ ) 338 339 IMPLICIT NONE 340 TYPE(txios(axisgroup)) , INTENT(IN) :: axisgroup_hdl 341 LOGICAL, OPTIONAL, INTENT(OUT) :: bounds_ 342 LOGICAL(KIND=C_BOOL) :: bounds__tmp 323 343 LOGICAL, OPTIONAL, INTENT(OUT) :: group_ref_ 324 344 LOGICAL(KIND=C_BOOL) :: group_ref__tmp … … 344 364 LOGICAL(KIND=C_BOOL) :: zoom_size__tmp 345 365 366 IF (PRESENT(bounds_)) THEN 367 bounds__tmp=cxios_is_defined_axisgroup_bounds(axisgroup_hdl%daddr) 368 bounds_=bounds__tmp 369 ENDIF 370 346 371 IF (PRESENT(group_ref_)) THEN 347 372 group_ref__tmp=cxios_is_defined_axisgroup_group_ref(axisgroup_hdl%daddr)
Note: See TracChangeset
for help on using the changeset viewer.